
.atwho-view {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  margin-top: 18px;
  background: white;
  color: black;
  border: 1px solid #DDD;
  border-radius: 3px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.1);
  min-width: 120px;
  z-index: 11110 !important;
}

.atwho-view .atwho-header {
  padding: 5px;
  margin: 5px;
  cursor: pointer;
  border-bottom: solid 1px #eaeff1;
  color: #6f8092;
  font-size: 11px;
  font-weight: bold;
}

.atwho-view .atwho-header .small {
  color: #6f8092;
  float: right;
  padding-top: 2px;
  margin-right: -5px;
  font-size: 12px;
  font-weight: normal;
}

.atwho-view .atwho-header:hover {
  cursor: default;
}

.atwho-view .cur {
  background: #3366FF;
  color: white;
}

.atwho-view .cur small {
  color: white;
}

.atwho-view strong {
  color: #3366FF;
}

.atwho-view .cur strong {
  color: white;
  font: bold;
}

.atwho-view ul {
  /* width: 100px; */
  list-style: none;
  padding: 0;
  margin: auto;
  max-height: 200px;
  overflow-y: auto;
}

.atwho-view ul li {
  display: block;
  padding: 5px 10px;
  border-bottom: 1px solid #DDD;
  cursor: pointer;
  /* border-top: 1px solid #C8C8C8; */
}

.atwho-view small {
  font-size: smaller;
  color: #777;
  font-weight: normal;
}

/*
 * The MIT License
 * Copyright (c) 2012 Matias Meno <m@tias.me>
 */
.dropzone, .dropzone * {
  box-sizing: border-box;
}

.dropzone {
  position: relative;
}

.dropzone .dz-preview {
  position: relative;
  display: inline-block;
  width: 120px;
  margin: 0.5em;
}

.dropzone .dz-preview .dz-progress {
  display: block;
  height: 15px;
  border: 1px solid #aaa;
}

.dropzone .dz-preview .dz-progress .dz-upload {
  display: block;
  height: 100%;
  width: 0;
  background: green;
}

.dropzone .dz-preview .dz-error-message {
  color: red;
  display: none;
}

.dropzone .dz-preview.dz-error .dz-error-message, .dropzone .dz-preview.dz-error .dz-error-mark {
  display: block;
}

.dropzone .dz-preview.dz-success .dz-success-mark {
  display: block;
}

.dropzone .dz-preview .dz-error-mark, .dropzone .dz-preview .dz-success-mark {
  position: absolute;
  display: none;
  left: 30px;
  top: 30px;
  width: 54px;
  height: 58px;
  left: 50%;
  margin-left: -27px;
}

/* stylelint-disable gitlab/no-gl-class */
/* stylelint-disable length-zero-no-unit */
:root {
  --performance-bar-height: 0px;
  --system-header-height: 0px;
  --header-height: 0px;
  --top-bar-height: 0px;
  --broadcast-message-height: 0px;
  --system-footer-height: 0px;
  --application-header-height: calc(
    var(--header-height) +
    var(--system-header-height) +
    var(--performance-bar-height) +
    var(--top-bar-height)
  );
  --application-bar-right: 0px;
  /**
   * CI icon styles
   * Discussion: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/177222
   * Owner: Verify: Pipeline execution
   */
  --ci-icon-success-background-color: var(--gl-color-green-100);
  --ci-icon-success-text-color: var(--gl-color-green-700);
  --ci-icon-success-icon-color: var(--gl-color-neutral-0);
  --ci-icon-success-icon-background-color: var(--gl-color-green-500);
  --ci-icon-warning-background-color: var(--gl-color-orange-100);
  --ci-icon-warning-text-color: var(--gl-color-orange-700);
  --ci-icon-warning-icon-color: var(--gl-color-neutral-0);
  --ci-icon-warning-icon-background-color: var(--gl-color-orange-500);
  --ci-icon-danger-background-color: var(--gl-color-red-100);
  --ci-icon-danger-text-color: var(--gl-color-red-700);
  --ci-icon-danger-icon-color: var(--gl-color-neutral-0);
  --ci-icon-danger-icon-background-color: var(--gl-color-red-500);
  --ci-icon-info-background-color: var(--gl-color-blue-100);
  --ci-icon-info-text-color: var(--gl-color-blue-700);
  --ci-icon-info-icon-color: var(--gl-color-blue-500);
  --ci-icon-info-icon-background-color: var(--gl-color-neutral-0);
  --ci-icon-neutral-background-color: var(--gl-color-neutral-100);
  --ci-icon-neutral-text-color: var(--gl-color-neutral-700);
  --ci-icon-neutral-icon-color: var(--gl-color-neutral-500);
  --ci-icon-neutral-icon-background-color: var(--gl-color-neutral-0);
  /**
   * Diff styles
   * Discussion: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/171514
   * Owner: Create: Code review
   */
  --diff-warning-text-color: var(--gl-feedback-warning-text-color);
  --diff-warning-background-color: var(--gl-feedback-warning-background-color);
  /**
   * Review note styles
   * Discussion: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167708
   * Owner: Create: Code review
   */
  --timeline-entry-draft-note-background-color: var(--gl-color-orange-50);
  /**
   * Work item note styles
   * Discussion: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167708
   * Owner: Plan: Project Management
   */
  --timeline-entry-internal-note-background-color: var(--gl-color-orange-50);
  /**
   * Target note styles
   * Discussion: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167708
   * Owner: TBD
   */
  --timeline-entry-target-background-color: var(--gl-color-blue-50);
  /**
   * Contribution graph styles on user profile
   * Discussion: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/180664
   * Owner: Organizations
   */
  --user-contribution-graph-cell-level-0: var(--gl-color-neutral-50);
  --user-contribution-graph-cell-level-1: var(--gl-color-data-blue-100);
  --user-contribution-graph-cell-level-2: var(--gl-color-data-blue-400);
  --user-contribution-graph-cell-level-3: var(--gl-color-data-blue-600);
  --user-contribution-graph-cell-level-4: var(--gl-color-data-blue-900);
}
:root .contrib-calendar-root {
  --user-contribution-graph-cell-level-0: var(--gl-color-neutral-50);
  --user-contribution-graph-cell-level-1: var(--gl-color-orange-200);
  --user-contribution-graph-cell-level-2: var(--gl-color-orange-400);
  --user-contribution-graph-cell-level-3: var(--gl-color-orange-600);
  --user-contribution-graph-cell-level-4: var(--gl-color-orange-800);
}
:root.ui-indigo .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-purple-200);
  --user-contribution-graph-cell-level-2: var(--gl-color-purple-400);
  --user-contribution-graph-cell-level-3: var(--gl-color-purple-600);
  --user-contribution-graph-cell-level-4: var(--gl-color-purple-800);
}
:root.ui-blue .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-blue-200);
  --user-contribution-graph-cell-level-2: var(--gl-color-blue-400);
  --user-contribution-graph-cell-level-3: var(--gl-color-blue-600);
  --user-contribution-graph-cell-level-4: var(--gl-color-blue-800);
}
:root.ui-green .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-green-200);
  --user-contribution-graph-cell-level-2: var(--gl-color-green-400);
  --user-contribution-graph-cell-level-3: var(--gl-color-green-600);
  --user-contribution-graph-cell-level-4: var(--gl-color-green-800);
}
:root.ui-red .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-red-200);
  --user-contribution-graph-cell-level-2: var(--gl-color-red-400);
  --user-contribution-graph-cell-level-3: var(--gl-color-red-600);
  --user-contribution-graph-cell-level-4: var(--gl-color-red-800);
}
:root.ui-gray .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-neutral-200);
  --user-contribution-graph-cell-level-2: var(--gl-color-neutral-400);
  --user-contribution-graph-cell-level-3: var(--gl-color-neutral-600);
  --user-contribution-graph-cell-level-4: var(--gl-color-neutral-800);
}
:root {
  /**
   * Severity colors
   * Discussion: https://gitlab.com/gitlab-org/gitlab/-/issues/581121
   * Owner: Security Risk Management: Security Insights
   */
  --severity-color-critical: var(--gl-color-red-800);
  --severity-color-high: var(--gl-color-red-600);
  --severity-color-medium: var(--gl-color-orange-400);
  --severity-color-low: var(--gl-color-orange-300);
  --severity-color-info: var(--gl-color-blue-400);
  --severity-color-unknown: var(--gl-color-neutral-400);
  /**
   * Find and replace highlight styles
   * Discussion: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/231274
   * Owner: Group Knowledge
   */
  --find-and-replace-match-text-color: var(--gl-highlight-match-text-color);
  --find-and-replace-match-background-color: var(--gl-color-orange-100);
  --find-and-replace-match-active-text-color: var(--gl-highlight-match-text-color);
  --find-and-replace-match-active-background-color: var(--gl-highlight-match-background-color);
}
:root.gl-dark {
  --ci-icon-success-background-color: var(--gl-color-green-300);
  --ci-icon-success-text-color: var(--gl-color-green-900);
  --ci-icon-success-icon-color: var(--gl-color-green-300);
  --ci-icon-success-icon-background-color: var(--gl-color-green-900);
  --ci-icon-warning-background-color: var(--gl-color-orange-300);
  --ci-icon-warning-text-color: var(--gl-color-orange-900);
  --ci-icon-warning-icon-color: var(--gl-color-orange-300);
  --ci-icon-warning-icon-background-color: var(--gl-color-orange-900);
  --ci-icon-danger-background-color: var(--gl-color-red-300);
  --ci-icon-danger-text-color: var(--gl-color-red-900);
  --ci-icon-danger-icon-color: var(--gl-color-red-300);
  --ci-icon-danger-icon-background-color: var(--gl-color-red-900);
  --ci-icon-info-background-color: var(--gl-color-blue-300);
  --ci-icon-info-text-color: var(--gl-color-blue-900);
  --ci-icon-info-icon-color: var(--gl-color-blue-300);
  --ci-icon-info-icon-background-color: var(--gl-color-blue-900);
  --ci-icon-neutral-background-color: var(--gl-color-neutral-300);
  --ci-icon-neutral-text-color: var(--gl-color-neutral-900);
  --ci-icon-neutral-icon-color: var(--gl-color-neutral-300);
  --ci-icon-neutral-icon-background-color: var(--gl-color-neutral-900);
  --diff-warning-background-color: #453522;
  --timeline-entry-draft-note-background-color: #453522;
  --timeline-entry-internal-note-background-color: #453522;
  --timeline-entry-target-background-color: #2A394E;
  --user-contribution-graph-cell-level-0: var(--gl-color-neutral-900);
  --user-contribution-graph-cell-level-1: var(--gl-color-data-blue-900);
  --user-contribution-graph-cell-level-2: var(--gl-color-data-blue-600);
  --user-contribution-graph-cell-level-3: var(--gl-color-data-blue-400);
  --user-contribution-graph-cell-level-4: var(--gl-color-data-blue-100);
}
:root.gl-dark .contrib-calendar-root {
  --user-contribution-graph-cell-level-0: var(--gl-color-neutral-900);
  --user-contribution-graph-cell-level-1: var(--gl-color-orange-800);
  --user-contribution-graph-cell-level-2: var(--gl-color-orange-600);
  --user-contribution-graph-cell-level-3: var(--gl-color-orange-400);
  --user-contribution-graph-cell-level-4: var(--gl-color-orange-200);
}
:root.gl-dark.ui-indigo .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-purple-800);
  --user-contribution-graph-cell-level-2: var(--gl-color-purple-600);
  --user-contribution-graph-cell-level-3: var(--gl-color-purple-400);
  --user-contribution-graph-cell-level-4: var(--gl-color-purple-200);
}
:root.gl-dark.ui-blue .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-blue-800);
  --user-contribution-graph-cell-level-2: var(--gl-color-blue-600);
  --user-contribution-graph-cell-level-3: var(--gl-color-blue-400);
  --user-contribution-graph-cell-level-4: var(--gl-color-blue-200);
}
:root.gl-dark.ui-green .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-green-800);
  --user-contribution-graph-cell-level-2: var(--gl-color-green-600);
  --user-contribution-graph-cell-level-3: var(--gl-color-green-400);
  --user-contribution-graph-cell-level-4: var(--gl-color-green-200);
}
:root.gl-dark.ui-red .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-red-800);
  --user-contribution-graph-cell-level-2: var(--gl-color-red-600);
  --user-contribution-graph-cell-level-3: var(--gl-color-red-400);
  --user-contribution-graph-cell-level-4: var(--gl-color-red-200);
}
:root.gl-dark.ui-gray .contrib-calendar-root {
  --user-contribution-graph-cell-level-1: var(--gl-color-neutral-800);
  --user-contribution-graph-cell-level-2: var(--gl-color-neutral-600);
  --user-contribution-graph-cell-level-3: var(--gl-color-neutral-400);
  --user-contribution-graph-cell-level-4: var(--gl-color-neutral-200);
}
:root.gl-dark {
  --severity-color-critical: var(--gl-color-red-500);
  --severity-color-high: var(--gl-color-red-300);
  --severity-color-medium: var(--gl-color-orange-300);
  --severity-color-low: var(--gl-color-orange-100);
  --severity-color-info: var(--gl-color-blue-300);
  --severity-color-unknown: var(--gl-color-neutral-300);
  --find-and-replace-match-active-text-color: var(--gl-color-neutral-0);
  --find-and-replace-match-active-background-color: var(--gl-color-orange-800);
}

/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/*
 * Layout
 */
/**
  🚨 Do not use this spacing scale — it is deprecated and being removed. 🚨
  See https://gitlab.com/gitlab-org/gitlab/issues/36857 for more details.

  Instead, if you need a spacing class, add it to app/assets/stylesheets/framework/common.scss,
  using the following values.

    $gl-spacing-scale-0: 0;
    $gl-spacing-scale-1: 2px;
    $gl-spacing-scale-2: 4px;
    $gl-spacing-scale-3: 8px;
    $gl-spacing-scale-4: 12px;
    $gl-spacing-scale-5: 16px;
    $gl-spacing-scale-6: 24px;
    $gl-spacing-scale-7: 32px;
    $gl-spacing-scale-8: 40px;
    $gl-spacing-scale-9: 48px;
    $gl-spacing-scale-10: 56px;
    $gl-spacing-scale-11: 64px;
    $gl-spacing-scale-12: 80px;
    $gl-spacing-scale-13: 96px;

  E.g., a padding top of 96px can be added using:
  .gl-shim-pt-13 {
    padding-top: 96px;
  }

  Please use -shim- so it can be differentiated from the old scale classes.

  These will be replaced when the Gitlab UI utilities are included.
**/
/* Will be moved to @gitlab/ui by https://gitlab.com/gitlab-org/gitlab-services/design.gitlab.com/-/issues/2792 */
/* End gitlab-ui#1709 */
/*
 * Text
 */
/*
 * Lists
 */
/*
 * Code
 */
/*
 * Tooltips
 */
/*
 * Padding
 */
/*
 * Misc
 */
/*
 * Merge requests
 */
/*
 * Calculated heights
 */
/* tanuki logo colors */
/*
 * State colors:
 */
/*
 * Commit Diff Colors
 */
/*
 * The transparent colors are used in Monaco editor. Using full opacity colors
 * would hide other layers (selected text, matching brackets).
 *
 * When the transparent colors get layered on white background, they create their
 * full opacity counterparts:
 *
 *  - white + $line-added-transparent = $line-added
 *  - white + $line-added-transparent + $line-added-dark-transparent = $line-added-dark
 *
 * More details: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41553
 */
/*
 * Fonts
 * The --default-mono-font and --default-regular-font variables give users
 * a way to override our font choices for them.
 */
/*
* Dropdowns
*/
/*
* Sidebar
*/
/*
* Buttons
*/
/*
* Badges
*/
/*
 *  Award emoji
 */
/*
 * Search Box
 */
/*
 *  Notes
 */
/*
* Boards
*/
/*
* Builds
*/
/*
* Commit Page
*/
/*
* Files
*/
/*
* Forms
*/
/*
* Label
*/
/*
* Animation
*/
/*
* Login
*/
/*
* Typography
*/
/*
Pipeline Graph
*/
/*
GitLab Plans
*/
/*
Performance Bar
*/
/*
Image Commenting cursor
*/
/*
Popup
*/
/*
Drawers
*/
/*
Modals
*/
/*
Popovers
*/
/*
Merge requests
*/
/*
Board Swimlanes
*/
/*
Source Editor theme overrides
*/
/**
 Bootstrap 4.2.0 introduced new icons for validating forms.
 Our design system does not use those, so we are disabling them for now:
 - Docs: https://getbootstrap.com/docs/4.3/components/forms/#server-side
 - Issue: https://gitlab.com/gitlab-org/design.gitlab.com/issues/242
 */
/*
 * This file is only for overriding Bootstrap 4 variables.
 * Please add any new variables to variables.scss
 */
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/**
 * Prefilled mixins
 * Mixins with fixed values
 */
/*
 * Base mixin for lists in GitLab
 */
/*
 * Mixin for status badges, as used for pipelines and commit signatures
 */
/*
 * Mixin that fixes wrapping issues with long strings (e.g. URLs)
 *
 * Note: the width needs to be set for it to work in Firefox
 */
/*
* Mixin that handles the container for the job logs (CI/CD and kubernetes pod logs)
*/
/*
* Mixin that handles the position of the controls placed on the top bar
*/
/*
* Mixin that handles the size and right margin of avatars.
*/
/**
* Style to apply to, for example, search results matches or text wrapped
* around <mark> (allowed in Markdown).
*/
/**
* Line connecting activity entries, used in issuables, work items etc
*/
/**
 * Deprecated mixin for dark mode
 */
/**
* CI/CD Job item failed status background
*
* Sets background color of items to visually
* highlight failed jobs in the UI.
*/
/**
* Declares a property with a fluid value that decreases or
* rises depending on the viewport’s size. The property type
* should be numeric.
*
* Values are expected in rem units.
* Fluid range: between 48rem (768px) – 75rem (1200px).
*
* @param $property Property name, i.e. line-height, font-size, width, height, etc.
* @param $min Property value lower bound.
* @param $max Property value upper bound.
*/
/**
* Helper function for :focus
*
* @param $size is deprecated and should not be used anymore
*/
/**
* Helper function for @media of at least the minimum
* breakpoint width.
*
* @param $name Breakpoint name, such as `sm` or `md`.
*/
/**
* Helper function for @media of at most the maximum
* breakpoint width.
*
* Note: Before using, consider using a mobile-first
* approach, and define @media for larger breakpoints
* using `gl-media-breakpoint-up` while using this rule as
* the starting point instead.
*
* @param $name Breakpoint, such as `sm` or `md`. `xs` is not valid
*/
/**
* Helper function to resolve font-size value from $gl-font-sizes and
* $gl-font-sizes-fixed maps.
*
* @param $size Number font-size scale
* @param $fixed Boolean toggle default and fixed font size scales
*/
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6d49cb;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #646163;
  --gray-dark: #3a383d;
  --primary: #007bff;
  --secondary: #ecebea;
  --success: #0c7265;
  --info: #1f73ca;
  --warning: #b34013;
  --danger: #c52042;
  --light: #dcdbd9;
  --dark: #3a383d;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
}

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

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.25rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 600;
}

dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

pre,
code,
kbd,
samp {
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role=button] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type=radio],
input[type=checkbox] {
  box-sizing: border-box;
  padding: 0;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: 0.5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.25rem;
  font-weight: 600;
  line-height: 1.2;
}

h1, .h1 {
  font-size: 2.1875rem;
}

h2, .h2 {
  font-size: 1.75rem;
}

h3, .h3 {
  font-size: 1.53125rem;
}

h4, .h4 {
  font-size: 1.3125rem;
}

h5, .h5 {
  font-size: 1.09375rem;
}

h6, .h6 {
  font-size: 0.875rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
  border: 0;
  border-top: 1px solid rgba(5, 4, 8, 0.1);
}

small,
.small {
  font-size: 0.875em;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}
.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 0.875em;
  color: #646163;
}
.blockquote-footer::before {
  content: "— ";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #a5a3a3;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.25rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #646163;
}

code {
  font-size: 90%;
  color: #e83e8c;
  word-wrap: break-word;
}
a > code {
  color: inherit;
}

pre {
  display: block;
  font-size: 90%;
  color: #28272d;
}
pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container,
.container-fluid,
.container-xl,
.container-lg,
.container-md,
.container-sm {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container-sm, .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container-md, .container-sm, .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container-lg, .container-md, .container-sm, .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container-xl, .container-lg, .container-md, .container-sm, .container {
    max-width: 1140px;
  }
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.no-gutters > .col,
.no-gutters > [class*=col-] {
  padding-right: 0;
  padding-left: 0;
}

.gl-col-xl,
.gl-col-xl-auto, .gl-col-xl-12, .gl-col-xl-11, .gl-col-xl-10, .gl-col-xl-9, .gl-col-xl-8, .gl-col-xl-7, .gl-col-xl-6, .gl-col-xl-5, .gl-col-xl-4, .gl-col-xl-3, .gl-col-xl-2, .gl-col-xl-1, .gl-col-lg,
.gl-col-lg-auto, .gl-col-lg-12, .gl-col-lg-11, .gl-col-lg-10, .gl-col-lg-9, .gl-col-lg-8, .gl-col-lg-7, .gl-col-lg-6, .gl-col-lg-5, .gl-col-lg-4, .gl-col-lg-3, .gl-col-lg-2, .gl-col-lg-1, .gl-col-md,
.gl-col-md-auto, .gl-col-md-12, .gl-col-md-11, .gl-col-md-10, .gl-col-md-9, .gl-col-md-8, .gl-col-md-7, .gl-col-md-6, .gl-col-md-5, .gl-col-md-4, .gl-col-md-3, .gl-col-md-2, .gl-col-md-1, .gl-col-sm,
.gl-col-sm-auto, .gl-col-sm-12, .gl-col-sm-11, .gl-col-sm-10, .gl-col-sm-9, .gl-col-sm-8, .gl-col-sm-7, .gl-col-sm-6, .gl-col-sm-5, .gl-col-sm-4, .gl-col-sm-3, .gl-col-sm-2, .gl-col-sm-1, .gl-col,
.gl-col-auto, .gl-col-12, .gl-col-11, .gl-col-10, .gl-col-9, .gl-col-8, .gl-col-7, .gl-col-6, .gl-col-5, .gl-col-4, .gl-col-3, .gl-col-2, .gl-col-1, .col-xl,
.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg,
.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md,
.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm,
.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col,
.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  flex: 0 0 8.33333333%;
  max-width: 8.33333333%;
}

.col-2 {
  flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}

.col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.col-5 {
  flex: 0 0 41.66666667%;
  max-width: 41.66666667%;
}

.col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  flex: 0 0 58.33333333%;
  max-width: 58.33333333%;
}

.col-8 {
  flex: 0 0 66.66666667%;
  max-width: 66.66666667%;
}

.col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  flex: 0 0 83.33333333%;
  max-width: 83.33333333%;
}

.col-11 {
  flex: 0 0 91.66666667%;
  max-width: 91.66666667%;
}

.col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  order: -1;
}

.order-last {
  order: 13;
}

.order-0 {
  order: 0;
}

.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

.order-4 {
  order: 4;
}

.order-5 {
  order: 5;
}

.order-6 {
  order: 6;
}

.order-7 {
  order: 7;
}

.order-8 {
  order: 8;
}

.order-9 {
  order: 9;
}

.order-10 {
  order: 10;
}

.order-11 {
  order: 11;
}

.order-12 {
  order: 12;
}

.offset-1 {
  margin-left: 8.33333333%;
}

.offset-2 {
  margin-left: 16.66666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.33333333%;
}

.offset-5 {
  margin-left: 41.66666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.33333333%;
}

.offset-8 {
  margin-left: 66.66666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.33333333%;
}

.offset-11 {
  margin-left: 91.66666667%;
}

@media (min-width: 576px) {
  .col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-sm-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-sm-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-sm-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-sm-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    order: -1;
  }
  .order-sm-last {
    order: 13;
  }
  .order-sm-0 {
    order: 0;
  }
  .order-sm-1 {
    order: 1;
  }
  .order-sm-2 {
    order: 2;
  }
  .order-sm-3 {
    order: 3;
  }
  .order-sm-4 {
    order: 4;
  }
  .order-sm-5 {
    order: 5;
  }
  .order-sm-6 {
    order: 6;
  }
  .order-sm-7 {
    order: 7;
  }
  .order-sm-8 {
    order: 8;
  }
  .order-sm-9 {
    order: 9;
  }
  .order-sm-10 {
    order: 10;
  }
  .order-sm-11 {
    order: 11;
  }
  .order-sm-12 {
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.33333333%;
  }
  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 768px) {
  .col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-md-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-md-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-md-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-md-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    order: -1;
  }
  .order-md-last {
    order: 13;
  }
  .order-md-0 {
    order: 0;
  }
  .order-md-1 {
    order: 1;
  }
  .order-md-2 {
    order: 2;
  }
  .order-md-3 {
    order: 3;
  }
  .order-md-4 {
    order: 4;
  }
  .order-md-5 {
    order: 5;
  }
  .order-md-6 {
    order: 6;
  }
  .order-md-7 {
    order: 7;
  }
  .order-md-8 {
    order: 8;
  }
  .order-md-9 {
    order: 9;
  }
  .order-md-10 {
    order: 10;
  }
  .order-md-11 {
    order: 11;
  }
  .order-md-12 {
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.33333333%;
  }
  .offset-md-2 {
    margin-left: 16.66666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.33333333%;
  }
  .offset-md-5 {
    margin-left: 41.66666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.33333333%;
  }
  .offset-md-8 {
    margin-left: 66.66666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.33333333%;
  }
  .offset-md-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 992px) {
  .col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-lg-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-lg-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-lg-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-lg-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    order: -1;
  }
  .order-lg-last {
    order: 13;
  }
  .order-lg-0 {
    order: 0;
  }
  .order-lg-1 {
    order: 1;
  }
  .order-lg-2 {
    order: 2;
  }
  .order-lg-3 {
    order: 3;
  }
  .order-lg-4 {
    order: 4;
  }
  .order-lg-5 {
    order: 5;
  }
  .order-lg-6 {
    order: 6;
  }
  .order-lg-7 {
    order: 7;
  }
  .order-lg-8 {
    order: 8;
  }
  .order-lg-9 {
    order: 9;
  }
  .order-lg-10 {
    order: 10;
  }
  .order-lg-11 {
    order: 11;
  }
  .order-lg-12 {
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.33333333%;
  }
  .offset-lg-2 {
    margin-left: 16.66666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.33333333%;
  }
  .offset-lg-5 {
    margin-left: 41.66666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.33333333%;
  }
  .offset-lg-8 {
    margin-left: 66.66666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.33333333%;
  }
  .offset-lg-11 {
    margin-left: 91.66666667%;
  }
}
@media (min-width: 1200px) {
  .col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  .row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  .col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-xl-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-xl-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-xl-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-xl-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    order: -1;
  }
  .order-xl-last {
    order: 13;
  }
  .order-xl-0 {
    order: 0;
  }
  .order-xl-1 {
    order: 1;
  }
  .order-xl-2 {
    order: 2;
  }
  .order-xl-3 {
    order: 3;
  }
  .order-xl-4 {
    order: 4;
  }
  .order-xl-5 {
    order: 5;
  }
  .order-xl-6 {
    order: 6;
  }
  .order-xl-7 {
    order: 7;
  }
  .order-xl-8 {
    order: 8;
  }
  .order-xl-9 {
    order: 9;
  }
  .order-xl-10 {
    order: 10;
  }
  .order-xl-11 {
    order: 11;
  }
  .order-xl-12 {
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.33333333%;
  }
  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
}
.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dcdbd9;
}
.table-bordered th,
.table-bordered td {
  border: 1px solid #dcdbd9;
}
.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: var(--gl-background-color-subtle);
}

.table-hover tbody tr:hover {
  color: #3a383d;
  background-color: rgba(5, 4, 8, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: rgb(183.6, 218.04, 255);
}
.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: rgb(122.4, 186.36, 255);
}

.table-hover .table-primary:hover {
  background-color: rgb(158.1, 204.84, 255);
}
.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: rgb(158.1, 204.84, 255);
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: rgb(249.68, 249.4, 249.12);
}
.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: rgb(245.12, 244.6, 244.08);
}

.table-hover .table-secondary:hover {
  background-color: rgb(237.5675, 236.65, 235.7325);
}
.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: rgb(237.5675, 236.65, 235.7325);
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: rgb(186.96, 215.52, 211.88);
}
.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: rgb(128.64, 181.68, 174.92);
}

.table-hover .table-success:hover {
  background-color: rgb(170.82328125, 206.15671875, 201.6534375);
}
.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: rgb(170.82328125, 206.15671875, 201.6534375);
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: rgb(192.28, 215.8, 240.16);
}
.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: rgb(138.52, 182.2, 227.44);
}

.table-hover .table-info:hover {
  background-color: rgb(171.6590613718, 202.9119133574, 235.2809386282);
}
.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: rgb(171.6590613718, 202.9119133574, 235.2809386282);
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: rgb(233.72, 201.52, 188.92);
}
.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: rgb(215.48, 155.68, 132.28);
}

.table-hover .table-warning:hover {
  background-color: rgb(227.5084615385, 185.9094230769, 169.6315384615);
}
.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: rgb(227.5084615385, 185.9094230769, 169.6315384615);
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: rgb(238.76, 192.56, 202.08);
}
.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: rgb(224.84, 139.04, 156.72);
}

.table-hover .table-danger:hover {
  background-color: rgb(233.4966548043, 172.3233451957, 184.9287544484);
}
.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: rgb(233.4966548043, 172.3233451957, 184.9287544484);
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: rgb(245.2, 244.92, 244.36);
}
.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: rgb(236.8, 236.28, 235.24);
}

.table-hover .table-light:hover {
  background-color: rgb(232.9739726027, 232.3446575342, 231.0860273973);
}
.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: rgb(232.9739726027, 232.3446575342, 231.0860273973);
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: rgb(199.84, 199.28, 200.68);
}
.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: rgb(152.56, 151.52, 154.12);
}

.table-hover .table-dark:hover {
  background-color: rgb(187.0575572519, 186.3677862595, 188.0922137405);
}
.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: rgb(187.0575572519, 186.3677862595, 188.0922137405);
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(5, 4, 8, 0.075);
}

.table-hover .table-active:hover {
  background-color: hsla(255, 33.3333333333%, -2.6470588235%, 0.075);
}
.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: hsla(255, 33.3333333333%, -2.6470588235%, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #3a383d;
  border-color: rgb(76.9615384615, 74.3076923077, 80.9423076923);
}
.table .thead-light th {
  color: #4d4b4e;
  background-color: #c1bfbe;
  border-color: #dcdbd9;
}

.table-dark {
  color: #fff;
  background-color: #3a383d;
}
.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: rgb(76.9615384615, 74.3076923077, 80.9423076923);
}
.table-dark.table-bordered {
  border: 0;
}
.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}
.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@container (width < 576px) {
  :where(html.with-gl-container-queries) .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  :where(html.with-gl-container-queries) .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  :where(html:not(.with-gl-container-queries)) .table-responsive-sm > .table-bordered {
    border: 0;
  }
}
@container (width < 768px) {
  :where(html.with-gl-container-queries) .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  :where(html.with-gl-container-queries) .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  :where(html:not(.with-gl-container-queries)) .table-responsive-md > .table-bordered {
    border: 0;
  }
}
@container (width < 992px) {
  :where(html.with-gl-container-queries) .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  :where(html.with-gl-container-queries) .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  :where(html:not(.with-gl-container-queries)) .table-responsive-lg > .table-bordered {
    border: 0;
  }
}
@container (width < 1200px) {
  :where(html.with-gl-container-queries) .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  :where(html.with-gl-container-queries) .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
@media (width < 1200px) {
  :where(html:not(.with-gl-container-queries)) .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  :where(html:not(.with-gl-container-queries)) .table-responsive-xl > .table-bordered {
    border: 0;
  }
}
.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: 32px;
  padding: 0.375rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  color: #3a383d;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #8a8888;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}
.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}
.form-control:focus-visible {
  color: #3a383d;
  background-color: #fff;
  border-color: rgb(127.5, 189, 255);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.form-control::placeholder {
  color: #646163;
  opacity: 1;
}
.form-control:disabled, .form-control[readonly] {
  background-color: #f7f7f5;
  opacity: 1;
}

input[type=date].form-control,
input[type=time].form-control,
input[type=datetime-local].form-control,
input[type=month].form-control {
  appearance: none;
}

select.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #3a383d;
}
select.form-control:focus-visible::-ms-value {
  color: #3a383d;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #3a383d;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}
.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}
.form-row > .col,
.form-row > [class*=col-] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
  color: #646163;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: inline-flex;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}
.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #0c7265;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.5rem 0.75rem;
  margin-top: 0.1rem;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #fff;
  background-color: #0c7265;
  border-radius: 0.25rem;
}
.form-row > .col > .valid-tooltip, .form-row > [class*=col-] > .valid-tooltip {
  left: 5px;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #0c7265;
}
.was-validated .form-control:valid:focus-visible, .form-control.is-valid:focus-visible {
  border-color: #0c7265;
  box-shadow: 0 0 0 0.2rem rgba(12, 114, 101, 0.25);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #0c7265;
}
.was-validated .custom-select:valid:focus-visible, .custom-select.is-valid:focus-visible {
  border-color: #0c7265;
  box-shadow: 0 0 0 0.2rem rgba(12, 114, 101, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #0c7265;
}
.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #0c7265;
}
.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #0c7265;
}
.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: rgb(16.8571428571, 160.1428571429, 141.880952381);
  background-color: rgb(16.8571428571, 160.1428571429, 141.880952381);
}
.was-validated .custom-control-input:valid:focus-visible ~ .custom-control-label::before, .custom-control-input.is-valid:focus-visible ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(12, 114, 101, 0.25);
}
.was-validated .custom-control-input:valid:focus-visible:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus-visible:not(:checked) ~ .custom-control-label::before {
  border-color: #0c7265;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #0c7265;
}
.was-validated .custom-file-input:valid:focus-visible ~ .custom-file-label, .custom-file-input.is-valid:focus-visible ~ .custom-file-label {
  border-color: #0c7265;
  box-shadow: 0 0 0 0.2rem rgba(12, 114, 101, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #c52042;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.5rem 0.75rem;
  margin-top: 0.1rem;
  font-size: 0.75rem;
  line-height: 1.5;
  color: #fff;
  background-color: #c52042;
  border-radius: 0.25rem;
}
.form-row > .col > .invalid-tooltip, .form-row > [class*=col-] > .invalid-tooltip {
  left: 5px;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #c52042;
}
.was-validated .form-control:invalid:focus-visible, .form-control.is-invalid:focus-visible {
  border-color: #c52042;
  box-shadow: 0 0 0 0.2rem rgba(197, 32, 66, 0.25);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #c52042;
}
.was-validated .custom-select:invalid:focus-visible, .custom-select.is-invalid:focus-visible {
  border-color: #c52042;
  box-shadow: 0 0 0 0.2rem rgba(197, 32, 66, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #c52042;
}
.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #c52042;
}
.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #c52042;
}
.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: rgb(222.8602620087, 57.1397379913, 91.288209607);
  background-color: rgb(222.8602620087, 57.1397379913, 91.288209607);
}
.was-validated .custom-control-input:invalid:focus-visible ~ .custom-control-label::before, .custom-control-input.is-invalid:focus-visible ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(197, 32, 66, 0.25);
}
.was-validated .custom-control-input:invalid:focus-visible:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus-visible:not(:checked) ~ .custom-control-label::before {
  border-color: #c52042;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #c52042;
}
.was-validated .custom-file-input:invalid:focus-visible ~ .custom-file-label, .custom-file-input.is-invalid:focus-visible ~ .custom-file-label {
  border-color: #c52042;
  box-shadow: 0 0 0 0.2rem rgba(197, 32, 66, 0.25);
}

.form-inline {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
}
.form-inline .form-check {
  width: 100%;
}
@media (min-width: 576px) {
  .form-inline label {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: flex;
    flex: 0 0 auto;
    flex-flow: row wrap;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    align-items: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #3a383d;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
          user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 20px;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}
.btn:hover {
  color: #3a383d;
  text-decoration: none;
}
.btn:focus-visible, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.btn.disabled, .btn:disabled {
  opacity: 0.65;
}
.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}
a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-primary:hover {
  color: #fff;
  background-color: rgb(0, 104.55, 216.75);
  border-color: rgb(0, 98.4, 204);
}
.btn-primary:focus-visible, .btn-primary.focus {
  color: #fff;
  background-color: rgb(0, 104.55, 216.75);
  border-color: rgb(0, 98.4, 204);
  box-shadow: 0 0 0 0.2rem rgba(38.25, 142.8, 255, 0.5);
}
.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: rgb(0, 98.4, 204);
  border-color: rgb(0, 92.25, 191.25);
}
.btn-primary:not(:disabled):not(.disabled):active:focus-visible, .btn-primary:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-primary.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(38.25, 142.8, 255, 0.5);
}

.btn-secondary {
  color: #28272d;
  background-color: #ecebea;
  border-color: #ecebea;
}
.btn-secondary:hover {
  color: #28272d;
  background-color: rgb(217.83125, 215.875, 213.91875);
  border-color: rgb(211.775, 209.5, 207.225);
}
.btn-secondary:focus-visible, .btn-secondary.focus {
  color: #28272d;
  background-color: rgb(217.83125, 215.875, 213.91875);
  border-color: rgb(211.775, 209.5, 207.225);
  box-shadow: 0 0 0 0.2rem rgba(206.6, 205.6, 205.65, 0.5);
}
.btn-secondary.disabled, .btn-secondary:disabled {
  color: #28272d;
  background-color: #ecebea;
  border-color: #ecebea;
}
.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle {
  color: #28272d;
  background-color: rgb(211.775, 209.5, 207.225);
  border-color: rgb(205.71875, 203.125, 200.53125);
}
.btn-secondary:not(:disabled):not(.disabled):active:focus-visible, .btn-secondary:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-secondary.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(206.6, 205.6, 205.65, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #0c7265;
  border-color: #0c7265;
}
.btn-success:hover {
  color: #fff;
  background-color: rgb(8.3571428571, 79.3928571429, 70.3392857143);
  border-color: rgb(7.1428571429, 67.8571428571, 60.119047619);
}
.btn-success:focus-visible, .btn-success.focus {
  color: #fff;
  background-color: rgb(8.3571428571, 79.3928571429, 70.3392857143);
  border-color: rgb(7.1428571429, 67.8571428571, 60.119047619);
  box-shadow: 0 0 0 0.2rem rgba(48.45, 135.15, 124.1, 0.5);
}
.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #0c7265;
  border-color: #0c7265;
}
.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: rgb(7.1428571429, 67.8571428571, 60.119047619);
  border-color: rgb(5.9285714286, 56.3214285714, 49.8988095238);
}
.btn-success:not(:disabled):not(.disabled):active:focus-visible, .btn-success:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-success.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(48.45, 135.15, 124.1, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #1f73ca;
  border-color: #1f73ca;
}
.btn-info:hover {
  color: #fff;
  background-color: rgb(25.910944206, 96.1212446352, 168.839055794);
  border-color: rgb(24.2145922747, 89.8283261803, 157.7854077253);
}
.btn-info:focus-visible, .btn-info.focus {
  color: #fff;
  background-color: rgb(25.910944206, 96.1212446352, 168.839055794);
  border-color: rgb(24.2145922747, 89.8283261803, 157.7854077253);
  box-shadow: 0 0 0 0.2rem rgba(64.6, 136, 209.95, 0.5);
}
.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #1f73ca;
  border-color: #1f73ca;
}
.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: rgb(24.2145922747, 89.8283261803, 157.7854077253);
  border-color: rgb(22.5182403433, 83.5354077253, 146.7317596567);
}
.btn-info:not(:disabled):not(.disabled):active:focus-visible, .btn-info:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-info.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(64.6, 136, 209.95, 0.5);
}

.btn-warning {
  color: #fff;
  background-color: #b34013;
  border-color: #b34013;
}
.btn-warning:hover {
  color: #fff;
  background-color: rgb(144.4204545455, 51.6363636364, 15.3295454545);
  border-color: rgb(132.8939393939, 47.5151515152, 14.1060606061);
}
.btn-warning:focus-visible, .btn-warning.focus {
  color: #fff;
  background-color: rgb(144.4204545455, 51.6363636364, 15.3295454545);
  border-color: rgb(132.8939393939, 47.5151515152, 14.1060606061);
  box-shadow: 0 0 0 0.2rem rgba(190.4, 92.65, 54.4, 0.5);
}
.btn-warning.disabled, .btn-warning:disabled {
  color: #fff;
  background-color: #b34013;
  border-color: #b34013;
}
.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle {
  color: #fff;
  background-color: rgb(132.8939393939, 47.5151515152, 14.1060606061);
  border-color: rgb(121.3674242424, 43.3939393939, 12.8825757576);
}
.btn-warning:not(:disabled):not(.disabled):active:focus-visible, .btn-warning:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-warning.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(190.4, 92.65, 54.4, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #c52042;
  border-color: #c52042;
}
.btn-danger:hover {
  color: #fff;
  background-color: rgb(164.0949781659, 26.6550218341, 54.9759825328);
  border-color: rgb(153.1266375546, 24.8733624454, 51.3013100437);
}
.btn-danger:focus-visible, .btn-danger.focus {
  color: #fff;
  background-color: rgb(164.0949781659, 26.6550218341, 54.9759825328);
  border-color: rgb(153.1266375546, 24.8733624454, 51.3013100437);
  box-shadow: 0 0 0 0.2rem rgba(205.7, 65.45, 94.35, 0.5);
}
.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #c52042;
  border-color: #c52042;
}
.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: rgb(153.1266375546, 24.8733624454, 51.3013100437);
  border-color: rgb(142.1582969432, 23.0917030568, 47.6266375546);
}
.btn-danger:not(:disabled):not(.disabled):active:focus-visible, .btn-danger:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-danger.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(205.7, 65.45, 94.35, 0.5);
}

.btn-light {
  color: #28272d;
  background-color: #dcdbd9;
  border-color: #dcdbd9;
}
.btn-light:hover {
  color: #28272d;
  background-color: rgb(201.6609589041, 200.1369863014, 197.0890410959);
  border-color: rgb(195.5479452055, 193.8493150685, 190.4520547945);
}
.btn-light:focus-visible, .btn-light.focus {
  color: #28272d;
  background-color: rgb(201.6609589041, 200.1369863014, 197.0890410959);
  border-color: rgb(195.5479452055, 193.8493150685, 190.4520547945);
  box-shadow: 0 0 0 0.2rem rgba(193, 192, 191.2, 0.5);
}
.btn-light.disabled, .btn-light:disabled {
  color: #28272d;
  background-color: #dcdbd9;
  border-color: #dcdbd9;
}
.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle {
  color: #28272d;
  background-color: rgb(195.5479452055, 193.8493150685, 190.4520547945);
  border-color: rgb(189.4349315068, 187.5616438356, 183.8150684932);
}
.btn-light:not(:disabled):not(.disabled):active:focus-visible, .btn-light:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-light.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(193, 192, 191.2, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #3a383d;
  border-color: #3a383d;
}
.btn-dark:hover {
  color: #fff;
  background-color: rgb(39.0384615385, 37.6923076923, 41.0576923077);
  border-color: rgb(32.7179487179, 31.5897435897, 34.4102564103);
}
.btn-dark:focus-visible, .btn-dark.focus {
  color: #fff;
  background-color: rgb(39.0384615385, 37.6923076923, 41.0576923077);
  border-color: rgb(32.7179487179, 31.5897435897, 34.4102564103);
  box-shadow: 0 0 0 0.2rem rgba(87.55, 85.85, 90.1, 0.5);
}
.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #3a383d;
  border-color: #3a383d;
}
.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: rgb(32.7179487179, 31.5897435897, 34.4102564103);
  border-color: rgb(26.3974358974, 25.4871794872, 27.7628205128);
}
.btn-dark:not(:disabled):not(.disabled):active:focus-visible, .btn-dark:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-dark.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(87.55, 85.85, 90.1, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}
.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-outline-primary:focus-visible, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}
.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}
.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.btn-outline-primary:not(:disabled):not(.disabled):active:focus-visible, .btn-outline-primary:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-outline-primary.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #ecebea;
  border-color: #ecebea;
}
.btn-outline-secondary:hover {
  color: #28272d;
  background-color: #ecebea;
  border-color: #ecebea;
}
.btn-outline-secondary:focus-visible, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(236, 235, 234, 0.5);
}
.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #ecebea;
  background-color: transparent;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle {
  color: #28272d;
  background-color: #ecebea;
  border-color: #ecebea;
}
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus-visible, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-outline-secondary.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(236, 235, 234, 0.5);
}

.btn-outline-success {
  color: #0c7265;
  border-color: #0c7265;
}
.btn-outline-success:hover {
  color: #fff;
  background-color: #0c7265;
  border-color: #0c7265;
}
.btn-outline-success:focus-visible, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(12, 114, 101, 0.5);
}
.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #0c7265;
  background-color: transparent;
}
.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, .show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #0c7265;
  border-color: #0c7265;
}
.btn-outline-success:not(:disabled):not(.disabled):active:focus-visible, .btn-outline-success:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-outline-success.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(12, 114, 101, 0.5);
}

.btn-outline-info {
  color: #1f73ca;
  border-color: #1f73ca;
}
.btn-outline-info:hover {
  color: #fff;
  background-color: #1f73ca;
  border-color: #1f73ca;
}
.btn-outline-info:focus-visible, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(31, 115, 202, 0.5);
}
.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #1f73ca;
  background-color: transparent;
}
.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #1f73ca;
  border-color: #1f73ca;
}
.btn-outline-info:not(:disabled):not(.disabled):active:focus-visible, .btn-outline-info:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-outline-info.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(31, 115, 202, 0.5);
}

.btn-outline-warning {
  color: #b34013;
  border-color: #b34013;
}
.btn-outline-warning:hover {
  color: #fff;
  background-color: #b34013;
  border-color: #b34013;
}
.btn-outline-warning:focus-visible, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(179, 64, 19, 0.5);
}
.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #b34013;
  background-color: transparent;
}
.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, .show > .btn-outline-warning.dropdown-toggle {
  color: #fff;
  background-color: #b34013;
  border-color: #b34013;
}
.btn-outline-warning:not(:disabled):not(.disabled):active:focus-visible, .btn-outline-warning:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-outline-warning.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(179, 64, 19, 0.5);
}

.btn-outline-danger {
  color: #c52042;
  border-color: #c52042;
}
.btn-outline-danger:hover {
  color: #fff;
  background-color: #c52042;
  border-color: #c52042;
}
.btn-outline-danger:focus-visible, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(197, 32, 66, 0.5);
}
.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #c52042;
  background-color: transparent;
}
.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, .show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #c52042;
  border-color: #c52042;
}
.btn-outline-danger:not(:disabled):not(.disabled):active:focus-visible, .btn-outline-danger:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-outline-danger.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(197, 32, 66, 0.5);
}

.btn-outline-light {
  color: #dcdbd9;
  border-color: #dcdbd9;
}
.btn-outline-light:hover {
  color: #28272d;
  background-color: #dcdbd9;
  border-color: #dcdbd9;
}
.btn-outline-light:focus-visible, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 219, 217, 0.5);
}
.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #dcdbd9;
  background-color: transparent;
}
.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle {
  color: #28272d;
  background-color: #dcdbd9;
  border-color: #dcdbd9;
}
.btn-outline-light:not(:disabled):not(.disabled):active:focus-visible, .btn-outline-light:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-outline-light.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(220, 219, 217, 0.5);
}

.btn-outline-dark {
  color: #3a383d;
  border-color: #3a383d;
}
.btn-outline-dark:hover {
  color: #fff;
  background-color: #3a383d;
  border-color: #3a383d;
}
.btn-outline-dark:focus-visible, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 56, 61, 0.5);
}
.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #3a383d;
  background-color: transparent;
}
.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #3a383d;
  border-color: #3a383d;
}
.btn-outline-dark:not(:disabled):not(.disabled):active:focus-visible, .btn-outline-dark:not(:disabled):not(.disabled).active:focus-visible, .show > .btn-outline-dark.dropdown-toggle:focus-visible {
  box-shadow: 0 0 0 0.2rem rgba(58, 56, 61, 0.5);
}

.btn-link {
  font-weight: 400;
  color: var(--gl-text-color-link);
  text-decoration: none;
}
.btn-link:hover {
  color: var(--gl-text-color-link);
  text-decoration: underline;
}
.btn-link:focus-visible, .btn-link.focus {
  text-decoration: underline;
}
.btn-link:disabled, .btn-link.disabled {
  color: #646163;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}
.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type=submit].btn-block,
input[type=reset].btn-block,
input[type=button].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}
@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}
.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}
.collapsing.width {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}
@media (prefers-reduced-motion: reduce) {
  .collapsing.width {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}
.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}
.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #3a383d;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(5, 4, 8, 0.15);
  border-radius: 0.25rem;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}
.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}
.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}
.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}
.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}
.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  display: none;
}
.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}
.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^=top], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 4px 0;
  overflow: hidden;
  border-top: 1px solid #c1bfbe;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 8px 12px;
  clear: both;
  font-weight: 400;
  color: #28272d;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}
.dropdown-item:hover, .dropdown-item:focus-visible {
  color: rgb(27.8571428571, 27.1607142857, 31.3392857143);
  text-decoration: none;
  background-color: #c1bfbe;
}
.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: #747273;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 12px;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #646163;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 8px 12px;
  color: #28272d;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  flex: 1 1 auto;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}
.btn-group > .btn:focus-visible, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus-visible,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}
.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}
.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropright .dropdown-toggle-split::after {
  margin-left: 0;
}
.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}
.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}
.btn-group-toggle > .btn input[type=radio],
.btn-group-toggle > .btn input[type=checkbox],
.btn-group-toggle > .btn-group > .btn input[type=radio],
.btn-group-toggle > .btn-group > .btn input[type=checkbox] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  width: 100%;
}
.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}
.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}
.input-group > .form-control:focus-visible,
.input-group > .custom-select:focus-visible,
.input-group > .custom-file .custom-file-input:focus-visible ~ .custom-file-label {
  z-index: 3;
}
.input-group > .custom-file .custom-file-input:focus-visible {
  z-index: 4;
}
.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .custom-file {
  display: flex;
  align-items: center;
}
.input-group > .custom-file:not(:last-child) .custom-file-label, .input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group.has-validation > .form-control:nth-last-child(n+3),
.input-group.has-validation > .custom-select:nth-last-child(n+3),
.input-group.has-validation > .custom-file:nth-last-child(n+3) .custom-file-label,
.input-group.has-validation > .custom-file:nth-last-child(n+3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: flex;
}
.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}
.input-group-prepend .btn:focus-visible,
.input-group-append .btn:focus-visible {
  z-index: 3;
}
.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: flex;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  color: #3a383d;
  text-align: center;
  white-space: nowrap;
  background-color: #c1bfbe;
  border: 1px solid #8a8888;
  border-radius: 0.25rem;
}
.input-group-text input[type=radio],
.input-group-text input[type=checkbox] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n+3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n+3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  -webkit-print-color-adjust: exact;
          print-color-adjust: exact;
}

.custom-control-inline {
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}
.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff;
}
.custom-control-input:focus-visible ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-control-input:focus-visible:not(:checked) ~ .custom-control-label::before {
  border-color: rgb(127.5, 189, 255);
}
.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: rgb(178.5, 215.4, 255);
  border-color: rgb(178.5, 215.4, 255);
}
.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #646163;
}
.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #f7f7f5;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}
.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: 1px solid #747273;
}
.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50%/50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff;
}
.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}
.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}
.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}
.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}
.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}
.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #747273;
  border-radius: 0.5rem;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}
.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  transform: translateX(0.75rem);
}
.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: 32px;
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  color: #3a383d;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%233a383d' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #8a8888;
  border-radius: 0.25rem;
  appearance: none;
}
.custom-select:focus-visible {
  border-color: rgb(127.5, 189, 255);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-select:focus-visible::-ms-value {
  color: #3a383d;
  background-color: #fff;
}
.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}
.custom-select:disabled {
  color: #646163;
  background-color: #c1bfbe;
}
.custom-select::-ms-expand {
  display: none;
}
.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #3a383d;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 32px;
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 32px;
  margin: 0;
  overflow: hidden;
  opacity: 0;
}
.custom-file-input:focus-visible ~ .custom-file-label {
  border-color: rgb(127.5, 189, 255);
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-file-input[disabled] ~ .custom-file-label, .custom-file-input:disabled ~ .custom-file-label {
  background-color: #f7f7f5;
}
.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}
.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: 32px;
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: 400;
  line-height: 1.5;
  color: #3a383d;
  background-color: #fff;
  border: 1px solid #8a8888;
  border-radius: 0.25rem;
}
.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #3a383d;
  content: "Browse";
  background-color: #c1bfbe;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  appearance: none;
}
.custom-range:focus-visible {
  outline: 0;
}
.custom-range:focus-visible::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range:focus-visible::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range:focus-visible::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.custom-range::-moz-focus-outer {
  border: 0;
}
.custom-range::-webkit-slider-thumb {
  appearance: none;
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}
.custom-range::-webkit-slider-thumb:active {
  background-color: rgb(178.5, 215.4, 255);
}
.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #a5a3a3;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-moz-range-thumb {
  appearance: none;
  width: 1rem;
  height: 1rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}
.custom-range::-moz-range-thumb:active {
  background-color: rgb(178.5, 215.4, 255);
}
.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #a5a3a3;
  border-color: transparent;
  border-radius: 1rem;
}
.custom-range::-ms-thumb {
  appearance: none;
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -ms-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    -ms-transition: none;
    transition: none;
  }
}
.custom-range::-ms-thumb:active {
  background-color: rgb(178.5, 215.4, 255);
}
.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}
.custom-range::-ms-fill-lower {
  background-color: #a5a3a3;
  border-radius: 1rem;
}
.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #a5a3a3;
  border-radius: 1rem;
}
.custom-range:disabled::-webkit-slider-thumb {
  background-color: #747273;
}
.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}
.custom-range:disabled::-moz-range-thumb {
  background-color: #747273;
}
.custom-range:disabled::-moz-range-track {
  cursor: default;
}
.custom-range:disabled::-ms-thumb {
  background-color: #747273;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none;
  }
}

.nav {
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}
.nav-link:hover, .nav-link:focus-visible {
  text-decoration: none;
}
.nav-link.disabled {
  color: #646163;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #a5a3a3;
}
.nav-tabs .nav-link {
  margin-bottom: -1px;
  background-color: transparent;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}
.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus-visible {
  isolation: isolate;
  border-color: #c1bfbe #c1bfbe #a5a3a3;
}
.nav-tabs .nav-link.disabled {
  color: #646163;
  background-color: transparent;
  border-color: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #4d4b4e;
  background-color: #fff;
  border-color: #a5a3a3 #a5a3a3 #fff;
}
.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  flex-basis: 0;
  flex-grow: 1;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}
.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 0.25rem 0.5rem;
}
.navbar .container,
.navbar .container-fluid,
.navbar .container-sm,
.navbar .container-md,
.navbar .container-lg,
.navbar .container-xl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 0.5rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}
.navbar-brand:hover, .navbar-brand:focus-visible {
  text-decoration: none;
}

.navbar-nav {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}
.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}
.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.navbar-toggler:hover, .navbar-toggler:focus-visible {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50%/100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid,
  .navbar-expand-sm > .container-sm,
  .navbar-expand-sm > .container-md,
  .navbar-expand-sm > .container-lg,
  .navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 576px) {
  .navbar-expand-sm {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid,
  .navbar-expand-sm > .container-sm,
  .navbar-expand-sm > .container-md,
  .navbar-expand-sm > .container-lg,
  .navbar-expand-sm > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid,
  .navbar-expand-md > .container-sm,
  .navbar-expand-md > .container-md,
  .navbar-expand-md > .container-lg,
  .navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  .navbar-expand-md {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid,
  .navbar-expand-md > .container-sm,
  .navbar-expand-md > .container-md,
  .navbar-expand-md > .container-lg,
  .navbar-expand-md > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}
@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid,
  .navbar-expand-lg > .container-sm,
  .navbar-expand-lg > .container-md,
  .navbar-expand-lg > .container-lg,
  .navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 992px) {
  .navbar-expand-lg {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid,
  .navbar-expand-lg > .container-sm,
  .navbar-expand-lg > .container-md,
  .navbar-expand-lg > .container-lg,
  .navbar-expand-lg > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}
@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid,
  .navbar-expand-xl > .container-sm,
  .navbar-expand-xl > .container-md,
  .navbar-expand-xl > .container-lg,
  .navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}
@media (min-width: 1200px) {
  .navbar-expand-xl {
    flex-flow: row nowrap;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid,
  .navbar-expand-xl > .container-sm,
  .navbar-expand-xl > .container-md,
  .navbar-expand-xl > .container-lg,
  .navbar-expand-xl > .container-xl {
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}
.navbar-expand {
  flex-flow: row nowrap;
  justify-content: flex-start;
}
.navbar-expand .navbar-nav {
  flex-direction: row;
}
.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}
.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}
.navbar-expand > .container,
.navbar-expand > .container-fluid,
.navbar-expand > .container-sm,
.navbar-expand > .container-md,
.navbar-expand > .container-lg,
.navbar-expand > .container-xl {
  flex-wrap: nowrap;
}
.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}
.navbar-expand .navbar-collapse {
  display: flex !important;
  flex-basis: auto;
}
.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(5, 4, 8, 0.9);
}
.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus-visible {
  color: rgba(5, 4, 8, 0.9);
}
.navbar-light .navbar-nav .nav-link {
  color: rgba(5, 4, 8, 0.5);
}
.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus-visible {
  color: rgba(5, 4, 8, 0.7);
}
.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(5, 4, 8, 0.3);
}
.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(5, 4, 8, 0.9);
}
.navbar-light .navbar-toggler {
  color: rgba(5, 4, 8, 0.5);
  border-color: rgba(5, 4, 8, 0.1);
}
.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%285, 4, 8, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-light .navbar-text {
  color: rgba(5, 4, 8, 0.5);
}
.navbar-light .navbar-text a {
  color: rgba(5, 4, 8, 0.9);
}
.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus-visible {
  color: rgba(5, 4, 8, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}
.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus-visible {
  color: #fff;
}
.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}
.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus-visible {
  color: rgba(255, 255, 255, 0.75);
}
.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}
.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}
.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}
.navbar-dark .navbar-text a {
  color: #fff;
}
.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus-visible {
  color: #fff;
}

.card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid #dcdbd9;
  border-radius: 0.25rem;
}
.card > hr {
  margin-right: 0;
  margin-left: 0;
}
.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}
.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}
.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}
.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}
.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: #f7f7f5;
  border-bottom: 1px solid #dcdbd9;
}
.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: #f7f7f5;
  border-top: 1px solid #dcdbd9;
}
.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.accordion {
  overflow-anchor: none;
}
.accordion > .card {
  overflow: hidden;
}
.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: flex;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #c1bfbe;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #646163;
  content: "/";
}
.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
  text-decoration: none;
}
.breadcrumb-item.active {
  color: #646163;
}

.pagination {
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: var(--gl-text-color-link);
  background-color: #fff;
  border: 1px solid #a5a3a3;
}
.page-link:hover {
  z-index: 2;
  color: var(--gl-text-color-link);
  text-decoration: none;
  background-color: #c1bfbe;
  border-color: #a5a3a3;
}
.page-link:focus-visible {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}
.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}
.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.page-item.disabled .page-link {
  color: #646163;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #a5a3a3;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}
.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}
.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}
.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}
.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}
a.badge:hover, a.badge:focus-visible {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #007bff;
}
a.badge-primary:hover, a.badge-primary:focus-visible {
  color: #fff;
  background-color: rgb(0, 98.4, 204);
}
a.badge-primary:focus-visible, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.badge-secondary {
  color: #28272d;
  background-color: #ecebea;
}
a.badge-secondary:hover, a.badge-secondary:focus-visible {
  color: #28272d;
  background-color: rgb(211.775, 209.5, 207.225);
}
a.badge-secondary:focus-visible, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(236, 235, 234, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #0c7265;
}
a.badge-success:hover, a.badge-success:focus-visible {
  color: #fff;
  background-color: rgb(7.1428571429, 67.8571428571, 60.119047619);
}
a.badge-success:focus-visible, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(12, 114, 101, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #1f73ca;
}
a.badge-info:hover, a.badge-info:focus-visible {
  color: #fff;
  background-color: rgb(24.2145922747, 89.8283261803, 157.7854077253);
}
a.badge-info:focus-visible, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(31, 115, 202, 0.5);
}

.badge-warning {
  color: #fff;
  background-color: #b34013;
}
a.badge-warning:hover, a.badge-warning:focus-visible {
  color: #fff;
  background-color: rgb(132.8939393939, 47.5151515152, 14.1060606061);
}
a.badge-warning:focus-visible, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(179, 64, 19, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #c52042;
}
a.badge-danger:hover, a.badge-danger:focus-visible {
  color: #fff;
  background-color: rgb(153.1266375546, 24.8733624454, 51.3013100437);
}
a.badge-danger:focus-visible, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(197, 32, 66, 0.5);
}

.badge-light {
  color: #28272d;
  background-color: #dcdbd9;
}
a.badge-light:hover, a.badge-light:focus-visible {
  color: #28272d;
  background-color: rgb(195.5479452055, 193.8493150685, 190.4520547945);
}
a.badge-light:focus-visible, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 219, 217, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #3a383d;
}
a.badge-dark:hover, a.badge-dark:focus-visible {
  color: #fff;
  background-color: rgb(32.7179487179, 31.5897435897, 34.4102564103);
}
a.badge-dark:focus-visible, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(58, 56, 61, 0.5);
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 600;
}

.alert-dismissible {
  padding-right: 4rem;
}
.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: rgb(2.4, 65.88, 136.44);
  background-color: rgb(204, 228.6, 255);
  border-color: rgb(183.6, 218.04, 255);
}
.alert-primary hr {
  border-top-color: rgb(158.1, 204.84, 255);
}
.alert-primary .alert-link {
  color: rgb(1.5184096802, 41.6803457217, 86.3215903198);
}

.alert-secondary {
  color: rgb(125.12, 124.12, 125.52);
  background-color: rgb(251.2, 251, 250.8);
  border-color: rgb(249.68, 249.4, 249.12);
}
.alert-secondary hr {
  border-top-color: rgb(237.5675, 236.65, 235.7325);
}
.alert-secondary .alert-link {
  color: rgb(99.5587117449, 98.7630059285, 99.8769940715);
}

.alert-success {
  color: rgb(8.64, 61.2, 56.36);
  background-color: rgb(206.4, 226.8, 224.2);
  border-color: rgb(186.96, 215.52, 211.88);
}
.alert-success hr {
  border-top-color: rgb(170.82328125, 206.15671875, 201.6534375);
}
.alert-success .alert-link {
  color: rgb(2.3307216495, 16.5092783505, 15.2036426117);
}

.alert-info {
  color: rgb(18.52, 61.72, 108.88);
  background-color: rgb(210.2, 227, 244.4);
  border-color: rgb(192.28, 215.8, 240.16);
}
.alert-info hr {
  border-top-color: rgb(171.6590613718, 202.9119133574, 235.2809386282);
}
.alert-info .alert-link {
  color: rgb(11.1061852433, 37.0126216641, 65.2938147567);
}

.alert-warning {
  color: rgb(95.48, 35.2, 13.72);
  background-color: rgb(239.8, 216.8, 207.8);
  border-color: rgb(233.72, 201.52, 188.92);
}
.alert-warning hr {
  border-top-color: rgb(227.5084615385, 185.9094230769, 169.6315384615);
}
.alert-warning .alert-link {
  color: rgb(50.8876923077, 18.7604395604, 7.3123076923);
}

.alert-danger {
  color: rgb(104.84, 18.56, 38.16);
  background-color: rgb(243.4, 210.4, 217.2);
  border-color: rgb(238.76, 192.56, 202.08);
}
.alert-danger hr {
  border-top-color: rgb(233.4966548043, 172.3233451957, 184.9287544484);
}
.alert-danger .alert-link {
  color: rgb(61.5106645057, 10.8893354943, 22.3888492707);
}

.alert-light {
  color: rgb(116.8, 115.8, 116.68);
  background-color: rgb(248, 247.8, 247.4);
  border-color: rgb(245.2, 244.92, 244.36);
}
.alert-light hr {
  border-top-color: rgb(232.9739726027, 232.3446575342, 231.0860273973);
}
.alert-light .alert-link {
  color: rgb(91.1903697334, 90.4096302666, 91.0966809974);
}

.alert-dark {
  color: rgb(32.56, 31.04, 35.56);
  background-color: rgb(215.6, 215.2, 216.2);
  border-color: rgb(199.84, 199.28, 200.68);
}
.alert-dark hr {
  border-top-color: rgb(187.0575572519, 186.3677862595, 188.0922137405);
}
.alert-dark .alert-link {
  color: rgb(7.6266666667, 7.2706306306, 8.3293693694);
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}
.progress {
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #c1bfbe;
  border-radius: 0.25rem;
}

.progress-bar {
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  animation: 1s linear infinite progress-bar-stripes;
}
@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    animation: none;
  }
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.list-group {
  display: flex;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

.list-group-item-action {
  width: 100%;
  color: #4d4b4e;
  text-align: inherit;
}
.list-group-item-action:hover, .list-group-item-action:focus-visible {
  z-index: 1;
  color: #4d4b4e;
  text-decoration: none;
  background-color: #dcdbd9;
}
.list-group-item-action:active {
  color: #3a383d;
  background-color: #c1bfbe;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #fff;
  border: 1px solid rgba(5, 4, 8, 0.125);
}
.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}
.list-group-item.disabled, .list-group-item:disabled {
  color: #646163;
  pointer-events: none;
  background-color: #fff;
}
.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}
.list-group-item + .list-group-item {
  border-top-width: 0;
}
.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-flush {
  border-radius: 0;
}
.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}
.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: rgb(2.4, 65.88, 136.44);
  background-color: rgb(183.6, 218.04, 255);
}
.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus-visible {
  color: rgb(2.4, 65.88, 136.44);
  background-color: rgb(158.1, 204.84, 255);
}
.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: rgb(2.4, 65.88, 136.44);
  border-color: rgb(2.4, 65.88, 136.44);
}

.list-group-item-secondary {
  color: rgb(125.12, 124.12, 125.52);
  background-color: rgb(249.68, 249.4, 249.12);
}
.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus-visible {
  color: rgb(125.12, 124.12, 125.52);
  background-color: rgb(237.5675, 236.65, 235.7325);
}
.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: rgb(125.12, 124.12, 125.52);
  border-color: rgb(125.12, 124.12, 125.52);
}

.list-group-item-success {
  color: rgb(8.64, 61.2, 56.36);
  background-color: rgb(186.96, 215.52, 211.88);
}
.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus-visible {
  color: rgb(8.64, 61.2, 56.36);
  background-color: rgb(170.82328125, 206.15671875, 201.6534375);
}
.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: rgb(8.64, 61.2, 56.36);
  border-color: rgb(8.64, 61.2, 56.36);
}

.list-group-item-info {
  color: rgb(18.52, 61.72, 108.88);
  background-color: rgb(192.28, 215.8, 240.16);
}
.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus-visible {
  color: rgb(18.52, 61.72, 108.88);
  background-color: rgb(171.6590613718, 202.9119133574, 235.2809386282);
}
.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: rgb(18.52, 61.72, 108.88);
  border-color: rgb(18.52, 61.72, 108.88);
}

.list-group-item-warning {
  color: rgb(95.48, 35.2, 13.72);
  background-color: rgb(233.72, 201.52, 188.92);
}
.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus-visible {
  color: rgb(95.48, 35.2, 13.72);
  background-color: rgb(227.5084615385, 185.9094230769, 169.6315384615);
}
.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: rgb(95.48, 35.2, 13.72);
  border-color: rgb(95.48, 35.2, 13.72);
}

.list-group-item-danger {
  color: rgb(104.84, 18.56, 38.16);
  background-color: rgb(238.76, 192.56, 202.08);
}
.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus-visible {
  color: rgb(104.84, 18.56, 38.16);
  background-color: rgb(233.4966548043, 172.3233451957, 184.9287544484);
}
.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: rgb(104.84, 18.56, 38.16);
  border-color: rgb(104.84, 18.56, 38.16);
}

.list-group-item-light {
  color: rgb(116.8, 115.8, 116.68);
  background-color: rgb(245.2, 244.92, 244.36);
}
.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus-visible {
  color: rgb(116.8, 115.8, 116.68);
  background-color: rgb(232.9739726027, 232.3446575342, 231.0860273973);
}
.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: rgb(116.8, 115.8, 116.68);
  border-color: rgb(116.8, 115.8, 116.68);
}

.list-group-item-dark {
  color: rgb(32.56, 31.04, 35.56);
  background-color: rgb(199.84, 199.28, 200.68);
}
.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus-visible {
  color: rgb(32.56, 31.04, 35.56);
  background-color: rgb(187.0575572519, 186.3677862595, 188.0922137405);
}
.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: rgb(32.56, 31.04, 35.56);
  border-color: rgb(32.56, 31.04, 35.56);
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  color: #050408;
  text-shadow: 0 1px 0 #fff;
  opacity: 0.5;
}
.close:hover {
  color: #050408;
  text-decoration: none;
}
.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus-visible {
  opacity: 0.75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}

a.close.disabled {
  pointer-events: none;
}

.modal-open {
  overflow: hidden;
}
.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}
.modal.fade .modal-dialog {
  transform: translate(0, -50px);
  transition: transform 0.3s ease-out;
}
@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}
.modal.show .modal-dialog {
  transform: none;
}
.modal.modal-static .modal-dialog {
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: flex;
  max-height: calc(100% - 1rem);
}
.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}
.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  flex-shrink: 0;
}
.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: flex;
  align-items: center;
  min-height: calc(100% - 1rem);
}
.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: min-content;
  content: "";
}
.modal-dialog-centered.modal-dialog-scrollable {
  flex-direction: column;
  justify-content: center;
  height: 100%;
}
.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}
.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(5, 4, 8, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}
.modal-backdrop.fade {
  opacity: 0;
}
.modal-backdrop.show {
  opacity: 0.64;
}

.modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #c1bfbe;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}
.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.25rem;
}

.modal-body {
  position: relative;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #c1bfbe;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}
.modal-footer > * {
  margin: 0.25rem;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: min-content;
  }
  .modal-sm {
    max-width: 300px;
  }
}
@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}
@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}
.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: 0.75rem;
  word-wrap: break-word;
  opacity: 0;
}
.tooltip.show {
  opacity: 1;
}
.tooltip .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
}
.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] {
  padding: 0.5rem 0;
}
.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=top] .arrow {
  bottom: 0;
}
.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=top] .arrow::before {
  top: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #050408;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] {
  padding: 0 0.5rem;
}
.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=right] .arrow {
  left: 0;
  width: 0.5rem;
  height: 1rem;
}
.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=right] .arrow::before {
  right: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #050408;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] {
  padding: 0.5rem 0;
}
.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=bottom] .arrow {
  top: 0;
}
.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=bottom] .arrow::before {
  bottom: 0;
  border-width: 0 0.5rem 0.5rem;
  border-bottom-color: #050408;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] {
  padding: 0 0.5rem;
}
.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=left] .arrow {
  right: 0;
  width: 0.5rem;
  height: 1rem;
}
.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=left] .arrow::before {
  left: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #050408;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.5rem 0.75rem;
  color: #fff;
  text-align: center;
  background-color: #050408;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 300px;
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-clip: padding-box;
  border: 1px solid #dcdbd9;
}
.popover .arrow {
  position: absolute;
  display: block;
  width: 0.5rem;
  height: 0.25rem;
  margin: 0 0.3rem;
}
.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^=top] {
  margin-bottom: 0.25rem;
}
.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=top] > .arrow {
  bottom: calc(-0.25rem - 1px);
}
.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=top] > .arrow::before {
  bottom: 0;
  border-width: 0.25rem 0.25rem 0;
}
.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=top] > .arrow::after {
  bottom: 1px;
  border-width: 0.25rem 0.25rem 0;
}

.bs-popover-right, .bs-popover-auto[x-placement^=right] {
  margin-left: 0.25rem;
}
.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=right] > .arrow {
  left: calc(-0.25rem - 1px);
  width: 0.25rem;
  height: 0.5rem;
  margin: 0.3rem 0;
}
.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=right] > .arrow::before {
  left: 0;
  border-width: 0.25rem 0.25rem 0.25rem 0;
  border-right-color: #dcdbd9;
}
.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=right] > .arrow::after {
  left: 1px;
  border-width: 0.25rem 0.25rem 0.25rem 0;
}

.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] {
  margin-top: 0.25rem;
}
.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=bottom] > .arrow {
  top: calc(-0.25rem - 1px);
}
.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=bottom] > .arrow::before {
  top: 0;
  border-width: 0 0.25rem 0.25rem 0.25rem;
  border-bottom-color: #dcdbd9;
}
.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=bottom] > .arrow::after {
  top: 1px;
  border-width: 0 0.25rem 0.25rem 0.25rem;
}
.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 0.5rem;
  margin-left: -0.25rem;
  content: "";
  border-bottom: 1px solid rgb(247.35, 247.35, 247.35);
}

.bs-popover-left, .bs-popover-auto[x-placement^=left] {
  margin-right: 0.25rem;
}
.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=left] > .arrow {
  right: calc(-0.25rem - 1px);
  width: 0.25rem;
  height: 0.5rem;
  margin: 0.3rem 0;
}
.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=left] > .arrow::before {
  right: 0;
  border-width: 0.25rem 0 0.25rem 0.25rem;
  border-left-color: #dcdbd9;
}
.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=left] > .arrow::after {
  right: 1px;
  border-width: 0.25rem 0 0.25rem 0.25rem;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  color: #3a383d;
  border-bottom: 1px solid rgb(234.6, 234.6, 234.6);
}
.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #3a383d;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a:not(.btn) {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #747273;
    page-break-inside: avoid;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }
  .container {
    min-width: 992px !important;
  }
  .navbar {
    display: none;
  }
  .badge {
    border: 1px solid #050408;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #a5a3a3 !important;
  }
  .table-dark {
    color: inherit;
  }
  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: #dcdbd9;
  }
  .table .thead-dark th {
    color: inherit;
    border-color: #dcdbd9;
  }
}
.bv-no-focus-ring:focus-visible {
  outline: none;
}

.dropdown:not(.dropleft) .dropdown-toggle.dropdown-toggle-no-caret::after {
  display: none !important;
}
.dropdown.dropleft .dropdown-toggle.dropdown-toggle-no-caret::before {
  display: none !important;
}
.dropdown .dropdown-menu:focus-visible {
  outline: none;
}

.b-dropdown-form {
  display: inline-block;
  padding: 8px 12px;
  width: 100%;
  clear: both;
  font-weight: 400;
}
.b-dropdown-form:focus-visible {
  outline: 1px dotted !important;
  outline: 5px auto -webkit-focus-ring-color !important;
}
.b-dropdown-form.disabled, .b-dropdown-form:disabled {
  outline: 0 !important;
  color: #747273;
  pointer-events: none;
}

.b-dropdown-text {
  display: inline-block;
  padding: 8px 12px;
  margin-bottom: 0;
  width: 100%;
  clear: both;
  font-weight: lighter;
}

.modal-backdrop {
  opacity: 0.64;
}

.popover.b-popover {
  display: block;
  opacity: 1;
  outline: 0;
}
.popover.b-popover.fade:not(.show) {
  opacity: 0;
}
.popover.b-popover.show {
  opacity: 1;
}

.table.b-table.b-table-fixed {
  table-layout: fixed;
}
.table.b-table.b-table-no-border-collapse {
  border-collapse: separate;
  border-spacing: 0;
}
.table.b-table[aria-busy=true] {
  opacity: 1;
}
.table.b-table > tbody > tr.b-table-details > td {
  border-top: none !important;
}
.table.b-table > caption {
  caption-side: bottom;
}
.table.b-table.b-table-caption-top > caption {
  caption-side: top !important;
}
.table.b-table > tbody > .table-active,
.table.b-table > tbody > .table-active > th,
.table.b-table > tbody > .table-active > td {
  background-color: rgba(5, 4, 8, 0.075);
}
.table.b-table.table-hover > tbody > tr.table-active:hover td,
.table.b-table.table-hover > tbody > tr.table-active:hover th {
  color: #3a383d;
  background-image: linear-gradient(rgba(5, 4, 8, 0.075), rgba(5, 4, 8, 0.075));
  background-repeat: no-repeat;
}
.table.b-table > tbody > .bg-active,
.table.b-table > tbody > .bg-active > th,
.table.b-table > tbody > .bg-active > td {
  background-color: rgba(255, 255, 255, 0.075) !important;
}
.table.b-table.table-hover.table-dark > tbody > tr.bg-active:hover td,
.table.b-table.table-hover.table-dark > tbody > tr.bg-active:hover th {
  color: #fff;
  background-image: linear-gradient(rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.075));
  background-repeat: no-repeat;
}

.b-table-sticky-header,
.table-responsive {
  margin-bottom: 0.5rem;
}
.b-table-sticky-header > .table,
.table-responsive > .table {
  margin-bottom: 0;
}

.b-table-sticky-header {
  overflow-y: auto;
  max-height: 300px;
}

@media print {
  .b-table-sticky-header {
    overflow-y: visible !important;
    max-height: none !important;
  }
}
@supports (position: sticky) {
  .b-table-sticky-header > .table.b-table > thead > tr > th {
    position: sticky;
    top: 0;
    z-index: 2;
  }
  .b-table-sticky-header > .table.b-table > thead > tr > .b-table-sticky-column,
  .b-table-sticky-header > .table.b-table > tbody > tr > .b-table-sticky-column,
  .b-table-sticky-header > .table.b-table > tfoot > tr > .b-table-sticky-column,
  .table-responsive > .table.b-table > thead > tr > .b-table-sticky-column,
  .table-responsive > .table.b-table > tbody > tr > .b-table-sticky-column,
  .table-responsive > .table.b-table > tfoot > tr > .b-table-sticky-column {
    position: sticky;
    left: 0;
  }
  .b-table-sticky-header > .table.b-table > thead > tr > .b-table-sticky-column,
  .table-responsive > .table.b-table > thead > tr > .b-table-sticky-column {
    z-index: 5;
  }
  .b-table-sticky-header > .table.b-table > tbody > tr > .b-table-sticky-column,
  .b-table-sticky-header > .table.b-table > tfoot > tr > .b-table-sticky-column,
  .table-responsive > .table.b-table > tbody > tr > .b-table-sticky-column,
  .table-responsive > .table.b-table > tfoot > tr > .b-table-sticky-column {
    z-index: 2;
  }
  .table.b-table > thead > tr > .table-b-table-default,
  .table.b-table > tbody > tr > .table-b-table-default,
  .table.b-table > tfoot > tr > .table-b-table-default {
    color: #3a383d;
    background-color: #fff;
  }
  .table.b-table.table-dark > thead > tr > .bg-b-table-default,
  .table.b-table.table-dark > tbody > tr > .bg-b-table-default,
  .table.b-table.table-dark > tfoot > tr > .bg-b-table-default {
    color: #fff;
    background-color: #3a383d;
  }
  .table.b-table.table-striped > tbody > tr:nth-of-type(odd) > .table-b-table-default {
    background-image: linear-gradient(var(--gl-background-color-subtle), var(--gl-background-color-subtle));
    background-repeat: no-repeat;
  }
  .table.b-table.table-striped.table-dark > tbody > tr:nth-of-type(odd) > .bg-b-table-default {
    background-image: linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05));
    background-repeat: no-repeat;
  }
  .table.b-table.table-hover > tbody > tr:hover > .table-b-table-default {
    color: #3a383d;
    background-image: linear-gradient(rgba(5, 4, 8, 0.075), rgba(5, 4, 8, 0.075));
    background-repeat: no-repeat;
  }
  .table.b-table.table-hover.table-dark > tbody > tr:hover > .bg-b-table-default {
    color: #fff;
    background-image: linear-gradient(rgba(255, 255, 255, 0.075), rgba(255, 255, 255, 0.075));
    background-repeat: no-repeat;
  }
}
.table.b-table > thead > tr > [aria-sort],
.table.b-table > tfoot > tr > [aria-sort] {
  cursor: pointer;
  background-image: none;
  background-repeat: no-repeat;
  background-size: 0.65em 1em;
}
.table.b-table > thead > tr > [aria-sort]:not(.b-table-sort-icon-left),
.table.b-table > tfoot > tr > [aria-sort]:not(.b-table-sort-icon-left) {
  background-position: right calc(0.75rem / 2) center;
  padding-right: calc(0.75rem + 0.65em);
}
.table.b-table > thead > tr > [aria-sort].b-table-sort-icon-left,
.table.b-table > tfoot > tr > [aria-sort].b-table-sort-icon-left {
  background-position: left calc(0.75rem / 2) center;
  padding-left: calc(0.75rem + 0.65em);
}
.table.b-table > thead > tr > [aria-sort=none],
.table.b-table > tfoot > tr > [aria-sort=none] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > [aria-sort=ascending],
.table.b-table > tfoot > tr > [aria-sort=ascending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='black' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > [aria-sort=descending],
.table.b-table > tfoot > tr > [aria-sort=descending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='black' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='black' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table.table-dark > thead > tr > [aria-sort=none], .table.b-table.table-dark > tfoot > tr > [aria-sort=none],
.table.b-table > .thead-dark > tr > [aria-sort=none] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table.table-dark > thead > tr > [aria-sort=ascending], .table.b-table.table-dark > tfoot > tr > [aria-sort=ascending],
.table.b-table > .thead-dark > tr > [aria-sort=ascending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table.table-dark > thead > tr > [aria-sort=descending], .table.b-table.table-dark > tfoot > tr > [aria-sort=descending],
.table.b-table > .thead-dark > tr > [aria-sort=descending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > .table-dark[aria-sort=none],
.table.b-table > tfoot > tr > .table-dark[aria-sort=none] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22zM51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > .table-dark[aria-sort=ascending],
.table.b-table > tfoot > tr > .table-dark[aria-sort=ascending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table > thead > tr > .table-dark[aria-sort=descending],
.table.b-table > tfoot > tr > .table-dark[aria-sort=descending] {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' view-box='0 0 101 101' preserveAspectRatio='none'%3e%3cpath fill='white' opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3e%3cpath fill='white' d='M51 101l25-23 24-22H1l25 22z'/%3e%3c/svg%3e");
}
.table.b-table.table-sm > thead > tr > [aria-sort]:not(.b-table-sort-icon-left),
.table.b-table.table-sm > tfoot > tr > [aria-sort]:not(.b-table-sort-icon-left) {
  background-position: right calc(0.3rem / 2) center;
  padding-right: calc(0.3rem + 0.65em);
}
.table.b-table.table-sm > thead > tr > [aria-sort].b-table-sort-icon-left,
.table.b-table.table-sm > tfoot > tr > [aria-sort].b-table-sort-icon-left {
  background-position: left calc(0.3rem / 2) center;
  padding-left: calc(0.3rem + 0.65em);
}

.table.b-table.b-table-selectable:not(.b-table-selectable-no-click) > tbody > tr {
  cursor: pointer;
}
.table.b-table.b-table-selectable:not(.b-table-selectable-no-click).b-table-selecting.b-table-select-range > tbody > tr {
  -webkit-user-select: none;
          user-select: none;
}

@container (width < 576px) {
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm {
    display: block;
    width: 100%;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > caption,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr > td,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr > th {
    display: block;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > thead,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tfoot {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > thead > tr.b-table-top-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > thead > tr.b-table-bottom-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tfoot > tr.b-table-top-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > caption {
    caption-side: top !important;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr.top-row, :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr.bottom-row {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr > [rowspan] + td,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-sm > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm {
    display: block;
    width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > caption,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr > td,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr > th {
    display: block;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > thead,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tfoot {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > thead > tr.b-table-top-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > thead > tr.b-table-bottom-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tfoot > tr.b-table-top-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > caption {
    caption-side: top !important;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr.top-row, :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr.bottom-row {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr > [rowspan] + td,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-sm > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@container (width < 768px) {
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md {
    display: block;
    width: 100%;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > caption,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr > td,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr > th {
    display: block;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > thead,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tfoot {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > thead > tr.b-table-top-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > thead > tr.b-table-bottom-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tfoot > tr.b-table-top-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > caption {
    caption-side: top !important;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr.top-row, :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr.bottom-row {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr > [rowspan] + td,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-md > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md {
    display: block;
    width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > caption,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr > td,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr > th {
    display: block;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > thead,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tfoot {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > thead > tr.b-table-top-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > thead > tr.b-table-bottom-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tfoot > tr.b-table-top-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > caption {
    caption-side: top !important;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr.top-row, :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr.bottom-row {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr > [rowspan] + td,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-md > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@container (width < 992px) {
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg {
    display: block;
    width: 100%;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > caption,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr > td,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr > th {
    display: block;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > thead,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tfoot {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > thead > tr.b-table-top-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > thead > tr.b-table-bottom-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tfoot > tr.b-table-top-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > caption {
    caption-side: top !important;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr.top-row, :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr.bottom-row {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr > [rowspan] + td,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-lg > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg {
    display: block;
    width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > caption,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr > td,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr > th {
    display: block;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > thead,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tfoot {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > thead > tr.b-table-top-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > thead > tr.b-table-bottom-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tfoot > tr.b-table-top-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > caption {
    caption-side: top !important;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr.top-row, :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr.bottom-row {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr > [rowspan] + td,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-lg > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@container (width < 1200px) {
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl {
    display: block;
    width: 100%;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > caption,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr > td,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr > th {
    display: block;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > thead,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tfoot {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > thead > tr.b-table-top-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > thead > tr.b-table-bottom-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tfoot > tr.b-table-top-row,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > caption {
    caption-side: top !important;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr.top-row, :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr.bottom-row {
    display: none;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr > [rowspan] + td,
  :where(html.with-gl-container-queries) .table.b-table.b-table-stacked-xl > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
@media (width < 1200px) {
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl {
    display: block;
    width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > caption,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr > td,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr > th {
    display: block;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > thead,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tfoot {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > thead > tr.b-table-top-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > thead > tr.b-table-bottom-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tfoot > tr.b-table-top-row,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tfoot > tr.b-table-bottom-row {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > caption {
    caption-side: top !important;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr > [data-label]::before {
    content: attr(data-label);
    width: 40%;
    float: left;
    text-align: right;
    overflow-wrap: break-word;
    font-weight: bold;
    font-style: normal;
    padding: 0 calc(1rem / 2) 0 0;
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr > [data-label]::after {
    display: block;
    clear: both;
    content: "";
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr > [data-label] > div {
    display: inline-block;
    width: calc(100% - 40%);
    padding: 0 0 0 calc(1rem / 2);
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr.top-row, :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr.bottom-row {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr > :first-child {
    border-top-width: 3px;
  }
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr > [rowspan] + td,
  :where(html:not(.with-gl-container-queries)) .table.b-table.b-table-stacked-xl > tbody > tr > [rowspan] + th {
    border-top-width: 3px;
  }
}
.table.b-table.b-table-stacked {
  display: block;
  width: 100%;
}
.table.b-table.b-table-stacked > caption,
.table.b-table.b-table-stacked > tbody,
.table.b-table.b-table-stacked > tbody > tr,
.table.b-table.b-table-stacked > tbody > tr > td,
.table.b-table.b-table-stacked > tbody > tr > th {
  display: block;
}
.table.b-table.b-table-stacked > thead,
.table.b-table.b-table-stacked > tfoot {
  display: none;
}
.table.b-table.b-table-stacked > thead > tr.b-table-top-row,
.table.b-table.b-table-stacked > thead > tr.b-table-bottom-row,
.table.b-table.b-table-stacked > tfoot > tr.b-table-top-row,
.table.b-table.b-table-stacked > tfoot > tr.b-table-bottom-row {
  display: none;
}
.table.b-table.b-table-stacked > caption {
  caption-side: top !important;
}
.table.b-table.b-table-stacked > tbody > tr > [data-label]::before {
  content: attr(data-label);
  width: 40%;
  float: left;
  text-align: right;
  overflow-wrap: break-word;
  font-weight: bold;
  font-style: normal;
  padding: 0 calc(1rem / 2) 0 0;
  margin: 0;
}
.table.b-table.b-table-stacked > tbody > tr > [data-label]::after {
  display: block;
  clear: both;
  content: "";
}
.table.b-table.b-table-stacked > tbody > tr > [data-label] > div {
  display: inline-block;
  width: calc(100% - 40%);
  padding: 0 0 0 calc(1rem / 2);
  margin: 0;
}
.table.b-table.b-table-stacked > tbody > tr.top-row, .table.b-table.b-table-stacked > tbody > tr.bottom-row {
  display: none;
}
.table.b-table.b-table-stacked > tbody > tr > :first-child {
  border-top-width: 3px;
}
.table.b-table.b-table-stacked > tbody > tr > [rowspan] + td,
.table.b-table.b-table-stacked > tbody > tr > [rowspan] + th {
  border-top-width: 3px;
}

.tooltip.b-tooltip {
  display: block;
  opacity: 1;
  outline: 0;
}
.tooltip.b-tooltip.fade:not(.show) {
  opacity: 0;
}
.tooltip.b-tooltip.show {
  opacity: 1;
}
.tooltip.b-tooltip.noninteractive {
  pointer-events: none;
}
.tooltip.b-tooltip .arrow {
  margin: 0 0.25rem;
}
.tooltip.b-tooltip.bs-tooltip-right .arrow, .tooltip.b-tooltip.bs-tooltip-auto[x-placement^=right] .arrow, .tooltip.b-tooltip.bs-tooltip-left .arrow, .tooltip.b-tooltip.bs-tooltip-auto[x-placement^=left] .arrow {
  margin: 0.25rem 0;
}

/**
 * Do not edit directly, this file was auto-generated.
 */
:root, .gl-light-scope {
  --gl-border-radius-full: 9999px;
  --gl-color-alpha-0: rgba(0, 0, 0, 0);
  --gl-color-alpha-dark-2: rgba(5, 5, 6, 0.02);
  --gl-color-alpha-dark-4: rgba(5, 5, 6, 0.04);
  --gl-color-alpha-dark-6: rgba(5, 5, 6, 0.06);
  --gl-color-alpha-dark-8: rgba(5, 5, 6, 0.08);
  --gl-color-alpha-dark-16: rgba(5, 5, 6, 0.16);
  --gl-color-alpha-dark-24: rgba(5, 5, 6, 0.24);
  --gl-color-alpha-dark-40: rgba(5, 5, 6, 0.4);
  --gl-color-alpha-light-2: rgba(255, 255, 255, 0.02);
  --gl-color-alpha-light-4: rgba(255, 255, 255, 0.04);
  --gl-color-alpha-light-6: rgba(255, 255, 255, 0.06);
  --gl-color-alpha-light-8: rgba(255, 255, 255, 0.08);
  --gl-color-alpha-light-16: rgba(255, 255, 255, 0.16);
  --gl-color-alpha-light-24: rgba(255, 255, 255, 0.24);
  --gl-color-alpha-light-36: rgba(255, 255, 255, 0.36);
  --gl-color-alpha-light-40: rgba(255, 255, 255, 0.4);
  --gl-color-blue-50: #e8f2fd;
  --gl-color-blue-100: #c8e0f9;
  --gl-color-blue-200: #9dc8f2;
  --gl-color-blue-300: #64a7e9;
  --gl-color-blue-400: #3f8edd;
  --gl-color-blue-500: #1f73ca;
  --gl-color-blue-600: #2566b5;
  --gl-color-blue-700: #27599f;
  --gl-color-blue-800: #254581;
  --gl-color-blue-900: #1f3166;
  --gl-color-blue-950: #1d2153;
  --gl-color-brand-white: #fff;
  --gl-color-brand-charcoal: #171321;
  --gl-color-brand-orange-01g: #ffd1bf;
  --gl-color-brand-orange-01p: #fca326;
  --gl-color-brand-orange-02p: #fc6d26;
  --gl-color-brand-orange-03p: #e24329;
  --gl-color-brand-purple-01g: #ceb3ef;
  --gl-color-brand-purple-01p: #a989f5;
  --gl-color-brand-purple-02p: #7759c2;
  --gl-color-brand-gray-01: #d1d0d3;
  --gl-color-brand-gray-02: #a2a1a6;
  --gl-color-brand-gray-03: #74717a;
  --gl-color-brand-gray-04: #45424d;
  --gl-color-brand-gray-05: #2b2838;
  --gl-color-brand-pink-01g: #ffb9c9;
  --gl-color-data-green-50: #ddfab7;
  --gl-color-data-green-100: #c6ed94;
  --gl-color-data-green-200: #b0d97b;
  --gl-color-data-green-300: #94c25e;
  --gl-color-data-green-400: #81ac41;
  --gl-color-data-green-500: #619025;
  --gl-color-data-green-600: #4e7f0e;
  --gl-color-data-green-700: #366800;
  --gl-color-data-green-800: #275600;
  --gl-color-data-green-900: #1a4500;
  --gl-color-data-green-950: #133a03;
  --gl-color-data-aqua-50: #b5fefd;
  --gl-color-data-aqua-100: #93f2ef;
  --gl-color-data-aqua-200: #5edee3;
  --gl-color-data-aqua-300: #32c5d2;
  --gl-color-data-aqua-400: #00acc4;
  --gl-color-data-aqua-500: #0090b1;
  --gl-color-data-aqua-600: #007b9b;
  --gl-color-data-aqua-700: #006381;
  --gl-color-data-aqua-800: #00516c;
  --gl-color-data-aqua-900: #004059;
  --gl-color-data-aqua-950: #00344b;
  --gl-color-data-blue-50: #e9ebff;
  --gl-color-data-blue-100: #d2dcff;
  --gl-color-data-blue-200: #b7c6ff;
  --gl-color-data-blue-300: #97acff;
  --gl-color-data-blue-400: #7992f5;
  --gl-color-data-blue-500: #617ae2;
  --gl-color-data-blue-600: #4e65cd;
  --gl-color-data-blue-700: #3f51ae;
  --gl-color-data-blue-800: #374291;
  --gl-color-data-blue-900: #303470;
  --gl-color-data-blue-950: #2a2b59;
  --gl-color-data-magenta-50: #ffe3eb;
  --gl-color-data-magenta-100: #ffccdb;
  --gl-color-data-magenta-200: #fcacc5;
  --gl-color-data-magenta-300: #f88aaf;
  --gl-color-data-magenta-400: #e86e9a;
  --gl-color-data-magenta-500: #cf4d81;
  --gl-color-data-magenta-600: #b93d71;
  --gl-color-data-magenta-700: #9a2e5d;
  --gl-color-data-magenta-800: #7c214f;
  --gl-color-data-magenta-900: #661e3a;
  --gl-color-data-magenta-950: #541d31;
  --gl-color-data-orange-50: #fae8d1;
  --gl-color-data-orange-100: #f5d6b3;
  --gl-color-data-orange-200: #eebd8c;
  --gl-color-data-orange-300: #e99b60;
  --gl-color-data-orange-400: #e07e41;
  --gl-color-data-orange-500: #c95d2e;
  --gl-color-data-orange-600: #b14f18;
  --gl-color-data-orange-700: #92430a;
  --gl-color-data-orange-800: #6f3500;
  --gl-color-data-orange-900: #5e2f05;
  --gl-color-data-orange-950: #4b2707;
  --gl-color-green-50: #e6f5ea;
  --gl-color-green-100: #bee6d0;
  --gl-color-green-200: #84d4b6;
  --gl-color-green-300: #35b597;
  --gl-color-green-400: #129c84;
  --gl-color-green-500: #0d8070;
  --gl-color-green-600: #0c7265;
  --gl-color-green-700: #0b645a;
  --gl-color-green-800: #075048;
  --gl-color-green-900: #003c36;
  --gl-color-green-950: #002c26;
  --gl-color-neutral-0: #fff;
  --gl-color-neutral-10: #f7f7f5;
  --gl-color-neutral-50: #ecebea;
  --gl-color-neutral-100: #dcdbd9;
  --gl-color-neutral-200: #c1bfbe;
  --gl-color-neutral-300: #a5a3a3;
  --gl-color-neutral-400: #8a8888;
  --gl-color-neutral-500: #747273;
  --gl-color-neutral-600: #646163;
  --gl-color-neutral-700: #4d4b4e;
  --gl-color-neutral-800: #3a383d;
  --gl-color-neutral-900: #28272d;
  --gl-color-neutral-950: #18171d;
  --gl-color-neutral-1000: #050408;
  --gl-color-orange-50: #fdf0d5;
  --gl-color-orange-100: #fada9c;
  --gl-color-orange-200: #f7b951;
  --gl-color-orange-300: #fb8017;
  --gl-color-orange-400: #e95f21;
  --gl-color-orange-500: #c74816;
  --gl-color-orange-600: #b34013;
  --gl-color-orange-700: #9e3811;
  --gl-color-orange-800: #7d2d0e;
  --gl-color-orange-900: #5d220d;
  --gl-color-orange-950: #461807;
  --gl-color-purple-50: #f4f0fc;
  --gl-color-purple-100: #e1daf7;
  --gl-color-purple-200: #c9beef;
  --gl-color-purple-300: #a997e1;
  --gl-color-purple-400: #927cd7;
  --gl-color-purple-500: #7862c8;
  --gl-color-purple-600: #6a54c0;
  --gl-color-purple-700: #5b46b8;
  --gl-color-purple-800: #483698;
  --gl-color-purple-900: #362676;
  --gl-color-purple-950: #291a5c;
  --gl-color-red-50: #feeef0;
  --gl-color-red-100: #ffd3d7;
  --gl-color-red-200: #ffafb8;
  --gl-color-red-300: #fc7988;
  --gl-color-red-400: #f15168;
  --gl-color-red-500: #de1d4b;
  --gl-color-red-600: #c52042;
  --gl-color-red-700: #ac203a;
  --gl-color-red-800: #891c2f;
  --gl-color-red-900: #641925;
  --gl-color-red-950: #48151d;
  --gl-font-family-regular: var(--default-regular-font, 'GitLab Sans'),'GitLab Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Noto Sans',Ubuntu,Cantarell,'Helvetica Neue',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';
  --gl-font-family-monospace: var(--default-mono-font, 'GitLab Mono'),'GitLab Mono','JetBrains Mono',Menlo,'DejaVu Sans Mono','Liberation Mono',Consolas,'Ubuntu Mono','Courier New','andale mono','lucida console',monospace;
  --gl-font-size-100: 0.75rem; /** Used for meta text and small labels. */
  --gl-font-size-200: 0.8125rem; /** Used for level 6 headings. */
  --gl-font-size-300: 0.875rem; /** Used for level 5 headings, body text, input labels, and help text. */
  --gl-font-size-400: 1rem; /** Used for level 4 headings, large body text. */
  --gl-font-size-500: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem); /** Used for responsive level 3 headings. */
  --gl-font-size-600: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem); /** Used for responsive level 2 headings. */
  --gl-font-size-700: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem); /** Used for responsive level 1 headings */
  --gl-font-size-800: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem); /** Used for a responsive display option that can be applied to a level 1 heading to increase its prominence. */
  --gl-font-size-xs: 0.625rem;
  --gl-font-size-100-fixed: 0.75rem; /** Used for meta text and small labels. */
  --gl-font-size-200-fixed: 0.8125rem; /** Used for level 6 headings. */
  --gl-font-size-300-fixed: 0.875rem; /** Used for level 5 headings, body text, input labels, and help text. */
  --gl-font-size-400-fixed: 1rem; /** Used for level 4 headings, large body text. */
  --gl-font-size-500-fixed: 1.125rem; /** Used for level 3 headings. */
  --gl-font-size-600-fixed: 1.3125rem; /** Used for level 2 headings. */
  --gl-font-size-700-fixed: 1.5rem; /** Used for level 1 headings */
  --gl-font-size-800-fixed: 1.75rem; /** Used for a display option that can be applied to a level 1 heading to increase its prominence. */
  --gl-font-weight-100: 100;
  --gl-font-weight-300: 300;
  --gl-font-weight-normal: 400;
  --gl-font-weight-semibold: 500;
  --gl-font-weight-bold: 600;
  --gl-line-height-12: 0.75rem;
  --gl-line-height-16: 1rem;
  --gl-line-height-20: 1.25rem;
  --gl-line-height-24: 1.5rem;
  --gl-line-height-28: 1.75rem;
  --gl-line-height-32: 2rem;
  --gl-line-height-36: 2.25rem;
  --gl-line-height-42: 2.625rem;
  --gl-line-height-44: 2.75rem;
  --gl-line-height-52: 3.25rem;
  --gl-line-height-heading: 1.25;
  --gl-opacity-0: 0;
  --gl-opacity-1: .1;
  --gl-opacity-2: .2;
  --gl-opacity-3: .3;
  --gl-opacity-4: .4;
  --gl-opacity-5: .5;
  --gl-opacity-6: .6;
  --gl-opacity-7: .7;
  --gl-opacity-8: .8;
  --gl-opacity-9: .9;
  --gl-opacity-10: 1;
  --gl-spacing-scale-0: 0px;
  --gl-spacing-scale-1: 0.125rem;
  --gl-spacing-scale-2: 0.25rem;
  --gl-spacing-scale-3: 0.5rem;
  --gl-spacing-scale-4: 0.75rem;
  --gl-spacing-scale-5: 1rem;
  --gl-spacing-scale-6: 1.5rem;
  --gl-spacing-scale-7: 2rem;
  --gl-spacing-scale-8: 2.5rem;
  --gl-spacing-scale-9: 3rem;
  --gl-spacing-scale-10: 3.5rem;
  --gl-spacing-scale-11: 4rem;
  --gl-spacing-scale-12: 5rem;
  --gl-spacing-scale-13: 6rem;
  --gl-spacing-scale-15: 7.5rem;
  --gl-spacing-scale-18: 9rem;
  --gl-spacing-scale-20: 10rem;
  --gl-spacing-scale-26: 13rem;
  --gl-spacing-scale-28: 14rem;
  --gl-spacing-scale-30: 15rem;
  --gl-spacing-scale-31: 15.5rem;
  --gl-spacing-scale-33: 16.5rem;
  --gl-spacing-scale-34: 17rem;
  --gl-spacing-scale-37: 18.5rem;
  --gl-spacing-scale-48: 24rem;
  --gl-spacing-scale-62: 31rem;
  --gl-spacing-scale-75: 37.5rem;
  --gl-spacing-scale-80: 40rem;
  --gl-spacing-scale-88: 44rem;
  --gl-spacing-scale-px: 1px;
  --gl-spacing-scale-2-5: 0.375rem;
  --gl-spacing-scale-11-5: 4.5rem;
  --gl-zindex-0: 0;
  --gl-zindex-1: 1;
  --gl-zindex-2: 2;
  --gl-zindex-3: 3;
  --gl-zindex-4: 4;
  --gl-zindex-200: 200;
  --gl-zindex-9999: 9999;
  --gl-avatar-fallback-background-color-red: rgba(255, 175, 184, 0.23921568627450981); /** Red background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-purple: rgba(201, 190, 239, 0.23921568627450981); /** Purple background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-blue: rgba(157, 200, 242, 0.23921568627450981); /** Blue background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-green: rgba(132, 212, 182, 0.23921568627450981); /** Green background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-orange: rgba(247, 185, 81, 0.23921568627450981); /** Orange background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-neutral: rgba(191, 191, 195, 0.23921568627450981); /** Neutral background for avatar fallback with no particular meaning. */
  --gl-broadcast-banner-background-color-blue: #235180; /** Used for the background for the blue banner type. */
  --gl-broadcast-banner-background-color-green: #1b653f; /** Used for the background for the green banner type. */
  --gl-broadcast-banner-background-color-indigo: #41419f; /** Used for the background for the indigo banner type. */
  --gl-broadcast-banner-background-color-lightblue: #4977a5; /** Used for the background for the lightblue banner type. */
  --gl-broadcast-banner-background-color-lightgreen: #308258; /** Used for the background for the lightgreen banner type. */
  --gl-broadcast-banner-background-color-lightindigo: #6666c4; /** Used for the background for the lightindigo banner type. */
  --gl-broadcast-banner-background-color-lightred: #ad4a3b; /** Used for the background for the lightred banner type. */
  --gl-broadcast-banner-background-color-red: #8f2110; /** Used for the background for the red banner type. */
  --gl-broadcast-banner-border-color-blue: #0b2640; /** Used for the border for the blue banner type. */
  --gl-broadcast-banner-border-color-green: #0e4328; /** Used for the border for the green banner type. */
  --gl-broadcast-banner-border-color-indigo: #222261; /** Used for the border for the indigo banner type. */
  --gl-broadcast-banner-border-color-lightblue: #235180; /** Used for the border for the lightblue banner type. */
  --gl-broadcast-banner-border-color-lightgreen: #1b653f; /** Used for the border for the lightgreen banner type. */
  --gl-broadcast-banner-border-color-lightindigo: #41419f; /** Used for the border for the lightindigo banner type. */
  --gl-broadcast-banner-border-color-lightred: #8f2110; /** Used for the border for the lightred banner type. */
  --gl-broadcast-banner-border-color-red: #580d02; /** Used for the border for the red banner type. */
  --gl-chart-threshold-area-color: rgba(222, 29, 75, 0.1); /** Used in charts to delineate a threshold area in a chart. */
  --gl-illustration-stroke-color-default: #171321; /** Default stroke color to define shape and provide essential detail. */
  --gl-illustration-stroke-width-default: 2; /** Default stroke width to define shape and provide essential detail. */
  --gl-illustration-fill-color-default: #fff; /** Default fill color for an element where specific meaning or emphasis is not required. */
  --gl-illustration-status-fill-color-neutral: #aea5d6; /** Used as a fill to convey a concept which is neither positive or negative. */
  --gl-illustration-status-fill-color-success: #6fdac9; /** Used as a fill to convey a success or active concept, has a positive connotation. */
  --gl-illustration-status-fill-color-warning: #fca326; /** Used as a fill to convey a caution or warning concept, has a slightly negative connotation. */
  --gl-illustration-status-fill-color-danger: #ff9d73; /** Used as a fill to convey a critical or danger concept, has a negative connotation. */
  --gl-illustration-accent-stroke-color-orange: #ff9d73; /** Used for orange accent stroke detail on an object or attention-drawing element. */
  --gl-illustration-accent-stroke-color-teal: #6fdac9; /** Used for teal accent stroke detail on an object or attention-drawing element. */
  --gl-illustration-accent-stroke-color-strong: #aea5d6; /** Used for dark accent stroke detail on an object or attention-drawing element. */
  --gl-illustration-accent-fill-color-subtle: #d0c5e2; /** Used to add depth to a secondary element and supporting surface. */
  --gl-illustration-accent-fill-color-strong: #aea5d6; /** Used for an element requiring visual emphasis without competing with primary content or status indicators. */
  --gl-illustration-accent-fill-color-orange: #ff9d73; /** Used to add orange to a secondary element and supporting surface. */
  --gl-illustration-accent-fill-color-teal: #6fdac9; /** Used to add teal to a secondary element and supporting surface. */
  --gl-illustration-base-fill-color: #e7e4f2; /** Used for the consistent background shape present across all illustrations. Provides a unified foundation that visually grounds each illustration while maintaining system cohesion. */
  --gl-illustration-isometric-stroke-color-default: #171321; /** Default stroke color to define shape and provide essential detail in isometric illustration. */
  --gl-illustration-isometric-stroke-width-default: 2; /** Default stroke width to define shape and provide essential detail in isometric illustration. */
  --gl-illustration-isometric-glyph-top-fill-color: #c5f4ec; /** Used for the top face of isometric text and number elements. */
  --gl-illustration-isometric-glyph-front-fill-color: #fff; /** Used for the front face of isometric text and number elements. */
  --gl-illustration-isometric-glyph-side-fill-color: #6fdac9; /** Used for the side face of isometric text and number elements. */
  --gl-illustration-isometric-glyph-shadow-fill-color: #10b1b1; /** Used for the shadow of isometric text and number elements. */
  --gl-illustration-isometric-object-top-fill-color: #ff9d73; /** Used for the top face of an isometric object or symbol. */
  --gl-illustration-isometric-object-front-fill-color: #ffc2a8; /** Used for the front face of an isometric object or symbol. */
  --gl-illustration-isometric-object-side-fill-color: #ff7b42; /** Used for the side face of an isometric object or symbol. */
  --gl-illustration-isometric-object-highlight-fill-color: #fff; /** Used for the face of an isometric object or symbol that requires maximum distinction from other elements. */
  --gl-illustration-isometric-object-shadow-fill-color: #e24329; /** Used for the shadow of an isometric object or symbol. */
  --gl-illustration-isometric-accent-top-fill-color: #45424d; /** Used for the top face of a supporting isometric element. Provides subtle dimensional variation without competing with primary content. */
  --gl-illustration-isometric-accent-front-fill-color: #74717a; /** Used for the front face of a supporting isometric element. Provides subtle dimensional variation without competing with primary content. */
  --gl-illustration-isometric-accent-side-fill-color: #2b2838; /** Used for the side face of a supporting isometric element. Provides subtle dimensional variation without competing with primary content. */
  --gl-illustration-isometric-base-top-fill-color: #e7e4f2; /** Used for the top surface of an isometric base platform. */
  --gl-illustration-isometric-base-front-fill-color: #d5d0e8; /** Used for the front face of an isometric base platform. */
  --gl-illustration-isometric-base-side-fill-color: #aea5d6; /** Used for the side face of an isometric base platform. */
  --gl-nav-item-font-weight: 425; /** Used for the font weight of a navigation item */
  --data-viz-green-50: #ddfab7;
  --data-viz-green-100: #c6ed94;
  --data-viz-green-200: #b0d97b;
  --data-viz-green-300: #94c25e;
  --data-viz-green-400: #81ac41;
  --data-viz-green-500: #619025;
  --data-viz-green-600: #4e7f0e;
  --data-viz-green-700: #366800;
  --data-viz-green-800: #275600;
  --data-viz-green-900: #1a4500;
  --data-viz-green-950: #133a03;
  --data-viz-aqua-50: #b5fefd;
  --data-viz-aqua-100: #93f2ef;
  --data-viz-aqua-200: #5edee3;
  --data-viz-aqua-300: #32c5d2;
  --data-viz-aqua-400: #00acc4;
  --data-viz-aqua-500: #0090b1;
  --data-viz-aqua-600: #007b9b;
  --data-viz-aqua-700: #006381;
  --data-viz-aqua-800: #00516c;
  --data-viz-aqua-900: #004059;
  --data-viz-aqua-950: #00344b;
  --data-viz-blue-50: #e9ebff;
  --data-viz-blue-100: #d2dcff;
  --data-viz-blue-200: #b7c6ff;
  --data-viz-blue-300: #97acff;
  --data-viz-blue-400: #7992f5;
  --data-viz-blue-500: #617ae2;
  --data-viz-blue-600: #4e65cd;
  --data-viz-blue-700: #3f51ae;
  --data-viz-blue-800: #374291;
  --data-viz-blue-900: #303470;
  --data-viz-blue-950: #2a2b59;
  --data-viz-magenta-50: #ffe3eb;
  --data-viz-magenta-100: #ffccdb;
  --data-viz-magenta-200: #fcacc5;
  --data-viz-magenta-300: #f88aaf;
  --data-viz-magenta-400: #e86e9a;
  --data-viz-magenta-500: #cf4d81;
  --data-viz-magenta-600: #b93d71;
  --data-viz-magenta-700: #9a2e5d;
  --data-viz-magenta-800: #7c214f;
  --data-viz-magenta-900: #661e3a;
  --data-viz-magenta-950: #541d31;
  --data-viz-orange-50: #fae8d1;
  --data-viz-orange-100: #f5d6b3;
  --data-viz-orange-200: #eebd8c;
  --data-viz-orange-300: #e99b60;
  --data-viz-orange-400: #e07e41;
  --data-viz-orange-500: #c95d2e;
  --data-viz-orange-600: #b14f18;
  --data-viz-orange-700: #92430a;
  --data-viz-orange-800: #6f3500;
  --data-viz-orange-900: #5e2f05;
  --data-viz-orange-950: #4b2707;
  --brand-charcoal: #171321; /** Use color.brand-charcoal instead. */
  --brand-orange-01: #fca326; /** Use color.brand-orange.01p instead. */
  --brand-orange-02: #fc6d26; /** Use color.brand-orange.02p instead. */
  --brand-orange-03: #e24329; /** Use color.brand-orange.03p instead. */
  --brand-purple-01: #a989f5; /** Use color.purple.01p instead. */
  --brand-purple-02: #7759c2; /** Use color.purple.02p instead. */
  --brand-gray-01: #d1d0d3; /** Use color.brand-gray.01 instead. */
  --brand-gray-02: #a2a1a6; /** Use color.brand-gray.02 instead. */
  --brand-gray-03: #74717a; /** Use color.brand-gray.03 instead. */
  --brand-gray-04: #45424d; /** Use color.brand-gray.04 instead. */
  --brand-gray-05: #2b2838; /** Use color.brand-gray.05 instead. */
  --t-gray-a-16: rgba(5, 5, 6, 0.16); /** Use color.alpha.dark.16 instead. */
  --t-gray-a-24: rgba(5, 5, 6, 0.24); /** Use color.alpha.dark.24 instead. */
  --t-gray-a-02: rgba(5, 5, 6, 0.02); /** Use color.alpha.dark.2 instead. */
  --t-gray-a-04: rgba(5, 5, 6, 0.04); /** Use color.alpha.dark.4 instead. */
  --t-gray-a-06: rgba(5, 5, 6, 0.06); /** Use color.alpha.dark.6 instead. */
  --t-gray-a-08: rgba(5, 5, 6, 0.08); /** Use color.alpha.dark.8 instead. */
  --t-white-a-16: rgba(255, 255, 255, 0.16); /** Use color.alpha.light.16 instead. */
  --t-white-a-24: rgba(255, 255, 255, 0.24); /** Use color.alpha.light.24 instead. */
  --t-white-a-36: rgba(255, 255, 255, 0.36); /** Use color.alpha.light.36 instead. */
  --t-white-a-02: rgba(255, 255, 255, 0.02); /** Use color.alpha.light.2 instead. */
  --t-white-a-04: rgba(255, 255, 255, 0.04); /** Use color.alpha.light.4 instead. */
  --t-white-a-06: rgba(255, 255, 255, 0.06); /** Use color.alpha.light.6 instead. */
  --t-white-a-08: rgba(255, 255, 255, 0.08); /** Use color.alpha.light.8 instead. */
  --gl-action-danger-background-color-default: rgba(222, 29, 75, 0); /** Used for the background of a danger (destructive) action in the default state. */
  --gl-action-danger-background-color-hover: rgba(222, 29, 75, 0.16); /** Used for the background of a danger (destructive) action in the hover state. */
  --gl-action-danger-background-color-active: rgba(172, 32, 58, 0.24); /** Used for the background of a danger (destructive) action in the active state. */
  --gl-letter-spacing-heading: -0.01em;
  --gl-heading-3-letter-spacing: inherit;
  --gl-heading-4-letter-spacing: inherit;
  --gl-heading-5-letter-spacing: inherit;
  --gl-heading-6-letter-spacing: inherit;
  --gl-heading-scale-100-letter-spacing: inherit;
  --gl-heading-scale-200-letter-spacing: inherit;
  --gl-heading-scale-300-letter-spacing: inherit;
  --gl-heading-scale-400-letter-spacing: inherit;
  --gl-heading-scale-500-letter-spacing: inherit;
  --gl-heading-scale-800-line-height: 1.125;
  --gl-heading-scale-100-fixed-letter-spacing: inherit;
  --gl-heading-scale-200-fixed-letter-spacing: inherit;
  --gl-heading-scale-300-fixed-letter-spacing: inherit;
  --gl-heading-scale-400-fixed-letter-spacing: inherit;
  --gl-heading-scale-500-fixed-letter-spacing: inherit;
  --gl-heading-scale-800-fixed-line-height: 1.125;
  --gl-heading-display-line-height: 1.125;
  --gl-heading-3-fixed-letter-spacing: inherit;
  --gl-heading-4-fixed-letter-spacing: inherit;
  --gl-heading-5-fixed-letter-spacing: inherit;
  --gl-heading-6-fixed-letter-spacing: inherit;
  --gl-border-color-transparent: var(--gl-color-alpha-0); /** Used when a border needs to be present, but not visibly perceived. */
  --gl-border-color-default: var(--gl-color-neutral-100); /** Used for the default border color. */
  --gl-border-color-subtle: var(--gl-color-neutral-50); /** Used for a subtle border in combination with the default background. */
  --gl-border-color-strong: var(--gl-color-neutral-200); /** Used for a distinct border that emphasizes an edge or boundaries. */
  --gl-border-radius-none: var(--gl-spacing-scale-0);
  --gl-border-radius-xs: var(--gl-spacing-scale-px);
  --gl-border-radius-sm: var(--gl-spacing-scale-1);
  --gl-border-radius-md: var(--gl-spacing-scale-2);
  --gl-border-radius-lg: var(--gl-spacing-scale-3);
  --gl-border-radius-xl: var(--gl-spacing-scale-4);
  --gl-border-radius-2xl: var(--gl-spacing-scale-5);
  --gl-border-radius-3xl: var(--gl-spacing-scale-6);
  --gl-font-size-sm: var(--gl-font-size-100);
  --gl-font-size-md: var(--gl-font-size-300);
  --gl-font-size-lg: var(--gl-font-size-400);
  --gl-font-weight-heading: var(--gl-font-weight-bold);
  --gl-heading-default-margin-top: var(--gl-spacing-scale-0);
  --gl-heading-default-margin-bottom: var(--gl-spacing-scale-5);
  --gl-shadow-color-default: var(--gl-color-alpha-dark-16); /** Used for the default shadow color. */
  --gl-alert-neutral-border-top-color: var(--gl-color-alpha-0); /** Used for the border color of a neutral alert. */
  --gl-alert-neutral-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of a neutral alert. */
  --gl-alert-info-border-top-color: var(--gl-color-alpha-0); /** Used for the border color of an info alert. */
  --gl-alert-info-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of an info alert. */
  --gl-alert-success-border-top-color: var(--gl-color-alpha-0); /** Used for the border color of a success alert. */
  --gl-alert-success-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of a success alert. */
  --gl-alert-warning-border-top-color: var(--gl-color-alpha-0); /** Used for the border color of a warning alert. */
  --gl-alert-warning-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of a warning alert. */
  --gl-alert-danger-border-top-color: var(--gl-color-alpha-0); /** Used for the border color of a danger alert. */
  --gl-alert-danger-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of a danger alert. */
  --gl-application-chrome-background-color: var(--gl-color-neutral-50); /** Used for the application chrome background, the lowest layer of the interface that sits beneath panels and contains global navigation, user actions, application navigation, and AI navigation. */
  --gl-avatar-border-color-default: var(--gl-color-alpha-dark-8); /** Used to define the edge of an avatar. */
  --gl-avatar-border-color-hover: var(--gl-color-alpha-dark-24); /** Used to increase the edge definition of an avatar in the hover state. */
  --gl-avatar-circle-border-radius-default: var(--gl-border-radius-full); /** Border radius for cirlce avatars at all sizes. */
  --gl-avatar-fallback-text-color-red: var(--gl-color-red-800); /** Red text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-purple: var(--gl-color-purple-800); /** Purple text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-blue: var(--gl-color-blue-800); /** Blue text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-green: var(--gl-color-green-800); /** Green text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-orange: var(--gl-color-orange-800); /** Orange text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-neutral: var(--gl-color-neutral-800); /** Neutral text color for avatar fallback with no particular meaning. */
  --gl-badge-muted-background-color-default: var(--gl-color-neutral-50); /** Used for the background of a muted badge when static or the default state when linked. */
  --gl-badge-muted-background-color-active: var(--gl-color-neutral-100); /** Used for the background of a muted badge in the active state. */
  --gl-badge-muted-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a muted badge when static or the default state when linked. */
  --gl-badge-muted-border-color-hover: var(--gl-color-neutral-200); /** Used for the border of a muted badge in the hover state. */
  --gl-badge-muted-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a muted badge in the focus state. */
  --gl-badge-muted-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a muted badge in the active state. */
  --gl-badge-muted-text-color-default: var(--gl-color-neutral-600); /** Used for the text of a muted badge when static or the default state when linked. */
  --gl-badge-muted-text-color-hover: var(--gl-color-neutral-700); /** Used for the text of a muted badge in the hover state. */
  --gl-badge-muted-text-color-active: var(--gl-color-neutral-800); /** Used for the text of a muted badge in the active state. */
  --gl-badge-muted-icon-color-default: var(--gl-color-neutral-500); /** Used for the icon of a muted badge when static or the default state when linked. */
  --gl-badge-muted-icon-color-hover: var(--gl-color-neutral-600); /** Used for the icon of a muted badge in the hover state. */
  --gl-badge-muted-icon-color-active: var(--gl-color-neutral-700); /** Used for the icon of a muted badge in the active state. */
  --gl-badge-neutral-background-color-default: var(--gl-color-neutral-100); /** Used for the background of a neutral badge when static or the default state when linked. */
  --gl-badge-neutral-background-color-active: var(--gl-color-neutral-200); /** Used for the background of a neutral badge in the active state. */
  --gl-badge-neutral-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a neutral badge when static or the default state when linked. */
  --gl-badge-neutral-border-color-hover: var(--gl-color-neutral-200); /** Used for the border of a neutral badge in the hover state. */
  --gl-badge-neutral-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a neutral badge in the focus state. */
  --gl-badge-neutral-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a neutral badge in the active state. */
  --gl-badge-neutral-text-color-default: var(--gl-color-neutral-700); /** Used for the text of a neutral badge when static or the default state when linked. */
  --gl-badge-neutral-text-color-hover: var(--gl-color-neutral-800); /** Used for the text of a neutral badge in the hover state. */
  --gl-badge-neutral-text-color-active: var(--gl-color-neutral-900); /** Used for the text of a neutral badge in the active state. */
  --gl-badge-neutral-icon-color-default: var(--gl-color-neutral-500); /** Used for the icon of a neutral badge when static or the default state when linked. */
  --gl-badge-neutral-icon-color-hover: var(--gl-color-neutral-600); /** Used for the icon of a neutral badge in the hover state. */
  --gl-badge-neutral-icon-color-active: var(--gl-color-neutral-700); /** Used for the icon of a neutral badge in the active state. */
  --gl-badge-info-background-color-default: var(--gl-color-blue-100); /** Used for the background of an informational badge when static or the default state when linked. */
  --gl-badge-info-background-color-active: var(--gl-color-blue-200); /** Used for the background of an informational badge in the active state. */
  --gl-badge-info-border-color-default: var(--gl-color-alpha-0); /** Used for the border of an informational badge when static or the default state when linked. */
  --gl-badge-info-border-color-hover: var(--gl-color-blue-200); /** Used for the border of an informational badge in the hover state. */
  --gl-badge-info-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of an informational badge in the focus state. */
  --gl-badge-info-border-color-active: var(--gl-color-alpha-0); /** Used for the border of an informational badge in the active state. */
  --gl-badge-info-text-color-default: var(--gl-color-blue-700); /** Used for the text of an informational badge when static or the default state when linked. */
  --gl-badge-info-text-color-hover: var(--gl-color-blue-800); /** Used for the text of an informational badge in the hover state. */
  --gl-badge-info-text-color-active: var(--gl-color-blue-900); /** Used for the text of an informational badge in the active state. */
  --gl-badge-info-icon-color-default: var(--gl-color-blue-500); /** Used for the icon of an informational badge when static or the default state when linked. */
  --gl-badge-info-icon-color-hover: var(--gl-color-blue-600); /** Used for the icon of an informational badge in the hover state. */
  --gl-badge-info-icon-color-active: var(--gl-color-blue-700); /** Used for the icon of an informational badge in the active state. */
  --gl-badge-success-background-color-default: var(--gl-color-green-100); /** Used for the background of a success badge when static or the default state when linked. */
  --gl-badge-success-background-color-active: var(--gl-color-green-200); /** Used for the background of a success badge in the active state. */
  --gl-badge-success-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a success badge when static or the default state when linked. */
  --gl-badge-success-border-color-hover: var(--gl-color-green-200); /** Used for the border of a success badge in the hover state. */
  --gl-badge-success-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a success badge in the focus state. */
  --gl-badge-success-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a success badge in the active state. */
  --gl-badge-success-text-color-default: var(--gl-color-green-700); /** Used for the text of a success badge when static or the default state when linked. */
  --gl-badge-success-text-color-hover: var(--gl-color-green-800); /** Used for the text of a success badge in the hover state. */
  --gl-badge-success-text-color-active: var(--gl-color-green-900); /** Used for the text of a success badge in the active state. */
  --gl-badge-success-icon-color-default: var(--gl-color-green-500); /** Used for the icon of a success badge when static or the default state when linked. */
  --gl-badge-success-icon-color-hover: var(--gl-color-green-600); /** Used for the icon of a success badge in the hover state. */
  --gl-badge-success-icon-color-active: var(--gl-color-green-700); /** Used for the icon of a success badge in the active state. */
  --gl-badge-warning-background-color-default: var(--gl-color-orange-100); /** Used for the background of a warning badge when static or the default state when linked. */
  --gl-badge-warning-background-color-active: var(--gl-color-orange-200); /** Used for the background of a warning badge in the active state. */
  --gl-badge-warning-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a warning badge when static or the default state when linked. */
  --gl-badge-warning-border-color-hover: var(--gl-color-orange-200); /** Used for the border of a warning badge in the hover state. */
  --gl-badge-warning-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a warning badge in the focus state. */
  --gl-badge-warning-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a warning badge in the active state. */
  --gl-badge-warning-text-color-default: var(--gl-color-orange-700); /** Used for the text of a warning badge when static or the default state when linked. */
  --gl-badge-warning-text-color-hover: var(--gl-color-orange-800); /** Used for the text of a warning badge in the hover state. */
  --gl-badge-warning-text-color-active: var(--gl-color-orange-900); /** Used for the text of a warning badge in the active state. */
  --gl-badge-warning-icon-color-default: var(--gl-color-orange-500); /** Used for the icon of a warning badge when static or the default state when linked. */
  --gl-badge-warning-icon-color-hover: var(--gl-color-orange-600); /** Used for the icon of a warning badge in the hover state. */
  --gl-badge-warning-icon-color-active: var(--gl-color-orange-700); /** Used for the icon of a warning badge in the active state. */
  --gl-badge-danger-background-color-default: var(--gl-color-red-100); /** Used for the background of a danger badge when static or the default state when linked. */
  --gl-badge-danger-background-color-active: var(--gl-color-red-200); /** Used for the background of a danger badge in the active state. */
  --gl-badge-danger-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a danger badge when static or the default state when linked. */
  --gl-badge-danger-border-color-hover: var(--gl-color-red-200); /** Used for the border of a danger badge in the hover state. */
  --gl-badge-danger-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a danger badge in the focus state. */
  --gl-badge-danger-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a danger badge in the active state. */
  --gl-badge-danger-text-color-default: var(--gl-color-red-700); /** Used for the text of a danger badge when static or the default state when linked. */
  --gl-badge-danger-text-color-hover: var(--gl-color-red-800); /** Used for the text of a danger badge in the hover state. */
  --gl-badge-danger-text-color-active: var(--gl-color-red-900); /** Used for the text of a danger badge in the active state. */
  --gl-badge-danger-icon-color-default: var(--gl-color-red-700); /** Used for the icon of a danger badge when static or the default state when linked. */
  --gl-badge-danger-icon-color-hover: var(--gl-color-red-800); /** Used for the icon of a danger badge in the hover state. */
  --gl-badge-danger-icon-color-active: var(--gl-color-red-900); /** Used for the icon of a danger badge in the active state. */
  --gl-badge-tier-background-color-default: var(--gl-color-purple-100); /** Used for the background of a tier related badge when static or the default state when linked. */
  --gl-badge-tier-background-color-active: var(--gl-color-purple-200); /** Used for the background of a tier related badge in the active state. */
  --gl-badge-tier-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a tier related badge when static or the default state when linked. */
  --gl-badge-tier-border-color-hover: var(--gl-color-purple-200); /** Used for the border of a tier related badge in the hover state. */
  --gl-badge-tier-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a tier related badge in the focus state. */
  --gl-badge-tier-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a tier related badge in the active state. */
  --gl-badge-tier-text-color-default: var(--gl-color-purple-700); /** Used for the text of a tier related badge when static or the default state when linked. */
  --gl-badge-tier-text-color-hover: var(--gl-color-purple-800); /** Used for the text of a tier related badge in the hover state. */
  --gl-badge-tier-text-color-active: var(--gl-color-purple-900); /** Used for the text of a tier related badge in the active state. */
  --gl-badge-tier-icon-color-default: var(--gl-color-purple-700); /** Used for the icon of a tier related badge when static or the default state when linked. */
  --gl-badge-tier-icon-color-hover: var(--gl-color-purple-800); /** Used for the icon of a tier related badge in the hover state. */
  --gl-badge-tier-icon-color-active: var(--gl-color-purple-900); /** Used for the icon of a tier related badge in the active state. */
  --gl-banner-intro-border-color: var(--gl-color-blue-200); /** Used for the border of an info banner. */
  --gl-banner-promo-background-color: var(--gl-color-purple-50); /** Used for the background of a promo banner. */
  --gl-banner-promo-border-color: var(--gl-color-purple-200); /** Used for the border of a promo banner. */
  --gl-breadcrumb-separator-color: var(--gl-color-neutral-400); /** Used for the breadcrumb level separator. */
  --gl-broadcast-banner-background-color-dark: var(--gl-color-neutral-500); /** Used for the background for the dark banner type. */
  --gl-broadcast-banner-background-color-light: var(--gl-color-neutral-50); /** Used for the background for the light banner type. */
  --gl-broadcast-banner-border-color-dark: var(--gl-color-neutral-700); /** Used for the border for the dark banner type. */
  --gl-broadcast-banner-border-color-light: var(--gl-color-neutral-100); /** Used for the border for the light banner type. */
  --gl-broadcast-banner-icon-color-blue: var(--gl-color-neutral-0); /** Used for the icon for the blue banner type. */
  --gl-broadcast-banner-icon-color-dark: var(--gl-color-neutral-0); /** Used for the icon for the dark banner type. */
  --gl-broadcast-banner-icon-color-green: var(--gl-color-neutral-0); /** Used for the icon for the green banner type. */
  --gl-broadcast-banner-icon-color-indigo: var(--gl-color-neutral-0); /** Used for the icon for the indigo banner type. */
  --gl-broadcast-banner-icon-color-light: var(--gl-color-neutral-900); /** Used for the icon for the light banner type. */
  --gl-broadcast-banner-icon-color-lightblue: var(--gl-color-neutral-0); /** Used for the icon for the lightblue banner type. */
  --gl-broadcast-banner-icon-color-lightgreen: var(--gl-color-neutral-0); /** Used for the icon for the lightgreen banner type. */
  --gl-broadcast-banner-icon-color-lightindigo: var(--gl-color-neutral-0); /** Used for the icon for the lightindigo banner type. */
  --gl-broadcast-banner-icon-color-lightred: var(--gl-color-neutral-0); /** Used for the icon for the lightred banner type. */
  --gl-broadcast-banner-icon-color-red: var(--gl-color-neutral-0); /** Used for the icon for the red banner type. */
  --gl-broadcast-banner-text-color-blue: var(--gl-color-neutral-0); /** Used for the text for the blue banner type. */
  --gl-broadcast-banner-text-color-dark: var(--gl-color-neutral-0); /** Used for the text for the dark banner type. */
  --gl-broadcast-banner-text-color-green: var(--gl-color-neutral-0); /** Used for the text for the green banner type. */
  --gl-broadcast-banner-text-color-indigo: var(--gl-color-neutral-0); /** Used for the text for the indigo banner type. */
  --gl-broadcast-banner-text-color-light: var(--gl-color-neutral-900); /** Used for the text for the light banner type. */
  --gl-broadcast-banner-text-color-lightblue: var(--gl-color-neutral-0); /** Used for the text for the lightblue banner type. */
  --gl-broadcast-banner-text-color-lightgreen: var(--gl-color-neutral-0); /** Used for the text for the lightgreen banner type. */
  --gl-broadcast-banner-text-color-lightindigo: var(--gl-color-neutral-0); /** Used for the text for the lightindigo banner type. */
  --gl-broadcast-banner-text-color-lightred: var(--gl-color-neutral-0); /** Used for the text for the lightred banner type. */
  --gl-broadcast-banner-text-color-red: var(--gl-color-neutral-0); /** Used for the text for the red banner type. */
  --gl-button-default-primary-foreground-color-default: var(--gl-color-neutral-800); /** Used for the foreground of a default primary button in the default state. */
  --gl-button-default-primary-background-color-default: var(--gl-color-neutral-0); /** Used for the background of an default primary button in the default state. */
  --gl-button-default-primary-background-color-hover: var(--gl-color-neutral-50); /** Used for the background of an default primary button in the hover state. */
  --gl-button-default-primary-background-color-active: var(--gl-color-neutral-100); /** Used for the background of an default primary button in the active state. */
  --gl-button-default-primary-border-color-default: var(--gl-color-neutral-200); /** Used for the border of an default primary button in the default state. */
  --gl-button-default-primary-border-color-hover: var(--gl-color-neutral-400); /** Used for the border of an default primary button in the hover state. */
  --gl-button-default-primary-border-color-active: var(--gl-color-neutral-600); /** Used for the border of an default primary button in the active state. */
  --gl-button-confirm-primary-foreground-color-default: var(--gl-color-neutral-0); /** Used for the foreground of a confirm (positive) primary button in the default state. */
  --gl-button-confirm-primary-background-color-default: var(--gl-color-neutral-800); /** Used for the background of a confirm (positive) primary button in the default state. */
  --gl-button-confirm-primary-background-color-hover: var(--gl-color-neutral-950); /** Used for the background of a confirm (positive) primary button in the hover state. */
  --gl-button-confirm-primary-background-color-active: var(--gl-color-neutral-1000); /** Used for the background of a confirm (positive) primary button in the active state. */
  --gl-button-confirm-primary-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a confirm (positive) primary button in the default state. */
  --gl-button-confirm-secondary-foreground-color-default: var(--gl-color-neutral-800); /** Used for the foreground of a confirm (positive) button in the default state. */
  --gl-button-confirm-secondary-foreground-color-hover: var(--gl-color-neutral-950); /** Used for the foreground of a confirm (positive) button in the hover state. */
  --gl-button-confirm-secondary-foreground-color-active: var(--gl-color-neutral-1000); /** Used for the foreground of a confirm (positive) button in the active state. */
  --gl-button-confirm-secondary-background-color-default: var(--gl-color-neutral-0); /** Used for the background of an outlined confirm (positive) button in the default state. */
  --gl-button-confirm-secondary-background-color-hover: var(--gl-color-neutral-50); /** Used for the background of an outlined confirm (positive) button in the hover state. */
  --gl-button-confirm-secondary-background-color-active: var(--gl-color-neutral-100); /** Used for the background of an outlined confirm (positive) button in the active state. */
  --gl-button-confirm-secondary-border-color-default: var(--gl-color-neutral-800); /** Used for the border of an outlined confirm (positive) button in the default state. */
  --gl-button-confirm-secondary-border-color-hover: var(--gl-color-neutral-950); /** Used for the border of an outlined confirm (positive) button in the hover state. */
  --gl-button-confirm-secondary-border-color-active: var(--gl-color-neutral-1000); /** Used for the border of an outlined confirm (positive) button in the active state. */
  --gl-button-danger-primary-foreground-color-default: var(--gl-color-neutral-0); /** Used for the foreground of a danger (destructive) primary button in the default state. */
  --gl-button-danger-primary-background-color-default: var(--gl-color-red-600); /** Used for the background of a danger (destructive) primary button in the default state. */
  --gl-button-danger-primary-background-color-hover: var(--gl-color-red-700); /** Used for the background of a danger (destructive) primary button in the hover state. */
  --gl-button-danger-primary-background-color-active: var(--gl-color-red-900); /** Used for the background of a danger (destructive) primary button in the active state. */
  --gl-button-danger-primary-border-color-default: var(--gl-color-red-700); /** Used for the border of a danger (destructive) primary button in the default state. */
  --gl-button-danger-primary-border-color-hover: var(--gl-color-red-900); /** Used for the border of a danger (destructive) primary button in the hover state. */
  --gl-button-danger-primary-border-color-active: var(--gl-color-red-950); /** Used for the border of a danger (destructive) primary button in the active state. */
  --gl-button-danger-secondary-foreground-color-default: var(--gl-color-red-600); /** Used for the foreground of a danger (destructive) button in the default state. */
  --gl-button-danger-secondary-foreground-color-hover: var(--gl-color-red-800); /** Used for the foreground of a danger (destructive) button in the hover state. */
  --gl-button-danger-secondary-foreground-color-active: var(--gl-color-red-900); /** Used for the foreground of a danger (destructive) button in the active state. */
  --gl-button-danger-secondary-background-color-default: var(--gl-color-neutral-0); /** Used for the background of an outlined danger (destructive) button in the default state. */
  --gl-button-danger-secondary-background-color-hover: var(--gl-color-red-50); /** Used for the background of an outlined danger (destructive) button in the hover state. */
  --gl-button-danger-secondary-background-color-active: var(--gl-color-red-100); /** Used for the background of an outlined danger (destructive) button in the active state. */
  --gl-button-danger-secondary-border-color-default: var(--gl-color-red-600); /** Used for the border of an outlined danger (destructive) button in the default state. */
  --gl-button-danger-secondary-border-color-hover: var(--gl-color-red-800); /** Used for the border of an outlined danger (destructive) button in the hover state. */
  --gl-button-danger-secondary-border-color-active: var(--gl-color-red-900); /** Used for the border of an outlined danger (destructive) button in the active state. */
  --gl-button-danger-tertiary-background-color-default: var(--gl-action-danger-background-color-default); /** Used for the background of a borderless, tertiary danger (destructive) button in the default state. */
  --gl-button-danger-tertiary-background-color-hover: var(--gl-action-danger-background-color-hover); /** Used for the background of a borderless, tertiary danger (destructive) button in the hover state. */
  --gl-button-danger-tertiary-background-color-active: var(--gl-action-danger-background-color-active); /** Used for the background of a borderless, tertiary danger (destructive) button in the active state. */
  --gl-button-dashed-border-color-default: var(--gl-color-neutral-400); /** Used for the border of a dashed button in the default state. */
  --gl-button-dashed-border-color-active: var(--gl-color-neutral-600); /** Used for the border of a dashed button in the active state. */
  --gl-button-selected-background-color-default: var(--gl-color-neutral-50); /** Used for the background of a selected button in the default state. */
  --gl-button-selected-border-color-default: var(--gl-color-neutral-300); /** Used for the border of a selected button in the default state. */
  --gl-button-selected-border-color-hover: var(--gl-color-neutral-400); /** Used for the border of a selected button in the hover state. */
  --gl-button-selected-border-color-active: var(--gl-color-neutral-600); /** Used for the border of a selected button in the active state. */
  --gl-button-disabled-foreground-color: var(--gl-color-neutral-500); /** Used for the foreground of a disabled button. */
  --gl-button-disabled-background-color: var(--gl-color-neutral-10); /** Used for the background of a disabled button. */
  --gl-button-disabled-border-color: var(--gl-color-neutral-100); /** Used for the border of a disabled button. */
  --gl-button-count-background-color: var(--gl-color-alpha-dark-8); /** Used for the background of a button count element. */
  --gl-chart-axis-line-color: var(--gl-color-neutral-200); /** Used in charts for axis line color. */
  --gl-chart-threshold-line-color: var(--gl-color-red-500); /** Used in charts to divide a threshold area in a chart from other data. */
  --gl-chart-zoom-filler-color: var(--gl-color-alpha-dark-8); /** Used in charts for the overlay color when zooming in on a specific area of data. */
  --gl-datepicker-background-color: var(--gl-color-neutral-0); /** Used for the background color of datepicker. */
  --gl-dropdown-option-background-color-selected-default: var(--gl-color-neutral-50); /** Used for the background of a selected dropdown option in the default state. */
  --gl-dropdown-option-background-color-selected-hover: var(--gl-color-neutral-100); /** Used for the background of a selected dropdown option in the hover state. */
  --gl-dropdown-option-background-color-selected-active: var(--gl-color-neutral-200); /** Used for the background of a selected dropdown option in the active state. */
  --gl-dropdown-search-background-color: var(--gl-color-alpha-dark-2); /** Used for the background of a search input in a dropdown listbox. */
  --gl-filtered-search-token-type-background-color-default: var(--gl-color-neutral-50); /** Used for the filtered search type token background color in the default state. */
  --gl-filtered-search-token-type-background-color-hover: var(--gl-color-neutral-100); /** Used for the filtered search type token background color in the hover state. */
  --gl-filtered-search-token-data-background-color-default: var(--gl-color-neutral-100); /** Used for the filtered search data background color in the default state. */
  --gl-filtered-search-token-data-background-color-hover: var(--gl-color-neutral-200); /** Used for the filtered search data token background color in the hover state. */
  --gl-filtered-search-token-operator-background-color-default: var(--gl-color-neutral-50); /** Used for the filtered search operator background color in the default state. */
  --gl-filtered-search-token-operator-background-color-hover: var(--gl-color-neutral-100); /** Used for the filtered search operator token background color in the hover state. */
  --gl-label-light-text-color: var(--gl-color-neutral-950); /** Used for the label text color on a light background color. */
  --gl-label-light-button-background-color-default: var(--gl-color-alpha-0); /** Used for the label remove button background on a light background color in the default state. */
  --gl-label-light-button-background-color-hover: var(--gl-color-neutral-950); /** Used for the label remove button background on a light background color in the hover state. */
  --gl-label-light-button-icon-color-default: var(--gl-color-neutral-950); /** Used for the label remove button icon on a light background color in the default state. */
  --gl-label-dark-text-color: var(--gl-color-neutral-0); /** Used for the label text color on a dark background color. */
  --gl-label-dark-button-background-color-default: var(--gl-color-alpha-0); /** Used for the label remove button background on a dark background color in the default state. */
  --gl-label-dark-button-background-color-hover: var(--gl-color-neutral-0); /** Used for the label remove button background on a dark background color in the hover state. */
  --gl-label-dark-button-icon-color-default: var(--gl-color-neutral-0); /** Used for the label remove button icon on a dark background color in the default state. */
  --gl-label-scoped-text-color: var(--gl-color-neutral-950); /** Used for the scoped label text color. */
  --gl-label-scoped-button-background-color-hover: var(--gl-color-neutral-950); /** Used for the scoped label remove button background in the hover state. */
  --gl-label-scoped-button-icon-color-default: var(--gl-color-neutral-950); /** Used for the scoped label remove button icon in the default state. */
  --gl-label-scoped-button-icon-color-hover: var(--gl-color-neutral-0); /** Used for the scoped label remove button icon in the hover state. */
  --gl-link-mention-text-color-default: var(--gl-color-blue-800); /** Used for the mention link text color. */
  --gl-link-mention-text-color-current: var(--gl-color-orange-800); /** Used for the mention link text color when referencing the current user. */
  --gl-link-mention-background-color-default: var(--gl-color-blue-100); /** Used for the mention link default background. */
  --gl-link-mention-background-color-current: var(--gl-color-orange-100); /** Used for the mention link background when referencing the current user. */
  --gl-nav-item-font-size: var(--gl-font-size-300); /** Used for the font size of a navigation item */
  --gl-nav-item-foreground-color-default: var(--gl-color-neutral-600); /** Used for the foreground of a default navigation item in the default state. */
  --gl-nav-item-foreground-color-hover: var(--gl-color-neutral-950); /** Used for the foreground of a default navigation item in the hover state. */
  --gl-nav-item-background-color-default: var(--gl-color-alpha-0); /** Used for the background of a default navigation item in the default state. */
  --gl-nav-item-background-color-hover: var(--gl-color-neutral-100); /** Used for the background of a default navigation item in the hover state. */
  --gl-nav-item-background-color-active: var(--gl-color-neutral-200); /** Used for the background of a default navigation item in the active state. */
  --gl-nav-item-selected-font-weight: var(--gl-font-weight-bold); /** Used for the font weight of a selected navigation item. */
  --gl-nav-item-selected-background-color-default: var(--gl-color-neutral-100); /** Used for the background of a selected navigation item in the default state. */
  --gl-nav-item-selected-indicator-color: var(--gl-color-orange-500); /** Used for the indicator beside a selected navigation item. Tinted themes override it in src/scss/themes.scss. */
  --gl-progress-bar-track-color: var(--gl-color-neutral-200); /** Used for the track color for all progress-bar variants. */
  --gl-skeleton-loader-background-color: var(--gl-color-neutral-100); /** Used for the skeleton loader background color. */
  --gl-skeleton-loader-shimmer-color: var(--gl-color-neutral-50); /** Used for the animated shimmer effect in a skeleton loader. */
  --gl-spinner-track-color-default: var(--gl-color-neutral-100); /** Used for the static track (background) of a loading spinner. */
  --gl-spinner-track-color-light: var(--gl-color-neutral-800); /** Used for the static track (background) of a loading spinner on a dark background. */
  --gl-spinner-segment-color-default: var(--gl-color-neutral-700); /** Used for the animated segment of a loading spinner. */
  --gl-spinner-segment-color-light: var(--gl-color-neutral-200); /** Used for the animated segment of a loading spinner on a dark background. */
  --gl-token-selector-token-container-token-background-color-focus: var(--gl-color-neutral-300); /** Used for the background color of a token in a token-selector when it's token-container is in the focus state. */
  --gl-token-background-color: var(--gl-color-neutral-100); /** Used for the token background color. */
  --gl-tooltip-text-color-subtle: var(--gl-color-neutral-200); /** Used for supplemental tooltip text that is less prominent than the default text and remains the same color regardless of mode. */
  --black: var(--gl-color-neutral-1000);
  --white: var(--gl-color-neutral-0);
  --blue-50: var(--gl-color-blue-50);
  --blue-100: var(--gl-color-blue-100);
  --blue-200: var(--gl-color-blue-200);
  --blue-300: var(--gl-color-blue-300);
  --blue-400: var(--gl-color-blue-400);
  --blue-500: var(--gl-color-blue-500);
  --blue-600: var(--gl-color-blue-600);
  --blue-700: var(--gl-color-blue-700);
  --blue-800: var(--gl-color-blue-800);
  --blue-900: var(--gl-color-blue-900);
  --blue-950: var(--gl-color-blue-950);
  --gray-10: var(--gl-color-neutral-10);
  --gray-50: var(--gl-color-neutral-50);
  --gray-100: var(--gl-color-neutral-100);
  --gray-200: var(--gl-color-neutral-200);
  --gray-300: var(--gl-color-neutral-300);
  --gray-400: var(--gl-color-neutral-400);
  --gray-500: var(--gl-color-neutral-500);
  --gray-600: var(--gl-color-neutral-600);
  --gray-700: var(--gl-color-neutral-700);
  --gray-800: var(--gl-color-neutral-800);
  --gray-900: var(--gl-color-neutral-900);
  --gray-950: var(--gl-color-neutral-950);
  --green-50: var(--gl-color-green-50);
  --green-100: var(--gl-color-green-100);
  --green-200: var(--gl-color-green-200);
  --green-300: var(--gl-color-green-300);
  --green-400: var(--gl-color-green-400);
  --green-500: var(--gl-color-green-500);
  --green-600: var(--gl-color-green-600);
  --green-700: var(--gl-color-green-700);
  --green-800: var(--gl-color-green-800);
  --green-900: var(--gl-color-green-900);
  --green-950: var(--gl-color-green-950);
  --orange-50: var(--gl-color-orange-50);
  --orange-100: var(--gl-color-orange-100);
  --orange-200: var(--gl-color-orange-200);
  --orange-300: var(--gl-color-orange-300);
  --orange-400: var(--gl-color-orange-400);
  --orange-500: var(--gl-color-orange-500);
  --orange-600: var(--gl-color-orange-600);
  --orange-700: var(--gl-color-orange-700);
  --orange-800: var(--gl-color-orange-800);
  --orange-900: var(--gl-color-orange-900);
  --orange-950: var(--gl-color-orange-950);
  --purple-50: var(--gl-color-purple-50);
  --purple-100: var(--gl-color-purple-100);
  --purple-200: var(--gl-color-purple-200);
  --purple-300: var(--gl-color-purple-300);
  --purple-400: var(--gl-color-purple-400);
  --purple-500: var(--gl-color-purple-500);
  --purple-600: var(--gl-color-purple-600);
  --purple-700: var(--gl-color-purple-700);
  --purple-800: var(--gl-color-purple-800);
  --purple-900: var(--gl-color-purple-900);
  --purple-950: var(--gl-color-purple-950);
  --red-50: var(--gl-color-red-50);
  --red-100: var(--gl-color-red-100);
  --red-200: var(--gl-color-red-200);
  --red-300: var(--gl-color-red-300);
  --red-400: var(--gl-color-red-400);
  --red-500: var(--gl-color-red-500);
  --red-600: var(--gl-color-red-600);
  --red-700: var(--gl-color-red-700);
  --red-800: var(--gl-color-red-800);
  --red-900: var(--gl-color-red-900);
  --red-950: var(--gl-color-red-950);
  --gl-action-disabled-foreground-color: var(--gl-color-neutral-400); /** Used for the foreground of a disabled action. */
  --gl-action-disabled-background-color: var(--gl-color-neutral-50); /** Used for the background of a disabled action. */
  --gl-action-disabled-border-color: var(--gl-color-neutral-100); /** Used for the border of a disabled action. */
  --gl-action-selected-foreground-color-default: var(--gl-color-neutral-0); /** Used for the foreground of a selected action in the default state. */
  --gl-action-selected-background-color-default: var(--gl-color-neutral-800); /** Used for the background of a selected action in the default state. */
  --gl-action-selected-background-color-hover: var(--gl-color-neutral-950); /** Used for the background of a selected action in the hover state. */
  --gl-action-selected-background-color-active: var(--gl-color-neutral-1000); /** Used for the background of a selected action in the active state. */
  --gl-action-selected-background-color-disabled: var(--gl-color-neutral-400); /** Used for the background of a disabled action that stays selected. Sits between the disabled background and the enabled selected background so the selected state keeps 3:1 contrast against the page while still reading as disabled. */
  --gl-action-neutral-foreground-color-default: var(--gl-color-neutral-900); /** Used for the foreground of a neutral action in the default state. */
  --gl-action-neutral-background-color-default: var(--gl-color-alpha-0); /** Used for the background of a neutral action in the default state. */
  --gl-action-neutral-background-color-hover: var(--gl-color-alpha-dark-6); /** Used for the background of a neutral action in the hover state. */
  --gl-action-neutral-background-color-active: var(--gl-color-alpha-dark-16); /** Used for the background of a neutral action in the active state. */
  --gl-action-neutral-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a neutral action in the default state. */
  --gl-action-confirm-foreground-color-default: var(--gl-color-neutral-800); /** Used for the foreground of a confirm (positive) action in the default state. */
  --gl-action-confirm-foreground-color-hover: var(--gl-color-neutral-950); /** Used for the foreground of a confirm (positive) action in the hover state. */
  --gl-action-confirm-foreground-color-active: var(--gl-color-neutral-1000); /** Used for the foreground of a confirm (positive) action in the active state. */
  --gl-action-confirm-background-color-default: var(--gl-color-alpha-0); /** Used for the background of a confirm (positive) action in the default state. */
  --gl-action-confirm-background-color-hover: var(--gl-color-alpha-dark-6); /** Used for the background of a confirm (positive) action in the hover state. */
  --gl-action-confirm-background-color-active: var(--gl-color-alpha-dark-16); /** Used for the background of a confirm (positive) action in the active state. */
  --gl-action-confirm-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a confirm action in the default state. */
  --gl-action-danger-foreground-color-default: var(--gl-color-red-600); /** Used for the foreground of a danger (destructive) action in the default state. */
  --gl-action-danger-foreground-color-hover: var(--gl-color-red-800); /** Used for the foreground of a danger (destructive) action in the hover state. */
  --gl-action-danger-foreground-color-active: var(--gl-color-red-950); /** Used for the foreground of a danger (destructive) action in the active state. */
  --gl-action-danger-background-color-focus: var(--gl-action-danger-background-color-hover); /** Used for the background of a danger (destructive) action in the focus state. */
  --gl-action-danger-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a danger action in the default state. */
  --gl-action-strong-confirm-background-color-default: var(--gl-color-blue-500); /** Used for the background of a strong confirm action in the default state. */
  --gl-action-strong-confirm-background-color-hover: var(--gl-color-blue-600); /** Used for the background of a strong confirm action in the hover state. */
  --gl-action-strong-confirm-background-color-active: var(--gl-color-blue-700); /** Used for the background of a strong confirm action in the active state. */
  --gl-action-strong-confirm-foreground-color-default: var(--gl-color-neutral-0); /** Used for the foreground of a strong confirm action in the default state. */
  --gl-action-strong-confirm-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a strong confirm action in the default state. */
  --gl-action-strong-neutral-background-color-default: var(--gl-color-neutral-600); /** Used for the background of a strong neutral action in the default state. */
  --gl-action-strong-neutral-background-color-hover: var(--gl-color-neutral-700); /** Used for the background of a strong neutral action in the hover state. */
  --gl-action-strong-neutral-background-color-active: var(--gl-color-neutral-800); /** Used for the background of a strong neutral action in the active state. */
  --gl-action-strong-neutral-foreground-color-default: var(--gl-color-neutral-0); /** Used for the foreground of a strong neutral action in the default state. */
  --gl-action-strong-neutral-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a strong neutral action in the default state. */
  --gl-background-color-default: var(--gl-color-neutral-0); /** Used for the default background color. */
  --gl-background-color-subtle: var(--gl-color-neutral-10); /** Used to slightly differentiate the background from the default. */
  --gl-background-color-strong: var(--gl-color-neutral-50); /** Used to make the background easily stand out from the default. */
  --gl-background-color-disabled: var(--gl-color-neutral-10); /** Used to identify a disabled section. */
  --gl-background-color-overlap: var(--gl-color-neutral-0); /** Used for components, like tooltips and drawers, and content, like a sticky header, that overlap other content. */
  --gl-background-color-section: var(--gl-color-neutral-0); /** Used for containers, like a card header, that are visually distinct from the default page background only when necessary to maintain affordance and hierarchy in different modes. */
  --gl-background-color-overlay: var(--gl-color-alpha-dark-24); /** Used for an overlay that covers other content. */
  --gl-control-background-color-default: var(--gl-color-neutral-0); /** Used for form control (input, radio button, checkbox, textarea) default background. */
  --gl-control-background-color-disabled: var(--gl-color-neutral-10); /** Used for disabled form control (input, textarea) background. */
  --gl-control-background-color-concatenation: var(--gl-color-neutral-10); /** Used for the background of static content that prepends or appends a text input. */
  --gl-control-background-color-readonly: var(--gl-color-alpha-dark-2); /** Used for the background of static content that prepends or appends a text input. */
  --gl-control-background-color-selected-default: var(--gl-color-neutral-800); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) background. */
  --gl-control-background-color-selected-hover: var(--gl-color-neutral-950); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) background on hover. */
  --gl-control-border-color-default: var(--gl-color-neutral-400); /** Used for form control (input, radio button, checkbox, textarea) default border. */
  --gl-control-border-color-hover: var(--gl-color-neutral-600); /** Used for form control (input, radio button, checkbox, textarea) border on hover. */
  --gl-control-border-color-focus: var(--gl-color-neutral-900); /** Used for form control (input, radio button, checkbox, textarea) border on focus. */
  --gl-control-border-color-disabled: var(--gl-color-neutral-100); /** Used for disabled form control (input, radio button, checkbox, textarea) border. */
  --gl-control-placeholder-color: var(--gl-color-neutral-500); /** Used for placeholder text within inputs. */
  --gl-control-indicator-color-selected: var(--gl-color-neutral-0); /** Used for checkbox and radio button state indicators. */
  --gl-feedback-strong-background-color: var(--gl-color-neutral-800); /** Used for a background associated with strong feedback like a tooltip or toast message. */
  --gl-feedback-strong-border-color: var(--gl-color-neutral-1000); /** Used for the border associated with strong feedback. */
  --gl-feedback-strong-text-color: var(--gl-color-neutral-0); /** Used for text on a strong feedback background. */
  --gl-feedback-strong-icon-color: var(--gl-color-neutral-0); /** Used for an icon on a strong feedback background. */
  --gl-feedback-strong-link-color: var(--gl-color-blue-300); /** Used for a link on a strong feedback background. */
  --gl-feedback-neutral-background-color: var(--gl-color-neutral-50); /** Used for the background of a neutral feedback item when there isn't a specific meaning or urgency. */
  --gl-feedback-neutral-border-color: var(--gl-color-neutral-200); /** Used for the border of a neutral feedback item when there isn't a specific meaning or urgency. */
  --gl-feedback-neutral-text-color: var(--gl-color-neutral-700); /** Used for the text of a neutral feedback item when there isn't a specific meaning or urgency. */
  --gl-feedback-neutral-icon-color: var(--gl-color-neutral-600); /** Used for the icon of a neutral feedback item when there isn't a specific meaning or urgency. */
  --gl-feedback-info-background-color: var(--gl-color-blue-50); /** Used for the background of an informational feedback item when highlighting new information or a change that doesn't require immediate action. */
  --gl-feedback-info-border-color: var(--gl-color-blue-200); /** Used for the border of an informational feedback item when highlighting new information or a change that doesn't require immediate action. */
  --gl-feedback-info-text-color: var(--gl-color-blue-700); /** Used for the text of an informational feedback item when highlighting new information or a change that doesn't require immediate action. */
  --gl-feedback-info-icon-color: var(--gl-color-blue-600); /** Used for the icon of an informational feedback item when highlighting new information or a change that doesn't require immediate action. */
  --gl-feedback-success-background-color: var(--gl-color-green-50); /** Used for the background of a success feedback item when confirming the successful completion of a user-initiated action. */
  --gl-feedback-success-border-color: var(--gl-color-green-200); /** Used for the border of a success feedback item when confirming the successful completion of a user-initiated action. */
  --gl-feedback-success-text-color: var(--gl-color-green-700); /** Used for the text of a success feedback item when confirming the successful completion of a user-initiated action. */
  --gl-feedback-success-icon-color: var(--gl-color-green-600); /** Used for the icon of a success feedback item when confirming the successful completion of a user-initiated action. */
  --gl-feedback-warning-background-color: var(--gl-color-orange-50); /** Used for the background of a warning feedback item when notifying about a potential issue or sensitive information. */
  --gl-feedback-warning-border-color: var(--gl-color-orange-200); /** Used for the border of a warning feedback item when notifying about a potential issue or sensitive information. */
  --gl-feedback-warning-text-color: var(--gl-color-orange-700); /** Used for the text of a warning feedback item when notifying about a potential issue or sensitive information. */
  --gl-feedback-warning-icon-color: var(--gl-color-orange-600); /** Used for the icon of a warning feedback item when notifying about a potential issue or sensitive information. */
  --gl-feedback-danger-background-color: var(--gl-color-red-50); /** Used for the background of a danger feedback item when notifying about a critical issue that has just occurred and requires immediate attention. */
  --gl-feedback-danger-border-color: var(--gl-color-red-500); /** Used for the border of a danger feedback item when notifying about a critical issue that has just occurred and requires immediate attention. */
  --gl-feedback-danger-text-color: var(--gl-color-red-700); /** Used for the text of a danger feedback item when notifying about a critical issue that has just occurred and requires immediate attention. */
  --gl-feedback-danger-icon-color: var(--gl-color-red-600); /** Used for the icon of a danger feedback item when notifying about a critical issue that has just occurred and requires immediate attention. */
  --gl-feedback-brand-background-color: var(--gl-color-purple-50); /** Used for the background of a brand-related feedback item when highlighting information that pertains to GitLab. */
  --gl-feedback-brand-border-color: var(--gl-color-purple-200); /** Used for the border of a brand-related feedback item when highlighting information that pertains to GitLab. */
  --gl-feedback-brand-text-color: var(--gl-color-purple-700); /** Used for the text of a brand-related feedback item when highlighting information that pertains to GitLab. */
  --gl-feedback-brand-icon-color: var(--gl-color-purple-600); /** Used for the icon of a brand-related feedback item when highlighting information that pertains to GitLab. */
  --gl-focus-ring-outer-color: var(--gl-color-blue-500); /** Used for the outer color portion of the focus ring. */
  --gl-highlight-match-background-color: var(--gl-color-orange-500); /** Used for temporary visual emphasis of backgrounds of matched search terms, filtered results, or autocomplete suggestions without implying any particular state or meaning. */
  --gl-highlight-match-text-color: var(--gl-color-neutral-0); /** Used for text within temporarily highlighted matches to maintain readability while drawing attention without conveying status. */
  --gl-highlight-target-background-color: var(--gl-color-blue-50); /** Used for temporary visual emphasis for backgrounds of referenced elements (for example URL anchors, hover states) or to show relationships between content without implying status or requiring action. */
  --gl-highlight-target-border-color: var(--gl-color-blue-200); /** Used to provide additional visual emphasis for borders of temporarily targeted elements or when visualizing connections between related content, distinct from persistent states. */
  --gl-icon-color-info: var(--gl-color-blue-700); /** Used for an icon associated with information or help. */
  --gl-status-neutral-background-color: var(--gl-color-neutral-100); /** Used for the background of a neutral status item when the status is neither positive nor negative, or when indicating a special but stable state. */
  --gl-status-neutral-text-color: var(--gl-color-neutral-700); /** Used for the text of a neutral status item when the status is neither positive nor negative, or when indicating a special but stable state. */
  --gl-status-neutral-icon-color: var(--gl-color-neutral-500); /** Used for the icon of a neutral status item when the status is neither positive nor negative, or when indicating a special but stable state. */
  --gl-status-info-background-color: var(--gl-color-blue-100); /** Used for the background of an informational status item when indicating a noteworthy ongoing condition or a state of active progress. */
  --gl-status-info-text-color: var(--gl-color-blue-700); /** Used for the text of an informational status item when indicating a noteworthy ongoing condition or a state of active progress. */
  --gl-status-info-icon-color: var(--gl-color-blue-500); /** Used for the icon of an informational status item when indicating a noteworthy ongoing condition or a state of active progress. */
  --gl-status-success-background-color: var(--gl-color-green-100); /** Used for the background of a success status item when indicating a positive outcome, completion, or desired state. Clearly conveys a positive connotation. */
  --gl-status-success-text-color: var(--gl-color-green-700); /** Used for the text of a success status item when indicating a positive outcome, completion, or desired state. Clearly conveys a positive connotation. */
  --gl-status-success-icon-color: var(--gl-color-green-500); /** Used for the icon of a success status item when indicating a positive outcome, completion, or desired state. Clearly conveys a positive connotation. */
  --gl-status-warning-background-color: var(--gl-color-orange-100); /** Used for the background of a warning status item when indicating a state that requires heightened awareness or caution, but is not necessarily problematic. Represents a state that warrants extra attention or care when interacting with the item. */
  --gl-status-warning-text-color: var(--gl-color-orange-700); /** Used for the text of a warning status item when indicating a state that requires heightened awareness or caution, but is not necessarily problematic. Represents a state that warrants extra attention or care when interacting with the item. */
  --gl-status-warning-icon-color: var(--gl-color-orange-500); /** Used for the icon of a warning status item when indicating a state that requires heightened awareness or caution, but is not necessarily problematic. Represents a state that warrants extra attention or care when interacting with the item. */
  --gl-status-danger-background-color: var(--gl-color-red-100); /** Used for the background of a danger status item when indicating a critical or severely problematic current state. Clearly conveys a negative connotation, representing a serious, ongoing issue or undesired condition. */
  --gl-status-danger-text-color: var(--gl-color-red-700); /** Used for the text of a danger status item when indicating a critical or severely problematic current state. Clearly conveys a negative connotation, representing a serious, ongoing issue or undesired condition. */
  --gl-status-danger-icon-color: var(--gl-color-red-500); /** Used for the icon of a danger status item when indicating a critical or severely problematic current state. Clearly conveys a negative connotation, representing a serious, ongoing issue or undesired condition. */
  --gl-status-brand-background-color: var(--gl-color-purple-100); /** Used for the background of a brand-related status item when highlighting the state of unique features or elements specific to the GitLab brand identity. Helps distinguish and emphasize brand-specific elements within the interface. */
  --gl-status-brand-text-color: var(--gl-color-purple-700); /** Used for the text of a brand-related status item when highlighting the state of unique features or elements specific to the GitLab brand identity. Helps distinguish and emphasize brand-specific elements within the interface. */
  --gl-status-brand-icon-color: var(--gl-color-purple-500); /** Used for the icon of a brand-related status item when highlighting the state of unique features or elements specific to the GitLab brand identity. Helps distinguish and emphasize brand-specific elements within the interface. */
  --gl-text-color-default: var(--gl-color-neutral-800); /** Used for the default text color. */
  --gl-text-color-subtle: var(--gl-color-neutral-600); /** Used for supplemental text that doesn't need to be as prominent as other text. */
  --gl-text-color-strong: var(--gl-color-neutral-950); /** Used for text with the highest contrast. */
  --gl-text-color-heading: var(--gl-color-neutral-950); /** Used for headings level 1-6. */
  --gl-text-color-link: var(--gl-color-blue-700); /** Used for default text links. */
  --gl-text-color-warning: var(--gl-color-orange-600); /** Used for text that requires caution or careful attention. */
  --gl-text-color-danger: var(--gl-color-red-600); /** Used for text indicating a problem, critical state, destructive action, error, failure, removal, stop, or declination. */
  --gl-text-color-success: var(--gl-color-green-600); /** Used for text indicating success, completion, approval, addition, or validity. */
  --gl-text-color-disabled: var(--gl-color-neutral-400); /** Used for disabled text. */
  --gl-heading-1-font-size: var(--gl-font-size-700);
  --gl-heading-1-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-1-line-height: var(--gl-line-height-heading);
  --gl-heading-2-font-size: var(--gl-font-size-600);
  --gl-heading-2-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-2-line-height: var(--gl-line-height-heading);
  --gl-heading-3-font-size: var(--gl-font-size-500);
  --gl-heading-3-line-height: var(--gl-line-height-heading);
  --gl-heading-4-font-size: var(--gl-font-size-400);
  --gl-heading-4-line-height: var(--gl-line-height-heading);
  --gl-heading-5-font-size: var(--gl-font-size-300);
  --gl-heading-5-line-height: var(--gl-line-height-heading);
  --gl-heading-6-font-size: var(--gl-font-size-200);
  --gl-heading-6-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-100-font-size: var(--gl-font-size-100);
  --gl-heading-scale-100-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-200-font-size: var(--gl-font-size-200);
  --gl-heading-scale-200-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-300-font-size: var(--gl-font-size-300);
  --gl-heading-scale-300-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-400-font-size: var(--gl-font-size-400);
  --gl-heading-scale-400-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-500-font-size: var(--gl-font-size-500);
  --gl-heading-scale-500-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-600-font-size: var(--gl-font-size-600);
  --gl-heading-scale-600-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-600-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-700-font-size: var(--gl-font-size-700);
  --gl-heading-scale-700-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-700-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-800-font-size: var(--gl-font-size-800);
  --gl-heading-scale-800-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-100-fixed-font-size: var(--gl-font-size-100-fixed);
  --gl-heading-scale-100-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-200-fixed-font-size: var(--gl-font-size-200-fixed);
  --gl-heading-scale-200-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-300-fixed-font-size: var(--gl-font-size-300-fixed);
  --gl-heading-scale-300-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-400-fixed-font-size: var(--gl-font-size-400-fixed);
  --gl-heading-scale-400-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-500-fixed-font-size: var(--gl-font-size-500-fixed);
  --gl-heading-scale-500-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-600-fixed-font-size: var(--gl-font-size-600-fixed);
  --gl-heading-scale-600-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-600-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-700-fixed-font-size: var(--gl-font-size-700-fixed);
  --gl-heading-scale-700-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-700-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-800-fixed-font-size: var(--gl-font-size-800-fixed);
  --gl-heading-scale-800-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-display-font-size: var(--gl-font-size-800);
  --gl-heading-display-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-display-margin-bottom: var(--gl-spacing-scale-6);
  --gl-heading-1-fixed-font-size: var(--gl-font-size-700-fixed);
  --gl-heading-1-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-1-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-2-fixed-font-size: var(--gl-font-size-600-fixed);
  --gl-heading-2-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-2-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-3-fixed-font-size: var(--gl-font-size-500-fixed);
  --gl-heading-3-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-4-fixed-font-size: var(--gl-font-size-400-fixed);
  --gl-heading-4-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-5-fixed-font-size: var(--gl-font-size-300-fixed);
  --gl-heading-5-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-6-fixed-font-size: var(--gl-font-size-200-fixed);
  --gl-heading-6-fixed-line-height: var(--gl-line-height-heading);
  --gl-border-color-section: var(--gl-border-color-default); /** Used for the border color that surrounds content or elements when they appear as a closed container or closed section of the page. */
  --gl-border-radius-default: var(--gl-border-radius-md);
  --gl-font-size-base: var(--gl-font-size-md);
  --gl-shadow-sm: 0 0 2px 0 var(--gl-shadow-color-default), 0 1px 4px 0 var(--gl-shadow-color-default); /** Used for surfaces that need to indicate users can manually interact with them. For example, cards in issue board. */
  --gl-shadow-md: 0 0 1px 0 var(--gl-shadow-color-default), 0 0 2px 0 var(--gl-shadow-color-default), 0 2px 8px 0 var(--gl-shadow-color-default); /** Used for surfaces that need boundary definition and appear on hover. For example, popovers. */
  --gl-shadow-lg: 0 0 2px 0 var(--gl-shadow-color-default), 0 0 2px 0 var(--gl-shadow-color-default), 0 4px 12px 0 var(--gl-shadow-color-default); /** Used for large surfaces that present additional context to the user. */
  --gl-alert-border-radius: var(--gl-border-radius-lg); /** Used for alert border radius. */
  --gl-alert-neutral-title-color: var(--gl-text-color-heading); /** Used for the title color of a neutral alert. */
  --gl-alert-neutral-background-color: var(--gl-feedback-neutral-background-color); /** Used for the background color of a neutral alert. */
  --gl-alert-neutral-border-color: var(--gl-feedback-neutral-border-color); /** Used for the border color of a neutral alert. */
  --gl-alert-info-title-color: var(--gl-text-color-heading); /** Used for the title color of an info alert. */
  --gl-alert-info-background-color: var(--gl-feedback-info-background-color); /** Used for the background color of an info alert. */
  --gl-alert-info-border-color: var(--gl-feedback-info-border-color); /** Used for the border color of an info alert. */
  --gl-alert-success-title-color: var(--gl-text-color-heading); /** Used for the title color of a success alert. */
  --gl-alert-success-background-color: var(--gl-feedback-success-background-color); /** Used for the background color of a success alert. */
  --gl-alert-success-border-color: var(--gl-feedback-success-border-color); /** Used for the border color of a success alert. */
  --gl-alert-warning-title-color: var(--gl-text-color-heading); /** Used for the title color of a warning alert. */
  --gl-alert-warning-background-color: var(--gl-feedback-warning-background-color); /** Used for the background color of a warning alert. */
  --gl-alert-warning-border-color: var(--gl-feedback-warning-border-color); /** Used for the border color of a warning alert. */
  --gl-alert-danger-title-color: var(--gl-text-color-heading); /** Used for the title color of a danger alert. */
  --gl-alert-danger-background-color: var(--gl-feedback-danger-background-color); /** Used for the background color of a danger alert. */
  --gl-alert-danger-border-color: var(--gl-feedback-danger-border-color); /** Used for the border color of a danger alert. */
  --gl-avatar-square-border-radius-lg: var(--gl-border-radius-lg); /** Border radius for square avatars at larger sizes (48px, 64px, 96px). */
  --gl-badge-muted-background-color-hover: var(--gl-badge-muted-background-color-default); /** Used for the background of a muted badge in the hover state. */
  --gl-badge-muted-text-color-focus: var(--gl-badge-muted-text-color-hover); /** Used for the text of a muted badge in the focus state. */
  --gl-badge-muted-icon-color-focus: var(--gl-badge-muted-icon-color-hover); /** Used for the icon of a muted badge in the focus state. */
  --gl-badge-neutral-background-color-hover: var(--gl-badge-neutral-background-color-default); /** Used for the background of a neutral badge in the hover state. */
  --gl-badge-neutral-text-color-focus: var(--gl-badge-neutral-text-color-hover); /** Used for the text of a neutral badge in the focus state. */
  --gl-badge-neutral-icon-color-focus: var(--gl-badge-neutral-icon-color-hover); /** Used for the icon of a neutral badge in the focus state. */
  --gl-badge-info-background-color-hover: var(--gl-badge-info-background-color-default); /** Used for the background of an informational badge in the hover state. */
  --gl-badge-info-text-color-focus: var(--gl-badge-info-text-color-hover); /** Used for the text of an informational badge in the focus state. */
  --gl-badge-info-icon-color-focus: var(--gl-badge-info-icon-color-hover); /** Used for the icon of an informational badge in the focus state. */
  --gl-badge-success-background-color-hover: var(--gl-badge-success-background-color-default); /** Used for the background of a success badge in the hover state. */
  --gl-badge-success-text-color-focus: var(--gl-badge-success-text-color-hover); /** Used for the text of a success badge in the focus state. */
  --gl-badge-success-icon-color-focus: var(--gl-badge-success-icon-color-hover); /** Used for the icon of a success badge in the focus state. */
  --gl-badge-warning-background-color-hover: var(--gl-badge-warning-background-color-default); /** Used for the background of a warning badge in the hover state. */
  --gl-badge-warning-text-color-focus: var(--gl-badge-warning-text-color-hover); /** Used for the text of a warning badge in the focus state. */
  --gl-badge-warning-icon-color-focus: var(--gl-badge-warning-icon-color-hover); /** Used for the icon of a warning badge in the focus state. */
  --gl-badge-danger-background-color-hover: var(--gl-badge-danger-background-color-default); /** Used for the background of a danger badge in the hover state. */
  --gl-badge-danger-text-color-focus: var(--gl-badge-danger-text-color-hover); /** Used for the text of a danger badge in the focus state. */
  --gl-badge-danger-icon-color-focus: var(--gl-badge-danger-icon-color-hover); /** Used for the icon of a danger badge in the focus state. */
  --gl-badge-tier-background-color-hover: var(--gl-badge-tier-background-color-default); /** Used for the background of a tier related badge in the hover state. */
  --gl-badge-tier-text-color-focus: var(--gl-badge-tier-text-color-hover); /** Used for the text of a tier related badge in the focus state. */
  --gl-badge-tier-icon-color-focus: var(--gl-badge-tier-icon-color-hover); /** Used for the icon of a tier related badge in the focus state. */
  --gl-button-default-primary-foreground-color-hover: var(--gl-button-default-primary-foreground-color-default); /** Used for the foreground of a default primary button in the hover state. */
  --gl-button-default-primary-foreground-color-focus: var(--gl-button-default-primary-foreground-color-default); /** Used for the foreground of a default primary button in the focus state. */
  --gl-button-default-primary-foreground-color-active: var(--gl-button-default-primary-foreground-color-default); /** Used for the foreground of a default primary button in the active state. */
  --gl-button-default-primary-background-color-focus: var(--gl-button-default-primary-background-color-hover); /** Used for the background of an default primary button in the focus state. */
  --gl-button-default-primary-border-color-focus: var(--gl-button-default-primary-border-color-hover); /** Used for the border of an default primary button in the focus state. */
  --gl-button-default-tertiary-foreground-color-default: var(--gl-action-neutral-foreground-color-default); /** Used for the foreground of a default borderless, tertiary button in the default state. */
  --gl-button-default-tertiary-background-color-default: var(--gl-action-neutral-background-color-default); /** Used for the background of a default borderless, tertiary button in the default state. */
  --gl-button-default-tertiary-background-color-hover: var(--gl-action-neutral-background-color-hover); /** Used for the background of a default borderless, tertiary button in the hover state. */
  --gl-button-default-tertiary-background-color-active: var(--gl-action-neutral-background-color-active); /** Used for the background of a default borderless, tertiary button in the active state. */
  --gl-button-default-tertiary-border-color-default: var(--gl-action-neutral-border-color-default); /** Used for the border of a default borderless, tertiary button in the default state. */
  --gl-button-confirm-primary-foreground-color-hover: var(--gl-button-confirm-primary-foreground-color-default); /** Used for the foreground of a confirm (positive) primary button in the hover state. */
  --gl-button-confirm-primary-background-color-focus: var(--gl-button-confirm-primary-background-color-hover); /** Used for the background of a confirm (positive) primary button in the focus state. */
  --gl-button-confirm-primary-border-color-hover: var(--gl-button-confirm-primary-border-color-default); /** Used for the border of a confirm (positive) primary button in the hover state. */
  --gl-button-confirm-primary-border-color-focus: var(--gl-button-confirm-primary-border-color-default); /** Used for the border of a confirm (positive) primary button in the focus state. */
  --gl-button-confirm-primary-border-color-active: var(--gl-button-confirm-primary-border-color-default); /** Used for the border of a confirm (positive) primary button in the active state. */
  --gl-button-confirm-secondary-foreground-color-focus: var(--gl-button-confirm-secondary-foreground-color-hover); /** Used for the foreground of a confirm (positive) button in the focus state. */
  --gl-button-confirm-secondary-background-color-focus: var(--gl-button-confirm-secondary-background-color-hover); /** Used for the background of an outlined confirm (positive) button in the focus state. */
  --gl-button-confirm-secondary-border-color-focus: var(--gl-button-confirm-secondary-border-color-hover); /** Used for the border of an outlined confirm (positive) button in the focus state. */
  --gl-button-confirm-tertiary-foreground-color-default: var(--gl-action-confirm-foreground-color-default); /** Used for the foreground of a borderless, tertiary confirm (positive) button in the default state. */
  --gl-button-confirm-tertiary-foreground-color-hover: var(--gl-action-confirm-foreground-color-hover); /** Used for the foreground of a borderless, tertiary confirm (positive) button in the hover state. */
  --gl-button-confirm-tertiary-foreground-color-active: var(--gl-action-confirm-foreground-color-active); /** Used for the foreground of a borderless, tertiary confirm (positive) button in the active state. */
  --gl-button-confirm-tertiary-background-color-default: var(--gl-action-confirm-background-color-default); /** Used for the background of a borderless, tertiary confirm (positive) button in the default state. */
  --gl-button-confirm-tertiary-background-color-hover: var(--gl-action-confirm-background-color-hover); /** Used for the background of a borderless, tertiary confirm (positive) button in the hover state. */
  --gl-button-confirm-tertiary-background-color-active: var(--gl-action-confirm-background-color-active); /** Used for the background of a borderless, tertiary confirm (positive) button in the active state. */
  --gl-button-confirm-tertiary-border-color-default: var(--gl-action-confirm-border-color-default); /** Used for the border of a borderless, tertiary confirm (positive) button in the default state. */
  --gl-button-danger-primary-foreground-color-hover: var(--gl-button-danger-primary-foreground-color-default); /** Used for the foreground of a danger (destructive) primary button in the hover state. */
  --gl-button-danger-primary-foreground-color-focus: var(--gl-button-danger-primary-foreground-color-default); /** Used for the foreground of a danger (destructive) primary button in the focus state. */
  --gl-button-danger-primary-foreground-color-active: var(--gl-button-danger-primary-foreground-color-default); /** Used for the foreground of a danger (destructive) primary button in the active state. */
  --gl-button-danger-primary-background-color-focus: var(--gl-button-danger-primary-background-color-hover); /** Used for the background of a danger (destructive) primary button in the focus state. */
  --gl-button-danger-primary-border-color-focus: var(--gl-button-danger-primary-border-color-hover); /** Used for the border of a danger (destructive) primary button in the focus state. */
  --gl-button-danger-secondary-foreground-color-focus: var(--gl-button-danger-secondary-foreground-color-hover); /** Used for the foreground of a danger (destructive) button in the focus state. */
  --gl-button-danger-secondary-background-color-focus: var(--gl-button-danger-secondary-background-color-hover); /** Used for the background of an outlined danger (destructive) button in the focus state. */
  --gl-button-danger-secondary-border-color-focus: var(--gl-button-danger-secondary-border-color-hover); /** Used for the border of an outlined danger (destructive) button in the focus state. */
  --gl-button-danger-tertiary-foreground-color-default: var(--gl-action-danger-foreground-color-default); /** Used for the foreground of a borderless, tertiary danger (destructive) button in the default state. */
  --gl-button-danger-tertiary-foreground-color-hover: var(--gl-action-danger-foreground-color-hover); /** Used for the foreground of a borderless, tertiary danger (destructive) button in the hover state. */
  --gl-button-danger-tertiary-foreground-color-active: var(--gl-action-danger-foreground-color-active); /** Used for the foreground of a borderless, tertiary danger (destructive) button in the active state. */
  --gl-button-danger-tertiary-background-color-focus: var(--gl-action-danger-background-color-focus); /** Used for the background of a borderless, tertiary danger (destructive) button in the focus state. */
  --gl-button-danger-tertiary-border-color-default: var(--gl-action-danger-border-color-default); /** Used for the border of a borderless, tertiary danger (destructive) button in the default state. */
  --gl-button-dashed-border-color-hover: var(--gl-button-dashed-border-color-default); /** Used for the border of a dashed button in the hover state. */
  --gl-button-dashed-border-color-focus: var(--gl-button-dashed-border-color-default); /** Used for the border of a dashed button in the focus state. */
  --gl-button-link-border-radius: var(--gl-border-radius-md); /** Used for link button border radius. */
  --gl-button-link-text-color-default: var(--gl-text-color-link); /** Used for the text of a link button in the default state. */
  --gl-button-selected-foreground-color-default: var(--gl-button-default-primary-foreground-color-default); /** Used for the foreground of a selected button in the default state. */
  --gl-button-selected-background-color-hover: var(--gl-button-default-primary-background-color-hover); /** Used for the background of a selected button in the hover state. */
  --gl-button-selected-background-color-active: var(--gl-button-default-primary-background-color-active); /** Used for the background of a selected button in the active state. */
  --gl-button-selected-border-color-focus: var(--gl-button-selected-border-color-hover); /** Used for the border of a selected button in the focus state. */
  --gl-card-border-radius: var(--gl-border-radius-xl); /** Used for card border radius. */
  --gl-chart-axis-text-color: var(--gl-text-color-subtle); /** Used in charts for the text color of axis titles and labels. */
  --gl-datepicker-date-text-color-selected: var(--gl-control-indicator-color-selected); /** Used for the datepicker date text color state indicators. */
  --gl-drawer-border-radius: var(--gl-border-radius-2xl); /** Used for drawer border radius. */
  --gl-dropdown-background-color: var(--gl-background-color-overlap); /** Used for the background of a dropdown. */
  --gl-dropdown-border-color: var(--gl-border-color-strong); /** Used for the border of a dropdown. */
  --gl-dropdown-border-radius: var(--gl-border-radius-lg); /** Used for the border radius of a dropdown. */
  --gl-dropdown-divider-color: var(--gl-border-color-default); /** Used for the divider of a dropdown. */
  --gl-dropdown-option-text-color-default: var(--gl-action-neutral-foreground-color-default); /** Used for the text of a dropdown option in the default state. */
  --gl-dropdown-option-text-color-disabled: var(--gl-action-disabled-foreground-color); /** Used for the text of a dropdown option in the disabled state. */
  --gl-dropdown-option-indicator-color-selected-default: var(--gl-control-background-color-selected-default); /** Used for the dropdown selected option indicator in the default state. */
  --gl-dropdown-option-indicator-color-selected-hover: var(--gl-control-background-color-selected-hover); /** Used for the dropdown selected option indicator in the hover state. */
  --gl-dropdown-option-background-color-unselected-default: var(--gl-action-neutral-background-color-default); /** Used for the background of an unselected dropdown option in the default state. */
  --gl-dropdown-option-background-color-unselected-hover: var(--gl-action-neutral-background-color-hover); /** Used for the background of an unselected dropdown option in the hover state. */
  --gl-dropdown-option-background-color-unselected-active: var(--gl-action-neutral-background-color-active); /** Used for the background of an unselected dropdown option in the active state. */
  --gl-dropdown-option-background-color-selected-focus: var(--gl-dropdown-option-background-color-selected-hover); /** Used for the background of a selected dropdown option in the focus state. */
  --gl-modal-border-radius: var(--gl-border-radius-2xl); /** Used for modal border radius. */
  --gl-nav-item-foreground-color-focus: var(--gl-nav-item-foreground-color-hover); /** Used for the foreground of a default navigation item in the focus state. */
  --gl-nav-item-background-color-focus: var(--gl-nav-item-background-color-hover); /** Used for the background of a default navigation item in the focus state. */
  --gl-nav-item-selected-foreground-color-default: var(--gl-nav-item-foreground-color-hover); /** Used for the foreground of a selected navigation item in the default state. */
  --gl-nav-item-selected-foreground-color-hover: var(--gl-nav-item-foreground-color-hover); /** Used for the foreground of a selected navigation item in the hover state. */
  --gl-nav-item-selected-background-color-hover: var(--gl-nav-item-background-color-hover); /** Used for the background of a selected navigation item in the hover state. */
  --gl-nav-item-selected-background-color-active: var(--gl-nav-item-background-color-active); /** Used for the background of a selected navigation item in the active state. */
  --gl-progress-bar-indicator-color-default: var(--gl-status-info-icon-color); /** Used for the indicator color for the primary progress-bar variant. */
  --gl-progress-bar-indicator-color-success: var(--gl-status-success-icon-color); /** Used for the indicator color for the success progress-bar variant. */
  --gl-progress-bar-indicator-color-warning: var(--gl-status-warning-icon-color); /** Used for the indicator color for the warning progress-bar variant. */
  --gl-progress-bar-indicator-color-danger: var(--gl-status-danger-icon-color); /** Used for the indicator color for the danger progress-bar variant. */
  --gl-table-row-background-color-hover: var(--gl-highlight-target-background-color); /** Used for the background of a table row in hover state. */
  --gl-table-sorting-icon-color: var(--gl-text-color-heading); /** Used for the color of the sorting icons in the column headers. */
  --gl-toggle-switch-track-color-unchecked-default: var(--gl-control-background-color-default); /** Used for the track color of an unchecked toggle switch in the default state. */
  --gl-toggle-switch-track-color-unchecked-active: var(--gl-action-neutral-background-color-active); /** Used for the track color of an unchecked toggle switch in the active state. */
  --gl-toggle-switch-track-color-unchecked-disabled: var(--gl-control-background-color-default); /** Used for the track color of a disabled unchecked toggle switch. */
  --gl-toggle-switch-track-color-checked-default: var(--gl-action-selected-background-color-default); /** Used for the track color of a checked toggle switch in the default state. */
  --gl-toggle-switch-track-color-checked-hover: var(--gl-action-selected-background-color-hover); /** Used for the track color of a checked toggle switch in the hover state. */
  --gl-toggle-switch-track-color-checked-active: var(--gl-action-selected-background-color-active); /** Used for the track color of a checked toggle switch in the active state. */
  --gl-toggle-switch-track-color-checked-disabled: var(--gl-action-selected-background-color-disabled); /** Used for the track color of a disabled checked toggle switch, which stays filled so the checked state remains legible. */
  --gl-toggle-switch-track-color-loading: var(--gl-action-disabled-background-color); /** Used for the track color of a loading toggle switch. A loading toggle renders no thumb and its value is still in flight, so the track carries no checked state. */
  --gl-toggle-switch-track-border-color-unchecked-default: var(--gl-control-border-color-default); /** Used for the track border color of an unchecked toggle switch in the default state. */
  --gl-toggle-switch-track-border-color-unchecked-hover: var(--gl-control-border-color-hover); /** Used for the track border color of an unchecked toggle switch in the hover state. */
  --gl-toggle-switch-track-border-color-unchecked-disabled: var(--gl-action-disabled-border-color); /** Used for the track border color of a disabled unchecked toggle switch. */
  --gl-toggle-switch-background-color-unchecked-default: var(--gl-action-selected-background-color-default); /** Used for the background color of the unchecked toggle switch thumb in the default state. */
  --gl-toggle-switch-background-color-unchecked-disabled: var(--gl-action-disabled-foreground-color); /** Used for the background color of the disabled unchecked toggle switch thumb. */
  --gl-toggle-switch-background-color-checked-default: var(--gl-action-selected-foreground-color-default); /** Used for the background color of the checked toggle switch thumb in the default state. */
  --gl-toggle-switch-background-color-checked-disabled: var(--gl-action-selected-foreground-color-default); /** Used for the background color of the disabled checked toggle switch thumb. */
  --gl-toggle-switch-icon-color-unchecked-default: var(--gl-action-selected-foreground-color-default); /** Used for the icon color of an unchecked toggle switch in the default state. */
  --gl-toggle-switch-icon-color-checked-default: var(--gl-action-selected-background-color-default); /** Used for the icon color of a checked toggle switch in the default state. */
  --gl-toggle-switch-icon-color-checked-hover: var(--gl-action-selected-background-color-hover); /** Used for the icon color of a checked toggle switch in the hover state. */
  --gl-toggle-switch-icon-color-checked-active: var(--gl-action-selected-background-color-active); /** Used for the icon color of a checked toggle switch in the active state. */
  --gl-toggle-switch-icon-color-disabled: var(--gl-action-disabled-background-color); /** Used for the icon color of a disabled toggle switch. */
  --gl-token-foreground-color: var(--gl-text-color-default); /** Used for the token foreground color. */
  --gl-action-border-radius: var(--gl-border-radius-lg); /** Used for the border radius of an action. */
  --gl-action-selected-foreground-color-hover: var(--gl-action-selected-foreground-color-default); /** Used for the foreground of a selected action in the hover state. */
  --gl-action-selected-background-color-focus: var(--gl-action-selected-background-color-hover); /** Used for the background of a selected action in the focus state. */
  --gl-action-selected-border-color-default: var(--gl-action-selected-background-color-default); /** Used for the border of a selected action in the default state. */
  --gl-action-selected-border-color-hover: var(--gl-action-selected-background-color-hover); /** Used for the border of a selected action in the hover state. */
  --gl-action-selected-border-color-active: var(--gl-action-selected-background-color-active); /** Used for the border of a selected action in the active state. */
  --gl-action-neutral-foreground-color-hover: var(--gl-action-neutral-foreground-color-default); /** Used for the foreground of a neutral action in the hover state. */
  --gl-action-neutral-foreground-color-focus: var(--gl-action-neutral-foreground-color-default); /** Used for the foreground of a neutral action in the focus state. */
  --gl-action-neutral-foreground-color-active: var(--gl-action-neutral-foreground-color-default); /** Used for the foreground of a neutral action in the active state. */
  --gl-action-neutral-background-color-focus: var(--gl-action-neutral-background-color-hover); /** Used for the background of a neutral action in the focus state. */
  --gl-action-neutral-border-color-hover: var(--gl-action-neutral-border-color-default); /** Used for the border of a neutral action in the hover state. */
  --gl-action-neutral-border-color-focus: var(--gl-action-neutral-border-color-default); /** Used for the border of a neutral action in the focus state. */
  --gl-action-neutral-border-color-active: var(--gl-action-neutral-border-color-default); /** Used for the border of a neutral action in the active state. */
  --gl-action-confirm-foreground-color-focus: var(--gl-action-confirm-foreground-color-hover); /** Used for the foreground of a confirm (positive) action in the focus state. */
  --gl-action-confirm-background-color-focus: var(--gl-action-confirm-background-color-hover); /** Used for the background of a confirm (positive) action in the focus state. */
  --gl-action-confirm-border-color-hover: var(--gl-action-confirm-border-color-default); /** Used for the border of a confirm action in the hover state. */
  --gl-action-confirm-border-color-focus: var(--gl-action-confirm-border-color-default); /** Used for the border of a confirm action in the focus state. */
  --gl-action-confirm-border-color-active: var(--gl-action-confirm-border-color-default); /** Used for the border of a confirm action in the active state. */
  --gl-action-danger-foreground-color-focus: var(--gl-action-danger-foreground-color-hover); /** Used for the foreground of a danger (destructive) action in the focus state. */
  --gl-action-danger-border-color-hover: var(--gl-action-danger-border-color-default); /** Used for the border of a danger action in the hover state. */
  --gl-action-danger-border-color-focus: var(--gl-action-danger-border-color-default); /** Used for the border of a danger action in the focus state. */
  --gl-action-danger-border-color-active: var(--gl-action-danger-border-color-default); /** Used for the border of a danger action in the active state. */
  --gl-action-strong-confirm-background-color-focus: var(--gl-action-strong-confirm-background-color-hover); /** Used for the background of a strong confirm action in the focus state. */
  --gl-action-strong-confirm-foreground-color-hover: var(--gl-action-strong-confirm-foreground-color-default); /** Used for the foreground of a strong confirm action in the hover state. */
  --gl-action-strong-confirm-border-color-hover: var(--gl-action-strong-confirm-border-color-default); /** Used for the border of a strong confirm action in the hover state. */
  --gl-action-strong-neutral-background-color-focus: var(--gl-action-strong-neutral-background-color-hover); /** Used for the background of a strong neutral action in the focus state. */
  --gl-action-strong-neutral-foreground-color-hover: var(--gl-action-strong-neutral-foreground-color-default); /** Used for the foreground of a strong neutral action in the hover state. */
  --gl-action-strong-neutral-border-color-hover: var(--gl-action-strong-neutral-border-color-default); /** Used for the border of a strong neutral action in the hover state. */
  --gl-control-background-color-selected-focus: var(--gl-control-background-color-selected-hover); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) background on focus. */
  --gl-control-background-color-selected-disabled: var(--gl-action-selected-background-color-disabled); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) background when disabled. */
  --gl-control-border-color-error: var(--gl-feedback-danger-border-color); /** Used for invalid form control (input, textarea) border. */
  --gl-control-border-color-selected-default: var(--gl-control-background-color-selected-default); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) border. */
  --gl-control-border-color-selected-hover: var(--gl-control-background-color-selected-hover); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) border on hover. */
  --gl-control-border-radius: var(--gl-border-radius-lg); /** Used for form control (input, radio button, checkbox, textarea) default border radius. */
  --gl-control-text-color-error: var(--gl-text-color-danger); /** Used for the helper text when the input is invalid. */
  --gl-control-text-color-valid: var(--gl-text-color-success); /** Used for the helper text when the input is valid. */
  --gl-control-indicator-color-disabled: var(--gl-control-indicator-color-selected); /** Used for disabled checkbox and radio button state indicators. */
  --gl-feedback-border-radius: var(--gl-border-radius-lg); /** Used for the border radius of a feedback element. */
  --gl-focus-ring-inner-color: var(--gl-background-color-default); /** Used for the inner neutral portion of the focus ring. */
  --gl-icon-color-default: var(--gl-text-color-default); /** Used for the default icon color. Can be paired with default text. */
  --gl-icon-color-subtle: var(--gl-text-color-subtle); /** Used for a static or decorational icon. Can be paired with subtle text. */
  --gl-icon-color-strong: var(--gl-text-color-strong); /** Used for an icon with the highest contrast. */
  --gl-icon-color-disabled: var(--gl-text-color-disabled); /** Used for an icon within a disabled section. */
  --gl-icon-color-link: var(--gl-text-color-link); /** Used for an icon within a link. */
  --gl-icon-color-warning: var(--gl-text-color-warning); /** Used for an icon associated with a warning. */
  --gl-icon-color-danger: var(--gl-text-color-danger); /** Used for an icon associated with an error or danger. */
  --gl-icon-color-success: var(--gl-text-color-success); /** Used for an icon associated with success or validity. */
  --gl-text-primary: var(--gl-text-color-default); /** Use text.color.default instead. */
  --gl-text-secondary: var(--gl-text-color-subtle); /** Use text.color.subtle instead. */
  --gl-text-tertiary: var(--gl-text-color-disabled); /** Use text.color.disabled instead. */
  --gl-heading-1-font-weight: var(--gl-font-weight-heading);
  --gl-heading-1-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-1-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-1-color: var(--gl-text-color-heading);
  --gl-heading-2-font-weight: var(--gl-font-weight-heading);
  --gl-heading-2-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-2-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-2-color: var(--gl-text-color-heading);
  --gl-heading-3-font-weight: var(--gl-font-weight-heading);
  --gl-heading-3-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-3-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-3-color: var(--gl-text-color-heading);
  --gl-heading-4-font-weight: var(--gl-font-weight-heading);
  --gl-heading-4-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-4-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-4-color: var(--gl-text-color-heading);
  --gl-heading-5-font-weight: var(--gl-font-weight-heading);
  --gl-heading-5-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-5-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-5-color: var(--gl-text-color-heading);
  --gl-heading-6-font-weight: var(--gl-font-weight-heading);
  --gl-heading-6-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-6-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-6-color: var(--gl-text-color-heading);
  --gl-heading-scale-100-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-100-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-100-color: var(--gl-text-color-heading);
  --gl-heading-scale-200-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-200-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-200-color: var(--gl-text-color-heading);
  --gl-heading-scale-300-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-300-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-300-color: var(--gl-text-color-heading);
  --gl-heading-scale-400-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-400-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-400-color: var(--gl-text-color-heading);
  --gl-heading-scale-500-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-500-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-500-color: var(--gl-text-color-heading);
  --gl-heading-scale-600-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-600-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-600-color: var(--gl-text-color-heading);
  --gl-heading-scale-700-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-700-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-700-color: var(--gl-text-color-heading);
  --gl-heading-scale-800-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-800-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-800-color: var(--gl-text-color-heading);
  --gl-heading-scale-100-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-100-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-100-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-200-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-200-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-200-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-300-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-300-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-300-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-400-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-400-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-400-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-500-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-500-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-500-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-600-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-600-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-600-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-700-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-700-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-700-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-800-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-800-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-800-fixed-color: var(--gl-text-color-heading);
  --gl-heading-display-font-weight: var(--gl-font-weight-heading);
  --gl-heading-display-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-display-color: var(--gl-text-color-heading);
  --gl-heading-1-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-1-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-1-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-1-fixed-color: var(--gl-text-color-heading);
  --gl-heading-2-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-2-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-2-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-2-fixed-color: var(--gl-text-color-heading);
  --gl-heading-3-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-3-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-3-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-3-fixed-color: var(--gl-text-color-heading);
  --gl-heading-4-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-4-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-4-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-4-fixed-color: var(--gl-text-color-heading);
  --gl-heading-5-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-5-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-5-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-5-fixed-color: var(--gl-text-color-heading);
  --gl-heading-6-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-6-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-6-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-6-fixed-color: var(--gl-text-color-heading);
  --gl-avatar-square-border-radius-default: var(--gl-border-radius-default); /** Border radius for square avatars at smaller sizes (16px, 24px, 32px). */
  --gl-badge-muted-background-color-focus: var(--gl-badge-muted-background-color-hover); /** Used for the background of a muted badge in the focus state. */
  --gl-badge-neutral-background-color-focus: var(--gl-badge-neutral-background-color-hover); /** Used for the background of a neutral badge in the focus state. */
  --gl-badge-info-background-color-focus: var(--gl-badge-info-background-color-hover); /** Used for the background of an informational badge in the focus state. */
  --gl-badge-success-background-color-focus: var(--gl-badge-success-background-color-hover); /** Used for the background of a success badge in the focus state. */
  --gl-badge-warning-background-color-focus: var(--gl-badge-warning-background-color-hover); /** Used for the background of a warning badge in the focus state. */
  --gl-badge-danger-background-color-focus: var(--gl-badge-danger-background-color-hover); /** Used for the background of a danger badge in the focus state. */
  --gl-badge-tier-background-color-focus: var(--gl-badge-tier-background-color-hover); /** Used for the background of a tier related badge in the focus state. */
  --gl-broadcast-banner-border-radius: var(--gl-border-radius-default); /** Used for broadcast banner border radius. */
  --gl-button-border-radius: var(--gl-action-border-radius); /** Used for button border radius. */
  --gl-button-default-tertiary-foreground-color-hover: var(--gl-action-neutral-foreground-color-hover); /** Used for the foreground of a default borderless, tertiary button in the hover state. */
  --gl-button-default-tertiary-foreground-color-focus: var(--gl-action-neutral-foreground-color-focus); /** Used for the foreground of a default borderless, tertiary button in the focus state. */
  --gl-button-default-tertiary-foreground-color-active: var(--gl-action-neutral-foreground-color-active); /** Used for the foreground of a default borderless, tertiary button in the active state. */
  --gl-button-default-tertiary-background-color-focus: var(--gl-action-neutral-background-color-focus); /** Used for the background of a default borderless, tertiary button in the focus state. */
  --gl-button-default-tertiary-border-color-hover: var(--gl-action-neutral-border-color-hover); /** Used for the border of a default borderless, tertiary button in the hover state. */
  --gl-button-default-tertiary-border-color-focus: var(--gl-action-neutral-border-color-focus); /** Used for the border of a default borderless, tertiary button in the focus state. */
  --gl-button-default-tertiary-border-color-active: var(--gl-action-neutral-border-color-active); /** Used for the border of a default borderless, tertiary button in the active state. */
  --gl-button-confirm-primary-foreground-color-focus: var(--gl-button-confirm-primary-foreground-color-hover); /** Used for the foreground of a confirm (positive) primary button in the focus state. */
  --gl-button-confirm-tertiary-foreground-color-focus: var(--gl-action-confirm-foreground-color-focus); /** Used for the foreground of a borderless, tertiary confirm (positive) button in the focus state. */
  --gl-button-confirm-tertiary-background-color-focus: var(--gl-action-confirm-background-color-focus); /** Used for the background of a borderless, tertiary confirm (positive) button in the focus state. */
  --gl-button-confirm-tertiary-border-color-hover: var(--gl-action-confirm-border-color-hover); /** Used for the border of a borderless, tertiary confirm (positive) button in the hover state. */
  --gl-button-confirm-tertiary-border-color-focus: var(--gl-action-confirm-border-color-focus); /** Used for the border of a borderless, tertiary confirm (positive) button in the focus state. */
  --gl-button-confirm-tertiary-border-color-active: var(--gl-action-confirm-border-color-active); /** Used for the border of a borderless, tertiary confirm (positive) button in the active state. */
  --gl-button-danger-tertiary-foreground-color-focus: var(--gl-action-danger-foreground-color-focus); /** Used for the foreground of a borderless, tertiary danger (destructive) button in the focus state. */
  --gl-button-danger-tertiary-border-color-hover: var(--gl-action-danger-border-color-hover); /** Used for the border of a borderless, tertiary danger (destructive) button in the hover state. */
  --gl-button-danger-tertiary-border-color-focus: var(--gl-action-danger-border-color-focus); /** Used for the border of a borderless, tertiary danger (destructive) button in the focus state. */
  --gl-button-danger-tertiary-border-color-active: var(--gl-action-danger-border-color-active); /** Used for the border of a borderless, tertiary danger (destructive) button in the active state. */
  --gl-button-link-text-color-hover: var(--gl-button-link-text-color-default); /** Used for the text of a link button in the hover state. */
  --gl-button-link-text-color-focus: var(--gl-button-link-text-color-default); /** Used for the text of a link button in the focus state. */
  --gl-button-link-text-color-active: var(--gl-button-link-text-color-default); /** Used for the text of a link button in the active state. */
  --gl-button-selected-foreground-color-hover: var(--gl-button-default-primary-foreground-color-hover); /** Used for the foreground of a selected button in the hover state. */
  --gl-button-selected-foreground-color-focus: var(--gl-button-default-primary-foreground-color-focus); /** Used for the foreground of a selected button in the focus state. */
  --gl-button-selected-foreground-color-active: var(--gl-button-default-primary-foreground-color-active); /** Used for the foreground of a selected button in the active state. */
  --gl-button-selected-background-color-focus: var(--gl-button-default-primary-background-color-focus); /** Used for the background of a selected button in the focus state. */
  --gl-chart-axis-pointer-color: var(--gl-icon-color-subtle); /** Used in charts for the color of the reference line and axis value under mouse pointer. */
  --gl-chart-zoom-handle-color: var(--gl-icon-color-subtle); /** Used in charts for the handle color when zooming in on a specific area of data. */
  --gl-dropdown-option-text-color-hover: var(--gl-action-neutral-foreground-color-hover); /** Used for the text of a dropdown option in the hover state. */
  --gl-dropdown-option-text-color-focus: var(--gl-action-neutral-foreground-color-focus); /** Used for the text of a dropdown option in the focus state. */
  --gl-dropdown-option-text-color-active: var(--gl-action-neutral-foreground-color-active); /** Used for the text of a dropdown option in the active state. */
  --gl-dropdown-option-indicator-color-selected-focus: var(--gl-control-background-color-selected-focus); /** Used for the dropdown selected option indicator in the focus state. */
  --gl-dropdown-option-indicator-color-selected-active: var(--gl-control-background-color-selected-focus); /** Used for the dropdown selected option indicator in the active state. */
  --gl-dropdown-option-background-color-unselected-focus: var(--gl-action-neutral-background-color-focus); /** Used for the background of an unselected dropdown option in the focus state. */
  --gl-nav-item-border-radius: var(--gl-action-border-radius); /** Used for the border radius of a navigation item */
  --gl-nav-item-foreground-color-active: var(--gl-nav-item-foreground-color-focus); /** Used for the foreground of a default navigation item in the active state. */
  --gl-nav-item-selected-foreground-color-focus: var(--gl-nav-item-foreground-color-focus); /** Used for the foreground of a selected navigation item in the focus state. */
  --gl-nav-item-selected-background-color-focus: var(--gl-nav-item-background-color-focus); /** Used for the background of a selected navigation item in the focus state. */
  --gl-tab-selected-indicator-color-default: var(--gl-action-selected-border-color-active); /** Used for the selected indicator of a tab. */
  --gl-toggle-switch-track-color-unchecked-hover: var(--gl-toggle-switch-track-color-unchecked-default); /** Used for the track color of an unchecked toggle switch in the hover state. The track is deliberately unchanged from the default state; hover is carried by the track border and the thumb size. */
  --gl-toggle-switch-track-color-checked-focus: var(--gl-action-selected-background-color-focus); /** Used for the track color of a checked toggle switch in the focus state. */
  --gl-toggle-switch-track-border-color-unchecked-focus: var(--gl-toggle-switch-track-border-color-unchecked-hover); /** Used for the track border color of an unchecked toggle switch in the focus state. */
  --gl-toggle-switch-track-border-color-checked-default: var(--gl-action-selected-border-color-default); /** Used for the track border color of a checked toggle switch in the default state. */
  --gl-toggle-switch-track-border-color-checked-hover: var(--gl-action-selected-border-color-hover); /** Used for the track border color of a checked toggle switch in the hover state. */
  --gl-toggle-switch-track-border-color-checked-active: var(--gl-action-selected-border-color-active); /** Used for the track border color of a checked toggle switch in the active state. */
  --gl-toggle-switch-track-border-color-checked-disabled: var(--gl-toggle-switch-track-color-checked-disabled); /** Used for the track border color of a disabled checked toggle switch, which matches the track color. */
  --gl-toggle-switch-track-border-color-loading: var(--gl-toggle-switch-track-color-loading); /** Used for the track border color of a loading toggle switch, which matches the track color so the track reads as a single flat fill. */
  --gl-toggle-switch-background-color-unchecked-hover: var(--gl-toggle-switch-background-color-unchecked-default); /** Used for the background color of the unchecked toggle switch thumb in the hover state. */
  --gl-toggle-switch-background-color-unchecked-focus: var(--gl-toggle-switch-background-color-unchecked-default); /** Used for the background color of the unchecked toggle switch thumb in the focus state. */
  --gl-toggle-switch-background-color-unchecked-active: var(--gl-toggle-switch-background-color-unchecked-default); /** Used for the background color of the unchecked toggle switch thumb in the active state. */
  --gl-toggle-switch-background-color-checked-hover: var(--gl-action-selected-foreground-color-hover); /** Used for the background color of the checked toggle switch thumb in the hover state. */
  --gl-toggle-switch-background-color-disabled: var(--gl-toggle-switch-background-color-unchecked-disabled); /** Use toggle.switch.background.color.unchecked.disabled instead. */
  --gl-toggle-switch-icon-color-unchecked-hover: var(--gl-action-selected-foreground-color-hover); /** Used for the icon color of an unchecked toggle switch in the hover state. */
  --gl-toggle-switch-icon-color-checked-focus: var(--gl-action-selected-background-color-focus); /** Used for the icon color of a checked toggle switch in the focus state. */
  --gl-token-border-radius: var(--gl-border-radius-default); /** Used for token border radius. */
  --gl-action-selected-foreground-color-focus: var(--gl-action-selected-foreground-color-hover); /** Used for the foreground of a selected action in the focus state. */
  --gl-action-selected-border-color-focus: var(--gl-action-selected-background-color-focus); /** Used for the border of a selected action in the focus state. */
  --gl-action-strong-confirm-foreground-color-focus: var(--gl-action-strong-confirm-foreground-color-hover); /** Used for the foreground of a strong confirm action in the focus state. */
  --gl-action-strong-confirm-border-color-focus: var(--gl-action-strong-confirm-border-color-hover); /** Used for the border of a strong confirm action in the focus state. */
  --gl-action-strong-neutral-foreground-color-focus: var(--gl-action-strong-neutral-foreground-color-hover); /** Used for the foreground of a strong neutral action in the focus state. */
  --gl-action-strong-neutral-border-color-focus: var(--gl-action-strong-neutral-border-color-hover); /** Used for the border of a strong neutral action in the focus state. */
  --gl-control-border-color-selected-focus: var(--gl-control-background-color-selected-focus); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) border on focus. */
  --gl-control-border-color-selected-disabled: var(--gl-control-background-color-selected-disabled); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) border when disabled. */
  --gl-button-confirm-primary-foreground-color-active: var(--gl-button-confirm-primary-foreground-color-focus); /** Used for the foreground of a confirm (positive) primary button in the active state. */
  --gl-nav-item-selected-foreground-color-active: var(--gl-nav-item-foreground-color-active); /** Used for the foreground of a selected navigation item in the active state. */
  --gl-toggle-switch-track-color-unchecked-focus: var(--gl-toggle-switch-track-color-unchecked-hover); /** Used for the track color of an unchecked toggle switch in the focus state. The track is deliberately unchanged from the default state; focus is carried by the focus ring, the track border and the thumb size. */
  --gl-toggle-switch-track-border-color-unchecked-active: var(--gl-toggle-switch-track-border-color-unchecked-focus); /** Used for the track border color of an unchecked toggle switch in the active state. */
  --gl-toggle-switch-track-border-color-checked-focus: var(--gl-action-selected-border-color-focus); /** Used for the track border color of a checked toggle switch in the focus state. */
  --gl-toggle-switch-background-color-checked-focus: var(--gl-action-selected-foreground-color-focus); /** Used for the background color of the checked toggle switch thumb in the focus state. */
  --gl-toggle-switch-icon-color-unchecked-focus: var(--gl-action-selected-foreground-color-focus); /** Used for the icon color of an unchecked toggle switch in the focus state. */
  --gl-action-selected-foreground-color-active: var(--gl-action-selected-foreground-color-focus); /** Used for the foreground of a selected action in the active state. */
  --gl-action-strong-confirm-foreground-color-active: var(--gl-action-strong-confirm-foreground-color-focus); /** Used for the foreground of a strong confirm action in the active state. */
  --gl-action-strong-confirm-border-color-active: var(--gl-action-strong-confirm-border-color-focus); /** Used for the border of a strong confirm action in the active state. */
  --gl-action-strong-neutral-foreground-color-active: var(--gl-action-strong-neutral-foreground-color-focus); /** Used for the foreground of a strong neutral action in the active state. */
  --gl-action-strong-neutral-border-color-active: var(--gl-action-strong-neutral-border-color-focus); /** Used for the border of a strong neutral action in the active state. */
  --gl-toggle-switch-background-color-checked-active: var(--gl-action-selected-foreground-color-active); /** Used for the background color of the checked toggle switch thumb in the active state. */
  --gl-toggle-switch-icon-color-unchecked-active: var(--gl-action-selected-foreground-color-active); /** Used for the icon color of an unchecked toggle switch in the active state. */
}

/**
 * Do not edit directly, this file was auto-generated.
 */
:root.gl-dark, .gl-dark-scope {
  --gl-border-radius-full: 9999px;
  --gl-color-alpha-0: rgba(0, 0, 0, 0);
  --gl-color-alpha-dark-2: rgba(5, 5, 6, 0.02);
  --gl-color-alpha-dark-4: rgba(5, 5, 6, 0.04);
  --gl-color-alpha-dark-6: rgba(5, 5, 6, 0.06);
  --gl-color-alpha-dark-8: rgba(5, 5, 6, 0.08);
  --gl-color-alpha-dark-16: rgba(5, 5, 6, 0.16);
  --gl-color-alpha-dark-24: rgba(5, 5, 6, 0.24);
  --gl-color-alpha-dark-40: rgba(5, 5, 6, 0.4);
  --gl-color-alpha-light-2: rgba(255, 255, 255, 0.02);
  --gl-color-alpha-light-4: rgba(255, 255, 255, 0.04);
  --gl-color-alpha-light-6: rgba(255, 255, 255, 0.06);
  --gl-color-alpha-light-8: rgba(255, 255, 255, 0.08);
  --gl-color-alpha-light-16: rgba(255, 255, 255, 0.16);
  --gl-color-alpha-light-24: rgba(255, 255, 255, 0.24);
  --gl-color-alpha-light-36: rgba(255, 255, 255, 0.36);
  --gl-color-alpha-light-40: rgba(255, 255, 255, 0.4);
  --gl-color-blue-50: #e8f2fd;
  --gl-color-blue-100: #c8e0f9;
  --gl-color-blue-200: #9dc8f2;
  --gl-color-blue-300: #64a7e9;
  --gl-color-blue-400: #3f8edd;
  --gl-color-blue-500: #1f73ca;
  --gl-color-blue-600: #2566b5;
  --gl-color-blue-700: #27599f;
  --gl-color-blue-800: #254581;
  --gl-color-blue-900: #1f3166;
  --gl-color-blue-950: #1d2153;
  --gl-color-brand-white: #fff;
  --gl-color-brand-charcoal: #171321;
  --gl-color-brand-orange-01g: #ffd1bf;
  --gl-color-brand-orange-01p: #fca326;
  --gl-color-brand-orange-02p: #fc6d26;
  --gl-color-brand-orange-03p: #e24329;
  --gl-color-brand-purple-01g: #ceb3ef;
  --gl-color-brand-purple-01p: #a989f5;
  --gl-color-brand-purple-02p: #7759c2;
  --gl-color-brand-gray-01: #d1d0d3;
  --gl-color-brand-gray-02: #a2a1a6;
  --gl-color-brand-gray-03: #74717a;
  --gl-color-brand-gray-04: #45424d;
  --gl-color-brand-gray-05: #2b2838;
  --gl-color-brand-pink-01g: #ffb9c9;
  --gl-color-data-green-50: #ddfab7;
  --gl-color-data-green-100: #c6ed94;
  --gl-color-data-green-200: #b0d97b;
  --gl-color-data-green-300: #94c25e;
  --gl-color-data-green-400: #81ac41;
  --gl-color-data-green-500: #619025;
  --gl-color-data-green-600: #4e7f0e;
  --gl-color-data-green-700: #366800;
  --gl-color-data-green-800: #275600;
  --gl-color-data-green-900: #1a4500;
  --gl-color-data-green-950: #133a03;
  --gl-color-data-aqua-50: #b5fefd;
  --gl-color-data-aqua-100: #93f2ef;
  --gl-color-data-aqua-200: #5edee3;
  --gl-color-data-aqua-300: #32c5d2;
  --gl-color-data-aqua-400: #00acc4;
  --gl-color-data-aqua-500: #0090b1;
  --gl-color-data-aqua-600: #007b9b;
  --gl-color-data-aqua-700: #006381;
  --gl-color-data-aqua-800: #00516c;
  --gl-color-data-aqua-900: #004059;
  --gl-color-data-aqua-950: #00344b;
  --gl-color-data-blue-50: #e9ebff;
  --gl-color-data-blue-100: #d2dcff;
  --gl-color-data-blue-200: #b7c6ff;
  --gl-color-data-blue-300: #97acff;
  --gl-color-data-blue-400: #7992f5;
  --gl-color-data-blue-500: #617ae2;
  --gl-color-data-blue-600: #4e65cd;
  --gl-color-data-blue-700: #3f51ae;
  --gl-color-data-blue-800: #374291;
  --gl-color-data-blue-900: #303470;
  --gl-color-data-blue-950: #2a2b59;
  --gl-color-data-magenta-50: #ffe3eb;
  --gl-color-data-magenta-100: #ffccdb;
  --gl-color-data-magenta-200: #fcacc5;
  --gl-color-data-magenta-300: #f88aaf;
  --gl-color-data-magenta-400: #e86e9a;
  --gl-color-data-magenta-500: #cf4d81;
  --gl-color-data-magenta-600: #b93d71;
  --gl-color-data-magenta-700: #9a2e5d;
  --gl-color-data-magenta-800: #7c214f;
  --gl-color-data-magenta-900: #661e3a;
  --gl-color-data-magenta-950: #541d31;
  --gl-color-data-orange-50: #fae8d1;
  --gl-color-data-orange-100: #f5d6b3;
  --gl-color-data-orange-200: #eebd8c;
  --gl-color-data-orange-300: #e99b60;
  --gl-color-data-orange-400: #e07e41;
  --gl-color-data-orange-500: #c95d2e;
  --gl-color-data-orange-600: #b14f18;
  --gl-color-data-orange-700: #92430a;
  --gl-color-data-orange-800: #6f3500;
  --gl-color-data-orange-900: #5e2f05;
  --gl-color-data-orange-950: #4b2707;
  --gl-color-green-50: #e6f5ea;
  --gl-color-green-100: #bee6d0;
  --gl-color-green-200: #84d4b6;
  --gl-color-green-300: #35b597;
  --gl-color-green-400: #129c84;
  --gl-color-green-500: #0d8070;
  --gl-color-green-600: #0c7265;
  --gl-color-green-700: #0b645a;
  --gl-color-green-800: #075048;
  --gl-color-green-900: #003c36;
  --gl-color-green-950: #002c26;
  --gl-color-neutral-0: #fff;
  --gl-color-neutral-10: #f7f7f5;
  --gl-color-neutral-50: #ecebea;
  --gl-color-neutral-100: #dcdbd9;
  --gl-color-neutral-200: #c1bfbe;
  --gl-color-neutral-300: #a5a3a3;
  --gl-color-neutral-400: #8a8888;
  --gl-color-neutral-500: #747273;
  --gl-color-neutral-600: #646163;
  --gl-color-neutral-700: #4d4b4e;
  --gl-color-neutral-800: #3a383d;
  --gl-color-neutral-900: #28272d;
  --gl-color-neutral-950: #18171d;
  --gl-color-neutral-1000: #050408;
  --gl-color-orange-50: #fdf0d5;
  --gl-color-orange-100: #fada9c;
  --gl-color-orange-200: #f7b951;
  --gl-color-orange-300: #fb8017;
  --gl-color-orange-400: #e95f21;
  --gl-color-orange-500: #c74816;
  --gl-color-orange-600: #b34013;
  --gl-color-orange-700: #9e3811;
  --gl-color-orange-800: #7d2d0e;
  --gl-color-orange-900: #5d220d;
  --gl-color-orange-950: #461807;
  --gl-color-purple-50: #f4f0fc;
  --gl-color-purple-100: #e1daf7;
  --gl-color-purple-200: #c9beef;
  --gl-color-purple-300: #a997e1;
  --gl-color-purple-400: #927cd7;
  --gl-color-purple-500: #7862c8;
  --gl-color-purple-600: #6a54c0;
  --gl-color-purple-700: #5b46b8;
  --gl-color-purple-800: #483698;
  --gl-color-purple-900: #362676;
  --gl-color-purple-950: #291a5c;
  --gl-color-red-50: #feeef0;
  --gl-color-red-100: #ffd3d7;
  --gl-color-red-200: #ffafb8;
  --gl-color-red-300: #fc7988;
  --gl-color-red-400: #f15168;
  --gl-color-red-500: #de1d4b;
  --gl-color-red-600: #c52042;
  --gl-color-red-700: #ac203a;
  --gl-color-red-800: #891c2f;
  --gl-color-red-900: #641925;
  --gl-color-red-950: #48151d;
  --gl-font-family-regular: var(--default-regular-font, 'GitLab Sans'),'GitLab Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Noto Sans',Ubuntu,Cantarell,'Helvetica Neue',sans-serif,'Apple Color Emoji','Segoe UI Emoji','Segoe UI Symbol','Noto Color Emoji';
  --gl-font-family-monospace: var(--default-mono-font, 'GitLab Mono'),'GitLab Mono','JetBrains Mono',Menlo,'DejaVu Sans Mono','Liberation Mono',Consolas,'Ubuntu Mono','Courier New','andale mono','lucida console',monospace;
  --gl-font-size-100: 0.75rem; /** Used for meta text and small labels. */
  --gl-font-size-200: 0.8125rem; /** Used for level 6 headings. */
  --gl-font-size-300: 0.875rem; /** Used for level 5 headings, body text, input labels, and help text. */
  --gl-font-size-400: 1rem; /** Used for level 4 headings, large body text. */
  --gl-font-size-500: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem); /** Used for responsive level 3 headings. */
  --gl-font-size-600: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem); /** Used for responsive level 2 headings. */
  --gl-font-size-700: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem); /** Used for responsive level 1 headings */
  --gl-font-size-800: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem); /** Used for a responsive display option that can be applied to a level 1 heading to increase its prominence. */
  --gl-font-size-xs: 0.625rem;
  --gl-font-size-100-fixed: 0.75rem; /** Used for meta text and small labels. */
  --gl-font-size-200-fixed: 0.8125rem; /** Used for level 6 headings. */
  --gl-font-size-300-fixed: 0.875rem; /** Used for level 5 headings, body text, input labels, and help text. */
  --gl-font-size-400-fixed: 1rem; /** Used for level 4 headings, large body text. */
  --gl-font-size-500-fixed: 1.125rem; /** Used for level 3 headings. */
  --gl-font-size-600-fixed: 1.3125rem; /** Used for level 2 headings. */
  --gl-font-size-700-fixed: 1.5rem; /** Used for level 1 headings */
  --gl-font-size-800-fixed: 1.75rem; /** Used for a display option that can be applied to a level 1 heading to increase its prominence. */
  --gl-font-weight-100: 100;
  --gl-font-weight-300: 300;
  --gl-font-weight-normal: 400;
  --gl-font-weight-semibold: 500;
  --gl-font-weight-bold: 600;
  --gl-line-height-12: 0.75rem;
  --gl-line-height-16: 1rem;
  --gl-line-height-20: 1.25rem;
  --gl-line-height-24: 1.5rem;
  --gl-line-height-28: 1.75rem;
  --gl-line-height-32: 2rem;
  --gl-line-height-36: 2.25rem;
  --gl-line-height-42: 2.625rem;
  --gl-line-height-44: 2.75rem;
  --gl-line-height-52: 3.25rem;
  --gl-line-height-heading: 1.25;
  --gl-opacity-0: 0;
  --gl-opacity-1: .1;
  --gl-opacity-2: .2;
  --gl-opacity-3: .3;
  --gl-opacity-4: .4;
  --gl-opacity-5: .5;
  --gl-opacity-6: .6;
  --gl-opacity-7: .7;
  --gl-opacity-8: .8;
  --gl-opacity-9: .9;
  --gl-opacity-10: 1;
  --gl-spacing-scale-0: 0px;
  --gl-spacing-scale-1: 0.125rem;
  --gl-spacing-scale-2: 0.25rem;
  --gl-spacing-scale-3: 0.5rem;
  --gl-spacing-scale-4: 0.75rem;
  --gl-spacing-scale-5: 1rem;
  --gl-spacing-scale-6: 1.5rem;
  --gl-spacing-scale-7: 2rem;
  --gl-spacing-scale-8: 2.5rem;
  --gl-spacing-scale-9: 3rem;
  --gl-spacing-scale-10: 3.5rem;
  --gl-spacing-scale-11: 4rem;
  --gl-spacing-scale-12: 5rem;
  --gl-spacing-scale-13: 6rem;
  --gl-spacing-scale-15: 7.5rem;
  --gl-spacing-scale-18: 9rem;
  --gl-spacing-scale-20: 10rem;
  --gl-spacing-scale-26: 13rem;
  --gl-spacing-scale-28: 14rem;
  --gl-spacing-scale-30: 15rem;
  --gl-spacing-scale-31: 15.5rem;
  --gl-spacing-scale-33: 16.5rem;
  --gl-spacing-scale-34: 17rem;
  --gl-spacing-scale-37: 18.5rem;
  --gl-spacing-scale-48: 24rem;
  --gl-spacing-scale-62: 31rem;
  --gl-spacing-scale-75: 37.5rem;
  --gl-spacing-scale-80: 40rem;
  --gl-spacing-scale-88: 44rem;
  --gl-spacing-scale-px: 1px;
  --gl-spacing-scale-2-5: 0.375rem;
  --gl-spacing-scale-11-5: 4.5rem;
  --gl-zindex-0: 0;
  --gl-zindex-1: 1;
  --gl-zindex-2: 2;
  --gl-zindex-3: 3;
  --gl-zindex-4: 4;
  --gl-zindex-200: 200;
  --gl-zindex-9999: 9999;
  --gl-avatar-fallback-background-color-red: rgba(255, 175, 184, 0.23921568627450981); /** Red background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-purple: rgba(201, 190, 239, 0.23921568627450981); /** Purple background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-blue: rgba(157, 200, 242, 0.23921568627450981); /** Blue background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-green: rgba(132, 212, 182, 0.23921568627450981); /** Green background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-orange: rgba(247, 185, 81, 0.23921568627450981); /** Orange background for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-background-color-neutral: rgba(191, 191, 195, 0.23921568627450981); /** Neutral background for avatar fallback with no particular meaning. */
  --gl-broadcast-banner-background-color-blue: #235180; /** Used for the background for the blue banner type. */
  --gl-broadcast-banner-background-color-green: #1b653f; /** Used for the background for the green banner type. */
  --gl-broadcast-banner-background-color-indigo: #41419f; /** Used for the background for the indigo banner type. */
  --gl-broadcast-banner-background-color-lightblue: #4977a5; /** Used for the background for the lightblue banner type. */
  --gl-broadcast-banner-background-color-lightgreen: #308258; /** Used for the background for the lightgreen banner type. */
  --gl-broadcast-banner-background-color-lightindigo: #6666c4; /** Used for the background for the lightindigo banner type. */
  --gl-broadcast-banner-background-color-lightred: #ad4a3b; /** Used for the background for the lightred banner type. */
  --gl-broadcast-banner-background-color-red: #8f2110; /** Used for the background for the red banner type. */
  --gl-broadcast-banner-border-color-blue: #0b2640; /** Used for the border for the blue banner type. */
  --gl-broadcast-banner-border-color-green: #0e4328; /** Used for the border for the green banner type. */
  --gl-broadcast-banner-border-color-indigo: #222261; /** Used for the border for the indigo banner type. */
  --gl-broadcast-banner-border-color-lightblue: #235180; /** Used for the border for the lightblue banner type. */
  --gl-broadcast-banner-border-color-lightgreen: #1b653f; /** Used for the border for the lightgreen banner type. */
  --gl-broadcast-banner-border-color-lightindigo: #41419f; /** Used for the border for the lightindigo banner type. */
  --gl-broadcast-banner-border-color-lightred: #8f2110; /** Used for the border for the lightred banner type. */
  --gl-broadcast-banner-border-color-red: #580d02; /** Used for the border for the red banner type. */
  --gl-button-default-primary-background-color-default: rgba(137, 136, 141, 0.4); /** Used for the background of an default primary button in the default state. */
  --gl-button-default-primary-background-color-hover: rgba(137, 136, 141, 0.64); /** Used for the background of an default primary button in the hover state. */
  --gl-button-default-primary-background-color-active: rgba(137, 136, 141, 0.32); /** Used for the background of an default primary button in the active state. */
  --gl-button-danger-secondary-background-color-default: rgba(241, 81, 104, 0.4); /** Used for the background of an outlined danger (destructive) button in the default state. */
  --gl-button-danger-secondary-background-color-hover: rgba(241, 81, 104, 0.64); /** Used for the background of an outlined danger (destructive) button in the hover state. */
  --gl-button-danger-secondary-background-color-active: rgba(241, 81, 104, 0.32); /** Used for the background of an outlined danger (destructive) button in the active state. */
  --gl-button-disabled-background-color: rgba(137, 136, 141, 0.16); /** Used for the background of a disabled button. */
  --gl-chart-threshold-area-color: rgba(222, 29, 75, 0.1); /** Used in charts to delineate a threshold area in a chart. */
  --gl-illustration-stroke-color-default: #e3e3e8; /** Default stroke color to define shape and provide essential detail. */
  --gl-illustration-stroke-width-default: 1.5; /** Default stroke width to define shape and provide essential detail. */
  --gl-illustration-fill-color-default: #423f4f; /** Default fill color for an element where specific meaning or emphasis is not required. */
  --gl-illustration-status-fill-color-neutral: #6f6796; /** Used as a fill to convey a concept which is neither positive or negative. */
  --gl-illustration-status-fill-color-success: #3b8581; /** Used as a fill to convey a success or active concept, has a positive connotation. */
  --gl-illustration-status-fill-color-warning: #ab752f; /** Used as a fill to convey a caution or warning concept, has a slightly negative connotation. */
  --gl-illustration-status-fill-color-danger: #aa563a; /** Used as a fill to convey a critical or danger concept, has a negative connotation. */
  --gl-illustration-accent-stroke-color-orange: #e3865f; /** Used for orange accent stroke detail on an object or attention-drawing element. */
  --gl-illustration-accent-stroke-color-teal: #6baea3; /** Used for teal accent stroke detail on an object or attention-drawing element. */
  --gl-illustration-accent-stroke-color-strong: #aea5d6; /** Used for dark accent stroke detail on an object or attention-drawing element. */
  --gl-illustration-accent-fill-color-subtle: #5c5371; /** Used to add depth to a secondary element and supporting surface. */
  --gl-illustration-accent-fill-color-strong: #6f6796; /** Used for an element requiring visual emphasis without competing with primary content or status indicators. */
  --gl-illustration-accent-fill-color-orange: #aa563a; /** Used to add orange to a secondary element and supporting surface. */
  --gl-illustration-accent-fill-color-teal: #3b8581; /** Used to add teal to a secondary element and supporting surface. */
  --gl-illustration-base-fill-color: #32303c; /** Used for the consistent background shape present across all illustrations. Provides a unified foundation that visually grounds each illustration while maintaining system cohesion. */
  --gl-illustration-isometric-stroke-color-default: #e3e3e8; /** Default stroke color to define shape and provide essential detail in isometric illustration. */
  --gl-illustration-isometric-stroke-width-default: 1.5; /** Default stroke width to define shape and provide essential detail in isometric illustration. */
  --gl-illustration-isometric-glyph-top-fill-color: #5a566c; /** Used for the top face of isometric text and number elements. */
  --gl-illustration-isometric-glyph-front-fill-color: #423f4f; /** Used for the front face of isometric text and number elements. */
  --gl-illustration-isometric-glyph-side-fill-color: #373441; /** Used for the side face of isometric text and number elements. */
  --gl-illustration-isometric-glyph-shadow-fill-color: #292730; /** Used for the shadow of isometric text and number elements. */
  --gl-illustration-isometric-object-top-fill-color: #aa563a; /** Used for the top face of an isometric object or symbol. */
  --gl-illustration-isometric-object-front-fill-color: #a54623; /** Used for the front face of an isometric object or symbol. */
  --gl-illustration-isometric-object-side-fill-color: #8f4424; /** Used for the side face of an isometric object or symbol. */
  --gl-illustration-isometric-object-highlight-fill-color: #423f4f; /** Used for the face of an isometric object or symbol that requires maximum distinction from other elements. */
  --gl-illustration-isometric-object-shadow-fill-color: #3d2b2a; /** Used for the shadow of an isometric object or symbol. */
  --gl-illustration-isometric-accent-top-fill-color: #6d6972; /** Used for the top face of a supporting isometric element. Provides subtle dimensional variation without competing with primary content. */
  --gl-illustration-isometric-accent-front-fill-color: #49474d; /** Used for the front face of a supporting isometric element. Provides subtle dimensional variation without competing with primary content. */
  --gl-illustration-isometric-accent-side-fill-color: #212023; /** Used for the side face of a supporting isometric element. Provides subtle dimensional variation without competing with primary content. */
  --gl-illustration-isometric-base-top-fill-color: #32303c; /** Used for the top surface of an isometric base platform. */
  --gl-illustration-isometric-base-front-fill-color: #2b2932; /** Used for the front face of an isometric base platform. */
  --gl-illustration-isometric-base-side-fill-color: #23222b; /** Used for the side face of an isometric base platform. */
  --gl-nav-item-font-weight: 425; /** Used for the font weight of a navigation item */
  --data-viz-green-50: #133a03;
  --data-viz-green-100: #1a4500;
  --data-viz-green-200: #275600;
  --data-viz-green-300: #366800;
  --data-viz-green-400: #4e7f0e;
  --data-viz-green-500: #619025;
  --data-viz-green-600: #81ac41;
  --data-viz-green-700: #94c25e;
  --data-viz-green-800: #b0d97b;
  --data-viz-green-900: #c6ed94;
  --data-viz-green-950: #ddfab7;
  --data-viz-aqua-50: #00344b;
  --data-viz-aqua-100: #004059;
  --data-viz-aqua-200: #00516c;
  --data-viz-aqua-300: #006381;
  --data-viz-aqua-400: #007b9b;
  --data-viz-aqua-500: #0090b1;
  --data-viz-aqua-600: #00acc4;
  --data-viz-aqua-700: #32c5d2;
  --data-viz-aqua-800: #5edee3;
  --data-viz-aqua-900: #93f2ef;
  --data-viz-aqua-950: #b5fefd;
  --data-viz-blue-50: #2a2b59;
  --data-viz-blue-100: #303470;
  --data-viz-blue-200: #374291;
  --data-viz-blue-300: #3f51ae;
  --data-viz-blue-400: #4e65cd;
  --data-viz-blue-500: #617ae2;
  --data-viz-blue-600: #7992f5;
  --data-viz-blue-700: #97acff;
  --data-viz-blue-800: #b7c6ff;
  --data-viz-blue-900: #d2dcff;
  --data-viz-blue-950: #e9ebff;
  --data-viz-magenta-50: #541d31;
  --data-viz-magenta-100: #661e3a;
  --data-viz-magenta-200: #7c214f;
  --data-viz-magenta-300: #9a2e5d;
  --data-viz-magenta-400: #b93d71;
  --data-viz-magenta-500: #cf4d81;
  --data-viz-magenta-600: #e86e9a;
  --data-viz-magenta-700: #f88aaf;
  --data-viz-magenta-800: #fcacc5;
  --data-viz-magenta-900: #ffccdb;
  --data-viz-magenta-950: #ffe3eb;
  --data-viz-orange-50: #4b2707;
  --data-viz-orange-100: #5e2f05;
  --data-viz-orange-200: #6f3500;
  --data-viz-orange-300: #92430a;
  --data-viz-orange-400: #b14f18;
  --data-viz-orange-500: #c95d2e;
  --data-viz-orange-600: #e07e41;
  --data-viz-orange-700: #e99b60;
  --data-viz-orange-800: #eebd8c;
  --data-viz-orange-900: #f5d6b3;
  --data-viz-orange-950: #fae8d1;
  --blue-950: #f2f9ff;
  --green-950: #f1fdf6;
  --orange-950: #fff4e1;
  --red-950: #fff4f3;
  --brand-charcoal: #171321; /** Use color.brand-charcoal instead. */
  --brand-orange-01: #fca326; /** Use color.brand-orange.01p instead. */
  --brand-orange-02: #fc6d26; /** Use color.brand-orange.02p instead. */
  --brand-orange-03: #e24329; /** Use color.brand-orange.03p instead. */
  --brand-purple-01: #a989f5; /** Use color.purple.01p instead. */
  --brand-purple-02: #7759c2; /** Use color.purple.02p instead. */
  --brand-gray-01: #d1d0d3; /** Use color.brand-gray.01 instead. */
  --brand-gray-02: #a2a1a6; /** Use color.brand-gray.02 instead. */
  --brand-gray-03: #74717a; /** Use color.brand-gray.03 instead. */
  --brand-gray-04: #45424d; /** Use color.brand-gray.04 instead. */
  --brand-gray-05: #2b2838; /** Use color.brand-gray.05 instead. */
  --t-gray-a-16: rgba(5, 5, 6, 0.16); /** Use color.alpha.dark.16 instead. */
  --t-gray-a-24: rgba(5, 5, 6, 0.24); /** Use color.alpha.dark.24 instead. */
  --t-gray-a-02: rgba(5, 5, 6, 0.02); /** Use color.alpha.dark.2 instead. */
  --t-gray-a-04: rgba(5, 5, 6, 0.04); /** Use color.alpha.dark.4 instead. */
  --t-gray-a-06: rgba(5, 5, 6, 0.06); /** Use color.alpha.dark.6 instead. */
  --t-gray-a-08: rgba(5, 5, 6, 0.08); /** Use color.alpha.dark.8 instead. */
  --t-white-a-16: rgba(255, 255, 255, 0.16); /** Use color.alpha.light.16 instead. */
  --t-white-a-24: rgba(255, 255, 255, 0.24); /** Use color.alpha.light.24 instead. */
  --t-white-a-36: rgba(255, 255, 255, 0.36); /** Use color.alpha.light.36 instead. */
  --t-white-a-02: rgba(255, 255, 255, 0.02); /** Use color.alpha.light.2 instead. */
  --t-white-a-04: rgba(255, 255, 255, 0.04); /** Use color.alpha.light.4 instead. */
  --t-white-a-06: rgba(255, 255, 255, 0.06); /** Use color.alpha.light.6 instead. */
  --t-white-a-08: rgba(255, 255, 255, 0.08); /** Use color.alpha.light.8 instead. */
  --gl-action-danger-background-color-default: rgba(241, 81, 104, 0); /** Used for the background of a danger (destructive) action in the default state. */
  --gl-action-danger-background-color-hover: rgba(241, 81, 104, 0.4); /** Used for the background of a danger (destructive) action in the hover state. */
  --gl-action-danger-background-color-active: rgba(241, 81, 104, 0.16); /** Used for the background of a danger (destructive) action in the active state. */
  --gl-background-color-overlay: rgba(0, 0, 0, 0.64); /** Used for an overlay that covers other content. */
  --gl-letter-spacing-heading: -0.01em;
  --gl-heading-3-letter-spacing: inherit;
  --gl-heading-4-letter-spacing: inherit;
  --gl-heading-5-letter-spacing: inherit;
  --gl-heading-6-letter-spacing: inherit;
  --gl-heading-scale-100-letter-spacing: inherit;
  --gl-heading-scale-200-letter-spacing: inherit;
  --gl-heading-scale-300-letter-spacing: inherit;
  --gl-heading-scale-400-letter-spacing: inherit;
  --gl-heading-scale-500-letter-spacing: inherit;
  --gl-heading-scale-800-line-height: 1.125;
  --gl-heading-scale-100-fixed-letter-spacing: inherit;
  --gl-heading-scale-200-fixed-letter-spacing: inherit;
  --gl-heading-scale-300-fixed-letter-spacing: inherit;
  --gl-heading-scale-400-fixed-letter-spacing: inherit;
  --gl-heading-scale-500-fixed-letter-spacing: inherit;
  --gl-heading-scale-800-fixed-line-height: 1.125;
  --gl-heading-display-line-height: 1.125;
  --gl-heading-3-fixed-letter-spacing: inherit;
  --gl-heading-4-fixed-letter-spacing: inherit;
  --gl-heading-5-fixed-letter-spacing: inherit;
  --gl-heading-6-fixed-letter-spacing: inherit;
  --gl-border-color-transparent: var(--gl-color-alpha-0); /** Used when a border needs to be present, but not visibly perceived. */
  --gl-border-color-default: var(--gl-color-neutral-700); /** Used for the default border color. */
  --gl-border-color-subtle: var(--gl-color-neutral-800); /** Used for a subtle border in combination with the default background. */
  --gl-border-color-strong: var(--gl-color-neutral-600); /** Used for a distinct border that emphasizes an edge or boundaries. */
  --gl-border-radius-none: var(--gl-spacing-scale-0);
  --gl-border-radius-xs: var(--gl-spacing-scale-px);
  --gl-border-radius-sm: var(--gl-spacing-scale-1);
  --gl-border-radius-md: var(--gl-spacing-scale-2);
  --gl-border-radius-lg: var(--gl-spacing-scale-3);
  --gl-border-radius-xl: var(--gl-spacing-scale-4);
  --gl-border-radius-2xl: var(--gl-spacing-scale-5);
  --gl-border-radius-3xl: var(--gl-spacing-scale-6);
  --gl-font-size-sm: var(--gl-font-size-100);
  --gl-font-size-md: var(--gl-font-size-300);
  --gl-font-size-lg: var(--gl-font-size-400);
  --gl-font-weight-heading: var(--gl-font-weight-bold);
  --gl-heading-default-margin-top: var(--gl-spacing-scale-0);
  --gl-heading-default-margin-bottom: var(--gl-spacing-scale-5);
  --gl-shadow-color-default: var(--gl-color-alpha-dark-40); /** Used for the default shadow color. */
  --gl-alert-neutral-border-top-color: var(--gl-color-neutral-400); /** Used for the border color of a neutral alert. */
  --gl-alert-neutral-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of a neutral alert. */
  --gl-alert-info-title-color: var(--gl-color-blue-200); /** Used for the title color of an info alert. */
  --gl-alert-info-border-top-color: var(--gl-color-blue-400); /** Used for the border color of an info alert. */
  --gl-alert-info-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of an info alert. */
  --gl-alert-success-title-color: var(--gl-color-green-200); /** Used for the title color of a success alert. */
  --gl-alert-success-border-top-color: var(--gl-color-green-400); /** Used for the border color of a success alert. */
  --gl-alert-success-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of a success alert. */
  --gl-alert-warning-title-color: var(--gl-color-orange-200); /** Used for the title color of a warning alert. */
  --gl-alert-warning-border-top-color: var(--gl-color-orange-400); /** Used for the border color of a warning alert. */
  --gl-alert-warning-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of a warning alert. */
  --gl-alert-danger-title-color: var(--gl-color-red-200); /** Used for the title color of a danger alert. */
  --gl-alert-danger-border-top-color: var(--gl-color-red-400); /** Used for the border color of a danger alert. */
  --gl-alert-danger-border-bottom-color: var(--gl-color-alpha-0); /** Used for the border bottom color of a danger alert. */
  --gl-application-chrome-background-color: var(--gl-color-neutral-1000); /** Used for the application chrome background, the lowest layer of the interface that sits beneath panels and contains global navigation, user actions, application navigation, and AI navigation. */
  --gl-avatar-border-color-default: var(--gl-color-alpha-light-8); /** Used to define the edge of an avatar. */
  --gl-avatar-border-color-hover: var(--gl-color-alpha-light-24); /** Used to increase the edge definition of an avatar in the hover state. */
  --gl-avatar-circle-border-radius-default: var(--gl-border-radius-full); /** Border radius for cirlce avatars at all sizes. */
  --gl-avatar-fallback-text-color-red: var(--gl-color-red-200); /** Red text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-purple: var(--gl-color-purple-200); /** Purple text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-blue: var(--gl-color-blue-200); /** Blue text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-green: var(--gl-color-green-200); /** Green text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-orange: var(--gl-color-orange-200); /** Orange text color for avatar fallback with no particular meaning. */
  --gl-avatar-fallback-text-color-neutral: var(--gl-color-neutral-200); /** Neutral text color for avatar fallback with no particular meaning. */
  --gl-badge-muted-background-color-default: var(--gl-color-neutral-400); /** Used for the background of a muted badge when static or the default state when linked. */
  --gl-badge-muted-background-color-active: var(--gl-color-neutral-300); /** Used for the background of a muted badge in the active state. */
  --gl-badge-muted-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a muted badge when static or the default state when linked. */
  --gl-badge-muted-border-color-hover: var(--gl-color-neutral-300); /** Used for the border of a muted badge in the hover state. */
  --gl-badge-muted-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a muted badge in the focus state. */
  --gl-badge-muted-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a muted badge in the active state. */
  --gl-badge-muted-text-color-default: var(--gl-color-neutral-950); /** Used for the text of a muted badge when static or the default state when linked. */
  --gl-badge-muted-text-color-hover: var(--gl-color-neutral-950); /** Used for the text of a muted badge in the hover state. */
  --gl-badge-muted-text-color-active: var(--gl-color-neutral-950); /** Used for the text of a muted badge in the active state. */
  --gl-badge-muted-icon-color-default: var(--gl-color-neutral-950); /** Used for the icon of a muted badge when static or the default state when linked. */
  --gl-badge-muted-icon-color-hover: var(--gl-color-neutral-950); /** Used for the icon of a muted badge in the hover state. */
  --gl-badge-muted-icon-color-active: var(--gl-color-neutral-950); /** Used for the icon of a muted badge in the active state. */
  --gl-badge-neutral-background-color-default: var(--gl-color-neutral-300); /** Used for the background of a neutral badge when static or the default state when linked. */
  --gl-badge-neutral-background-color-active: var(--gl-color-neutral-200); /** Used for the background of a neutral badge in the active state. */
  --gl-badge-neutral-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a neutral badge when static or the default state when linked. */
  --gl-badge-neutral-border-color-hover: var(--gl-color-neutral-200); /** Used for the border of a neutral badge in the hover state. */
  --gl-badge-neutral-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a neutral badge in the focus state. */
  --gl-badge-neutral-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a neutral badge in the active state. */
  --gl-badge-neutral-text-color-default: var(--gl-color-neutral-950); /** Used for the text of a neutral badge when static or the default state when linked. */
  --gl-badge-neutral-text-color-hover: var(--gl-color-neutral-950); /** Used for the text of a neutral badge in the hover state. */
  --gl-badge-neutral-text-color-active: var(--gl-color-neutral-950); /** Used for the text of a neutral badge in the active state. */
  --gl-badge-neutral-icon-color-default: var(--gl-color-neutral-950); /** Used for the icon of a neutral badge when static or the default state when linked. */
  --gl-badge-neutral-icon-color-hover: var(--gl-color-neutral-950); /** Used for the icon of a neutral badge in the hover state. */
  --gl-badge-neutral-icon-color-active: var(--gl-color-neutral-950); /** Used for the icon of a neutral badge in the active state. */
  --gl-badge-info-background-color-default: var(--gl-color-blue-300); /** Used for the background of an informational badge when static or the default state when linked. */
  --gl-badge-info-background-color-active: var(--gl-color-blue-200); /** Used for the background of an informational badge in the active state. */
  --gl-badge-info-border-color-default: var(--gl-color-alpha-0); /** Used for the border of an informational badge when static or the default state when linked. */
  --gl-badge-info-border-color-hover: var(--gl-color-blue-200); /** Used for the border of an informational badge in the hover state. */
  --gl-badge-info-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of an informational badge in the focus state. */
  --gl-badge-info-border-color-active: var(--gl-color-alpha-0); /** Used for the border of an informational badge in the active state. */
  --gl-badge-info-text-color-default: var(--gl-color-blue-950); /** Used for the text of an informational badge when static or the default state when linked. */
  --gl-badge-info-text-color-hover: var(--gl-color-blue-950); /** Used for the text of an informational badge in the hover state. */
  --gl-badge-info-text-color-active: var(--gl-color-blue-950); /** Used for the text of an informational badge in the active state. */
  --gl-badge-info-icon-color-default: var(--gl-color-blue-950); /** Used for the icon of an informational badge when static or the default state when linked. */
  --gl-badge-info-icon-color-hover: var(--gl-color-blue-950); /** Used for the icon of an informational badge in the hover state. */
  --gl-badge-info-icon-color-active: var(--gl-color-blue-950); /** Used for the icon of an informational badge in the active state. */
  --gl-badge-success-background-color-default: var(--gl-color-green-300); /** Used for the background of a success badge when static or the default state when linked. */
  --gl-badge-success-background-color-active: var(--gl-color-green-200); /** Used for the background of a success badge in the active state. */
  --gl-badge-success-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a success badge when static or the default state when linked. */
  --gl-badge-success-border-color-hover: var(--gl-color-green-200); /** Used for the border of a success badge in the hover state. */
  --gl-badge-success-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a success badge in the focus state. */
  --gl-badge-success-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a success badge in the active state. */
  --gl-badge-success-text-color-default: var(--gl-color-green-950); /** Used for the text of a success badge when static or the default state when linked. */
  --gl-badge-success-text-color-hover: var(--gl-color-green-950); /** Used for the text of a success badge in the hover state. */
  --gl-badge-success-text-color-active: var(--gl-color-green-950); /** Used for the text of a success badge in the active state. */
  --gl-badge-success-icon-color-default: var(--gl-color-green-950); /** Used for the icon of a success badge when static or the default state when linked. */
  --gl-badge-success-icon-color-hover: var(--gl-color-green-950); /** Used for the icon of a success badge in the hover state. */
  --gl-badge-success-icon-color-active: var(--gl-color-green-950); /** Used for the icon of a success badge in the active state. */
  --gl-badge-warning-background-color-default: var(--gl-color-orange-300); /** Used for the background of a warning badge when static or the default state when linked. */
  --gl-badge-warning-background-color-active: var(--gl-color-orange-200); /** Used for the background of a warning badge in the active state. */
  --gl-badge-warning-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a warning badge when static or the default state when linked. */
  --gl-badge-warning-border-color-hover: var(--gl-color-orange-200); /** Used for the border of a warning badge in the hover state. */
  --gl-badge-warning-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a warning badge in the focus state. */
  --gl-badge-warning-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a warning badge in the active state. */
  --gl-badge-warning-text-color-default: var(--gl-color-orange-950); /** Used for the text of a warning badge when static or the default state when linked. */
  --gl-badge-warning-text-color-hover: var(--gl-color-orange-950); /** Used for the text of a warning badge in the hover state. */
  --gl-badge-warning-text-color-active: var(--gl-color-orange-950); /** Used for the text of a warning badge in the active state. */
  --gl-badge-warning-icon-color-default: var(--gl-color-orange-950); /** Used for the icon of a warning badge when static or the default state when linked. */
  --gl-badge-warning-icon-color-hover: var(--gl-color-orange-950); /** Used for the icon of a warning badge in the hover state. */
  --gl-badge-warning-icon-color-active: var(--gl-color-orange-950); /** Used for the icon of a warning badge in the active state. */
  --gl-badge-danger-background-color-default: var(--gl-color-red-300); /** Used for the background of a danger badge when static or the default state when linked. */
  --gl-badge-danger-background-color-active: var(--gl-color-red-200); /** Used for the background of a danger badge in the active state. */
  --gl-badge-danger-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a danger badge when static or the default state when linked. */
  --gl-badge-danger-border-color-hover: var(--gl-color-red-200); /** Used for the border of a danger badge in the hover state. */
  --gl-badge-danger-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a danger badge in the focus state. */
  --gl-badge-danger-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a danger badge in the active state. */
  --gl-badge-danger-text-color-default: var(--gl-color-red-950); /** Used for the text of a danger badge when static or the default state when linked. */
  --gl-badge-danger-text-color-hover: var(--gl-color-red-950); /** Used for the text of a danger badge in the hover state. */
  --gl-badge-danger-text-color-active: var(--gl-color-red-950); /** Used for the text of a danger badge in the active state. */
  --gl-badge-danger-icon-color-default: var(--gl-color-red-950); /** Used for the icon of a danger badge when static or the default state when linked. */
  --gl-badge-danger-icon-color-hover: var(--gl-color-red-950); /** Used for the icon of a danger badge in the hover state. */
  --gl-badge-danger-icon-color-active: var(--gl-color-red-950); /** Used for the icon of a danger badge in the active state. */
  --gl-badge-tier-background-color-default: var(--gl-color-purple-300); /** Used for the background of a tier related badge when static or the default state when linked. */
  --gl-badge-tier-background-color-active: var(--gl-color-purple-200); /** Used for the background of a tier related badge in the active state. */
  --gl-badge-tier-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a tier related badge when static or the default state when linked. */
  --gl-badge-tier-border-color-hover: var(--gl-color-purple-200); /** Used for the border of a tier related badge in the hover state. */
  --gl-badge-tier-border-color-focus: var(--gl-color-alpha-0); /** Used for the border of a tier related badge in the focus state. */
  --gl-badge-tier-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a tier related badge in the active state. */
  --gl-badge-tier-text-color-default: var(--gl-color-purple-950); /** Used for the text of a tier related badge when static or the default state when linked. */
  --gl-badge-tier-text-color-hover: var(--gl-color-purple-950); /** Used for the text of a tier related badge in the hover state. */
  --gl-badge-tier-text-color-active: var(--gl-color-purple-950); /** Used for the text of a tier related badge in the active state. */
  --gl-badge-tier-icon-color-default: var(--gl-color-purple-950); /** Used for the icon of a tier related badge when static or the default state when linked. */
  --gl-badge-tier-icon-color-hover: var(--gl-color-purple-950); /** Used for the icon of a tier related badge in the hover state. */
  --gl-badge-tier-icon-color-active: var(--gl-color-purple-950); /** Used for the icon of a tier related badge in the active state. */
  --gl-banner-intro-border-color: var(--gl-color-blue-700); /** Used for the border of an info banner. */
  --gl-banner-promo-background-color: var(--gl-color-purple-950); /** Used for the background of a promo banner. */
  --gl-banner-promo-border-color: var(--gl-color-purple-700); /** Used for the border of a promo banner. */
  --gl-breadcrumb-separator-color: var(--gl-color-neutral-400); /** Used for the breadcrumb level separator. */
  --gl-broadcast-banner-background-color-dark: var(--gl-color-neutral-500); /** Used for the background for the dark banner type. */
  --gl-broadcast-banner-background-color-light: var(--gl-color-neutral-50); /** Used for the background for the light banner type. */
  --gl-broadcast-banner-border-color-dark: var(--gl-color-neutral-700); /** Used for the border for the dark banner type. */
  --gl-broadcast-banner-border-color-light: var(--gl-color-neutral-100); /** Used for the border for the light banner type. */
  --gl-broadcast-banner-icon-color-blue: var(--gl-color-neutral-0); /** Used for the icon for the blue banner type. */
  --gl-broadcast-banner-icon-color-dark: var(--gl-color-neutral-0); /** Used for the icon for the dark banner type. */
  --gl-broadcast-banner-icon-color-green: var(--gl-color-neutral-0); /** Used for the icon for the green banner type. */
  --gl-broadcast-banner-icon-color-indigo: var(--gl-color-neutral-0); /** Used for the icon for the indigo banner type. */
  --gl-broadcast-banner-icon-color-light: var(--gl-color-neutral-900); /** Used for the icon for the light banner type. */
  --gl-broadcast-banner-icon-color-lightblue: var(--gl-color-neutral-0); /** Used for the icon for the lightblue banner type. */
  --gl-broadcast-banner-icon-color-lightgreen: var(--gl-color-neutral-0); /** Used for the icon for the lightgreen banner type. */
  --gl-broadcast-banner-icon-color-lightindigo: var(--gl-color-neutral-0); /** Used for the icon for the lightindigo banner type. */
  --gl-broadcast-banner-icon-color-lightred: var(--gl-color-neutral-0); /** Used for the icon for the lightred banner type. */
  --gl-broadcast-banner-icon-color-red: var(--gl-color-neutral-0); /** Used for the icon for the red banner type. */
  --gl-broadcast-banner-text-color-blue: var(--gl-color-neutral-0); /** Used for the text for the blue banner type. */
  --gl-broadcast-banner-text-color-dark: var(--gl-color-neutral-0); /** Used for the text for the dark banner type. */
  --gl-broadcast-banner-text-color-green: var(--gl-color-neutral-0); /** Used for the text for the green banner type. */
  --gl-broadcast-banner-text-color-indigo: var(--gl-color-neutral-0); /** Used for the text for the indigo banner type. */
  --gl-broadcast-banner-text-color-light: var(--gl-color-neutral-900); /** Used for the text for the light banner type. */
  --gl-broadcast-banner-text-color-lightblue: var(--gl-color-neutral-0); /** Used for the text for the lightblue banner type. */
  --gl-broadcast-banner-text-color-lightgreen: var(--gl-color-neutral-0); /** Used for the text for the lightgreen banner type. */
  --gl-broadcast-banner-text-color-lightindigo: var(--gl-color-neutral-0); /** Used for the text for the lightindigo banner type. */
  --gl-broadcast-banner-text-color-lightred: var(--gl-color-neutral-0); /** Used for the text for the lightred banner type. */
  --gl-broadcast-banner-text-color-red: var(--gl-color-neutral-0); /** Used for the text for the red banner type. */
  --gl-button-default-primary-foreground-color-default: var(--gl-color-neutral-50); /** Used for the foreground of a default primary button in the default state. */
  --gl-button-default-primary-background-color-focus: var(--gl-button-default-primary-background-color-hover); /** Used for the background of an default primary button in the focus state. */
  --gl-button-default-primary-border-color-default: var(--gl-color-alpha-0); /** Used for the border of an default primary button in the default state. */
  --gl-button-default-primary-border-color-hover: var(--gl-color-alpha-0); /** Used for the border of an default primary button in the hover state. */
  --gl-button-default-primary-border-color-active: var(--gl-color-alpha-0); /** Used for the border of an default primary button in the active state. */
  --gl-button-confirm-primary-foreground-color-default: var(--gl-color-neutral-950); /** Used for the foreground of a confirm (positive) primary button in the default state. */
  --gl-button-confirm-primary-background-color-default: var(--gl-color-neutral-50); /** Used for the background of a confirm (positive) primary button in the default state. */
  --gl-button-confirm-primary-background-color-hover: var(--gl-color-neutral-10); /** Used for the background of a confirm (positive) primary button in the hover state. */
  --gl-button-confirm-primary-background-color-active: var(--gl-color-neutral-100); /** Used for the background of a confirm (positive) primary button in the active state. */
  --gl-button-confirm-primary-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a confirm (positive) primary button in the default state. */
  --gl-button-confirm-secondary-foreground-color-default: var(--gl-color-neutral-50); /** Used for the foreground of a confirm (positive) button in the default state. */
  --gl-button-confirm-secondary-foreground-color-hover: var(--gl-color-neutral-10); /** Used for the foreground of a confirm (positive) button in the hover state. */
  --gl-button-confirm-secondary-foreground-color-active: var(--gl-color-neutral-0); /** Used for the foreground of a confirm (positive) button in the active state. */
  --gl-button-confirm-secondary-background-color-default: var(--gl-color-alpha-light-24); /** Used for the background of an outlined confirm (positive) button in the default state. */
  --gl-button-confirm-secondary-background-color-hover: var(--gl-color-alpha-light-40); /** Used for the background of an outlined confirm (positive) button in the hover state. */
  --gl-button-confirm-secondary-background-color-active: var(--gl-color-alpha-light-16); /** Used for the background of an outlined confirm (positive) button in the active state. */
  --gl-button-confirm-secondary-border-color-default: var(--gl-color-alpha-0); /** Used for the border of an outlined confirm (positive) button in the default state. */
  --gl-button-confirm-secondary-border-color-hover: var(--gl-color-alpha-0); /** Used for the border of an outlined confirm (positive) button in the hover state. */
  --gl-button-confirm-secondary-border-color-active: var(--gl-color-alpha-0); /** Used for the border of an outlined confirm (positive) button in the active state. */
  --gl-button-danger-primary-foreground-color-default: var(--gl-color-neutral-950); /** Used for the foreground of a danger (destructive) primary button in the default state. */
  --gl-button-danger-primary-background-color-default: var(--gl-color-red-400); /** Used for the background of a danger (destructive) primary button in the default state. */
  --gl-button-danger-primary-background-color-hover: var(--gl-color-red-300); /** Used for the background of a danger (destructive) primary button in the hover state. */
  --gl-button-danger-primary-background-color-active: var(--gl-color-red-200); /** Used for the background of a danger (destructive) primary button in the active state. */
  --gl-button-danger-primary-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a danger (destructive) primary button in the default state. */
  --gl-button-danger-primary-border-color-hover: var(--gl-color-alpha-0); /** Used for the border of a danger (destructive) primary button in the hover state. */
  --gl-button-danger-primary-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a danger (destructive) primary button in the active state. */
  --gl-button-danger-secondary-foreground-color-default: var(--gl-color-red-100); /** Used for the foreground of a danger (destructive) button in the default state. */
  --gl-button-danger-secondary-foreground-color-hover: var(--gl-color-red-50); /** Used for the foreground of a danger (destructive) button in the hover state. */
  --gl-button-danger-secondary-foreground-color-active: var(--gl-color-red-50); /** Used for the foreground of a danger (destructive) button in the active state. */
  --gl-button-danger-secondary-background-color-focus: var(--gl-button-danger-secondary-background-color-hover); /** Used for the background of an outlined danger (destructive) button in the focus state. */
  --gl-button-danger-secondary-border-color-default: var(--gl-color-alpha-0); /** Used for the border of an outlined danger (destructive) button in the default state. */
  --gl-button-danger-secondary-border-color-hover: var(--gl-color-alpha-0); /** Used for the border of an outlined danger (destructive) button in the hover state. */
  --gl-button-danger-secondary-border-color-active: var(--gl-color-alpha-0); /** Used for the border of an outlined danger (destructive) button in the active state. */
  --gl-button-danger-tertiary-background-color-default: var(--gl-action-danger-background-color-default); /** Used for the background of a borderless, tertiary danger (destructive) button in the default state. */
  --gl-button-danger-tertiary-background-color-hover: var(--gl-action-danger-background-color-hover); /** Used for the background of a borderless, tertiary danger (destructive) button in the hover state. */
  --gl-button-danger-tertiary-background-color-active: var(--gl-action-danger-background-color-active); /** Used for the background of a borderless, tertiary danger (destructive) button in the active state. */
  --gl-button-dashed-border-color-default: var(--gl-color-neutral-400); /** Used for the border of a dashed button in the default state. */
  --gl-button-dashed-border-color-active: var(--gl-color-neutral-300); /** Used for the border of a dashed button in the active state. */
  --gl-button-selected-foreground-color-default: var(--gl-color-neutral-900); /** Used for the foreground of a selected button in the default state. */
  --gl-button-selected-foreground-color-hover: var(--gl-color-neutral-950); /** Used for the foreground of a selected button in the hover state. */
  --gl-button-selected-foreground-color-focus: var(--gl-color-neutral-950); /** Used for the foreground of a selected button in the focus state. */
  --gl-button-selected-foreground-color-active: var(--gl-color-neutral-950); /** Used for the foreground of a selected button in the active state. */
  --gl-button-selected-background-color-default: var(--gl-color-neutral-300); /** Used for the background of a selected button in the default state. */
  --gl-button-selected-background-color-hover: var(--gl-color-neutral-200); /** Used for the background of a selected button in the hover state. */
  --gl-button-selected-background-color-focus: var(--gl-color-neutral-200); /** Used for the background of a selected button in the focus state. */
  --gl-button-selected-background-color-active: var(--gl-color-neutral-400); /** Used for the background of a selected button in the active state. */
  --gl-button-selected-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a selected button in the default state. */
  --gl-button-selected-border-color-hover: var(--gl-color-alpha-0); /** Used for the border of a selected button in the hover state. */
  --gl-button-selected-border-color-active: var(--gl-color-alpha-0); /** Used for the border of a selected button in the active state. */
  --gl-button-disabled-foreground-color: var(--gl-color-neutral-400); /** Used for the foreground of a disabled button. */
  --gl-button-disabled-border-color: var(--gl-color-alpha-0); /** Used for the border of a disabled button. */
  --gl-button-count-background-color: var(--gl-color-alpha-light-16); /** Used for the background of a button count element. */
  --gl-chart-axis-line-color: var(--gl-color-neutral-700); /** Used in charts for axis line color. */
  --gl-chart-threshold-line-color: var(--gl-color-red-600); /** Used in charts to divide a threshold area in a chart from other data. */
  --gl-chart-zoom-filler-color: var(--gl-color-alpha-light-16); /** Used in charts for the overlay color when zooming in on a specific area of data. */
  --gl-datepicker-background-color: var(--gl-color-neutral-900); /** Used for the background color of datepicker. */
  --gl-dropdown-option-background-color-selected-default: var(--gl-color-neutral-800); /** Used for the background of a selected dropdown option in the default state. */
  --gl-dropdown-option-background-color-selected-hover: var(--gl-color-neutral-700); /** Used for the background of a selected dropdown option in the hover state. */
  --gl-dropdown-option-background-color-selected-active: var(--gl-color-neutral-900); /** Used for the background of a selected dropdown option in the active state. */
  --gl-dropdown-search-background-color: var(--gl-color-alpha-dark-16); /** Used for the background of a search input in a dropdown listbox. */
  --gl-filtered-search-token-type-background-color-default: var(--gl-color-neutral-900); /** Used for the filtered search type token background color in the default state. */
  --gl-filtered-search-token-type-background-color-hover: var(--gl-color-neutral-800); /** Used for the filtered search type token background color in the hover state. */
  --gl-filtered-search-token-data-background-color-default: var(--gl-color-neutral-800); /** Used for the filtered search data background color in the default state. */
  --gl-filtered-search-token-data-background-color-hover: var(--gl-color-neutral-700); /** Used for the filtered search data token background color in the hover state. */
  --gl-filtered-search-token-operator-background-color-default: var(--gl-color-neutral-900); /** Used for the filtered search operator background color in the default state. */
  --gl-filtered-search-token-operator-background-color-hover: var(--gl-color-neutral-800); /** Used for the filtered search operator token background color in the hover state. */
  --gl-label-light-text-color: var(--gl-color-neutral-950); /** Used for the label text color on a light background color. */
  --gl-label-light-button-background-color-default: var(--gl-color-alpha-0); /** Used for the label remove button background on a light background color in the default state. */
  --gl-label-light-button-background-color-hover: var(--gl-color-neutral-950); /** Used for the label remove button background on a light background color in the hover state. */
  --gl-label-light-button-icon-color-default: var(--gl-color-neutral-950); /** Used for the label remove button icon on a light background color in the default state. */
  --gl-label-dark-text-color: var(--gl-color-neutral-0); /** Used for the label text color on a dark background color. */
  --gl-label-dark-button-background-color-default: var(--gl-color-alpha-0); /** Used for the label remove button background on a dark background color in the default state. */
  --gl-label-dark-button-background-color-hover: var(--gl-color-neutral-0); /** Used for the label remove button background on a dark background color in the hover state. */
  --gl-label-dark-button-icon-color-default: var(--gl-color-neutral-0); /** Used for the label remove button icon on a dark background color in the default state. */
  --gl-label-scoped-text-color: var(--gl-color-neutral-0); /** Used for the scoped label text color. */
  --gl-label-scoped-button-background-color-hover: var(--gl-color-neutral-0); /** Used for the scoped label remove button background in the hover state. */
  --gl-label-scoped-button-icon-color-default: var(--gl-color-neutral-0); /** Used for the scoped label remove button icon in the default state. */
  --gl-label-scoped-button-icon-color-hover: var(--gl-color-neutral-950); /** Used for the scoped label remove button icon in the hover state. */
  --gl-link-mention-text-color-default: var(--gl-color-blue-100); /** Used for the mention link text color. */
  --gl-link-mention-text-color-current: var(--gl-color-orange-100); /** Used for the mention link text color when referencing the current user. */
  --gl-link-mention-background-color-default: var(--gl-color-blue-800); /** Used for the mention link default background. */
  --gl-link-mention-background-color-current: var(--gl-color-orange-800); /** Used for the mention link background when referencing the current user. */
  --gl-nav-item-font-size: var(--gl-font-size-300); /** Used for the font size of a navigation item */
  --gl-nav-item-foreground-color-default: var(--gl-color-neutral-200); /** Used for the foreground of a default navigation item in the default state. */
  --gl-nav-item-foreground-color-hover: var(--gl-color-neutral-0); /** Used for the foreground of a default navigation item in the hover state. */
  --gl-nav-item-background-color-default: var(--gl-color-alpha-0); /** Used for the background of a default navigation item in the default state. */
  --gl-nav-item-background-color-hover: var(--gl-color-neutral-800); /** Used for the background of a default navigation item in the hover state. */
  --gl-nav-item-background-color-active: var(--gl-color-neutral-950); /** Used for the background of a default navigation item in the active state. */
  --gl-nav-item-selected-font-weight: var(--gl-font-weight-bold); /** Used for the font weight of a selected navigation item. */
  --gl-nav-item-selected-background-color-default: var(--gl-color-neutral-800); /** Used for the background of a selected navigation item in the default state. */
  --gl-nav-item-selected-indicator-color: var(--gl-color-orange-300); /** Used for the indicator beside a selected navigation item. Tinted themes override it in src/scss/themes.scss. */
  --gl-progress-bar-track-color: var(--gl-color-neutral-700); /** Used for the track color for all progress-bar variants. */
  --gl-skeleton-loader-background-color: var(--gl-color-neutral-800); /** Used for the skeleton loader background color. */
  --gl-skeleton-loader-shimmer-color: var(--gl-color-neutral-700); /** Used for the animated shimmer effect in a skeleton loader. */
  --gl-spinner-track-color-default: var(--gl-color-neutral-600); /** Used for the static track (background) of a loading spinner. */
  --gl-spinner-track-color-light: var(--gl-color-neutral-800); /** Used for the static track (background) of a loading spinner on a dark background. */
  --gl-spinner-segment-color-default: var(--gl-color-neutral-100); /** Used for the animated segment of a loading spinner. */
  --gl-spinner-segment-color-light: var(--gl-color-neutral-200); /** Used for the animated segment of a loading spinner on a dark background. */
  --gl-token-selector-token-container-token-background-color-focus: var(--gl-color-neutral-600); /** Used for the background color of a token in a token-selector when it's token-container is in the focus state. */
  --gl-token-background-color: var(--gl-color-neutral-800); /** Used for the token background color. */
  --gl-tooltip-text-color-subtle: var(--gl-color-neutral-200); /** Used for supplemental tooltip text that is less prominent than the default text and remains the same color regardless of mode. */
  --black: var(--gl-color-neutral-0);
  --white: var(--gl-color-neutral-900);
  --blue-50: var(--gl-color-blue-900);
  --blue-100: var(--gl-color-blue-800);
  --blue-200: var(--gl-color-blue-700);
  --blue-300: var(--gl-color-blue-600);
  --blue-400: var(--gl-color-blue-500);
  --blue-500: var(--gl-color-blue-400);
  --blue-600: var(--gl-color-blue-300);
  --blue-700: var(--gl-color-blue-200);
  --blue-800: var(--gl-color-blue-100);
  --blue-900: var(--gl-color-blue-50);
  --gray-10: var(--gl-color-neutral-950);
  --gray-50: var(--gl-color-neutral-900);
  --gray-100: var(--gl-color-neutral-800);
  --gray-200: var(--gl-color-neutral-700);
  --gray-300: var(--gl-color-neutral-600);
  --gray-400: var(--gl-color-neutral-500);
  --gray-500: var(--gl-color-neutral-400);
  --gray-600: var(--gl-color-neutral-300);
  --gray-700: var(--gl-color-neutral-200);
  --gray-800: var(--gl-color-neutral-100);
  --gray-900: var(--gl-color-neutral-50);
  --gray-950: var(--gl-color-neutral-10);
  --green-50: var(--gl-color-green-900);
  --green-100: var(--gl-color-green-800);
  --green-200: var(--gl-color-green-700);
  --green-300: var(--gl-color-green-600);
  --green-400: var(--gl-color-green-500);
  --green-500: var(--gl-color-green-400);
  --green-600: var(--gl-color-green-300);
  --green-700: var(--gl-color-green-200);
  --green-800: var(--gl-color-green-100);
  --green-900: var(--gl-color-green-50);
  --orange-50: var(--gl-color-orange-900);
  --orange-100: var(--gl-color-orange-800);
  --orange-200: var(--gl-color-orange-700);
  --orange-300: var(--gl-color-orange-600);
  --orange-400: var(--gl-color-orange-500);
  --orange-500: var(--gl-color-orange-400);
  --orange-600: var(--gl-color-orange-300);
  --orange-700: var(--gl-color-orange-200);
  --orange-800: var(--gl-color-orange-100);
  --orange-900: var(--gl-color-orange-50);
  --purple-50: var(--gl-color-purple-950);
  --purple-100: var(--gl-color-purple-900);
  --purple-200: var(--gl-color-purple-800);
  --purple-300: var(--gl-color-purple-700);
  --purple-400: var(--gl-color-purple-600);
  --purple-500: var(--gl-color-purple-500);
  --purple-600: var(--gl-color-purple-400);
  --purple-700: var(--gl-color-purple-300);
  --purple-800: var(--gl-color-purple-200);
  --purple-900: var(--gl-color-purple-100);
  --purple-950: var(--gl-color-purple-50);
  --red-50: var(--gl-color-red-900);
  --red-100: var(--gl-color-red-800);
  --red-200: var(--gl-color-red-700);
  --red-300: var(--gl-color-red-600);
  --red-400: var(--gl-color-red-500);
  --red-500: var(--gl-color-red-400);
  --red-600: var(--gl-color-red-300);
  --red-700: var(--gl-color-red-200);
  --red-800: var(--gl-color-red-100);
  --red-900: var(--gl-color-red-50);
  --gl-action-disabled-foreground-color: var(--gl-color-neutral-500); /** Used for the foreground of a disabled action. */
  --gl-action-disabled-background-color: var(--gl-color-neutral-900); /** Used for the background of a disabled action. */
  --gl-action-disabled-border-color: var(--gl-color-neutral-800); /** Used for the border of a disabled action. */
  --gl-action-selected-foreground-color-default: var(--gl-color-neutral-950); /** Used for the foreground of a selected action in the default state. */
  --gl-action-selected-background-color-default: var(--gl-color-neutral-50); /** Used for the background of a selected action in the default state. */
  --gl-action-selected-background-color-hover: var(--gl-color-neutral-10); /** Used for the background of a selected action in the hover state. */
  --gl-action-selected-background-color-active: var(--gl-color-neutral-0); /** Used for the background of a selected action in the active state. */
  --gl-action-selected-background-color-disabled: var(--gl-color-neutral-500); /** Used for the background of a disabled action that stays selected. Sits between the disabled background and the enabled selected background so the selected state keeps 3:1 contrast against the page while still reading as disabled. */
  --gl-action-neutral-foreground-color-default: var(--gl-color-neutral-50); /** Used for the foreground of a neutral action in the default state. */
  --gl-action-neutral-background-color-default: var(--gl-color-alpha-0); /** Used for the background of a neutral action in the default state. */
  --gl-action-neutral-background-color-hover: var(--gl-color-alpha-light-16); /** Used for the background of a neutral action in the hover state. */
  --gl-action-neutral-background-color-active: var(--gl-color-alpha-light-8); /** Used for the background of a neutral action in the active state. */
  --gl-action-neutral-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a neutral action in the default state. */
  --gl-action-confirm-foreground-color-default: var(--gl-color-neutral-50); /** Used for the foreground of a confirm (positive) action in the default state. */
  --gl-action-confirm-foreground-color-hover: var(--gl-color-neutral-10); /** Used for the foreground of a confirm (positive) action in the hover state. */
  --gl-action-confirm-foreground-color-active: var(--gl-color-neutral-0); /** Used for the foreground of a confirm (positive) action in the active state. */
  --gl-action-confirm-background-color-default: var(--gl-color-alpha-0); /** Used for the background of a confirm (positive) action in the default state. */
  --gl-action-confirm-background-color-hover: var(--gl-color-alpha-light-16); /** Used for the background of a confirm (positive) action in the hover state. */
  --gl-action-confirm-background-color-active: var(--gl-color-alpha-light-8); /** Used for the background of a confirm (positive) action in the active state. */
  --gl-action-confirm-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a confirm action in the default state. */
  --gl-action-danger-foreground-color-default: var(--gl-color-red-200); /** Used for the foreground of a danger (destructive) action in the default state. */
  --gl-action-danger-foreground-color-hover: var(--gl-color-red-100); /** Used for the foreground of a danger (destructive) action in the hover state. */
  --gl-action-danger-foreground-color-active: var(--gl-color-red-100); /** Used for the foreground of a danger (destructive) action in the active state. */
  --gl-action-danger-background-color-focus: var(--gl-action-danger-background-color-hover); /** Used for the background of a danger (destructive) action in the focus state. */
  --gl-action-danger-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a danger action in the default state. */
  --gl-action-strong-confirm-background-color-default: var(--gl-color-blue-300); /** Used for the background of a strong confirm action in the default state. */
  --gl-action-strong-confirm-background-color-hover: var(--gl-color-blue-200); /** Used for the background of a strong confirm action in the hover state. */
  --gl-action-strong-confirm-background-color-active: var(--gl-color-blue-400); /** Used for the background of a strong confirm action in the active state. */
  --gl-action-strong-confirm-foreground-color-default: var(--gl-color-neutral-950); /** Used for the foreground of a strong confirm action in the default state. */
  --gl-action-strong-confirm-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a strong confirm action in the default state. */
  --gl-action-strong-neutral-background-color-default: var(--gl-color-neutral-700); /** Used for the background of a strong neutral action in the default state. */
  --gl-action-strong-neutral-background-color-hover: var(--gl-color-neutral-600); /** Used for the background of a strong neutral action in the hover state. */
  --gl-action-strong-neutral-background-color-active: var(--gl-color-neutral-500); /** Used for the background of a strong neutral action in the active state. */
  --gl-action-strong-neutral-foreground-color-default: var(--gl-color-neutral-50); /** Used for the foreground of a strong neutral action in the default state. */
  --gl-action-strong-neutral-foreground-color-hover: var(--gl-color-neutral-0); /** Used for the foreground of a strong neutral action in the hover state. */
  --gl-action-strong-neutral-foreground-color-focus: var(--gl-color-neutral-0); /** Used for the foreground of a strong neutral action in the focus state. */
  --gl-action-strong-neutral-foreground-color-active: var(--gl-color-neutral-0); /** Used for the foreground of a strong neutral action in the active state. */
  --gl-action-strong-neutral-border-color-default: var(--gl-color-alpha-0); /** Used for the border of a strong neutral action in the default state. */
  --gl-background-color-default: var(--gl-color-neutral-950); /** Used for the default background color. */
  --gl-background-color-subtle: var(--gl-color-neutral-900); /** Used to slightly differentiate the background from the default. */
  --gl-background-color-strong: var(--gl-color-neutral-800); /** Used to make the background easily stand out from the default. */
  --gl-background-color-disabled: var(--gl-color-neutral-900); /** Used to identify a disabled section. */
  --gl-background-color-overlap: var(--gl-color-neutral-900); /** Used for components, like tooltips and drawers, and content, like a sticky header, that overlap other content. */
  --gl-background-color-section: var(--gl-color-neutral-800); /** Used for containers, like a card header, that are visually distinct from the default page background only when necessary to maintain affordance and hierarchy in different modes. */
  --gl-control-background-color-default: var(--gl-color-alpha-dark-40); /** Used for form control (input, radio button, checkbox, textarea) default background. */
  --gl-control-background-color-disabled: var(--gl-color-alpha-light-4); /** Used for disabled form control (input, textarea) background. */
  --gl-control-background-color-concatenation: var(--gl-color-alpha-light-4); /** Used for the background of static content that prepends or appends a text input. */
  --gl-control-background-color-readonly: var(--gl-color-alpha-light-8); /** Used for the background of static content that prepends or appends a text input. */
  --gl-control-background-color-selected-default: var(--gl-color-neutral-50); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) background. */
  --gl-control-background-color-selected-hover: var(--gl-color-neutral-10); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) background on hover. */
  --gl-control-border-color-default: var(--gl-color-neutral-500); /** Used for form control (input, radio button, checkbox, textarea) default border. */
  --gl-control-border-color-hover: var(--gl-color-neutral-300); /** Used for form control (input, radio button, checkbox, textarea) border on hover. */
  --gl-control-border-color-focus: var(--gl-color-neutral-50); /** Used for form control (input, radio button, checkbox, textarea) border on focus. */
  --gl-control-border-color-disabled: var(--gl-color-neutral-800); /** Used for disabled form control (input, radio button, checkbox, textarea) border. */
  --gl-control-placeholder-color: var(--gl-color-neutral-400); /** Used for placeholder text within inputs. */
  --gl-control-indicator-color-selected: var(--gl-color-neutral-950); /** Used for checkbox and radio button state indicators. */
  --gl-feedback-strong-background-color: var(--gl-color-neutral-800); /** Used for a background associated with strong feedback like a tooltip or toast message. */
  --gl-feedback-strong-border-color: var(--gl-color-neutral-300); /** Used for the border associated with strong feedback. */
  --gl-feedback-strong-text-color: var(--gl-color-neutral-0); /** Used for text on a strong feedback background. */
  --gl-feedback-strong-icon-color: var(--gl-color-neutral-0); /** Used for an icon on a strong feedback background. */
  --gl-feedback-strong-link-color: var(--gl-color-blue-300); /** Used for a link on a strong feedback background. */
  --gl-feedback-neutral-background-color: var(--gl-color-neutral-900); /** Used for the background of a neutral feedback item when there isn't a specific meaning or urgency. */
  --gl-feedback-neutral-border-color: var(--gl-color-neutral-600); /** Used for the border of a neutral feedback item when there isn't a specific meaning or urgency. */
  --gl-feedback-neutral-text-color: var(--gl-color-neutral-200); /** Used for the text of a neutral feedback item when there isn't a specific meaning or urgency. */
  --gl-feedback-neutral-icon-color: var(--gl-color-neutral-200); /** Used for the icon of a neutral feedback item when there isn't a specific meaning or urgency. */
  --gl-feedback-info-background-color: var(--gl-color-blue-950); /** Used for the background of an informational feedback item when highlighting new information or a change that doesn't require immediate action. */
  --gl-feedback-info-border-color: var(--gl-color-blue-600); /** Used for the border of an informational feedback item when highlighting new information or a change that doesn't require immediate action. */
  --gl-feedback-info-text-color: var(--gl-color-blue-200); /** Used for the text of an informational feedback item when highlighting new information or a change that doesn't require immediate action. */
  --gl-feedback-info-icon-color: var(--gl-color-blue-200); /** Used for the icon of an informational feedback item when highlighting new information or a change that doesn't require immediate action. */
  --gl-feedback-success-background-color: var(--gl-color-green-900); /** Used for the background of a success feedback item when confirming the successful completion of a user-initiated action. */
  --gl-feedback-success-border-color: var(--gl-color-green-600); /** Used for the border of a success feedback item when confirming the successful completion of a user-initiated action. */
  --gl-feedback-success-text-color: var(--gl-color-green-200); /** Used for the text of a success feedback item when confirming the successful completion of a user-initiated action. */
  --gl-feedback-success-icon-color: var(--gl-color-green-200); /** Used for the icon of a success feedback item when confirming the successful completion of a user-initiated action. */
  --gl-feedback-warning-background-color: var(--gl-color-orange-900); /** Used for the background of a warning feedback item when notifying about a potential issue or sensitive information. */
  --gl-feedback-warning-border-color: var(--gl-color-orange-600); /** Used for the border of a warning feedback item when notifying about a potential issue or sensitive information. */
  --gl-feedback-warning-text-color: var(--gl-color-orange-200); /** Used for the text of a warning feedback item when notifying about a potential issue or sensitive information. */
  --gl-feedback-warning-icon-color: var(--gl-color-orange-200); /** Used for the icon of a warning feedback item when notifying about a potential issue or sensitive information. */
  --gl-feedback-danger-background-color: var(--gl-color-red-900); /** Used for the background of a danger feedback item when notifying about a critical issue that has just occurred and requires immediate attention. */
  --gl-feedback-danger-border-color: var(--gl-color-red-300); /** Used for the border of a danger feedback item when notifying about a critical issue that has just occurred and requires immediate attention. */
  --gl-feedback-danger-text-color: var(--gl-color-red-200); /** Used for the text of a danger feedback item when notifying about a critical issue that has just occurred and requires immediate attention. */
  --gl-feedback-danger-icon-color: var(--gl-color-red-200); /** Used for the icon of a danger feedback item when notifying about a critical issue that has just occurred and requires immediate attention. */
  --gl-feedback-brand-background-color: var(--gl-color-purple-950); /** Used for the background of a brand-related feedback item when highlighting information that pertains to GitLab. */
  --gl-feedback-brand-border-color: var(--gl-color-purple-600); /** Used for the border of a brand-related feedback item when highlighting information that pertains to GitLab. */
  --gl-feedback-brand-text-color: var(--gl-color-purple-200); /** Used for the text of a brand-related feedback item when highlighting information that pertains to GitLab. */
  --gl-feedback-brand-icon-color: var(--gl-color-purple-200); /** Used for the icon of a brand-related feedback item when highlighting information that pertains to GitLab. */
  --gl-focus-ring-outer-color: var(--gl-color-blue-400); /** Used for the outer color portion of the focus ring. */
  --gl-highlight-match-background-color: var(--gl-color-orange-200); /** Used for temporary visual emphasis of backgrounds of matched search terms, filtered results, or autocomplete suggestions without implying any particular state or meaning. */
  --gl-highlight-match-text-color: var(--gl-color-neutral-950); /** Used for text within temporarily highlighted matches to maintain readability while drawing attention without conveying status. */
  --gl-highlight-target-background-color: var(--gl-color-blue-950); /** Used for temporary visual emphasis for backgrounds of referenced elements (for example URL anchors, hover states) or to show relationships between content without implying status or requiring action. */
  --gl-highlight-target-border-color: var(--gl-color-blue-700); /** Used to provide additional visual emphasis for borders of temporarily targeted elements or when visualizing connections between related content, distinct from persistent states. */
  --gl-icon-color-info: var(--gl-color-blue-200); /** Used for an icon associated with information or help. */
  --gl-status-neutral-background-color: var(--gl-color-neutral-800); /** Used for the background of a neutral status item when the status is neither positive nor negative, or when indicating a special but stable state. */
  --gl-status-neutral-text-color: var(--gl-color-neutral-200); /** Used for the text of a neutral status item when the status is neither positive nor negative, or when indicating a special but stable state. */
  --gl-status-neutral-icon-color: var(--gl-color-neutral-300); /** Used for the icon of a neutral status item when the status is neither positive nor negative, or when indicating a special but stable state. */
  --gl-status-info-background-color: var(--gl-color-blue-800); /** Used for the background of an informational status item when indicating a noteworthy ongoing condition or a state of active progress. */
  --gl-status-info-text-color: var(--gl-color-blue-200); /** Used for the text of an informational status item when indicating a noteworthy ongoing condition or a state of active progress. */
  --gl-status-info-icon-color: var(--gl-color-blue-300); /** Used for the icon of an informational status item when indicating a noteworthy ongoing condition or a state of active progress. */
  --gl-status-success-background-color: var(--gl-color-green-800); /** Used for the background of a success status item when indicating a positive outcome, completion, or desired state. Clearly conveys a positive connotation. */
  --gl-status-success-text-color: var(--gl-color-green-200); /** Used for the text of a success status item when indicating a positive outcome, completion, or desired state. Clearly conveys a positive connotation. */
  --gl-status-success-icon-color: var(--gl-color-green-300); /** Used for the icon of a success status item when indicating a positive outcome, completion, or desired state. Clearly conveys a positive connotation. */
  --gl-status-warning-background-color: var(--gl-color-orange-800); /** Used for the background of a warning status item when indicating a state that requires heightened awareness or caution, but is not necessarily problematic. Represents a state that warrants extra attention or care when interacting with the item. */
  --gl-status-warning-text-color: var(--gl-color-orange-200); /** Used for the text of a warning status item when indicating a state that requires heightened awareness or caution, but is not necessarily problematic. Represents a state that warrants extra attention or care when interacting with the item. */
  --gl-status-warning-icon-color: var(--gl-color-orange-300); /** Used for the icon of a warning status item when indicating a state that requires heightened awareness or caution, but is not necessarily problematic. Represents a state that warrants extra attention or care when interacting with the item. */
  --gl-status-danger-background-color: var(--gl-color-red-800); /** Used for the background of a danger status item when indicating a critical or severely problematic current state. Clearly conveys a negative connotation, representing a serious, ongoing issue or undesired condition. */
  --gl-status-danger-text-color: var(--gl-color-red-200); /** Used for the text of a danger status item when indicating a critical or severely problematic current state. Clearly conveys a negative connotation, representing a serious, ongoing issue or undesired condition. */
  --gl-status-danger-icon-color: var(--gl-color-red-300); /** Used for the icon of a danger status item when indicating a critical or severely problematic current state. Clearly conveys a negative connotation, representing a serious, ongoing issue or undesired condition. */
  --gl-status-brand-background-color: var(--gl-color-purple-900); /** Used for the background of a brand-related status item when highlighting the state of unique features or elements specific to the GitLab brand identity. Helps distinguish and emphasize brand-specific elements within the interface. */
  --gl-status-brand-text-color: var(--gl-color-purple-300); /** Used for the text of a brand-related status item when highlighting the state of unique features or elements specific to the GitLab brand identity. Helps distinguish and emphasize brand-specific elements within the interface. */
  --gl-status-brand-icon-color: var(--gl-color-purple-500); /** Used for the icon of a brand-related status item when highlighting the state of unique features or elements specific to the GitLab brand identity. Helps distinguish and emphasize brand-specific elements within the interface. */
  --gl-text-color-default: var(--gl-color-neutral-50); /** Used for the default text color. */
  --gl-text-color-subtle: var(--gl-color-neutral-200); /** Used for supplemental text that doesn't need to be as prominent as other text. */
  --gl-text-color-strong: var(--gl-color-neutral-0); /** Used for text with the highest contrast. */
  --gl-text-color-heading: var(--gl-color-neutral-0); /** Used for headings level 1-6. */
  --gl-text-color-link: var(--gl-color-blue-200); /** Used for default text links. */
  --gl-text-color-warning: var(--gl-color-orange-300); /** Used for text that requires caution or careful attention. */
  --gl-text-color-danger: var(--gl-color-red-300); /** Used for text indicating a problem, critical state, destructive action, error, failure, removal, stop, or declination. */
  --gl-text-color-success: var(--gl-color-green-300); /** Used for text indicating success, completion, approval, addition, or validity. */
  --gl-text-color-disabled: var(--gl-color-neutral-400); /** Used for disabled text. */
  --gl-heading-1-font-size: var(--gl-font-size-700);
  --gl-heading-1-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-1-line-height: var(--gl-line-height-heading);
  --gl-heading-2-font-size: var(--gl-font-size-600);
  --gl-heading-2-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-2-line-height: var(--gl-line-height-heading);
  --gl-heading-3-font-size: var(--gl-font-size-500);
  --gl-heading-3-line-height: var(--gl-line-height-heading);
  --gl-heading-4-font-size: var(--gl-font-size-400);
  --gl-heading-4-line-height: var(--gl-line-height-heading);
  --gl-heading-5-font-size: var(--gl-font-size-300);
  --gl-heading-5-line-height: var(--gl-line-height-heading);
  --gl-heading-6-font-size: var(--gl-font-size-200);
  --gl-heading-6-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-100-font-size: var(--gl-font-size-100);
  --gl-heading-scale-100-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-200-font-size: var(--gl-font-size-200);
  --gl-heading-scale-200-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-300-font-size: var(--gl-font-size-300);
  --gl-heading-scale-300-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-400-font-size: var(--gl-font-size-400);
  --gl-heading-scale-400-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-500-font-size: var(--gl-font-size-500);
  --gl-heading-scale-500-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-600-font-size: var(--gl-font-size-600);
  --gl-heading-scale-600-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-600-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-700-font-size: var(--gl-font-size-700);
  --gl-heading-scale-700-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-700-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-800-font-size: var(--gl-font-size-800);
  --gl-heading-scale-800-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-100-fixed-font-size: var(--gl-font-size-100-fixed);
  --gl-heading-scale-100-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-200-fixed-font-size: var(--gl-font-size-200-fixed);
  --gl-heading-scale-200-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-300-fixed-font-size: var(--gl-font-size-300-fixed);
  --gl-heading-scale-300-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-400-fixed-font-size: var(--gl-font-size-400-fixed);
  --gl-heading-scale-400-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-500-fixed-font-size: var(--gl-font-size-500-fixed);
  --gl-heading-scale-500-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-600-fixed-font-size: var(--gl-font-size-600-fixed);
  --gl-heading-scale-600-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-600-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-700-fixed-font-size: var(--gl-font-size-700-fixed);
  --gl-heading-scale-700-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-scale-700-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-scale-800-fixed-font-size: var(--gl-font-size-800-fixed);
  --gl-heading-scale-800-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-display-font-size: var(--gl-font-size-800);
  --gl-heading-display-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-display-margin-bottom: var(--gl-spacing-scale-6);
  --gl-heading-1-fixed-font-size: var(--gl-font-size-700-fixed);
  --gl-heading-1-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-1-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-2-fixed-font-size: var(--gl-font-size-600-fixed);
  --gl-heading-2-fixed-letter-spacing: var(--gl-letter-spacing-heading);
  --gl-heading-2-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-3-fixed-font-size: var(--gl-font-size-500-fixed);
  --gl-heading-3-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-4-fixed-font-size: var(--gl-font-size-400-fixed);
  --gl-heading-4-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-5-fixed-font-size: var(--gl-font-size-300-fixed);
  --gl-heading-5-fixed-line-height: var(--gl-line-height-heading);
  --gl-heading-6-fixed-font-size: var(--gl-font-size-200-fixed);
  --gl-heading-6-fixed-line-height: var(--gl-line-height-heading);
  --gl-border-color-section: var(--gl-background-color-default); /** Used for the border color that surrounds content or elements when they appear as a closed container or closed section of the page. */
  --gl-border-radius-default: var(--gl-border-radius-md);
  --gl-font-size-base: var(--gl-font-size-md);
  --gl-shadow-sm: 0 0 2px 0 var(--gl-shadow-color-default), 0 1px 4px 0 var(--gl-shadow-color-default); /** Used for surfaces that need to indicate users can manually interact with them. For example, cards in issue board. */
  --gl-shadow-md: 0 0 1px 0 var(--gl-shadow-color-default), 0 0 2px 0 var(--gl-shadow-color-default), 0 2px 8px 0 var(--gl-shadow-color-default); /** Used for surfaces that need boundary definition and appear on hover. For example, popovers. */
  --gl-shadow-lg: 0 0 2px 0 var(--gl-shadow-color-default), 0 0 2px 0 var(--gl-shadow-color-default), 0 4px 12px 0 var(--gl-shadow-color-default); /** Used for large surfaces that present additional context to the user. */
  --gl-alert-border-radius: var(--gl-border-radius-lg); /** Used for alert border radius. */
  --gl-alert-neutral-title-color: var(--gl-text-color-heading); /** Used for the title color of a neutral alert. */
  --gl-alert-neutral-background-color: var(--gl-feedback-neutral-background-color); /** Used for the background color of a neutral alert. */
  --gl-alert-neutral-border-color: var(--gl-feedback-neutral-border-color); /** Used for the border color of a neutral alert. */
  --gl-alert-info-background-color: var(--gl-feedback-info-background-color); /** Used for the background color of an info alert. */
  --gl-alert-info-border-color: var(--gl-feedback-info-border-color); /** Used for the border color of an info alert. */
  --gl-alert-success-background-color: var(--gl-feedback-success-background-color); /** Used for the background color of a success alert. */
  --gl-alert-success-border-color: var(--gl-feedback-success-border-color); /** Used for the border color of a success alert. */
  --gl-alert-warning-background-color: var(--gl-feedback-warning-background-color); /** Used for the background color of a warning alert. */
  --gl-alert-warning-border-color: var(--gl-feedback-warning-border-color); /** Used for the border color of a warning alert. */
  --gl-alert-danger-background-color: var(--gl-feedback-danger-background-color); /** Used for the background color of a danger alert. */
  --gl-alert-danger-border-color: var(--gl-feedback-danger-border-color); /** Used for the border color of a danger alert. */
  --gl-avatar-square-border-radius-lg: var(--gl-border-radius-lg); /** Border radius for square avatars at larger sizes (48px, 64px, 96px). */
  --gl-badge-muted-background-color-hover: var(--gl-badge-muted-background-color-default); /** Used for the background of a muted badge in the hover state. */
  --gl-badge-muted-text-color-focus: var(--gl-badge-muted-text-color-hover); /** Used for the text of a muted badge in the focus state. */
  --gl-badge-muted-icon-color-focus: var(--gl-badge-muted-icon-color-hover); /** Used for the icon of a muted badge in the focus state. */
  --gl-badge-neutral-background-color-hover: var(--gl-badge-neutral-background-color-default); /** Used for the background of a neutral badge in the hover state. */
  --gl-badge-neutral-text-color-focus: var(--gl-badge-neutral-text-color-hover); /** Used for the text of a neutral badge in the focus state. */
  --gl-badge-neutral-icon-color-focus: var(--gl-badge-neutral-icon-color-hover); /** Used for the icon of a neutral badge in the focus state. */
  --gl-badge-info-background-color-hover: var(--gl-badge-info-background-color-default); /** Used for the background of an informational badge in the hover state. */
  --gl-badge-info-text-color-focus: var(--gl-badge-info-text-color-hover); /** Used for the text of an informational badge in the focus state. */
  --gl-badge-info-icon-color-focus: var(--gl-badge-info-icon-color-hover); /** Used for the icon of an informational badge in the focus state. */
  --gl-badge-success-background-color-hover: var(--gl-badge-success-background-color-default); /** Used for the background of a success badge in the hover state. */
  --gl-badge-success-text-color-focus: var(--gl-badge-success-text-color-hover); /** Used for the text of a success badge in the focus state. */
  --gl-badge-success-icon-color-focus: var(--gl-badge-success-icon-color-hover); /** Used for the icon of a success badge in the focus state. */
  --gl-badge-warning-background-color-hover: var(--gl-badge-warning-background-color-default); /** Used for the background of a warning badge in the hover state. */
  --gl-badge-warning-text-color-focus: var(--gl-badge-warning-text-color-hover); /** Used for the text of a warning badge in the focus state. */
  --gl-badge-warning-icon-color-focus: var(--gl-badge-warning-icon-color-hover); /** Used for the icon of a warning badge in the focus state. */
  --gl-badge-danger-background-color-hover: var(--gl-badge-danger-background-color-default); /** Used for the background of a danger badge in the hover state. */
  --gl-badge-danger-text-color-focus: var(--gl-badge-danger-text-color-hover); /** Used for the text of a danger badge in the focus state. */
  --gl-badge-danger-icon-color-focus: var(--gl-badge-danger-icon-color-hover); /** Used for the icon of a danger badge in the focus state. */
  --gl-badge-tier-background-color-hover: var(--gl-badge-tier-background-color-default); /** Used for the background of a tier related badge in the hover state. */
  --gl-badge-tier-text-color-focus: var(--gl-badge-tier-text-color-hover); /** Used for the text of a tier related badge in the focus state. */
  --gl-badge-tier-icon-color-focus: var(--gl-badge-tier-icon-color-hover); /** Used for the icon of a tier related badge in the focus state. */
  --gl-button-default-primary-foreground-color-hover: var(--gl-button-default-primary-foreground-color-default); /** Used for the foreground of a default primary button in the hover state. */
  --gl-button-default-primary-foreground-color-focus: var(--gl-button-default-primary-foreground-color-default); /** Used for the foreground of a default primary button in the focus state. */
  --gl-button-default-primary-foreground-color-active: var(--gl-button-default-primary-foreground-color-default); /** Used for the foreground of a default primary button in the active state. */
  --gl-button-default-primary-border-color-focus: var(--gl-button-default-primary-border-color-hover); /** Used for the border of an default primary button in the focus state. */
  --gl-button-default-tertiary-foreground-color-default: var(--gl-action-neutral-foreground-color-default); /** Used for the foreground of a default borderless, tertiary button in the default state. */
  --gl-button-default-tertiary-background-color-default: var(--gl-action-neutral-background-color-default); /** Used for the background of a default borderless, tertiary button in the default state. */
  --gl-button-default-tertiary-background-color-hover: var(--gl-action-neutral-background-color-hover); /** Used for the background of a default borderless, tertiary button in the hover state. */
  --gl-button-default-tertiary-background-color-active: var(--gl-action-neutral-background-color-active); /** Used for the background of a default borderless, tertiary button in the active state. */
  --gl-button-default-tertiary-border-color-default: var(--gl-action-neutral-border-color-default); /** Used for the border of a default borderless, tertiary button in the default state. */
  --gl-button-confirm-primary-foreground-color-hover: var(--gl-button-confirm-primary-foreground-color-default); /** Used for the foreground of a confirm (positive) primary button in the hover state. */
  --gl-button-confirm-primary-background-color-focus: var(--gl-button-confirm-primary-background-color-hover); /** Used for the background of a confirm (positive) primary button in the focus state. */
  --gl-button-confirm-primary-border-color-hover: var(--gl-button-confirm-primary-border-color-default); /** Used for the border of a confirm (positive) primary button in the hover state. */
  --gl-button-confirm-primary-border-color-focus: var(--gl-button-confirm-primary-border-color-default); /** Used for the border of a confirm (positive) primary button in the focus state. */
  --gl-button-confirm-primary-border-color-active: var(--gl-button-confirm-primary-border-color-default); /** Used for the border of a confirm (positive) primary button in the active state. */
  --gl-button-confirm-secondary-foreground-color-focus: var(--gl-button-confirm-secondary-foreground-color-hover); /** Used for the foreground of a confirm (positive) button in the focus state. */
  --gl-button-confirm-secondary-background-color-focus: var(--gl-button-confirm-secondary-background-color-hover); /** Used for the background of an outlined confirm (positive) button in the focus state. */
  --gl-button-confirm-secondary-border-color-focus: var(--gl-button-confirm-secondary-border-color-hover); /** Used for the border of an outlined confirm (positive) button in the focus state. */
  --gl-button-confirm-tertiary-foreground-color-default: var(--gl-action-confirm-foreground-color-default); /** Used for the foreground of a borderless, tertiary confirm (positive) button in the default state. */
  --gl-button-confirm-tertiary-foreground-color-hover: var(--gl-action-confirm-foreground-color-hover); /** Used for the foreground of a borderless, tertiary confirm (positive) button in the hover state. */
  --gl-button-confirm-tertiary-foreground-color-active: var(--gl-action-confirm-foreground-color-active); /** Used for the foreground of a borderless, tertiary confirm (positive) button in the active state. */
  --gl-button-confirm-tertiary-background-color-default: var(--gl-action-confirm-background-color-default); /** Used for the background of a borderless, tertiary confirm (positive) button in the default state. */
  --gl-button-confirm-tertiary-background-color-hover: var(--gl-action-confirm-background-color-hover); /** Used for the background of a borderless, tertiary confirm (positive) button in the hover state. */
  --gl-button-confirm-tertiary-background-color-active: var(--gl-action-confirm-background-color-active); /** Used for the background of a borderless, tertiary confirm (positive) button in the active state. */
  --gl-button-confirm-tertiary-border-color-default: var(--gl-action-confirm-border-color-default); /** Used for the border of a borderless, tertiary confirm (positive) button in the default state. */
  --gl-button-danger-primary-foreground-color-hover: var(--gl-button-danger-primary-foreground-color-default); /** Used for the foreground of a danger (destructive) primary button in the hover state. */
  --gl-button-danger-primary-foreground-color-focus: var(--gl-button-danger-primary-foreground-color-default); /** Used for the foreground of a danger (destructive) primary button in the focus state. */
  --gl-button-danger-primary-foreground-color-active: var(--gl-button-danger-primary-foreground-color-default); /** Used for the foreground of a danger (destructive) primary button in the active state. */
  --gl-button-danger-primary-background-color-focus: var(--gl-button-danger-primary-background-color-hover); /** Used for the background of a danger (destructive) primary button in the focus state. */
  --gl-button-danger-primary-border-color-focus: var(--gl-button-danger-primary-border-color-hover); /** Used for the border of a danger (destructive) primary button in the focus state. */
  --gl-button-danger-secondary-foreground-color-focus: var(--gl-button-danger-secondary-foreground-color-hover); /** Used for the foreground of a danger (destructive) button in the focus state. */
  --gl-button-danger-secondary-border-color-focus: var(--gl-button-danger-secondary-border-color-hover); /** Used for the border of an outlined danger (destructive) button in the focus state. */
  --gl-button-danger-tertiary-foreground-color-default: var(--gl-action-danger-foreground-color-default); /** Used for the foreground of a borderless, tertiary danger (destructive) button in the default state. */
  --gl-button-danger-tertiary-foreground-color-hover: var(--gl-action-danger-foreground-color-hover); /** Used for the foreground of a borderless, tertiary danger (destructive) button in the hover state. */
  --gl-button-danger-tertiary-foreground-color-active: var(--gl-action-danger-foreground-color-active); /** Used for the foreground of a borderless, tertiary danger (destructive) button in the active state. */
  --gl-button-danger-tertiary-background-color-focus: var(--gl-action-danger-background-color-focus); /** Used for the background of a borderless, tertiary danger (destructive) button in the focus state. */
  --gl-button-danger-tertiary-border-color-default: var(--gl-action-danger-border-color-default); /** Used for the border of a borderless, tertiary danger (destructive) button in the default state. */
  --gl-button-dashed-border-color-hover: var(--gl-button-dashed-border-color-default); /** Used for the border of a dashed button in the hover state. */
  --gl-button-dashed-border-color-focus: var(--gl-button-dashed-border-color-default); /** Used for the border of a dashed button in the focus state. */
  --gl-button-link-border-radius: var(--gl-border-radius-md); /** Used for link button border radius. */
  --gl-button-link-text-color-default: var(--gl-text-color-link); /** Used for the text of a link button in the default state. */
  --gl-button-selected-border-color-focus: var(--gl-button-selected-border-color-hover); /** Used for the border of a selected button in the focus state. */
  --gl-card-border-radius: var(--gl-border-radius-xl); /** Used for card border radius. */
  --gl-chart-axis-text-color: var(--gl-text-color-subtle); /** Used in charts for the text color of axis titles and labels. */
  --gl-datepicker-date-text-color-selected: var(--gl-control-indicator-color-selected); /** Used for the datepicker date text color state indicators. */
  --gl-drawer-border-radius: var(--gl-border-radius-2xl); /** Used for drawer border radius. */
  --gl-dropdown-background-color: var(--gl-background-color-overlap); /** Used for the background of a dropdown. */
  --gl-dropdown-border-color: var(--gl-border-color-default); /** Used for the border of a dropdown. */
  --gl-dropdown-border-radius: var(--gl-border-radius-lg); /** Used for the border radius of a dropdown. */
  --gl-dropdown-divider-color: var(--gl-border-color-subtle); /** Used for the divider of a dropdown. */
  --gl-dropdown-option-text-color-default: var(--gl-action-neutral-foreground-color-default); /** Used for the text of a dropdown option in the default state. */
  --gl-dropdown-option-text-color-disabled: var(--gl-action-disabled-foreground-color); /** Used for the text of a dropdown option in the disabled state. */
  --gl-dropdown-option-indicator-color-selected-default: var(--gl-control-background-color-selected-default); /** Used for the dropdown selected option indicator in the default state. */
  --gl-dropdown-option-indicator-color-selected-hover: var(--gl-control-background-color-selected-hover); /** Used for the dropdown selected option indicator in the hover state. */
  --gl-dropdown-option-background-color-unselected-default: var(--gl-action-neutral-background-color-default); /** Used for the background of an unselected dropdown option in the default state. */
  --gl-dropdown-option-background-color-unselected-hover: var(--gl-action-neutral-background-color-hover); /** Used for the background of an unselected dropdown option in the hover state. */
  --gl-dropdown-option-background-color-unselected-active: var(--gl-action-neutral-background-color-active); /** Used for the background of an unselected dropdown option in the active state. */
  --gl-dropdown-option-background-color-selected-focus: var(--gl-dropdown-option-background-color-selected-hover); /** Used for the background of a selected dropdown option in the focus state. */
  --gl-modal-border-radius: var(--gl-border-radius-2xl); /** Used for modal border radius. */
  --gl-nav-item-foreground-color-focus: var(--gl-nav-item-foreground-color-hover); /** Used for the foreground of a default navigation item in the focus state. */
  --gl-nav-item-background-color-focus: var(--gl-nav-item-background-color-hover); /** Used for the background of a default navigation item in the focus state. */
  --gl-nav-item-selected-foreground-color-default: var(--gl-nav-item-foreground-color-hover); /** Used for the foreground of a selected navigation item in the default state. */
  --gl-nav-item-selected-foreground-color-hover: var(--gl-nav-item-foreground-color-hover); /** Used for the foreground of a selected navigation item in the hover state. */
  --gl-nav-item-selected-background-color-hover: var(--gl-nav-item-background-color-hover); /** Used for the background of a selected navigation item in the hover state. */
  --gl-nav-item-selected-background-color-active: var(--gl-nav-item-background-color-active); /** Used for the background of a selected navigation item in the active state. */
  --gl-progress-bar-indicator-color-default: var(--gl-status-info-icon-color); /** Used for the indicator color for the primary progress-bar variant. */
  --gl-progress-bar-indicator-color-success: var(--gl-status-success-icon-color); /** Used for the indicator color for the success progress-bar variant. */
  --gl-progress-bar-indicator-color-warning: var(--gl-status-warning-icon-color); /** Used for the indicator color for the warning progress-bar variant. */
  --gl-progress-bar-indicator-color-danger: var(--gl-status-danger-icon-color); /** Used for the indicator color for the danger progress-bar variant. */
  --gl-table-row-background-color-hover: var(--gl-highlight-target-background-color); /** Used for the background of a table row in hover state. */
  --gl-table-sorting-icon-color: var(--gl-text-color-heading); /** Used for the color of the sorting icons in the column headers. */
  --gl-toggle-switch-track-color-unchecked-default: var(--gl-control-background-color-default); /** Used for the track color of an unchecked toggle switch in the default state. */
  --gl-toggle-switch-track-color-unchecked-active: var(--gl-action-neutral-background-color-active); /** Used for the track color of an unchecked toggle switch in the active state. */
  --gl-toggle-switch-track-color-unchecked-disabled: var(--gl-control-background-color-default); /** Used for the track color of a disabled unchecked toggle switch. */
  --gl-toggle-switch-track-color-checked-default: var(--gl-action-selected-background-color-default); /** Used for the track color of a checked toggle switch in the default state. */
  --gl-toggle-switch-track-color-checked-hover: var(--gl-action-selected-background-color-hover); /** Used for the track color of a checked toggle switch in the hover state. */
  --gl-toggle-switch-track-color-checked-active: var(--gl-action-selected-background-color-active); /** Used for the track color of a checked toggle switch in the active state. */
  --gl-toggle-switch-track-color-checked-disabled: var(--gl-action-selected-background-color-disabled); /** Used for the track color of a disabled checked toggle switch, which stays filled so the checked state remains legible. */
  --gl-toggle-switch-track-color-loading: var(--gl-action-disabled-background-color); /** Used for the track color of a loading toggle switch. A loading toggle renders no thumb and its value is still in flight, so the track carries no checked state. */
  --gl-toggle-switch-track-border-color-unchecked-default: var(--gl-control-border-color-default); /** Used for the track border color of an unchecked toggle switch in the default state. */
  --gl-toggle-switch-track-border-color-unchecked-hover: var(--gl-control-border-color-hover); /** Used for the track border color of an unchecked toggle switch in the hover state. */
  --gl-toggle-switch-track-border-color-unchecked-disabled: var(--gl-action-disabled-border-color); /** Used for the track border color of a disabled unchecked toggle switch. */
  --gl-toggle-switch-background-color-unchecked-default: var(--gl-action-selected-background-color-default); /** Used for the background color of the unchecked toggle switch thumb in the default state. */
  --gl-toggle-switch-background-color-unchecked-disabled: var(--gl-action-disabled-foreground-color); /** Used for the background color of the disabled unchecked toggle switch thumb. */
  --gl-toggle-switch-background-color-checked-default: var(--gl-action-selected-foreground-color-default); /** Used for the background color of the checked toggle switch thumb in the default state. */
  --gl-toggle-switch-background-color-checked-disabled: var(--gl-action-selected-foreground-color-default); /** Used for the background color of the disabled checked toggle switch thumb. */
  --gl-toggle-switch-icon-color-unchecked-default: var(--gl-action-selected-foreground-color-default); /** Used for the icon color of an unchecked toggle switch in the default state. */
  --gl-toggle-switch-icon-color-checked-default: var(--gl-action-selected-background-color-default); /** Used for the icon color of a checked toggle switch in the default state. */
  --gl-toggle-switch-icon-color-checked-hover: var(--gl-action-selected-background-color-hover); /** Used for the icon color of a checked toggle switch in the hover state. */
  --gl-toggle-switch-icon-color-checked-active: var(--gl-action-selected-background-color-active); /** Used for the icon color of a checked toggle switch in the active state. */
  --gl-toggle-switch-icon-color-disabled: var(--gl-action-disabled-background-color); /** Used for the icon color of a disabled toggle switch. */
  --gl-token-foreground-color: var(--gl-text-color-default); /** Used for the token foreground color. */
  --gl-action-border-radius: var(--gl-border-radius-lg); /** Used for the border radius of an action. */
  --gl-action-selected-foreground-color-hover: var(--gl-action-selected-foreground-color-default); /** Used for the foreground of a selected action in the hover state. */
  --gl-action-selected-background-color-focus: var(--gl-action-selected-background-color-hover); /** Used for the background of a selected action in the focus state. */
  --gl-action-selected-border-color-default: var(--gl-action-selected-background-color-default); /** Used for the border of a selected action in the default state. */
  --gl-action-selected-border-color-hover: var(--gl-action-selected-background-color-hover); /** Used for the border of a selected action in the hover state. */
  --gl-action-selected-border-color-active: var(--gl-action-selected-background-color-active); /** Used for the border of a selected action in the active state. */
  --gl-action-neutral-foreground-color-hover: var(--gl-action-neutral-foreground-color-default); /** Used for the foreground of a neutral action in the hover state. */
  --gl-action-neutral-foreground-color-focus: var(--gl-action-neutral-foreground-color-default); /** Used for the foreground of a neutral action in the focus state. */
  --gl-action-neutral-foreground-color-active: var(--gl-action-neutral-foreground-color-default); /** Used for the foreground of a neutral action in the active state. */
  --gl-action-neutral-background-color-focus: var(--gl-action-neutral-background-color-hover); /** Used for the background of a neutral action in the focus state. */
  --gl-action-neutral-border-color-hover: var(--gl-action-neutral-border-color-default); /** Used for the border of a neutral action in the hover state. */
  --gl-action-neutral-border-color-focus: var(--gl-action-neutral-border-color-default); /** Used for the border of a neutral action in the focus state. */
  --gl-action-neutral-border-color-active: var(--gl-action-neutral-border-color-default); /** Used for the border of a neutral action in the active state. */
  --gl-action-confirm-foreground-color-focus: var(--gl-action-confirm-foreground-color-hover); /** Used for the foreground of a confirm (positive) action in the focus state. */
  --gl-action-confirm-background-color-focus: var(--gl-action-confirm-background-color-hover); /** Used for the background of a confirm (positive) action in the focus state. */
  --gl-action-confirm-border-color-hover: var(--gl-action-confirm-border-color-default); /** Used for the border of a confirm action in the hover state. */
  --gl-action-confirm-border-color-focus: var(--gl-action-confirm-border-color-default); /** Used for the border of a confirm action in the focus state. */
  --gl-action-confirm-border-color-active: var(--gl-action-confirm-border-color-default); /** Used for the border of a confirm action in the active state. */
  --gl-action-danger-foreground-color-focus: var(--gl-action-danger-foreground-color-hover); /** Used for the foreground of a danger (destructive) action in the focus state. */
  --gl-action-danger-border-color-hover: var(--gl-action-danger-border-color-default); /** Used for the border of a danger action in the hover state. */
  --gl-action-danger-border-color-focus: var(--gl-action-danger-border-color-default); /** Used for the border of a danger action in the focus state. */
  --gl-action-danger-border-color-active: var(--gl-action-danger-border-color-default); /** Used for the border of a danger action in the active state. */
  --gl-action-strong-confirm-background-color-focus: var(--gl-action-strong-confirm-background-color-hover); /** Used for the background of a strong confirm action in the focus state. */
  --gl-action-strong-confirm-foreground-color-hover: var(--gl-action-strong-confirm-foreground-color-default); /** Used for the foreground of a strong confirm action in the hover state. */
  --gl-action-strong-confirm-border-color-hover: var(--gl-action-strong-confirm-border-color-default); /** Used for the border of a strong confirm action in the hover state. */
  --gl-action-strong-neutral-background-color-focus: var(--gl-action-strong-neutral-background-color-hover); /** Used for the background of a strong neutral action in the focus state. */
  --gl-action-strong-neutral-border-color-hover: var(--gl-action-strong-neutral-border-color-default); /** Used for the border of a strong neutral action in the hover state. */
  --gl-control-background-color-selected-focus: var(--gl-control-background-color-selected-hover); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) background on focus. */
  --gl-control-background-color-selected-disabled: var(--gl-action-selected-background-color-disabled); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) background when disabled. */
  --gl-control-border-color-error: var(--gl-feedback-danger-border-color); /** Used for invalid form control (input, textarea) border. */
  --gl-control-border-color-selected-default: var(--gl-control-background-color-selected-default); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) border. */
  --gl-control-border-color-selected-hover: var(--gl-control-background-color-selected-hover); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) border on hover. */
  --gl-control-border-radius: var(--gl-border-radius-lg); /** Used for form control (input, radio button, checkbox, textarea) default border radius. */
  --gl-control-text-color-error: var(--gl-text-color-danger); /** Used for the helper text when the input is invalid. */
  --gl-control-text-color-valid: var(--gl-text-color-success); /** Used for the helper text when the input is valid. */
  --gl-control-indicator-color-disabled: var(--gl-control-indicator-color-selected); /** Used for disabled checkbox and radio button state indicators. */
  --gl-feedback-border-radius: var(--gl-border-radius-lg); /** Used for the border radius of a feedback element. */
  --gl-focus-ring-inner-color: var(--gl-background-color-default); /** Used for the inner neutral portion of the focus ring. */
  --gl-icon-color-default: var(--gl-text-color-default); /** Used for the default icon color. Can be paired with default text. */
  --gl-icon-color-subtle: var(--gl-text-color-subtle); /** Used for a static or decorational icon. Can be paired with subtle text. */
  --gl-icon-color-strong: var(--gl-text-color-strong); /** Used for an icon with the highest contrast. */
  --gl-icon-color-disabled: var(--gl-text-color-disabled); /** Used for an icon within a disabled section. */
  --gl-icon-color-link: var(--gl-text-color-link); /** Used for an icon within a link. */
  --gl-icon-color-warning: var(--gl-text-color-warning); /** Used for an icon associated with a warning. */
  --gl-icon-color-danger: var(--gl-text-color-danger); /** Used for an icon associated with an error or danger. */
  --gl-icon-color-success: var(--gl-text-color-success); /** Used for an icon associated with success or validity. */
  --gl-text-primary: var(--gl-text-color-default); /** Use text.color.default instead. */
  --gl-text-secondary: var(--gl-text-color-subtle); /** Use text.color.subtle instead. */
  --gl-text-tertiary: var(--gl-text-color-disabled); /** Use text.color.disabled instead. */
  --gl-heading-1-font-weight: var(--gl-font-weight-heading);
  --gl-heading-1-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-1-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-1-color: var(--gl-text-color-heading);
  --gl-heading-2-font-weight: var(--gl-font-weight-heading);
  --gl-heading-2-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-2-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-2-color: var(--gl-text-color-heading);
  --gl-heading-3-font-weight: var(--gl-font-weight-heading);
  --gl-heading-3-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-3-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-3-color: var(--gl-text-color-heading);
  --gl-heading-4-font-weight: var(--gl-font-weight-heading);
  --gl-heading-4-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-4-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-4-color: var(--gl-text-color-heading);
  --gl-heading-5-font-weight: var(--gl-font-weight-heading);
  --gl-heading-5-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-5-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-5-color: var(--gl-text-color-heading);
  --gl-heading-6-font-weight: var(--gl-font-weight-heading);
  --gl-heading-6-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-6-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-6-color: var(--gl-text-color-heading);
  --gl-heading-scale-100-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-100-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-100-color: var(--gl-text-color-heading);
  --gl-heading-scale-200-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-200-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-200-color: var(--gl-text-color-heading);
  --gl-heading-scale-300-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-300-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-300-color: var(--gl-text-color-heading);
  --gl-heading-scale-400-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-400-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-400-color: var(--gl-text-color-heading);
  --gl-heading-scale-500-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-500-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-500-color: var(--gl-text-color-heading);
  --gl-heading-scale-600-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-600-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-600-color: var(--gl-text-color-heading);
  --gl-heading-scale-700-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-700-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-700-color: var(--gl-text-color-heading);
  --gl-heading-scale-800-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-800-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-800-color: var(--gl-text-color-heading);
  --gl-heading-scale-100-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-100-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-100-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-200-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-200-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-200-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-300-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-300-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-300-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-400-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-400-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-400-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-500-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-500-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-500-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-600-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-600-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-600-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-700-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-700-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-700-fixed-color: var(--gl-text-color-heading);
  --gl-heading-scale-800-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-scale-800-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-scale-800-fixed-color: var(--gl-text-color-heading);
  --gl-heading-display-font-weight: var(--gl-font-weight-heading);
  --gl-heading-display-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-display-color: var(--gl-text-color-heading);
  --gl-heading-1-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-1-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-1-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-1-fixed-color: var(--gl-text-color-heading);
  --gl-heading-2-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-2-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-2-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-2-fixed-color: var(--gl-text-color-heading);
  --gl-heading-3-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-3-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-3-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-3-fixed-color: var(--gl-text-color-heading);
  --gl-heading-4-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-4-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-4-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-4-fixed-color: var(--gl-text-color-heading);
  --gl-heading-5-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-5-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-5-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-5-fixed-color: var(--gl-text-color-heading);
  --gl-heading-6-fixed-font-weight: var(--gl-font-weight-heading);
  --gl-heading-6-fixed-margin-top: var(--gl-heading-default-margin-top);
  --gl-heading-6-fixed-margin-bottom: var(--gl-heading-default-margin-bottom);
  --gl-heading-6-fixed-color: var(--gl-text-color-heading);
  --gl-avatar-square-border-radius-default: var(--gl-border-radius-default); /** Border radius for square avatars at smaller sizes (16px, 24px, 32px). */
  --gl-badge-muted-background-color-focus: var(--gl-badge-muted-background-color-hover); /** Used for the background of a muted badge in the focus state. */
  --gl-badge-neutral-background-color-focus: var(--gl-badge-neutral-background-color-hover); /** Used for the background of a neutral badge in the focus state. */
  --gl-badge-info-background-color-focus: var(--gl-badge-info-background-color-hover); /** Used for the background of an informational badge in the focus state. */
  --gl-badge-success-background-color-focus: var(--gl-badge-success-background-color-hover); /** Used for the background of a success badge in the focus state. */
  --gl-badge-warning-background-color-focus: var(--gl-badge-warning-background-color-hover); /** Used for the background of a warning badge in the focus state. */
  --gl-badge-danger-background-color-focus: var(--gl-badge-danger-background-color-hover); /** Used for the background of a danger badge in the focus state. */
  --gl-badge-tier-background-color-focus: var(--gl-badge-tier-background-color-hover); /** Used for the background of a tier related badge in the focus state. */
  --gl-broadcast-banner-border-radius: var(--gl-border-radius-default); /** Used for broadcast banner border radius. */
  --gl-button-border-radius: var(--gl-action-border-radius); /** Used for button border radius. */
  --gl-button-default-tertiary-foreground-color-hover: var(--gl-action-neutral-foreground-color-hover); /** Used for the foreground of a default borderless, tertiary button in the hover state. */
  --gl-button-default-tertiary-foreground-color-focus: var(--gl-action-neutral-foreground-color-focus); /** Used for the foreground of a default borderless, tertiary button in the focus state. */
  --gl-button-default-tertiary-foreground-color-active: var(--gl-action-neutral-foreground-color-active); /** Used for the foreground of a default borderless, tertiary button in the active state. */
  --gl-button-default-tertiary-background-color-focus: var(--gl-action-neutral-background-color-focus); /** Used for the background of a default borderless, tertiary button in the focus state. */
  --gl-button-default-tertiary-border-color-hover: var(--gl-action-neutral-border-color-hover); /** Used for the border of a default borderless, tertiary button in the hover state. */
  --gl-button-default-tertiary-border-color-focus: var(--gl-action-neutral-border-color-focus); /** Used for the border of a default borderless, tertiary button in the focus state. */
  --gl-button-default-tertiary-border-color-active: var(--gl-action-neutral-border-color-active); /** Used for the border of a default borderless, tertiary button in the active state. */
  --gl-button-confirm-primary-foreground-color-focus: var(--gl-button-confirm-primary-foreground-color-hover); /** Used for the foreground of a confirm (positive) primary button in the focus state. */
  --gl-button-confirm-tertiary-foreground-color-focus: var(--gl-action-confirm-foreground-color-focus); /** Used for the foreground of a borderless, tertiary confirm (positive) button in the focus state. */
  --gl-button-confirm-tertiary-background-color-focus: var(--gl-action-confirm-background-color-focus); /** Used for the background of a borderless, tertiary confirm (positive) button in the focus state. */
  --gl-button-confirm-tertiary-border-color-hover: var(--gl-action-confirm-border-color-hover); /** Used for the border of a borderless, tertiary confirm (positive) button in the hover state. */
  --gl-button-confirm-tertiary-border-color-focus: var(--gl-action-confirm-border-color-focus); /** Used for the border of a borderless, tertiary confirm (positive) button in the focus state. */
  --gl-button-confirm-tertiary-border-color-active: var(--gl-action-confirm-border-color-active); /** Used for the border of a borderless, tertiary confirm (positive) button in the active state. */
  --gl-button-danger-tertiary-foreground-color-focus: var(--gl-action-danger-foreground-color-focus); /** Used for the foreground of a borderless, tertiary danger (destructive) button in the focus state. */
  --gl-button-danger-tertiary-border-color-hover: var(--gl-action-danger-border-color-hover); /** Used for the border of a borderless, tertiary danger (destructive) button in the hover state. */
  --gl-button-danger-tertiary-border-color-focus: var(--gl-action-danger-border-color-focus); /** Used for the border of a borderless, tertiary danger (destructive) button in the focus state. */
  --gl-button-danger-tertiary-border-color-active: var(--gl-action-danger-border-color-active); /** Used for the border of a borderless, tertiary danger (destructive) button in the active state. */
  --gl-button-link-text-color-hover: var(--gl-button-link-text-color-default); /** Used for the text of a link button in the hover state. */
  --gl-button-link-text-color-focus: var(--gl-button-link-text-color-default); /** Used for the text of a link button in the focus state. */
  --gl-button-link-text-color-active: var(--gl-button-link-text-color-default); /** Used for the text of a link button in the active state. */
  --gl-chart-axis-pointer-color: var(--gl-icon-color-subtle); /** Used in charts for the color of the reference line and axis value under mouse pointer. */
  --gl-chart-zoom-handle-color: var(--gl-icon-color-subtle); /** Used in charts for the handle color when zooming in on a specific area of data. */
  --gl-dropdown-option-text-color-hover: var(--gl-action-neutral-foreground-color-hover); /** Used for the text of a dropdown option in the hover state. */
  --gl-dropdown-option-text-color-focus: var(--gl-action-neutral-foreground-color-focus); /** Used for the text of a dropdown option in the focus state. */
  --gl-dropdown-option-text-color-active: var(--gl-action-neutral-foreground-color-active); /** Used for the text of a dropdown option in the active state. */
  --gl-dropdown-option-indicator-color-selected-focus: var(--gl-control-background-color-selected-focus); /** Used for the dropdown selected option indicator in the focus state. */
  --gl-dropdown-option-indicator-color-selected-active: var(--gl-control-background-color-selected-focus); /** Used for the dropdown selected option indicator in the active state. */
  --gl-dropdown-option-background-color-unselected-focus: var(--gl-action-neutral-background-color-focus); /** Used for the background of an unselected dropdown option in the focus state. */
  --gl-nav-item-border-radius: var(--gl-action-border-radius); /** Used for the border radius of a navigation item */
  --gl-nav-item-foreground-color-active: var(--gl-nav-item-foreground-color-focus); /** Used for the foreground of a default navigation item in the active state. */
  --gl-nav-item-selected-foreground-color-focus: var(--gl-nav-item-foreground-color-focus); /** Used for the foreground of a selected navigation item in the focus state. */
  --gl-nav-item-selected-background-color-focus: var(--gl-nav-item-background-color-focus); /** Used for the background of a selected navigation item in the focus state. */
  --gl-tab-selected-indicator-color-default: var(--gl-action-selected-border-color-active); /** Used for the selected indicator of a tab. */
  --gl-toggle-switch-track-color-unchecked-hover: var(--gl-toggle-switch-track-color-unchecked-default); /** Used for the track color of an unchecked toggle switch in the hover state. The track is deliberately unchanged from the default state; hover is carried by the track border and the thumb size. */
  --gl-toggle-switch-track-color-checked-focus: var(--gl-action-selected-background-color-focus); /** Used for the track color of a checked toggle switch in the focus state. */
  --gl-toggle-switch-track-border-color-unchecked-focus: var(--gl-toggle-switch-track-border-color-unchecked-hover); /** Used for the track border color of an unchecked toggle switch in the focus state. */
  --gl-toggle-switch-track-border-color-checked-default: var(--gl-action-selected-border-color-default); /** Used for the track border color of a checked toggle switch in the default state. */
  --gl-toggle-switch-track-border-color-checked-hover: var(--gl-action-selected-border-color-hover); /** Used for the track border color of a checked toggle switch in the hover state. */
  --gl-toggle-switch-track-border-color-checked-active: var(--gl-action-selected-border-color-active); /** Used for the track border color of a checked toggle switch in the active state. */
  --gl-toggle-switch-track-border-color-checked-disabled: var(--gl-toggle-switch-track-color-checked-disabled); /** Used for the track border color of a disabled checked toggle switch, which matches the track color. */
  --gl-toggle-switch-track-border-color-loading: var(--gl-toggle-switch-track-color-loading); /** Used for the track border color of a loading toggle switch, which matches the track color so the track reads as a single flat fill. */
  --gl-toggle-switch-background-color-unchecked-hover: var(--gl-toggle-switch-background-color-unchecked-default); /** Used for the background color of the unchecked toggle switch thumb in the hover state. */
  --gl-toggle-switch-background-color-unchecked-focus: var(--gl-toggle-switch-background-color-unchecked-default); /** Used for the background color of the unchecked toggle switch thumb in the focus state. */
  --gl-toggle-switch-background-color-unchecked-active: var(--gl-toggle-switch-background-color-unchecked-default); /** Used for the background color of the unchecked toggle switch thumb in the active state. */
  --gl-toggle-switch-background-color-checked-hover: var(--gl-action-selected-foreground-color-hover); /** Used for the background color of the checked toggle switch thumb in the hover state. */
  --gl-toggle-switch-background-color-disabled: var(--gl-toggle-switch-background-color-unchecked-disabled); /** Use toggle.switch.background.color.unchecked.disabled instead. */
  --gl-toggle-switch-icon-color-unchecked-hover: var(--gl-action-selected-foreground-color-hover); /** Used for the icon color of an unchecked toggle switch in the hover state. */
  --gl-toggle-switch-icon-color-checked-focus: var(--gl-action-selected-background-color-focus); /** Used for the icon color of a checked toggle switch in the focus state. */
  --gl-token-border-radius: var(--gl-border-radius-default); /** Used for token border radius. */
  --gl-action-selected-foreground-color-focus: var(--gl-action-selected-foreground-color-hover); /** Used for the foreground of a selected action in the focus state. */
  --gl-action-selected-border-color-focus: var(--gl-action-selected-background-color-focus); /** Used for the border of a selected action in the focus state. */
  --gl-action-strong-confirm-foreground-color-focus: var(--gl-action-strong-confirm-foreground-color-hover); /** Used for the foreground of a strong confirm action in the focus state. */
  --gl-action-strong-confirm-border-color-focus: var(--gl-action-strong-confirm-border-color-hover); /** Used for the border of a strong confirm action in the focus state. */
  --gl-action-strong-neutral-border-color-focus: var(--gl-action-strong-neutral-border-color-hover); /** Used for the border of a strong neutral action in the focus state. */
  --gl-control-border-color-selected-focus: var(--gl-control-background-color-selected-focus); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) border on focus. */
  --gl-control-border-color-selected-disabled: var(--gl-control-background-color-selected-disabled); /** Used for checked and indeterminate (selected) form control (checkbox, radio button) border when disabled. */
  --gl-button-confirm-primary-foreground-color-active: var(--gl-button-confirm-primary-foreground-color-focus); /** Used for the foreground of a confirm (positive) primary button in the active state. */
  --gl-nav-item-selected-foreground-color-active: var(--gl-nav-item-foreground-color-active); /** Used for the foreground of a selected navigation item in the active state. */
  --gl-toggle-switch-track-color-unchecked-focus: var(--gl-toggle-switch-track-color-unchecked-hover); /** Used for the track color of an unchecked toggle switch in the focus state. The track is deliberately unchanged from the default state; focus is carried by the focus ring, the track border and the thumb size. */
  --gl-toggle-switch-track-border-color-unchecked-active: var(--gl-toggle-switch-track-border-color-unchecked-focus); /** Used for the track border color of an unchecked toggle switch in the active state. */
  --gl-toggle-switch-track-border-color-checked-focus: var(--gl-action-selected-border-color-focus); /** Used for the track border color of a checked toggle switch in the focus state. */
  --gl-toggle-switch-background-color-checked-focus: var(--gl-action-selected-foreground-color-focus); /** Used for the background color of the checked toggle switch thumb in the focus state. */
  --gl-toggle-switch-icon-color-unchecked-focus: var(--gl-action-selected-foreground-color-focus); /** Used for the icon color of an unchecked toggle switch in the focus state. */
  --gl-action-selected-foreground-color-active: var(--gl-action-selected-foreground-color-focus); /** Used for the foreground of a selected action in the active state. */
  --gl-action-strong-confirm-foreground-color-active: var(--gl-action-strong-confirm-foreground-color-focus); /** Used for the foreground of a strong confirm action in the active state. */
  --gl-action-strong-confirm-border-color-active: var(--gl-action-strong-confirm-border-color-focus); /** Used for the border of a strong confirm action in the active state. */
  --gl-action-strong-neutral-border-color-active: var(--gl-action-strong-neutral-border-color-focus); /** Used for the border of a strong neutral action in the active state. */
  --gl-toggle-switch-background-color-checked-active: var(--gl-action-selected-foreground-color-active); /** Used for the background color of the checked toggle switch thumb in the active state. */
  --gl-toggle-switch-icon-color-unchecked-active: var(--gl-action-selected-foreground-color-active); /** Used for the icon color of an unchecked toggle switch in the active state. */
}

/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
body{
  background-color: var(--gl-background-color-default);
  color: var(--gl-text-color-default);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6{
  color: var(--gl-text-color-heading);
}

a{
  color: var(--gl-text-color-link);
  text-decoration-line: none;
}

a:hover{
  color: var(--gl-text-color-link);
  text-decoration-line: underline;
}

a:not([href]):not([class]){
  color: inherit;
  text-decoration-line: none;
}

a:not([href]):not([class]):hover{
  color: inherit;
  text-decoration-line: none;
}

caption{
  color: var(--gl-text-color-subtle);
}

pre{
  color: var(--gl-text-color-strong);
}

kbd{
  border-style: solid;
  border-color: var(--gl-border-color-default);
  display: inline-block;
  border-width: 1px;
  border-bottom-color: var(--gl-border-color-strong);
  background-color: var(--gl-background-color-subtle);
  line-height: 1;
  color: var(--gl-text-color-default);
  font-size: 87.5%;
  padding: 3px 5px;
  vertical-align: unset;
  border-image: none;
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 var(--gl-border-color-strong);
}

.table{
  margin-bottom: var(--gl-spacing-scale-3);
  width: 100%;
  background-color: transparent;
  color: var(--gl-text-color-default);
}

 .modal-header .modal-title.table {
  margin-right: -1rem;
  padding-right: 1rem;
}
.table th,
.table td{
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  padding: var(--gl-spacing-scale-4);
  vertical-align: top;
}
.table thead th{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 2px;
  vertical-align: bottom;
}
.table tbody + tbody{
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 2px;
}

.gl-disclosure-dropdown.gl-new-dropdown .gl-new-dropdown-inner {
  max-height: none;
}
.gl-disclosure-dropdown.gl-new-dropdown .gl-new-dropdown-item-content:disabled, .gl-disclosure-dropdown.gl-new-dropdown .gl-new-dropdown-item-content[disabled], .gl-disclosure-dropdown.gl-new-dropdown .gl-new-dropdown-item-content.disabled {
  color: var(--gl-dropdown-option-text-color-disabled);
  cursor: not-allowed;
  background: none;
  text-decoration: none;
}

.gl-keyset-pagination.btn-group .gl-button.gl-button{
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  border-radius: var(--gl-action-border-radius);
}

.gl-token-selector.gl-token-selector-focus-glow {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-focus), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-token-selector.gl-token-selector-focus-glow {
    outline: 2px solid LinkText !important;
  }
}
.gl-token-selector.gl-token-selector-focus-glow.is-invalid {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-error), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-token-selector.gl-token-selector-focus-glow.is-invalid {
    outline: 2px solid LinkText !important;
  }
}
.gl-token-selector.gl-token-selector-view-only {
  background: var(--gl-control-background-color-readonly) !important;
  box-shadow: none !important;
}

.gl-token-selector-token-container:focus-visible .gl-token {
  background-color: var(--gl-token-selector-token-container-token-background-color-focus);
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-token-selector-input {
  padding-top: 0.375rem;
  padding-bottom: 0.375rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}

.gl-card{
  background-color: var(--gl-background-color-strong);
  border-width: 1px;
  border-style: solid;
  border-color: var(--gl-border-color-transparent);
}

@media (prefers-contrast: more){
  .gl-card{
    border-color: var(--gl-border-color-strong);
  }
}

.gl-card{
  display: flex;
  flex-direction: column;
  overflow-wrap: break-word;
  position: relative;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-card{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-card{
  padding: var(--gl-spacing-scale-2);
  border-radius: var(--gl-card-border-radius);
}

.gl-card-header,
.gl-card-body{
  color: var(--gl-text-color-default);
}

.gl-card-header{
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-3);
  margin-top: var(--gl-spacing-scale-1);
  margin-bottom: var(--gl-spacing-scale-1);
  border-top-left-radius: calc(var(--gl-card-border-radius) - 1px);
  border-top-right-radius: calc(var(--gl-card-border-radius) - 1px);
}
.gl-card-header h2,
.gl-card-header h3,
.gl-card-header h4,
.gl-card-header h5,
.gl-card-header h6{
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-card-header h2,.recents-wrapper 
.gl-card-header h3,.recents-wrapper 
.gl-card-header h4,.recents-wrapper 
.gl-card-header h5,.recents-wrapper 
.gl-card-header h6{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-card-header h2,
.gl-card-header h3,
.gl-card-header h4,
.gl-card-header h5,
.gl-card-header h6{
  color: var(--gl-text-color-heading);
  margin: var(--gl-spacing-scale-0);
}

.gl-card-body{
  flex-grow: 1;
  padding: var(--gl-spacing-scale-3);
  background-color: var(--gl-background-color-default);
}

@media (prefers-contrast: more){
  .gl-card-body{
    border-style: solid;
    border-color: var(--gl-border-color-default);
    border-width: 1px;
  }
}

@media (forced-colors: active){
  .gl-card-body{
    border-style: solid;
    border-color: var(--gl-border-color-default);
    border-width: 1px;
  }
}

.gl-card-body {
  border-radius: calc(var(--gl-card-border-radius) - 0.25rem);
}

.gl-card-footer{
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-2);
  border-bottom-left-radius: calc(var(--gl-card-border-radius) - 1px);
  border-bottom-right-radius: calc(var(--gl-card-border-radius) - 1px);
  color: var(--gl-text-color-subtle);
}

.gl-clear-icon-button{
  background-color: transparent;
  border-style: none;
  cursor: pointer;
}
.gl-clear-icon-button:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-accordion-item{
  margin-bottom: var(--gl-spacing-scale-5);
}
.gl-accordion-item .gl-accordion-item-header{
  margin: var(--gl-spacing-scale-0);
  line-height: 1rem;
}
.gl-accordion-item:last-child{
  margin-bottom: var(--gl-spacing-scale-0);
}
.gl-accordion-item .collapse {
  margin-left: 1.25rem;
}

/*
 * --gl-alert-padding-x
 *
 * Way to hook into spacing of gl-alert.
 * This is used e.g. for page wide containers
 * in GitLab.
 */
.gl-alert{
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-alert{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-alert {
  border-radius: var(--gl-alert-border-radius);
  padding-inline: calc(2rem + var(--gl-alert-padding-x, 0px));
  position: relative;
  border: 1px solid;
}
.gl-alert-not-dismissible {
  padding-right: calc(0.75rem + var(--gl-alert-padding-x, 0px));
}
.gl-alert .gl-link:not(.gl-label-link){
  text-decoration-line: underline;
}
.gl-alert.gl-alert-has-actions{
  padding-bottom: var(--gl-spacing-scale-4);
}

.gl-alert-sticky {
  position: sticky;
  top: 0;
}

.gl-alert-title{
  font-weight: var(--gl-heading-scale-300-font-weight);
  margin-top: var(--gl-heading-scale-300-margin-top);
  font-size: var(--gl-heading-scale-300-font-size);
  letter-spacing: var(--gl-heading-scale-300-letter-spacing);
  line-height: var(--gl-heading-scale-300-line-height);
  color: var(--gl-heading-scale-300-color);
  margin-bottom: var(--gl-spacing-scale-2);
  line-height: var(--gl-line-height-20);
}

.gl-alert-icon-container{
  position: absolute;
  top: var(--gl-spacing-scale-3);
  left: calc(0.5rem + var(--gl-alert-padding-x, 0px));
  display: flex;
  align-items: center;
  height: 1.25rem;
}

.gl-alert-body{
  line-height: var(--gl-line-height-20);
  color: var(--gl-text-color-default);
}

.gl-alert-actions{
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  row-gap: var(--gl-spacing-scale-3);
  margin-top: var(--gl-spacing-scale-3);
}
@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-alert-actions{
    flex-direction: row;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-alert-actions{
    flex-direction: row;
  }
}

.gl-alert-action{
  margin-right: var(--gl-spacing-scale-0);
  width: 100%;
}

 .modal-header .modal-title.gl-alert-action {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-alert-action{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-alert-action{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-alert-action{
  line-height: 1rem;
}
@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-alert-action{
    margin-right: var(--gl-spacing-scale-3);
    width: auto;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-alert-action{
    margin-right: var(--gl-spacing-scale-3);
    width: auto;
  }
}

.gl-dismiss-btn {
  position: absolute;
  top: calc(0.5rem - (1.5rem - 1.25rem) / 2);
  right: calc(0.25rem + var(--gl-alert-padding-x, 0px));
}

/* Variants */
.gl-alert-danger {
  background-color: var(--gl-alert-danger-background-color);
  border-color: var(--gl-alert-danger-border-color);
}
.gl-alert-danger .gl-alert-title {
  color: var(--gl-alert-danger-title-color);
}
@media (forced-colors: none) {
  .gl-alert-danger .gl-alert-icon {
    color: var(--gl-feedback-danger-icon-color);
  }
}

.gl-alert-warning {
  background-color: var(--gl-alert-warning-background-color);
  border-color: var(--gl-alert-warning-border-color);
}
.gl-alert-warning .gl-alert-title {
  color: var(--gl-alert-warning-title-color);
}
@media (forced-colors: none) {
  .gl-alert-warning .gl-alert-icon {
    color: var(--gl-feedback-warning-icon-color);
  }
}

.gl-alert-tip {
  background-color: var(--gl-alert-neutral-background-color);
  border-color: var(--gl-alert-neutral-border-color);
}
.gl-alert-tip .gl-alert-title {
  color: var(--gl-alert-neutral-title-color);
}
@media (forced-colors: none) {
  .gl-alert-tip .gl-alert-icon {
    color: var(--gl-feedback-neutral-icon-color);
  }
}

.gl-alert-info {
  background-color: var(--gl-alert-info-background-color);
  border-color: var(--gl-alert-info-border-color);
}
.gl-alert-info .gl-alert-title {
  color: var(--gl-alert-info-title-color);
}
@media (forced-colors: none) {
  .gl-alert-info .gl-alert-icon {
    color: var(--gl-feedback-info-icon-color);
  }
}

.gl-alert-success {
  background-color: var(--gl-alert-success-background-color);
  border-color: var(--gl-alert-success-border-color);
}
.gl-alert-success .gl-alert-title {
  color: var(--gl-alert-success-title-color);
}
@media (forced-colors: none) {
  .gl-alert-success .gl-alert-icon {
    color: var(--gl-feedback-success-icon-color);
  }
}

.gl-attribute-list{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-attribute-list{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-attribute-list{
  line-height: var(--gl-line-height-16);
  display: grid;
  column-gap: var(--gl-spacing-scale-7);
}

@container (min-width: 25rem) {
  .gl-attribute-list-horizontal-items {
    grid-template-columns: fit-content(15rem) 1fr;
  }
  .gl-attribute-list-horizontal-items .gl-attribute-list-item{
    grid-column: span 2 / span 2;
  }
}
@container (min-width: 54rem) {
  .gl-attribute-list-horizontal-items {
    grid-template-columns: repeat(2, fit-content(15rem) 1fr);
    grid-auto-flow: column;
    grid-template-rows: repeat(var(--attribute-list-row-count), auto);
  }
}

@container (min-width: 40rem) {
  .gl-attribute-list-vertical-items{
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-flow: column;
    grid-template-rows: repeat(var(--attribute-list-row-count), auto);
  }
}

.gl-attribute-list-item{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  padding-top: var(--gl-spacing-scale-5);
  padding-bottom: var(--gl-spacing-scale-5);
  gap: var(--gl-spacing-scale-4);
  display: grid;
  grid-template-columns: subgrid;
}

.gl-attribute-list-item-label{
  color: var(--gl-text-color-strong);
  display: flex;
  gap: var(--gl-spacing-scale-3);
}

.gl-attribute-list-item-label-icon{
  flex: none;
}

.gl-attribute-list-item-description{
  margin-bottom: var(--gl-spacing-scale-0);
  min-width: var(--gl-spacing-scale-0);
  color: var(--gl-text-color-default);
}

.gl-avatar{
  display: inline-flex;
}

.commit-content .committer.gl-avatar {
  gap: 0.5ch;
}

.gl-avatar{
  overflow: hidden;
  flex-shrink: 0;
  line-height: 1;
  object-fit: contain;
  outline: 1px solid var(--gl-avatar-border-color-default);
  outline-offset: -1px;
}

.gl-avatar-s16{
  width: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
  font-size: 0.75rem;
  border-radius: var(--gl-avatar-square-border-radius-default);
}

.gl-avatar-s24{
  width: var(--gl-spacing-scale-6);
  height: var(--gl-spacing-scale-6);
  font-size: 1rem;
  border-radius: var(--gl-avatar-square-border-radius-default);
}

.gl-avatar-s32{
  width: var(--gl-spacing-scale-7);
  height: var(--gl-spacing-scale-7);
  font-size: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem);
  border-radius: var(--gl-avatar-square-border-radius-default);
}

.gl-avatar-s48{
  width: var(--gl-spacing-scale-9);
  height: var(--gl-spacing-scale-9);
  font-size: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem);
  border-radius: var(--gl-avatar-square-border-radius-lg);
}

.gl-avatar-s64{
  width: var(--gl-spacing-scale-11);
  height: var(--gl-spacing-scale-11);
  font-size: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem);
  border-radius: var(--gl-avatar-square-border-radius-lg);
}

.gl-avatar-s96{
  width: var(--gl-spacing-scale-13);
  height: var(--gl-spacing-scale-13);
  font-size: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem);
  border-radius: var(--gl-avatar-square-border-radius-lg);
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-avatar-s16{
    width: var(--gl-spacing-scale-5);
    height: var(--gl-spacing-scale-5);
    font-size: 0.75rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-avatar-s16{
    width: var(--gl-spacing-scale-5);
    height: var(--gl-spacing-scale-5);
    font-size: 0.75rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-avatar-s16{
    width: var(--gl-spacing-scale-5);
    height: var(--gl-spacing-scale-5);
    font-size: 0.75rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-avatar-s16{
    width: var(--gl-spacing-scale-5);
    height: var(--gl-spacing-scale-5);
    font-size: 0.75rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-avatar-s16{
    width: var(--gl-spacing-scale-5);
    height: var(--gl-spacing-scale-5);
    font-size: 0.75rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-avatar-s16{
    width: var(--gl-spacing-scale-5);
    height: var(--gl-spacing-scale-5);
    font-size: 0.75rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-avatar-s24{
    width: var(--gl-spacing-scale-6);
    height: var(--gl-spacing-scale-6);
    font-size: 1rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-avatar-s24{
    width: var(--gl-spacing-scale-6);
    height: var(--gl-spacing-scale-6);
    font-size: 1rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-avatar-s24{
    width: var(--gl-spacing-scale-6);
    height: var(--gl-spacing-scale-6);
    font-size: 1rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-avatar-s24{
    width: var(--gl-spacing-scale-6);
    height: var(--gl-spacing-scale-6);
    font-size: 1rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-avatar-s24{
    width: var(--gl-spacing-scale-6);
    height: var(--gl-spacing-scale-6);
    font-size: 1rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-avatar-s24{
    width: var(--gl-spacing-scale-6);
    height: var(--gl-spacing-scale-6);
    font-size: 1rem;
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-avatar-s32{
    width: var(--gl-spacing-scale-7);
    height: var(--gl-spacing-scale-7);
    font-size: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem);
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-avatar-s32{
    width: var(--gl-spacing-scale-7);
    height: var(--gl-spacing-scale-7);
    font-size: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem);
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-avatar-s32{
    width: var(--gl-spacing-scale-7);
    height: var(--gl-spacing-scale-7);
    font-size: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem);
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-avatar-s32{
    width: var(--gl-spacing-scale-7);
    height: var(--gl-spacing-scale-7);
    font-size: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem);
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-avatar-s32{
    width: var(--gl-spacing-scale-7);
    height: var(--gl-spacing-scale-7);
    font-size: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem);
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-avatar-s32{
    width: var(--gl-spacing-scale-7);
    height: var(--gl-spacing-scale-7);
    font-size: clamp(1.125rem, 0.9027777778rem + 0.462962963vw, 1.25rem);
    border-radius: var(--gl-avatar-square-border-radius-default);
  }
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-avatar-s48{
    width: var(--gl-spacing-scale-9);
    height: var(--gl-spacing-scale-9);
    font-size: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-avatar-s48{
    width: var(--gl-spacing-scale-9);
    height: var(--gl-spacing-scale-9);
    font-size: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-avatar-s48{
    width: var(--gl-spacing-scale-9);
    height: var(--gl-spacing-scale-9);
    font-size: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-avatar-s48{
    width: var(--gl-spacing-scale-9);
    height: var(--gl-spacing-scale-9);
    font-size: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-avatar-s48{
    width: var(--gl-spacing-scale-9);
    height: var(--gl-spacing-scale-9);
    font-size: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-avatar-s48{
    width: var(--gl-spacing-scale-9);
    height: var(--gl-spacing-scale-9);
    font-size: clamp(1.3125rem, 0.8680555556rem + 0.9259259259vw, 1.5625rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-avatar-s64{
    width: var(--gl-spacing-scale-11);
    height: var(--gl-spacing-scale-11);
    font-size: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-avatar-s64{
    width: var(--gl-spacing-scale-11);
    height: var(--gl-spacing-scale-11);
    font-size: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-avatar-s64{
    width: var(--gl-spacing-scale-11);
    height: var(--gl-spacing-scale-11);
    font-size: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-avatar-s64{
    width: var(--gl-spacing-scale-11);
    height: var(--gl-spacing-scale-11);
    font-size: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-avatar-s64{
    width: var(--gl-spacing-scale-11);
    height: var(--gl-spacing-scale-11);
    font-size: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-avatar-s64{
    width: var(--gl-spacing-scale-11);
    height: var(--gl-spacing-scale-11);
    font-size: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-avatar-s96{
    width: var(--gl-spacing-scale-13);
    height: var(--gl-spacing-scale-13);
    font-size: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-avatar-s96{
    width: var(--gl-spacing-scale-13);
    height: var(--gl-spacing-scale-13);
    font-size: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-avatar-s96{
    width: var(--gl-spacing-scale-13);
    height: var(--gl-spacing-scale-13);
    font-size: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-avatar-s96{
    width: var(--gl-spacing-scale-13);
    height: var(--gl-spacing-scale-13);
    font-size: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-avatar-s96{
    width: var(--gl-spacing-scale-13);
    height: var(--gl-spacing-scale-13);
    font-size: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-avatar-s96{
    width: var(--gl-spacing-scale-13);
    height: var(--gl-spacing-scale-13);
    font-size: clamp(1.75rem, 0.8611111111rem + 1.8518518519vw, 2.25rem);
    border-radius: var(--gl-avatar-square-border-radius-lg);
  }
}

.gl-avatar-circle {
  border-radius: var(--gl-avatar-circle-border-radius-default);
}

.gl-avatar-identicon{
  text-align: center;
  vertical-align: top;
  justify-content: center;
  align-items: center;
  color: var(--gl-text-color-strong);
}

.gl-avatar-identicon-bg1 {
  color: var(--gl-avatar-fallback-text-color-red);
  background-color: var(--gl-avatar-fallback-background-color-red);
}

.gl-avatar-identicon-bg2 {
  color: var(--gl-avatar-fallback-text-color-purple);
  background-color: var(--gl-avatar-fallback-background-color-purple);
}

.gl-avatar-identicon-bg3 {
  color: var(--gl-avatar-fallback-text-color-purple);
  background-color: var(--gl-avatar-fallback-background-color-purple);
}

.gl-avatar-identicon-bg4 {
  color: var(--gl-avatar-fallback-text-color-blue);
  background-color: var(--gl-avatar-fallback-background-color-blue);
}

.gl-avatar-identicon-bg5 {
  color: var(--gl-avatar-fallback-text-color-green);
  background-color: var(--gl-avatar-fallback-background-color-green);
}

.gl-avatar-identicon-bg6 {
  color: var(--gl-avatar-fallback-text-color-orange);
  background-color: var(--gl-avatar-fallback-background-color-orange);
}

.gl-avatar-identicon-bg7 {
  color: var(--gl-avatar-fallback-text-color-neutral);
  background-color: var(--gl-avatar-fallback-background-color-neutral);
}

.gl-avatar-labeled{
  display: inline-flex;
}

.commit-content .committer.gl-avatar-labeled {
  gap: 0.5ch;
}
.gl-avatar-labeled-labels{
  margin-left: var(--gl-spacing-scale-3);
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-avatar-labeled-labels{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-avatar-labeled-labels{
  line-height: 1rem;
  color: var(--gl-text-color-strong);
}
.gl-avatar-labeled-labels.inline-labels{
  flex-direction: row;
  align-items: center;
  gap: var(--gl-spacing-scale-2);
}
.gl-avatar-labeled-label{
  font-weight: var(--gl-font-weight-bold);
  padding: var(--gl-spacing-scale-1);
  color: var(--gl-text-color-strong);
}
.gl-avatar-labeled-sublabel{
  color: var(--gl-text-color-subtle);
  overflow-wrap: anywhere;
}

.gl-avatar-link{
  display: inline-flex;
}

.commit-content .committer.gl-avatar-link {
  gap: 0.5ch;
}
.gl-avatar-link .gl-avatar{
  transition-property: border-color;
  transition-duration: 400ms;
  transition-timing-function: ease;
}
.gl-avatar-link:hover{
  text-decoration-line: none;
}
.gl-avatar-link:hover .gl-avatar {
  outline: 1px solid var(--gl-avatar-border-color-hover);
}
.gl-avatar-link:hover .gl-avatar-labeled-label{
  text-decoration-line: underline;
}
.gl-avatar-link:hover .gl-avatar-labeled-sublabel{
  text-decoration-line: underline;
}
.gl-avatar-link:active, .gl-avatar-link:focus-visible, .gl-avatar-link:focus-visible:active {
  box-shadow: none !important;
  outline: none !important;
}
.gl-avatar-link:active .gl-avatar, .gl-avatar-link:focus-visible .gl-avatar, .gl-avatar-link:focus-visible:active .gl-avatar{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-avatars-inline {
  --avatar-size: 24px;
  --avatar-radius: calc(var(--avatar-size) * 0.5);
  --mask-offset: calc(var(--avatar-size) * -0.25);
  --mask-cutout: calc(var(--avatar-radius) + 1.5px);
  display: inline-flex;
}

.commit-content .committer.gl-avatars-inline {
  gap: 0.5ch;
}

.gl-avatars-inline-sm {
  --avatar-size: 16px;
}

.gl-avatars-inline-md {
  --avatar-size: 24px;
}

.gl-avatars-inline-lg {
  --avatar-size: 32px;
}

.gl-avatars-inline-child{
  display: inline-flex;
}

.commit-content .committer.gl-avatars-inline-child {
  gap: 0.5ch;
}
.gl-avatars-inline-child:not(:last-child) {
  margin-right: var(--mask-offset);
  mask: radial-gradient(circle at calc(var(--avatar-size) * 1.25) center, transparent var(--mask-cutout), white 0);
}
.gl-avatars-inline-child:not(:last-child):hover + .gl-avatars-inline-child > .gl-avatar-link, .gl-avatars-inline-child:not(:last-child):hover + .gl-avatars-inline-child > .gl-avatars-inline-badge {
  mask: radial-gradient(circle at var(--mask-offset) center, transparent var(--mask-cutout), white 0);
}
.gl-avatars-inline-child:not(:last-child):hover, .gl-avatars-inline-child:not(:last-child):focus-within{
  z-index: var(--gl-zindex-1);
  mask: none;
}

.gl-avatars-inline-badge{
  display: inline-flex;
}

.commit-content .committer.gl-avatars-inline-badge {
  gap: 0.5ch;
}

.gl-avatars-inline-badge{
  align-items: center;
  justify-content: center;
  font-size: var(--gl-font-size-sm);
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  line-height: 1rem;
  border-radius: .75rem;
  background-color: var(--gl-status-neutral-background-color);
  color: var(--gl-status-neutral-text-color);
  height: var(--avatar-size);
  min-width: var(--avatar-size);
}
.gl-avatars-inline-badge.lg{
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-avatars-inline-badge.lg{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-avatars-inline-badge.lg{
  border-radius: var(--gl-border-radius-3xl);
}

.gl-animated-icon {
  display: flex;
  fill: none !important;
  stroke: currentColor !important;
}
.gl-animated-icon * {
  transition: all 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
  transition-property: color, fill, opacity, transform, rotate, translate, scale, stroke-dasharray, stroke-dashoffset;
  animation-duration: 0.4s;
  animation-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
  animation-fill-mode: both;
}
@media (prefers-reduced-motion) {
  .gl-animated-icon * {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    animation-delay: 0ms !important;
  }
}

/* * * * * * * * * * * * * * * * *
 * Color variants.
 * * * * * * * * * * * * * * * * */
.gl-animated-icon-default {
  color: var(--gl-icon-color-default);
}

.gl-animated-icon-subtle {
  color: var(--gl-icon-color-subtle);
}

.gl-animated-icon-strong {
  color: var(--gl-icon-color-strong);
}

.gl-animated-icon-disabled {
  color: var(--gl-icon-color-disabled);
}

.gl-animated-icon-link {
  color: var(--gl-icon-color-link);
}

.gl-animated-icon-info {
  color: var(--gl-icon-color-info);
}

.gl-animated-icon-warning {
  color: var(--gl-icon-color-warning);
}

.gl-animated-icon-danger {
  color: var(--gl-icon-color-danger);
}

.gl-animated-icon-success {
  color: var(--gl-icon-color-success);
}

/* * * * * * * * * * * * * * * * *
 * animated_chevron_lg_right_down_icon.vue
 * * * * * * * * * * * * * * * * */
.gl-animated-chevron-lg-right-down-arrow {
  transform-origin: center center;
}

/* on state */
.gl-animated-icon-on .gl-animated-chevron-lg-right-down-arrow {
  rotate: 90deg;
}

/* off state */
.gl-animated-icon-off .gl-animated-chevron-lg-right-down-arrow {
  rotate: 0deg;
}

/* * * * * * * * * * * * * * * * *
 * animated_chevron_right_down_icon.vue
 * * * * * * * * * * * * * * * * */
.gl-animated-chevron-right-down-arrow {
  transform-origin: center center;
}

/* on state */
.gl-animated-icon-on .gl-animated-chevron-right-down-arrow {
  rotate: 90deg;
}

/* off state */
.gl-animated-icon-off .gl-animated-chevron-right-down-arrow {
  rotate: 0deg;
}

/* * * * * * * * * * * * * * * * *
 * animated_chevron_lg_down_up_icon.vue
 * * * * * * * * * * * * * * * * */
/* on state */
.gl-animated-icon-on .gl-animated-chevron-lg-down-up-arrow-left-line,
.gl-animated-icon-on .gl-animated-chevron-lg-down-up-arrow-right-line {
  translate: 50% 31.2%;
  scale: 1 1.01;
  transition: all 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), scale 0.2s linear(1 0%, -29 16%, 1 100%);
}
.gl-animated-icon-on .gl-animated-chevron-lg-down-up-arrow-left-line {
  rotate: 45deg;
}
.gl-animated-icon-on .gl-animated-chevron-lg-down-up-arrow-right-line {
  rotate: -45deg;
}

/* off state */
.gl-animated-icon-off .gl-animated-chevron-lg-down-up-arrow-left-line,
.gl-animated-icon-off .gl-animated-chevron-lg-down-up-arrow-right-line {
  translate: 50% 68.8%;
  scale: 1 1;
  transition: all 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), scale 0.2s linear(1 0%, 29 16%, 1 100%);
}
.gl-animated-icon-off .gl-animated-chevron-lg-down-up-arrow-left-line {
  rotate: 135deg;
}
.gl-animated-icon-off .gl-animated-chevron-lg-down-up-arrow-right-line {
  rotate: -135deg;
}

/* * * * * * * * * * * * * * * * *
 * animated_chevron_down_up_icon.vue
 * * * * * * * * * * * * * * * * */
/* on state */
.gl-animated-icon-on .gl-animated-chevron-down-up-arrow-left-line,
.gl-animated-icon-on .gl-animated-chevron-down-up-arrow-right-line {
  translate: 50% 37.6%;
  scale: 1 1.01;
  transition: all 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), scale 0.2s linear(1 0%, -27 16%, 1 100%);
}
.gl-animated-icon-on .gl-animated-chevron-down-up-arrow-left-line {
  rotate: 45deg;
}
.gl-animated-icon-on .gl-animated-chevron-down-up-arrow-right-line {
  rotate: -45deg;
}

/* off state */
.gl-animated-icon-off .gl-animated-chevron-down-up-arrow-left-line,
.gl-animated-icon-off .gl-animated-chevron-down-up-arrow-right-line {
  translate: 50% 62.6%;
  scale: 1 1;
  transition: all 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), scale 0.2s linear(1 0%, 27 16%, 1 100%);
}
.gl-animated-icon-off .gl-animated-chevron-down-up-arrow-left-line {
  rotate: 135deg;
}
.gl-animated-icon-off .gl-animated-chevron-down-up-arrow-right-line {
  rotate: -135deg;
}

/* * * * * * * * * * * * * * * * *
 * animated_duo_chat_icon.vue
 * * * * * * * * * * * * * * * * */
.gl-animated-duo-chat-small-sparkle,
.gl-animated-duo-chat-big-sparkle {
  transform-origin: 50% 50%;
}

/* on state */
.gl-animated-icon-on .gl-animated-duo-chat-small-sparkle,
.gl-animated-icon-on .gl-animated-duo-chat-big-sparkle {
  animation-name: gl-animated-duo-chat-sparkle;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

.gl-animated-icon-on .gl-animated-duo-chat-small-sparkle {
  animation-delay: -0.5s;
}

.gl-animated-icon-on .gl-animated-duo-chat-big-sparkle {
  animation-delay: -1.5s;
}

@keyframes gl-animated-duo-chat-sparkle {
  0% {
    translate: -45% -45%;
    scale: 0;
  }
  20%, 45% {
    translate: -31% -31%;
    scale: 1;
  }
  50%, 80% {
    translate: 0 -6%;
    scale: 0.8;
  }
  100% {
    translate: 0 -6%;
    scale: 0;
  }
}
/* off state */
.gl-animated-duo-chat-small-sparkle {
  translate: 0 -6%;
  scale: 0.8;
}

.gl-animated-duo-chat-big-sparkle {
  translate: -31% -31%;
  scale: 1;
}

@media (prefers-reduced-motion) {
  .gl-animated-icon-on .gl-animated-duo-chat-small-sparkle,
  .gl-animated-icon-on .gl-animated-duo-chat-big-sparkle {
    animation-name: none;
  }
}
/* * * * * * * * * * * * * * * * *
 * animated_loader_icon.vue
 * * * * * * * * * * * * * * * * */
.gl-animated-icon-on .gl-animated-loader-shape {
  animation: gl-animated-loader-on 1.8s ease infinite;
}

.gl-animated-icon-on .gl-animated-loader-shape-1 {
  animation-delay: 0.15s;
}

.gl-animated-icon-on .gl-animated-loader-shape-2 {
  animation-delay: 0.3s;
}

@keyframes gl-animated-loader-on {
  30% {
    translate: 0 -30%;
  }
  60% {
    translate: 0 2%;
  }
  65% {
    translate: 0 0;
  }
}
/* * * * * * * * * * * * * * * * *
 * animated_notifications_icon.vue
 * * * * * * * * * * * * * * * * */
/* on state */
.gl-animated-icon-on .gl-animated-notifications-bottom-part {
  stroke-dasharray: 80% 100%;
  stroke-dashoffset: -43%;
}

.gl-animated-icon-on .gl-animated-notifications-top-part {
  stroke-dashoffset: 0;
}

.gl-animated-icon-on .gl-animated-notifications-line {
  stroke-dasharray: 115% 120%;
  stroke-dashoffset: 0;
}

/* off state */
.gl-animated-icon-off .gl-animated-notifications-bottom-part {
  stroke-dasharray: 145% 100%;
  stroke-dashoffset: 0;
}

.gl-animated-icon-off .gl-animated-notifications-top-part {
  stroke-dasharray: 100% 100%;
  stroke-dashoffset: 0;
}

.gl-animated-icon-off .gl-animated-notifications-line {
  stroke-dasharray: 115% 120%;
  stroke-dashoffset: -111%;
}

/* * * * * * * * * * * * * * * * *
 * animated_sidebar_icon.vue
 * * * * * * * * * * * * * * * * */
/* on state */
.gl-animated-icon-on .gl-animated-sidebar-line {
  translate: 1% 0;
  transition-timing-function: linear(0 0%, 5 60%, 1 100%);
}

/* off state */
.gl-animated-icon-off .gl-animated-sidebar-line {
  translate: -1% 0;
  transition-timing-function: linear(0 0%, 5 60%, 1 100%);
}

/* * * * * * * * * * * * * * * * *
 * animated_smile_icon.vue
 * * * * * * * * * * * * * * * * */
.gl-animated-smile-big-smile {
  transform-origin: 50% 70%;
}

.gl-animated-smile-eyes circle {
  fill: currentColor !important;
}

/* on state */
.gl-animated-icon-on .gl-animated-smile-eyes {
  transition-timing-function: linear(0 0%, -1 20%, 1 100%);
  translate: 0 -6%;
}

.gl-animated-icon-on .gl-animated-smile-big-smile {
  scale: 1;
  transition-delay: 0.1s;
}

.gl-animated-icon-on .gl-animated-smile-slight-smile {
  stroke-dasharray: 10% 100%;
  stroke-dashoffset: -8%;
}

/* off state */
.gl-animated-icon-off .gl-animated-smile-eyes {
  translate: 0 0;
}

.gl-animated-icon-off .gl-animated-smile-big-smile {
  scale: 0.1;
}

.gl-animated-icon-off .gl-animated-smile-slight-smile {
  stroke-dasharray: 30% 100%;
  stroke-dashoffset: 0;
}

/* * * * * * * * * * * * * * * * *
 * animated_sort_icon.vue
 * * * * * * * * * * * * * * * * */
.gl-animated-sort-icon {
  overflow: visible;
}

/* off state */
.gl-animated-icon-off .gl-animated {
  animation-name: gl-animated-star-off;
}

.gl-animated-sort-arrow-left,
.gl-animated-sort-arrow-right {
  transform-origin: 18.7% 6.7%;
}

.gl-animated-icon-off .gl-animated-sort-arrow-left,
.gl-animated-icon-off .gl-animated-sort-arrow-right {
  rotate: 0deg;
  translate: 0 10%;
}

.gl-animated-icon-off .gl-animated-sort-long-line-off,
.gl-animated-icon-off .gl-animated-sort-medium-line-off,
.gl-animated-icon-off .gl-animated-sort-short-line-off {
  opacity: 0;
  transition-delay: -1s;
}

.gl-animated-icon-off .gl-animated-sort-long-line-on {
  transition-delay: 0.05s;
}

.gl-animated-icon-off .gl-animated-sort-medium-line-on {
  transition-delay: 0.1s;
}

.gl-animated-icon-off .gl-animated-sort-short-line-on {
  transition-delay: 0.15s;
}

.gl-animated-icon-off .gl-animated-sort-line {
  translate: 0 -7%;
}

/* on state */
.gl-animated-icon-on .gl-animated-sort-arrow-left {
  rotate: 90deg;
  translate: 0 77%;
}

.gl-animated-icon-on .gl-animated-sort-arrow-right {
  rotate: -90deg;
  translate: 0 77%;
}

.gl-animated-icon-on .gl-animated-sort-long-line-on,
.gl-animated-icon-on .gl-animated-sort-medium-line-on,
.gl-animated-icon-on .gl-animated-sort-short-line-on {
  opacity: 0;
  transition-delay: -1s;
}

.gl-animated-icon-on .gl-animated-sort-long-line-off {
  transition-delay: 0.15s;
}

.gl-animated-icon-on .gl-animated-sort-medium-line-off {
  transition-delay: 0.1s;
}

.gl-animated-icon-on .gl-animated-sort-short-line-off {
  transition-delay: 0.05s;
}

.gl-animated-icon-on .gl-animated-sort-line {
  translate: 0 0;
}

/* * * * * * * * * * * * * * * * *
 * animated_star_icon.vue
 * * * * * * * * * * * * * * * * */
.gl-animated-star-shape {
  transform-origin: center center;
}

/* on state */
.gl-animated-icon-on .gl-animated-star-shape {
  animation-name: gl-animated-star-on;
}

@keyframes gl-animated-star-on {
  0%, 25% {
    fill: transparent;
  }
  50% {
    fill: currentColor;
  }
  100% {
    fill: currentColor;
  }
  0%, 100% {
    scale: 1;
  }
  25% {
    scale: 0.7;
  }
  50% {
    scale: 1.1;
  }
}
/* off state */
.gl-animated-icon-off .gl-animated-star-shape {
  animation-name: gl-animated-star-off;
}

@keyframes gl-animated-star-off {
  0%, 25% {
    fill: currentColor;
  }
  50% {
    fill: transparent;
  }
  100% {
    fill: transparent;
  }
  0%, 100% {
    scale: 1;
  }
  25% {
    scale: 0.7;
  }
  50% {
    scale: 1.1;
  }
}
/* * * * * * * * * * * * * * * * *
 * animated_todo_icon.vue
 * * * * * * * * * * * * * * * * */
/* on state */
.gl-animated-icon-on .gl-animated-todo-box {
  stroke-dasharray: 240% 100%;
  stroke-dashoffset: -19%;
}

.gl-animated-icon-on .gl-animated-todo-plus-line {
  stroke-dasharray: 0% 100%;
  stroke-dashoffset: -14%;
  translate: 14% 7%;
}

.gl-animated-icon-on .gl-animated-todo-check {
  stroke-dasharray: 76% 100%;
  stroke-dashoffset: 0;
}

/* off state */
.gl-animated-icon-off .gl-animated-todo-box {
  stroke-dasharray: 215% 100%;
  stroke-dashoffset: -12%;
}

.gl-animated-icon-off .gl-animated-todo-plus-line {
  stroke-dasharray: 30% 100%;
  stroke-dashoffset: 0;
  translate: 0 0;
}

.gl-animated-icon-off .gl-animated-todo-check {
  stroke-dasharray: 76% 100%;
  stroke-dashoffset: -76%;
}

/* * * * * * * * * * * * * * * * *
 * animated_upload_icon.vue
 * * * * * * * * * * * * * * * * */
.gl-animated-upload-line {
  stroke-dasharray: 70% 100%;
}

/* on state */
.gl-animated-icon-on .gl-animated-upload-line {
  animation-name: gl-animated-upload-line;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

@keyframes gl-animated-upload-line {
  0%, 60%, 100% {
    translate: 0 0;
    stroke-dashoffset: 0;
  }
  10% {
    translate: 0% 20%;
    stroke-dashoffset: -20%;
  }
  40% {
    translate: 0 -10%;
    stroke-dashoffset: 0;
  }
  55% {
    translate: 0 5%;
    stroke-dashoffset: -5%;
  }
}
.gl-animated-icon-on .gl-animated-upload-arrow {
  animation-name: gl-animated-upload-arrow;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

@keyframes gl-animated-upload-arrow {
  0%, 60%, 100% {
    translate: 0 0;
  }
  10% {
    translate: 0 20%;
  }
  40% {
    translate: 0 -8%;
  }
  55% {
    translate: 0 8%;
  }
}
/* Basic badge styles */
.gl-badge{
  font-size: var(--gl-font-size-sm);
  font-weight: var(--gl-font-weight-normal);
  line-height: 1rem;
  /*
    CSS Grid is used here to deal with 3 cases:
      * Badge shouldn't shrink inside flex containers by default
      * Content inside the badge should shrink when gl-text-truncate class is used on the contents
      * Badge should have a minimal width of 20 pixels (for example when `1` is passed inside the slot)
   */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.25rem;
  padding: 0.125rem 0.375rem;
  transition: color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (prefers-reduced-motion) {
  .gl-badge {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.gl-badge:has(.gl-truncate, .gl-text-truncate) {
  max-width: 100%;
}
@media (forced-colors: active) {
  .gl-badge {
    border: 1px solid;
  }
}
.gl-badge .gl-badge-icon{
  height: var(--gl-spacing-scale-5);
  width: var(--gl-spacing-scale-5);
  flex-shrink: 0;
  top: auto;
}
.gl-badge .gl-badge-content {
  display: flex;
  justify-content: center;
  min-width: 0.5rem;
}

a.gl-badge.disabled {
  cursor: not-allowed;
}

/* Variants */
.gl-badge.badge-neutral {
  background-color: var(--gl-badge-neutral-background-color-default);
  color: var(--gl-badge-neutral-text-color-default);
}
.gl-badge.badge-neutral .gl-badge-icon {
  color: var(--gl-badge-neutral-icon-color-default);
  transition: inherit;
}

a.gl-badge.badge-neutral:not(.disabled):hover {
  color: var(--gl-badge-neutral-text-color-hover);
  background-color: var(--gl-badge-neutral-background-color-hover);
  box-shadow: inset 0 0 0 1px var(--gl-badge-neutral-border-color-hover);
  text-decoration-line: none;
}
a.gl-badge.badge-neutral:not(.disabled):hover .gl-badge-icon {
  color: var(--gl-badge-neutral-icon-color-hover);
}
a.gl-badge.badge-neutral:not(.disabled):focus-visible {
  color: var(--gl-badge-neutral-text-color-focus);
  background-color: var(--gl-badge-neutral-background-color-focus);
}
a.gl-badge.badge-neutral:not(.disabled):focus-visible .gl-badge-icon {
  color: var(--gl-badge-neutral-icon-color-focus);
}
a.gl-badge.badge-neutral:not(.disabled).active, a.gl-badge.badge-neutral:not(.disabled):active {
  color: var(--gl-badge-neutral-text-color-active);
  background-color: var(--gl-badge-neutral-background-color-active);
}
a.gl-badge.badge-neutral:not(.disabled).active .gl-badge-icon, a.gl-badge.badge-neutral:not(.disabled):active .gl-badge-icon {
  color: var(--gl-badge-neutral-icon-color-active);
}
a.gl-badge.badge-neutral:not(.disabled):active, a.gl-badge.badge-neutral:not(.disabled):focus-visible, a.gl-badge.badge-neutral:not(.disabled):focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-badge.badge-info {
  background-color: var(--gl-badge-info-background-color-default);
  color: var(--gl-badge-info-text-color-default);
}
.gl-badge.badge-info .gl-badge-icon {
  color: var(--gl-badge-info-icon-color-default);
  transition: inherit;
}

a.gl-badge.badge-info:not(.disabled):hover {
  color: var(--gl-badge-info-text-color-hover);
  background-color: var(--gl-badge-info-background-color-hover);
  box-shadow: inset 0 0 0 1px var(--gl-badge-info-border-color-hover);
  text-decoration-line: none;
}
a.gl-badge.badge-info:not(.disabled):hover .gl-badge-icon {
  color: var(--gl-badge-info-icon-color-hover);
}
a.gl-badge.badge-info:not(.disabled):focus-visible {
  color: var(--gl-badge-info-text-color-focus);
  background-color: var(--gl-badge-info-background-color-focus);
}
a.gl-badge.badge-info:not(.disabled):focus-visible .gl-badge-icon {
  color: var(--gl-badge-info-icon-color-focus);
}
a.gl-badge.badge-info:not(.disabled).active, a.gl-badge.badge-info:not(.disabled):active {
  color: var(--gl-badge-info-text-color-active);
  background-color: var(--gl-badge-info-background-color-active);
}
a.gl-badge.badge-info:not(.disabled).active .gl-badge-icon, a.gl-badge.badge-info:not(.disabled):active .gl-badge-icon {
  color: var(--gl-badge-info-icon-color-active);
}
a.gl-badge.badge-info:not(.disabled):active, a.gl-badge.badge-info:not(.disabled):focus-visible, a.gl-badge.badge-info:not(.disabled):focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-badge.badge-success {
  background-color: var(--gl-badge-success-background-color-default);
  color: var(--gl-badge-success-text-color-default);
}
.gl-badge.badge-success .gl-badge-icon {
  color: var(--gl-badge-success-icon-color-default);
  transition: inherit;
}

a.gl-badge.badge-success:not(.disabled):hover {
  color: var(--gl-badge-success-text-color-hover);
  background-color: var(--gl-badge-success-background-color-hover);
  box-shadow: inset 0 0 0 1px var(--gl-badge-success-border-color-hover);
  text-decoration-line: none;
}
a.gl-badge.badge-success:not(.disabled):hover .gl-badge-icon {
  color: var(--gl-badge-success-icon-color-hover);
}
a.gl-badge.badge-success:not(.disabled):focus-visible {
  color: var(--gl-badge-success-text-color-focus);
  background-color: var(--gl-badge-success-background-color-focus);
}
a.gl-badge.badge-success:not(.disabled):focus-visible .gl-badge-icon {
  color: var(--gl-badge-success-icon-color-focus);
}
a.gl-badge.badge-success:not(.disabled).active, a.gl-badge.badge-success:not(.disabled):active {
  color: var(--gl-badge-success-text-color-active);
  background-color: var(--gl-badge-success-background-color-active);
}
a.gl-badge.badge-success:not(.disabled).active .gl-badge-icon, a.gl-badge.badge-success:not(.disabled):active .gl-badge-icon {
  color: var(--gl-badge-success-icon-color-active);
}
a.gl-badge.badge-success:not(.disabled):active, a.gl-badge.badge-success:not(.disabled):focus-visible, a.gl-badge.badge-success:not(.disabled):focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-badge.badge-warning {
  background-color: var(--gl-badge-warning-background-color-default);
  color: var(--gl-badge-warning-text-color-default);
}
.gl-badge.badge-warning .gl-badge-icon {
  color: var(--gl-badge-warning-icon-color-default);
  transition: inherit;
}

a.gl-badge.badge-warning:not(.disabled):hover {
  color: var(--gl-badge-warning-text-color-hover);
  background-color: var(--gl-badge-warning-background-color-hover);
  box-shadow: inset 0 0 0 1px var(--gl-badge-warning-border-color-hover);
  text-decoration-line: none;
}
a.gl-badge.badge-warning:not(.disabled):hover .gl-badge-icon {
  color: var(--gl-badge-warning-icon-color-hover);
}
a.gl-badge.badge-warning:not(.disabled):focus-visible {
  color: var(--gl-badge-warning-text-color-focus);
  background-color: var(--gl-badge-warning-background-color-focus);
}
a.gl-badge.badge-warning:not(.disabled):focus-visible .gl-badge-icon {
  color: var(--gl-badge-warning-icon-color-focus);
}
a.gl-badge.badge-warning:not(.disabled).active, a.gl-badge.badge-warning:not(.disabled):active {
  color: var(--gl-badge-warning-text-color-active);
  background-color: var(--gl-badge-warning-background-color-active);
}
a.gl-badge.badge-warning:not(.disabled).active .gl-badge-icon, a.gl-badge.badge-warning:not(.disabled):active .gl-badge-icon {
  color: var(--gl-badge-warning-icon-color-active);
}
a.gl-badge.badge-warning:not(.disabled):active, a.gl-badge.badge-warning:not(.disabled):focus-visible, a.gl-badge.badge-warning:not(.disabled):focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-badge.badge-danger {
  background-color: var(--gl-badge-danger-background-color-default);
  color: var(--gl-badge-danger-text-color-default);
}
.gl-badge.badge-danger .gl-badge-icon {
  color: var(--gl-badge-danger-icon-color-default);
  transition: inherit;
}

a.gl-badge.badge-danger:not(.disabled):hover {
  color: var(--gl-badge-danger-text-color-hover);
  background-color: var(--gl-badge-danger-background-color-hover);
  box-shadow: inset 0 0 0 1px var(--gl-badge-danger-border-color-hover);
  text-decoration-line: none;
}
a.gl-badge.badge-danger:not(.disabled):hover .gl-badge-icon {
  color: var(--gl-badge-danger-icon-color-hover);
}
a.gl-badge.badge-danger:not(.disabled):focus-visible {
  color: var(--gl-badge-danger-text-color-focus);
  background-color: var(--gl-badge-danger-background-color-focus);
}
a.gl-badge.badge-danger:not(.disabled):focus-visible .gl-badge-icon {
  color: var(--gl-badge-danger-icon-color-focus);
}
a.gl-badge.badge-danger:not(.disabled).active, a.gl-badge.badge-danger:not(.disabled):active {
  color: var(--gl-badge-danger-text-color-active);
  background-color: var(--gl-badge-danger-background-color-active);
}
a.gl-badge.badge-danger:not(.disabled).active .gl-badge-icon, a.gl-badge.badge-danger:not(.disabled):active .gl-badge-icon {
  color: var(--gl-badge-danger-icon-color-active);
}
a.gl-badge.badge-danger:not(.disabled):active, a.gl-badge.badge-danger:not(.disabled):focus-visible, a.gl-badge.badge-danger:not(.disabled):focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-badge.badge-tier {
  background-color: var(--gl-badge-tier-background-color-default);
  color: var(--gl-badge-tier-text-color-default);
}
.gl-badge.badge-tier .gl-badge-icon {
  color: var(--gl-badge-tier-icon-color-default);
  transition: inherit;
}

a.gl-badge.badge-tier:not(.disabled):hover {
  color: var(--gl-badge-tier-text-color-hover);
  background-color: var(--gl-badge-tier-background-color-hover);
  box-shadow: inset 0 0 0 1px var(--gl-badge-tier-border-color-hover);
  text-decoration-line: none;
}
a.gl-badge.badge-tier:not(.disabled):hover .gl-badge-icon {
  color: var(--gl-badge-tier-icon-color-hover);
}
a.gl-badge.badge-tier:not(.disabled):focus-visible {
  color: var(--gl-badge-tier-text-color-focus);
  background-color: var(--gl-badge-tier-background-color-focus);
}
a.gl-badge.badge-tier:not(.disabled):focus-visible .gl-badge-icon {
  color: var(--gl-badge-tier-icon-color-focus);
}
a.gl-badge.badge-tier:not(.disabled).active, a.gl-badge.badge-tier:not(.disabled):active {
  color: var(--gl-badge-tier-text-color-active);
  background-color: var(--gl-badge-tier-background-color-active);
}
a.gl-badge.badge-tier:not(.disabled).active .gl-badge-icon, a.gl-badge.badge-tier:not(.disabled):active .gl-badge-icon {
  color: var(--gl-badge-tier-icon-color-active);
}
a.gl-badge.badge-tier:not(.disabled):active, a.gl-badge.badge-tier:not(.disabled):focus-visible, a.gl-badge.badge-tier:not(.disabled):focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.gl-button .gl-badge {
  top: 0;
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
}

.gl-new-dropdown-contents .gl-badge,
.gl-tab-nav-item .gl-badge{
  margin-top: calc(var(--gl-spacing-scale-1) * -1);
  margin-bottom: calc(var(--gl-spacing-scale-1) * -1);
}

.gl-breadcrumbs{
  display: flex;
}

.gl-breadcrumb-list{
  background-color: transparent;
  padding: var(--gl-spacing-scale-0);
  align-items: flex-start;
  line-height: 1rem;
  margin: var(--gl-spacing-scale-0);
  flex-wrap: nowrap;
  max-width: 100%;
}

.modal-header .modal-title.gl-breadcrumb-list {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-breadcrumb-item{
  display: inline-flex;
}

.commit-content .committer.gl-breadcrumb-item {
  gap: 0.5ch;
}

.gl-breadcrumb-item{
  align-items: center;
  line-height: 1rem;
  flex-shrink: 0;
}
.gl-breadcrumb-item:not(:last-child, :has(+ .gl-breadcrumb-clipboard-button))::after {
  color: var(--gl-breadcrumb-separator-color);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  content: "/";
}
.gl-breadcrumb-item > a{
  display: inline-block;
  border-radius: var(--gl-border-radius-default);
  color: var(--gl-text-color-subtle);
  text-underline-offset: var(--gl-spacing-scale-1);
}
.gl-breadcrumb-item > a:hover{
  text-decoration-line: underline;
}
.gl-breadcrumb-item > a:active, .gl-breadcrumb-item > a:focus-visible, .gl-breadcrumb-item > a:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-breadcrumb-item .gl-new-dropdown-icon-only.gl-button.btn-icon {
  min-height: auto;
}

.gl-breadcrumb-item:last-child > a,
.gl-breadcrumb-item:has(+ .gl-breadcrumb-clipboard-button) > a{
  color: var(--gl-text-color-default);
  font-weight: var(--gl-font-weight-bold);
}

.gl-breadcrumb-item-sm{
  font-size: var(--gl-font-size-sm);
  height: var(--gl-spacing-scale-6);
}

.gl-breadcrumb-item-md{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-breadcrumb-item-md{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-breadcrumb-item-md{
  height: var(--gl-spacing-scale-7);
}

.gl-breadcrumb-item {
  /**
   * If the last/only item, which is always visible, has a very long title,
   * it could overflow the breadcrumb component. This CSS makes sure it
   * shows an ellipsis instead.
   * But this CSS cannot be active while we do the size calculation, as that
   * would then not take the real unshrunk width of that item into account.
   */
}
.gl-breadcrumb-item.gl-breadcrumb-only-item{
  flex-shrink: 1;
  max-width: var(--gl-breadcrumb-truncated-item-max-width, 100%);
}
.gl-breadcrumb-item.gl-breadcrumb-only-item a{
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  text-wrap: nowrap;
}
.modal-header .modal-title.gl-breadcrumb-item.gl-breadcrumb-only-item a {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-breadcrumb-clipboard-button{
  line-height: 1rem;
  flex-shrink: 0;
}

.gl-banner{
  border-radius: var(--gl-feedback-border-radius);
  background-color: var(--gl-banner-promo-background-color);
  border-color: var(--gl-banner-promo-border-color);
}

.gl-banner-illustration{
  flex-shrink: 0;
  margin-right: var(--gl-spacing-scale-6);
}
.gl-banner-illustration img {
  max-width: 7.5rem;
}
@container (width < 768px) {
  :where(html.with-gl-container-queries) .gl-banner-illustration {
    display: none;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-banner-illustration {
    display: none;
  }
}

.gl-banner-title{
  font-weight: var(--gl-heading-scale-500-font-weight);
  margin-top: var(--gl-heading-scale-500-margin-top);
  font-size: var(--gl-heading-scale-500-font-size);
  letter-spacing: var(--gl-heading-scale-500-letter-spacing);
  line-height: var(--gl-heading-scale-500-line-height);
  color: var(--gl-heading-scale-500-color);
  margin-bottom: var(--gl-spacing-scale-3);
}

.gl-banner-close {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
}

.gl-banner-introduction {
  background-color: var(--gl-feedback-info-background-color);
  border-color: var(--gl-banner-intro-border-color);
}

/*
 * --gl-broadcast-message-padding-x
 *
 * Way to hook into spacing of gl-alert.
 * This is used e.g. for page wide containers
 * in GitLab.
 */
.gl-broadcast-message{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-broadcast-message{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-broadcast-message{
  line-height: var(--gl-line-height-20);
  padding-left: calc(1rem + var(--gl-broadcast-message-padding-x, 0px));
  padding-right: calc(0.75rem + var(--gl-broadcast-message-padding-x, 0px));
  padding-top: var(--gl-spacing-scale-5);
  padding-bottom: var(--gl-spacing-scale-5);
}
.gl-broadcast-message.indigo {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-indigo);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-indigo);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-indigo);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-indigo);
}
.gl-broadcast-message.light-indigo {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-lightindigo);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-lightindigo);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-lightindigo);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-lightindigo);
}
.gl-broadcast-message.blue {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-blue);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-blue);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-blue);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-blue);
}
.gl-broadcast-message.light-blue {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-lightblue);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-lightblue);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-lightblue);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-lightblue);
}
.gl-broadcast-message.green {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-green);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-green);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-green);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-green);
}
.gl-broadcast-message.light-green {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-lightgreen);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-lightgreen);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-lightgreen);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-lightgreen);
}
.gl-broadcast-message.red {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-red);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-red);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-red);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-red);
}
.gl-broadcast-message.light-red {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-lightred);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-lightred);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-lightred);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-lightred);
}
.gl-broadcast-message.dark {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-dark);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-dark);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-dark);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-dark);
}
.gl-broadcast-message.light {
  --gl-broadcast-message-bg-color: var(--gl-broadcast-banner-background-color-light);
  --gl-broadcast-message-border-color: var(--gl-broadcast-banner-border-color-light);
  --gl-broadcast-message-text-color: var(--gl-broadcast-banner-text-color-light);
  --gl-broadcast-message-icon-color: var(--gl-broadcast-banner-icon-color-light);
}
.gl-broadcast-message.banner {
  background-color: var(--gl-broadcast-message-bg-color);
  box-shadow: inset 0 -1px 0 0 var(--gl-broadcast-message-border-color);
  color: var(--gl-broadcast-message-text-color);
}
.gl-broadcast-message.banner .gl-broadcast-message-icon {
  color: var(--gl-broadcast-message-icon-color);
}
.gl-broadcast-message.notification{
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  --tw-shadow: var(--gl-shadow-md);
  --tw-shadow-colored: var(--gl-shadow-md);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  background-color: var(--gl-background-color-overlap);
  color: var(--gl-text-color-default);
  border-radius: var(--gl-broadcast-banner-border-radius);
  max-width: 18.75rem;
}
.gl-broadcast-message-content{
  display: flex;
  justify-content: center;
}
.gl-broadcast-message-content a{
  color: inherit;
  text-decoration-line: underline;
}
.gl-broadcast-message-content p:last-of-type{
  margin-bottom: var(--gl-spacing-scale-0);
}
.gl-broadcast-message-icon{
  margin-right: var(--gl-spacing-scale-5);
  line-height: 1rem;
}
.gl-broadcast-message-icon > svg{
  vertical-align: bottom;
}
.gl-broadcast-message-text {
  margin-top: -0.125rem;
  margin-bottom: -0.125rem;
  hyphens: auto;
  overflow-wrap: anywhere;
  word-break: normal;
}
.gl-broadcast-message-dismiss{
  margin-top: calc(var(--gl-spacing-scale-2) * -1);
  margin-bottom: calc(var(--gl-spacing-scale-2) * -1);
  margin-left: var(--gl-spacing-scale-5);
  color: inherit !important;
}

/*!
 * Pikaday
 * Copyright © 2014 David Bushell | BSD & MIT license | https://dbushell.com/
 */
.pika-single {
  z-index: 9999;
  display: block;
  position: relative;
  color: var(--gl-text-color-default);
  background: var(--gl-datepicker-background-color);
  border: 1px solid var(--gl-border-color-default);
  border-bottom-color: var(--gl-border-color-default);
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.pika-single.is-hidden {
  display: none;
}
.pika-single.is-bound {
  position: absolute;
  box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.5);
}

.pika-single {
  *zoom: 1;
}
.pika-single:before, .pika-single:after {
  content: " ";
  display: table;
}
.pika-single:after {
  clear: both;
}

.pika-lendar {
  float: left;
  width: 240px;
  margin: 8px;
}

.pika-title {
  position: relative;
  text-align: center;
}
.pika-title select {
  cursor: pointer;
  position: absolute;
  z-index: 9998;
  margin: 0;
  left: 0;
  top: 5px;
  filter: alpha(opacity=0);
  opacity: 0;
}

.pika-label {
  display: inline-block;
  *display: inline;
  position: relative;
  z-index: 9999;
  overflow: hidden;
  margin: 0;
  padding: 5px 3px;
  font-size: 14px;
  line-height: 20px;
  font-weight: bold;
  color: var(--gl-action-neutral-foreground-color-default);
  background-color: var(--gl-action-neutral-background-color-default);
}

.pika-prev,
.pika-next {
  display: block;
  cursor: pointer;
  position: relative;
  outline: none;
  border: 0;
  padding: 0;
  width: 20px;
  height: 30px;
  text-indent: 20px;
  white-space: nowrap;
  overflow: hidden;
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 75% 75%;
  opacity: 0.5;
  *position: absolute;
  *top: 0;
}
.pika-prev:hover,
.pika-next:hover {
  opacity: 1;
}
.pika-prev.is-disabled,
.pika-next.is-disabled {
  cursor: default;
  opacity: 0.2;
}

.pika-prev,
.is-rtl .pika-next {
  float: left;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");
  *left: 0;
}

.pika-next,
.is-rtl .pika-prev {
  float: right;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");
  *right: 0;
}

.pika-select {
  display: inline-block;
  *display: inline;
}

.pika-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 0;
}
.pika-table th,
.pika-table td {
  width: 14.2857142857%;
  padding: 0;
}
.pika-table th {
  color: var(--gl-text-color-subtle);
  font-size: 12px;
  line-height: 25px;
  font-weight: bold;
  text-align: center;
}
.pika-table abbr {
  border-bottom: none;
  cursor: help;
}

.pika-button {
  cursor: pointer;
  display: block;
  box-sizing: border-box;
  outline: none;
  border: 0;
  margin: 0;
  width: 100%;
  padding: 5px;
  color: var(--gl-text-color-default);
  font-size: 12px;
  line-height: 15px;
  text-align: right;
  background: transparent;
}
.is-today .pika-button {
  color: var(--gl-text-color-default);
  font-weight: bold;
}
.is-selected .pika-button {
  color: var(--gl-datepicker-date-text-color-selected);
  font-weight: bold;
  background: var(--gl-control-background-color-selected-default);
  box-shadow: inset 0 1px 3px var(--gl-control-background-color-selected-default);
  border-radius: 3px;
}
.is-disabled .pika-button, .is-outside-current-month .pika-button {
  color: var(--gl-text-color-disabled);
  opacity: 0.3;
}
.is-disabled .pika-button {
  pointer-events: none;
  cursor: default;
}
.pika-button:hover {
  color: var(--gl-text-color-default);
  background: transparent;
  box-shadow: none;
  border-radius: 3px;
}
.pika-button .is-selection-disabled {
  pointer-events: none;
  cursor: default;
}

.pika-week {
  font-size: 11px;
  color: var(--gl-text-color-subtle);
}

.is-inrange .pika-button {
  background: #D5E9F7;
}

.is-startrange .pika-button {
  color: #fff;
  background: #6CB31D;
  box-shadow: none;
  border-radius: 3px;
}

.is-endrange .pika-button {
  color: #fff;
  background: #33aaff;
  box-shadow: none;
  border-radius: 3px;
}

.gl-datepicker-actions{
  font-size: var(--gl-font-size-sm);
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  pointer-events: none;
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
}
.gl-datepicker-actions .gl-button.gl-button{
  border-radius: var(--gl-border-radius-md);
}

.gl-datepicker-theme{
  font-family: var(--gl-font-family-regular);
  border-style: none;
  margin-top: var(--gl-spacing-scale-3);
  border-radius: var(--gl-dropdown-border-radius);
  background-color: var(--gl-datepicker-background-color);
}
.gl-datepicker-theme.is-bound{
  --tw-shadow: var(--gl-shadow-md);
  --tw-shadow-colored: var(--gl-shadow-md);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
@media (forced-colors: active) {
  .gl-datepicker-theme.is-bound {
    border: 1px solid;
  }
}
.gl-datepicker-theme .pika-lendar{
  margin: var(--gl-spacing-scale-0);
  padding-top: var(--gl-spacing-scale-5);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  border-radius: var(--gl-border-radius-default);
}
.gl-datepicker-theme .pika-title{
  line-height: 1rem;
  margin-bottom: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
}
.gl-datepicker-theme .pika-next,
.gl-datepicker-theme .pika-prev{
  border-radius: .125rem;
  width: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
}
.gl-datepicker-theme .pika-next.is-disabled,
.gl-datepicker-theme .pika-prev.is-disabled{
  cursor: not-allowed;
}
@media (forced-colors: none) {
  .gl-datepicker-theme .pika-next,
  .gl-datepicker-theme .pika-prev {
    background-color: var(--gl-action-neutral-background-color-default);
    box-shadow: inset 0 0 0 1px var(--gl-action-neutral-border-color-default);
    background-image: none;
    opacity: 100%;
  }
  .gl-datepicker-theme .pika-next::before,
  .gl-datepicker-theme .pika-prev::before {
    /* Apply a slightly larger border-radius to the ::before pseudo-element
    to prevent background color shimmer issue in Safari.
    This is necessary because the parent element (which already has a border-radius)
    requires the ::before element to extend beyond its edges to ensure proper coverage. */
    border-radius: var(--gl-border-radius-lg);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--gl-action-neutral-foreground-color-default);
  }
  .gl-datepicker-theme .pika-next:not(.is-disabled):hover,
  .gl-datepicker-theme .pika-prev:not(.is-disabled):hover {
    background-color: var(--gl-action-neutral-background-color-hover);
  }
  .gl-datepicker-theme .pika-next:not(.is-disabled):hover::before,
  .gl-datepicker-theme .pika-prev:not(.is-disabled):hover::before {
    background-color: var(--gl-action-neutral-foreground-color-hover);
  }
  .gl-datepicker-theme .pika-next:not(.is-disabled):focus-visible,
  .gl-datepicker-theme .pika-prev:not(.is-disabled):focus-visible {
    background-color: var(--gl-action-neutral-background-color-focus);
  }
  .gl-datepicker-theme .pika-next:not(.is-disabled):focus-visible::before,
  .gl-datepicker-theme .pika-prev:not(.is-disabled):focus-visible::before {
    background-color: var(--gl-action-neutral-foreground-color-focus);
  }
  .gl-datepicker-theme .pika-next:not(.is-disabled):active,
  .gl-datepicker-theme .pika-prev:not(.is-disabled):active {
    background-color: var(--gl-action-neutral-background-color-active);
  }
  .gl-datepicker-theme .pika-next:not(.is-disabled):active::before,
  .gl-datepicker-theme .pika-prev:not(.is-disabled):active::before {
    background-color: var(--gl-action-neutral-foreground-color-active);
  }
  .gl-datepicker-theme .pika-next.is-disabled::before,
  .gl-datepicker-theme .pika-prev.is-disabled::before {
    background-color: var(--gl-action-disabled-foreground-color);
  }
}
@media (forced-colors: active) {
  .gl-datepicker-theme .pika-next,
  .gl-datepicker-theme .pika-prev {
    border: 1px solid;
  }
}
.gl-datepicker-theme .pika-next::before {
  mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path fill-rule="evenodd" d="M10.707 7.293a1 1 0 0 1 0 1.414l-3 3a1 1 0 0 1-1.414-1.414L8.586 8 6.293 5.707a1 1 0 0 1 1.414-1.414l3 3z"/></svg>');
}
@media (forced-colors: active) {
  .gl-datepicker-theme .pika-next {
    background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path fill-rule="evenodd" d="M10.707 7.293a1 1 0 0 1 0 1.414l-3 3a1 1 0 0 1-1.414-1.414L8.586 8 6.293 5.707a1 1 0 0 1 1.414-1.414l3 3z"/></svg>');
  }
}
.gl-datepicker-theme .pika-prev::before {
  mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 0 0 0 1.414l3 3a1 1 0 0 0 1.414-1.414L7.414 8l2.293-2.293a1 1 0 0 0-1.414-1.414l-3 3z"/></svg>');
}
@media (forced-colors: active) {
  .gl-datepicker-theme .pika-prev {
    background-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path fill-rule="evenodd" d="M5.293 7.293a1 1 0 0 0 0 1.414l3 3a1 1 0 0 0 1.414-1.414L7.414 8l2.293-2.293a1 1 0 0 0-1.414-1.414l-3 3z"/></svg>');
  }
}
.gl-datepicker-theme .pika-label{
  border-radius: .125rem;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-datepicker-theme .pika-label{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-datepicker-theme .pika-label{
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  background-color: var(--gl-action-neutral-background-color-default);
  box-shadow: inset 0 0 0 1px var(--gl-action-neutral-border-color-default);
  color: var(--gl-action-neutral-foreground-color-default);
}
.gl-datepicker-theme .pika-label:hover {
  background-color: var(--gl-action-neutral-background-color-hover);
  box-shadow: inset 0 0 0 1px var(--gl-action-neutral-border-color-hover);
  color: var(--gl-action-neutral-foreground-color-hover);
}
@media (forced-colors: active) {
  .gl-datepicker-theme .pika-label {
    border: 1px solid;
  }
}
.gl-datepicker-theme .pika-select {
  top: 0;
  height: var(--gl-spacing-scale-5);
}
.gl-datepicker-theme th{
  padding-bottom: var(--gl-spacing-scale-3);
  font-weight: var(--gl-font-weight-bold);
  line-height: 1rem;
}
.gl-datepicker-theme abbr[title]{
  text-decoration-line: none;
  cursor: default;
}
.gl-datepicker-theme .pika-button {
  border-radius: var(--gl-action-border-radius);
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-2);
  text-align: center;
  line-height: 1rem;
  width: var(--gl-spacing-scale-7);
  height: var(--gl-spacing-scale-7);
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-datepicker-theme .pika-button{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-datepicker-theme .pika-button{
  border-width: 1px;
  border-style: solid;
  border-color: var(--gl-border-color-transparent);
}
.gl-datepicker-theme .pika-button:hover {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-hover);
}
@media (forced-colors: active) {
  .gl-datepicker-theme .pika-button {
    border: 1px solid;
  }
}
.gl-datepicker-theme .is-today > .pika-button{
  font-weight: var(--gl-font-weight-bold);
  border-color: var(--gl-border-color-strong);
}
.gl-datepicker-theme .is-selected > .pika-button{
  font-weight: var(--gl-font-weight-normal);
}
.gl-datepicker-theme .is-selected > .pika-button:hover {
  background-color: var(--gl-control-background-color-selected-hover);
  color: var(--gl-datepicker-date-text-color-selected);
  box-shadow: none;
}
.gl-datepicker-theme .is-selected.is-today > .pika-button{
  font-weight: var(--gl-font-weight-bold);
  border-color: var(--gl-border-color-transparent);
}
.gl-datepicker-theme .is-disabled{
  cursor: not-allowed;
}

.gl-daterange-picker{
  line-height: 1rem;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-daterange-picker{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-daterange-picker{
  font-family: var(--gl-font-family-regular);
}
.gl-daterange-picker label{
  font-weight: var(--gl-font-weight-bold);
  color: var(--gl-text-color-strong);
}
.gl-daterange-picker .gl-daterange-picker-indicator{
  display: flex;
  flex-direction: row;
  align-items: center;
  align-self: flex-end;
  gap: var(--gl-spacing-scale-3);
  height: var(--gl-spacing-scale-7);
  color: var(--gl-text-color-subtle);
}

.gl-drawer{
  background-color: var(--gl-background-color-overlap);
  right: 0;
  transition-property: all;
  transition-timing-function: ease;
  transition-duration: 200ms;
  position: fixed;
  height: 100%;
  width: 100%;
}

 .modal-header .modal-title.gl-drawer {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-drawer{
  overflow-y: auto;
  --tw-shadow: var(--gl-shadow-lg);
  --tw-shadow-colored: var(--gl-shadow-lg);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-drawer{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-drawer{
  line-height: 1rem;
  display: flex;
  flex-direction: column;
  border-top-left-radius: var(--gl-drawer-border-radius);
  border-bottom-left-radius: var(--gl-drawer-border-radius);
}
.gl-drawer .gl-drawer-header-sticky{
  background-color: var(--gl-background-color-overlap);
  top: 0;
  position: sticky;
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-drawer-default {
    width: 400px;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-drawer-default {
    width: 400px;
  }
}
.gl-drawer-default .gl-drawer-header,
.gl-drawer-default .gl-drawer-body > *{
  padding: var(--gl-spacing-scale-5);
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-drawer-sidebar {
    width: 290px;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-drawer-sidebar {
    width: 290px;
  }
}
.gl-drawer-sidebar .gl-drawer-header,
.gl-drawer-sidebar .gl-drawer-body > *{
  padding-top: var(--gl-spacing-scale-5);
  padding-bottom: var(--gl-spacing-scale-5);
}
.gl-drawer-sidebar .gl-drawer-body > *{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  margin-left: var(--gl-spacing-scale-5);
  margin-right: var(--gl-spacing-scale-5);
}
.gl-drawer-sidebar .gl-drawer-body > *:last-child{
  border-style: none;
}
.gl-drawer-sidebar .gl-drawer-header{
  padding-left: var(--gl-spacing-scale-5);
  padding-right: var(--gl-spacing-scale-5);
}

.gl-drawer-footer{
  background-color: var(--gl-background-color-overlap);
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  padding: var(--gl-spacing-scale-5);
}

.gl-drawer-body-scrim-on-footer::before {
  background: linear-gradient(to bottom, var(--gl-color-alpha-0), var(--gl-background-color-overlap));
  top: -1px;
  --tw-translate-y: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  content: "";
  left: 0;
  position: absolute;
  pointer-events: none;
  width: 100%;
}

 .modal-header .modal-title.gl-drawer-body-scrim-on-footer::before {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-drawer-body-scrim-on-footer::before{
  height: var(--gl-spacing-scale-7);
}

.gl-drawer-footer-sticky {
  bottom: 0;
  position: sticky;
}

.gl-drawer-header{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}

.gl-drawer-title{
  color: var(--gl-text-color-heading);
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.gl-drawer-title svg{
  width: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
  vertical-align: middle;
}

.gl-drawer-close-button{
  align-self: flex-start;
  background-color: transparent;
  border-style: none;
}

.gl-drawer-body{
  flex-grow: 1;
  background-color: inherit;
}

.gl-drawer-body-shrink {
  overflow-y: auto;
}

.gl-drawer-body-scrim::after {
  background: linear-gradient(to bottom, var(--gl-color-alpha-0), var(--gl-background-color-overlap));
  content: "";
  bottom: 0;
  pointer-events: none;
  width: 100%;
}

 .modal-header .modal-title.gl-drawer-body-scrim::after {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-drawer-body-scrim::after {
  position: fixed;
  height: var(--gl-spacing-scale-7);
  border-bottom-left-radius: var(--gl-drawer-border-radius);
}

.gl-drawer-enter-to{
  --tw-translate-x: var(--gl-spacing-scale-0);
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.gl-drawer-enter,
.gl-drawer-leave-to{
  --tw-translate-x: 100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.gl-drawer-enter-active,
.gl-drawer-leave-active{
  transition-property: all;
  transition-timing-function: ease;
  transition-duration: 200ms;
}

.gl-dropdown .dropdown-menu{
  border-width: 1px;
  border-color: var(--gl-dropdown-border-color);
  background-color: var(--gl-dropdown-background-color);
  margin-top: var(--gl-spacing-scale-2);
  margin-bottom: var(--gl-spacing-scale-2);
  padding: var(--gl-spacing-scale-0);
  --tw-shadow: 0 2px 4px 0 #0000001a;
  --tw-shadow-colored: 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  border-radius: var(--gl-dropdown-border-radius);
  width: 15rem;
}
.gl-dropdown .dropdown-menu .gl-search-box-by-type{
  margin: var(--gl-spacing-scale-3);
}
.gl-dropdown .dropdown-menu li{
  padding: var(--gl-spacing-scale-0);
}
.gl-dropdown .gl-dropdown-inner{
  display: flex;
  flex-direction: column;
  max-height: 19.5rem;
}
.gl-dropdown .gl-dropdown-inner > :first-child{
  padding-top: var(--gl-spacing-scale-3);
}
.gl-dropdown .gl-dropdown-inner > :last-child{
  padding-bottom: var(--gl-spacing-scale-3);
}
.gl-dropdown .gl-dropdown-contents{
  flex-grow: 1;
  overflow-y: auto;
}
.gl-dropdown .gl-dropdown-header-top{
  border-width: 1px;
  border-color: var(--gl-dropdown-divider-color);
  border-bottom-style: solid;
  display: flex;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-dropdown .gl-dropdown-header-top{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-dropdown .gl-dropdown-header-top{
  color: var(--gl-text-color-strong);
  font-weight: var(--gl-font-weight-bold);
  justify-content: center;
  line-height: 1rem;
  margin: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-5);
  padding-right: var(--gl-spacing-scale-5);
}
.gl-dropdown .gl-dropdown-header{
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-dropdown-divider-color);
  border-bottom-style: solid;
}
.gl-dropdown .gl-dropdown-footer{
  border-top-width: 1px;
  border-top-color: var(--gl-dropdown-divider-color);
  border-top-style: solid;
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
}
.gl-dropdown .dropdown-toggle::after{
  display: none;
}
.gl-dropdown .dropdown-toggle.gl-button, .gl-dropdown .dropdown-toggle.gl-button.btn-block{
  padding-right: var(--gl-spacing-scale-3);
}
.gl-dropdown .dropdown-toggle.gl-button.btn-sm, .gl-dropdown .btn-group-sm > .dropdown-toggle.gl-button.btn, .gl-dropdown .dropdown-toggle.gl-button.btn-block.btn-sm{
  padding-right: var(--gl-spacing-scale-2);
}
.gl-dropdown .dropdown-toggle.dropdown-toggle-no-caret, .gl-dropdown .dropdown-toggle.dropdown-toggle-no-caret.btn-sm{
  padding: var(--gl-spacing-scale-3);
}
.gl-dropdown .dropdown-toggle.dropdown-toggle-no-caret .dropdown-chevron, .gl-dropdown .dropdown-toggle.dropdown-toggle-no-caret.btn-sm .dropdown-chevron {
  display: none;
}
.gl-dropdown .dropdown-toggle-split::after{
  border-width: 0px;
  content: "";
  display: block;
  width: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
  background-color: currentColor;
  mask-image: url('data:image/svg+xml;utf8,<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><path fill-rule="evenodd" d="M7.293 10.707a1 1 0 0 0 1.414 0l3-3a1 1 0 0 0-1.414-1.414L8 8.586 5.707 6.293a1 1 0 0 0-1.414 1.414l3 3z"/></svg>');
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: cover;
}
.gl-dropdown .dropdown-toggle-split.gl-button{
  padding-left: var(--gl-spacing-scale-0);
  padding-right: var(--gl-spacing-scale-0);
}
.gl-dropdown .dropdown-toggle-split.gl-button.btn-sm, .gl-dropdown .btn-group-sm > .dropdown-toggle-split.gl-button.btn{
  padding-left: var(--gl-spacing-scale-0);
  padding-right: var(--gl-spacing-scale-0);
}
.gl-dropdown .gl-dropdown-toggle.btn-block{
  justify-content: space-between;
}
.gl-dropdown .gl-dropdown-toggle .gl-button-text{
  display: inline-flex;
}
.commit-content .committer.gl-dropdown .gl-dropdown-toggle .gl-button-text {
  gap: 0.5ch;
}
.gl-dropdown .gl-dropdown-button-text{
  margin-right: auto;
  overflow: hidden;
  text-overflow: ellipsis;
}
.gl-dropdown.dropdown.show .dropdown-toggle-split{
  border-top-left-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
}
.gl-dropdown.dropdown.btn-sm .gl-icon, .btn-group-sm > .gl-dropdown.dropdown.btn .gl-icon{
  margin-top: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-0);
}
.gl-dropdown.dropdown.btn-sm .gl-icon.dropdown-chevron, .btn-group-sm > .gl-dropdown.dropdown.btn .gl-icon.dropdown-chevron{
  height: var(--gl-spacing-scale-5);
  width: var(--gl-spacing-scale-5);
}
.gl-dropdown.dropdown .gl-button .dropdown-chevron,
.gl-dropdown.dropdown .gl-button.btn-block .dropdown-chevron,
.gl-dropdown.dropdown .dropdown-chevron{
  margin-left: var(--gl-spacing-scale-2);
  margin-right: var(--gl-spacing-scale-0);
}
.gl-dropdown .dropdown-icon{
  margin-right: var(--gl-spacing-scale-2);
}
.gl-dropdown .dropdown-icon-text,
.gl-dropdown .dropdown-icon-only{
  padding-left: var(--gl-spacing-scale-3);
}
.gl-dropdown .dropdown-icon-only.dropdown-toggle-no-caret {
  padding: 0 !important;
}
.gl-dropdown .dropdown-icon-only .dropdown-icon,
.gl-dropdown .dropdown-icon-only .gl-button-icon.gl-button-icon{
  margin-right: var(--gl-spacing-scale-0);
}
.gl-dropdown .dropdown-icon-only.btn-sm .dropdown-chevron, .gl-dropdown .btn-group-sm > .dropdown-icon-only.btn .dropdown-chevron{
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
}
.gl-dropdown .split-content-button{
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
}
.gl-dropdown .icon-split-content-button{
  padding-left: var(--gl-spacing-scale-3);
}
.gl-dropdown .icon-split-content-button .dropdown-icon{
  margin-right: var(--gl-spacing-scale-0);
}

/* Styling when the component is used on its own */
.gl-dropdown-divider{
  overflow: hidden;
  height: var(--gl-spacing-scale-0);
  margin-top: var(--gl-spacing-scale-2);
  margin-bottom: var(--gl-spacing-scale-2);
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
  padding: var(--gl-spacing-scale-0);
  border-top-width: 1px;
  border-top-color: var(--gl-dropdown-divider-color);
  border-top-style: solid;
}

/* Styling to override the vue-bootstrap CSS included in GitLab CSS */
.gl-dropdown .gl-dropdown-divider{
  overflow: hidden;
  height: var(--gl-spacing-scale-0);
  margin-top: var(--gl-spacing-scale-2);
  margin-bottom: var(--gl-spacing-scale-2);
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
  padding: var(--gl-spacing-scale-0);
  border-top-width: 1px;
  border-top-color: var(--gl-dropdown-divider-color);
  border-top-style: solid;
}

/* Styling when the component is used on its own */
.gl-dropdown-section-header .dropdown-header{
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-dropdown-section-header .dropdown-header{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-dropdown-section-header .dropdown-header{
  color: var(--gl-text-color-strong);
  line-height: 1rem;
  text-align: left;
  font-weight: var(--gl-font-weight-bold);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  white-space: normal;
}

/* Styling to override the vue-bootstrap CSS included in GitLab CSS */
.gl-dropdown .gl-dropdown-section-header .dropdown-header{
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-dropdown .gl-dropdown-section-header .dropdown-header{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-dropdown .gl-dropdown-section-header .dropdown-header{
  color: var(--gl-text-color-strong);
  line-height: 1rem;
  text-align: left;
  font-weight: var(--gl-font-weight-bold);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  white-space: normal;
}

.gl-dropdown-item .dropdown-item{
  align-items: center;
  background-color: transparent;
  border-width: 0px;
  display: flex;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-dropdown-item .dropdown-item{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-dropdown-item .dropdown-item{
  font-weight: var(--gl-font-weight-normal);
  line-height: 1rem;
  padding-left: var(--gl-spacing-scale-5);
  padding-right: var(--gl-spacing-scale-5);
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  position: relative;
  border-radius: var(--gl-border-radius-none);
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  color: var(--gl-dropdown-option-text-color-default);
  text-align: left;
  width: 100%;
}

 .modal-header .modal-title.gl-dropdown-item .dropdown-item {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-dropdown-item .dropdown-item{
  white-space: normal;
  cursor: pointer;
}
.gl-dropdown-item .dropdown-item .gl-avatar{
  flex-shrink: 0;
  margin-right: var(--gl-spacing-scale-3);
}
.gl-dropdown-item .dropdown-item .gl-dropdown-item-check-icon{
  flex-shrink: 0;
  margin-right: var(--gl-spacing-scale-3);
  color: var(--gl-dropdown-option-indicator-color-selected-default);
}
.gl-dropdown-item .dropdown-item .gl-dropdown-item-icon{
  flex-shrink: 0;
  margin-right: var(--gl-spacing-scale-3);
}
.gl-dropdown-item .dropdown-item .gl-dropdown-item-text-primary{
  margin: var(--gl-spacing-scale-0);
}
.gl-dropdown-item .dropdown-item .gl-dropdown-item-text-secondary{
  margin: var(--gl-spacing-scale-0);
  color: var(--gl-text-color-subtle);
}
.gl-dropdown-item .dropdown-item .gl-dropdown-item-text-wrapper{
  min-width: var(--gl-spacing-scale-0);
  flex-grow: 1;
  margin-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
}
.gl-dropdown-item .dropdown-item.text-danger{
  color: var(--gl-text-color-danger);
}
.gl-dropdown-item .dropdown-item.disable-hover{
  text-decoration-line: none;
}
.gl-dropdown-item .dropdown-item:disabled{
  color: var(--gl-text-color-disabled);
}
.gl-dropdown-item .dropdown-item:disabled .gl-new-dropdown-item-check-icon{
  color: inherit;
}
.gl-dropdown-item .dropdown-item:disabled .gl-new-dropdown-item-text-secondary{
  color: inherit;
}
.gl-dropdown-item .dropdown-item:disabled .gl-avatar{
  opacity: var(--gl-opacity-7);
}
.gl-dropdown-item .dropdown-item:not(.disable-hover):hover, .gl-dropdown-item .dropdown-item:active, .gl-dropdown-item .dropdown-item:focus-visible, .gl-dropdown-item .dropdown-item.is-focused {
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
  text-decoration-line: none;
  color: var(--gl-dropdown-option-text-color-default);
}
.gl-dropdown-item .dropdown-item:not(.disable-hover):hover.text-danger, .gl-dropdown-item .dropdown-item:active.text-danger, .gl-dropdown-item .dropdown-item:focus-visible.text-danger, .gl-dropdown-item .dropdown-item.is-focused.text-danger{
  color: var(--gl-text-color-danger);
}
.gl-dropdown-item .dropdown-item:active, .gl-dropdown-item .dropdown-item:focus-visible, .gl-dropdown-item .dropdown-item:focus-visible:active {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-dropdown-item .dropdown-item:active, .gl-dropdown-item .dropdown-item:focus-visible, .gl-dropdown-item .dropdown-item:focus-visible:active {
    outline: 2px solid LinkText;
  }
}

.gl-dropdown-text .b-dropdown-text{
  align-items: center;
  background-color: transparent;
  border-width: 0px;
  display: flex;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-dropdown-text .b-dropdown-text{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-dropdown-text .b-dropdown-text{
  font-weight: var(--gl-font-weight-normal);
  line-height: 1rem;
  padding-left: var(--gl-spacing-scale-5);
  padding-right: var(--gl-spacing-scale-5);
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  position: relative;
  border-radius: var(--gl-border-radius-none);
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  color: var(--gl-dropdown-option-text-color-default);
  text-align: left;
  width: 100%;
}

 .modal-header .modal-title.gl-dropdown-text .b-dropdown-text {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-dropdown-text .b-dropdown-text{
  white-space: normal;
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
}

.gl-filtered-search-scrollable-container{
  display: flex;
  flex-grow: 1;
  flex-basis: var(--gl-spacing-scale-0);
  overflow: hidden;
  align-items: center;
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-2);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-7);
  border-style: none;
  border-radius: var(--gl-control-border-radius);
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-default);
  background-color: var(--gl-control-background-color-default);
}
.input-group-prepend + .gl-filtered-search-scrollable-container{
  border-top-left-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
}

.gl-filtered-search-scrollable-container-with-search-button{
  border-top-right-radius: var(--gl-border-radius-none);
  border-bottom-right-radius: var(--gl-border-radius-none);
}

.gl-filtered-search-scrollable{
  display: flex;
  overflow-y: auto;
  width: 100%;
}

 .modal-header .modal-title.gl-filtered-search-scrollable {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-filtered-search-item{
  display: flex;
  padding-left: var(--gl-spacing-scale-1);
  padding-right: var(--gl-spacing-scale-1);
}
.gl-filtered-search-item:first-child{
  padding-left: var(--gl-spacing-scale-0);
}

.gl-filtered-search-last-item .gl-filtered-search-term-value{
  height: 100%;
  width: 100%;
}

 .modal-header .modal-title.gl-filtered-search-last-item .gl-filtered-search-term-value {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-filtered-search-last-item .gl-filtered-search-term-value{
  align-items: center;
}
.gl-filtered-search-last-item{
  flex-grow: 1;
  padding: var(--gl-spacing-scale-0);
  padding-left: var(--gl-spacing-scale-1);
  height: var(--gl-spacing-scale-6);
  min-width: 5rem;
}

.gl-filtered-search-view-only {
  background: var(--gl-control-background-color-disabled);
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-disabled);
}

.gl-filtered-search-suggestion{
  padding: var(--gl-spacing-scale-0);
}

.gl-filtered-search-suggestion-active {
  background-color: var(--gl-dropdown-option-background-color-selected-default);
  text-decoration-line: none;
  color: var(--gl-dropdown-option-text-color-default);
  outline: 2px solid transparent;
  outline-offset: 2px;
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-filtered-search-suggestion-active {
    outline: 2px solid LinkText;
  }
}

.gl-filtered-search-suggestion-list.dropdown-menu{
  display: block;
  width: 15rem;
  padding: var(--gl-spacing-scale-2);
  background-color: var(--gl-dropdown-background-color);
  border-color: var(--gl-dropdown-border-color);
  border-radius: var(--gl-border-radius-lg);
  --tw-shadow: var(--gl-shadow-md);
  --tw-shadow-colored: var(--gl-shadow-md);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.gl-filtered-search-suggestion-list {
  position: absolute;
  overflow-y: auto;
  max-height: 19.5rem;
}
.gl-filtered-search-suggestion-list .gl-filtered-search-suggestion,
.gl-filtered-search-suggestion-list .gl-filtered-search-suggestion > a,
.gl-filtered-search-suggestion-list .gl-filtered-search-suggestion > button{
  border-radius: var(--gl-border-radius-default) !important;
}
.gl-filtered-search-suggestion-list .gl-dropdown-divider{
  margin-left: calc(var(--gl-spacing-scale-2) * -1);
  margin-right: calc(var(--gl-spacing-scale-2) * -1);
}
.gl-filtered-search-suggestion-list .gl-spinner-container{
  margin-top: var(--gl-spacing-scale-2);
  margin-bottom: var(--gl-spacing-scale-2);
}
.gl-filtered-search-suggestion-list .gl-filtered-search-suggestion{
  padding: var(--gl-spacing-scale-0);
}

.gl-filtered-search-term .gl-filtered-search-term-token{
  cursor: text;
}

.gl-filtered-search-term-input{
  padding: var(--gl-spacing-scale-0);
  background-color: transparent;
  border-style: none;
  outline: 2px solid transparent;
  outline-offset: 2px;
  height: var(--gl-spacing-scale-6);
  width: 100%;
}

 .modal-header .modal-title.gl-filtered-search-term-input {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-filtered-search-term-input {
  min-width: 15rem;
}

.gl-filtered-search-term-icon{
  margin-right: var(--gl-spacing-scale-2);
}

.gl-filtered-search-token.gl-filtered-search-token-active{
  cursor: default;
}
.gl-filtered-search-token{
  height: var(--gl-spacing-scale-6);
  display: inline-flex;
}
.commit-content .committer.gl-filtered-search-token {
  gap: 0.5ch;
}
.gl-filtered-search-token{
  white-space: nowrap;
  cursor: pointer;
}
.gl-filtered-search-token.gl-filtered-search-token-hover:hover .gl-filtered-search-token-type {
  background-color: var(--gl-filtered-search-token-type-background-color-hover);
}
.gl-filtered-search-token.gl-filtered-search-token-hover:hover .gl-filtered-search-token-data {
  background-color: var(--gl-filtered-search-token-data-background-color-hover);
}
.gl-filtered-search-token.gl-filtered-search-token-hover:hover .gl-filtered-search-token-operator {
  background-color: var(--gl-filtered-search-token-operator-background-color-hover);
}

.gl-token{
  border-radius: var(--gl-border-radius-none);
}
.gl-token.gl-filtered-search-token-type{
  height: var(--gl-spacing-scale-6);
  border-top-right-radius: var(--gl-border-radius-none);
  border-bottom-right-radius: var(--gl-border-radius-none);
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-2);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  margin-right: var(--gl-spacing-scale-1);
  background-color: var(--gl-filtered-search-token-type-background-color-default);
}
.gl-token.gl-filtered-search-token-operator{
  height: var(--gl-spacing-scale-6);
  margin-right: var(--gl-spacing-scale-1);
  border-radius: var(--gl-border-radius-none);
  background-color: var(--gl-filtered-search-token-operator-background-color-default);
}
.gl-token.gl-filtered-search-token-data{
  height: var(--gl-spacing-scale-6);
  background-color: var(--gl-filtered-search-token-data-background-color-default);
  border-top-right-radius: var(--gl-token-border-radius);
  border-bottom-right-radius: var(--gl-token-border-radius);
}
.gl-token.gl-filtered-search-token-data .gl-filtered-search-token-data-content{
  display: inline-flex;
}
.commit-content .committer.gl-token.gl-filtered-search-token-data .gl-filtered-search-token-data-content {
  gap: 0.5ch;
}

.gl-filtered-search-token-operator-description{
  color: var(--gl-text-color-subtle);
  margin-left: auto;
}

.gl-filtered-search-token-segment{
  display: inline-flex;
}

.commit-content .committer.gl-filtered-search-token-segment {
  gap: 0.5ch;
}

.gl-filtered-search-token-segment{
  align-items: center;
  width: 100%;
}

 .modal-header .modal-title.gl-filtered-search-token-segment {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-filtered-search-token-segment{
  height: var(--gl-spacing-scale-6);
  white-space: nowrap;
  cursor: pointer;
}
.gl-filtered-search-token-segment.gl-filtered-search-token-segment-active{
  cursor: default;
}

.gl-filtered-search-token-segment-input{
  padding: var(--gl-spacing-scale-0);
  height: 100%;
  background-color: transparent;
  border-style: none;
  outline: 2px solid transparent;
  outline-offset: 2px;
  min-width: 15rem;
}

.gl-filtered-search-token-segment-input.gl-form-date input:not(.form-control-plaintext){
  border-radius: var(--gl-border-radius-none);
  padding: var(--gl-spacing-scale-0);
  height: 100%;
  background-color: transparent;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  width: auto;
}
.gl-filtered-search-token-segment-input.gl-form-date input:not(.form-control-plaintext):hover, .gl-filtered-search-token-segment-input.gl-form-date input:not(.form-control-plaintext):focus{
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.gl-filtered-search-token-segment-input-disabled {
  background: var(--gl-control-background-color-disabled);
}

.gl-filtered-search-token-segment-icon{
  margin-right: var(--gl-spacing-scale-2);
}

.gl-form-date input::-webkit-datetime-edit {
  line-height: 1;
  padding: 0;
  margin-bottom: -2px;
}

input[type=color].form-control {
  height: 32px;
  padding: 0.125rem 0.25rem;
}

input[type=color].form-control.form-control-sm,
.input-group-sm input[type=color].form-control {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.125rem 0.25rem;
}

input[type=color].form-control.form-control-lg,
.input-group-lg input[type=color].form-control {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.125rem 0.25rem;
}

input[type=color].form-control:disabled {
  background-color: #747273;
  opacity: 0.65;
}

.input-group > .custom-range {
  position: relative;
  flex: 1 1 auto;
  width: 1%;
  margin-bottom: 0;
}
.input-group > .custom-range + .form-control,
.input-group > .custom-range + .form-control-plaintext,
.input-group > .custom-range + .custom-select,
.input-group > .custom-range + .custom-range,
.input-group > .custom-range + .custom-file {
  margin-left: -1px;
}
.input-group > .form-control + .custom-range,
.input-group > .form-control-plaintext + .custom-range,
.input-group > .custom-select + .custom-range,
.input-group > .custom-range + .custom-range,
.input-group > .custom-file + .custom-range {
  margin-left: -1px;
}
.input-group > .custom-range:focus {
  z-index: 3;
}
.input-group > .custom-range:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .custom-range:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
.input-group > .custom-range {
  padding: 0 0.75rem;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #8a8888;
  height: 32px;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
  .input-group > .custom-range {
    transition: none;
  }
}
.input-group > .custom-range:focus {
  color: #3a383d;
  background-color: #fff;
  border-color: rgb(127.5, 189, 255);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.input-group > .custom-range:disabled, .input-group > .custom-range[readonly] {
  background-color: #f7f7f5;
}

.input-group-lg > .custom-range {
  height: calc(1.5em + 1rem + 2px);
  padding: 0 1rem;
  border-radius: 0.3rem;
}

.input-group-sm > .custom-range {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0 0.5rem;
  border-radius: 0.2rem;
}

.was-validated .input-group .custom-range:valid, .input-group .custom-range.is-valid {
  border-color: #0c7265;
}
.was-validated .input-group .custom-range:valid:focus, .input-group .custom-range.is-valid:focus {
  border-color: #0c7265;
  box-shadow: 0 0 0 0.2rem rgba(12, 114, 101, 0.25);
}

.was-validated .custom-range:valid:focus::-webkit-slider-thumb, .custom-range.is-valid:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgb(69.0714285714, 235.4285714286, 214.2261904762);
}
.was-validated .custom-range:valid:focus::-moz-range-thumb, .custom-range.is-valid:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgb(69.0714285714, 235.4285714286, 214.2261904762);
}
.was-validated .custom-range:valid:focus::-ms-thumb, .custom-range.is-valid:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgb(69.0714285714, 235.4285714286, 214.2261904762);
}
.was-validated .custom-range:valid::-webkit-slider-thumb, .custom-range.is-valid::-webkit-slider-thumb {
  background-color: #0c7265;
  background-image: none;
}
.was-validated .custom-range:valid::-webkit-slider-thumb:active, .custom-range.is-valid::-webkit-slider-thumb:active {
  background-color: rgb(69.0714285714, 235.4285714286, 214.2261904762);
  background-image: none;
}
.was-validated .custom-range:valid::-webkit-slider-runnable-track, .custom-range.is-valid::-webkit-slider-runnable-track {
  background-color: rgba(12, 114, 101, 0.35);
}
.was-validated .custom-range:valid::-moz-range-thumb, .custom-range.is-valid::-moz-range-thumb {
  background-color: #0c7265;
  background-image: none;
}
.was-validated .custom-range:valid::-moz-range-thumb:active, .custom-range.is-valid::-moz-range-thumb:active {
  background-color: rgb(69.0714285714, 235.4285714286, 214.2261904762);
  background-image: none;
}
.was-validated .custom-range:valid::-moz-range-track, .custom-range.is-valid::-moz-range-track {
  background: rgba(12, 114, 101, 0.35);
}
.was-validated .custom-range:valid ~ .valid-feedback,
.was-validated .custom-range:valid ~ .valid-tooltip, .custom-range.is-valid ~ .valid-feedback,
.custom-range.is-valid ~ .valid-tooltip {
  display: block;
}
.was-validated .custom-range:valid::-ms-thumb, .custom-range.is-valid::-ms-thumb {
  background-color: #0c7265;
  background-image: none;
}
.was-validated .custom-range:valid::-ms-thumb:active, .custom-range.is-valid::-ms-thumb:active {
  background-color: rgb(69.0714285714, 235.4285714286, 214.2261904762);
  background-image: none;
}
.was-validated .custom-range:valid::-ms-track-lower, .custom-range.is-valid::-ms-track-lower {
  background: rgba(12, 114, 101, 0.35);
}
.was-validated .custom-range:valid::-ms-track-upper, .custom-range.is-valid::-ms-track-upper {
  background: rgba(12, 114, 101, 0.35);
}

.was-validated .input-group .custom-range:invalid, .input-group .custom-range.is-invalid {
  border-color: #c52042;
}
.was-validated .input-group .custom-range:invalid:focus, .input-group .custom-range.is-invalid:focus {
  border-color: #c52042;
  box-shadow: 0 0 0 0.2rem rgba(197, 32, 66, 0.25);
}

.was-validated .custom-range:invalid:focus::-webkit-slider-thumb, .custom-range.is-invalid:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgb(240.6768558952, 166.8231441048, 182.0414847162);
}
.was-validated .custom-range:invalid:focus::-moz-range-thumb, .custom-range.is-invalid:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgb(240.6768558952, 166.8231441048, 182.0414847162);
}
.was-validated .custom-range:invalid:focus::-ms-thumb, .custom-range.is-invalid:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgb(240.6768558952, 166.8231441048, 182.0414847162);
}
.was-validated .custom-range:invalid::-webkit-slider-thumb, .custom-range.is-invalid::-webkit-slider-thumb {
  background-color: #c52042;
  background-image: none;
}
.was-validated .custom-range:invalid::-webkit-slider-thumb:active, .custom-range.is-invalid::-webkit-slider-thumb:active {
  background-color: rgb(240.6768558952, 166.8231441048, 182.0414847162);
  background-image: none;
}
.was-validated .custom-range:invalid::-webkit-slider-runnable-track, .custom-range.is-invalid::-webkit-slider-runnable-track {
  background-color: rgba(197, 32, 66, 0.35);
}
.was-validated .custom-range:invalid::-moz-range-thumb, .custom-range.is-invalid::-moz-range-thumb {
  background-color: #c52042;
  background-image: none;
}
.was-validated .custom-range:invalid::-moz-range-thumb:active, .custom-range.is-invalid::-moz-range-thumb:active {
  background-color: rgb(240.6768558952, 166.8231441048, 182.0414847162);
  background-image: none;
}
.was-validated .custom-range:invalid::-moz-range-track, .custom-range.is-invalid::-moz-range-track {
  background: rgba(197, 32, 66, 0.35);
}
.was-validated .custom-range:invalid ~ .invalid-feedback,
.was-validated .custom-range:invalid ~ .invalid-tooltip, .custom-range.is-invalid ~ .invalid-feedback,
.custom-range.is-invalid ~ .invalid-tooltip {
  display: block;
}
.was-validated .custom-range:invalid::-ms-thumb, .custom-range.is-invalid::-ms-thumb {
  background-color: #c52042;
  background-image: none;
}
.was-validated .custom-range:invalid::-ms-thumb:active, .custom-range.is-invalid::-ms-thumb:active {
  background-color: rgb(240.6768558952, 166.8231441048, 182.0414847162);
  background-image: none;
}
.was-validated .custom-range:invalid::-ms-track-lower, .custom-range.is-invalid::-ms-track-lower {
  background: rgba(197, 32, 66, 0.35);
}
.was-validated .custom-range:invalid::-ms-track-upper, .custom-range.is-invalid::-ms-track-upper {
  background: rgba(197, 32, 66, 0.35);
}

.gl-form-input,
.gl-form-input.form-control {
  appearance: none;
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-default);
  background: var(--gl-control-background-color-default);
  border-radius: var(--gl-control-border-radius);
  font-family: var(--gl-font-family-regular);
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-form-input,.recents-wrapper 
.gl-form-input.form-control{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-form-input,
.gl-form-input.form-control{
  line-height: 1rem;
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  height: auto;
  border-style: none;
}
.gl-form-input:focus-visible,
.gl-form-input.form-control:focus-visible {
  color: #3a383d;
  background-color: #fff;
  border-color: rgb(127.5, 189, 255);
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}
.gl-form-input,
.gl-form-input.form-control{
  color: var(--gl-text-color-default);
}
@media (forced-colors: active) {
  .gl-form-input,
  .gl-form-input.form-control {
    border: 1px solid;
  }
}
.gl-form-input:hover,
.gl-form-input.form-control:hover {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-hover);
}
.gl-form-input:not(.gl-form-input-not-readonly):not(:disabled):not(.form-control-plaintext):not([type=color]):read-only,
.gl-form-input.form-control:not(.gl-form-input-not-readonly):not(:disabled):not(.form-control-plaintext):not([type=color]):read-only {
  background: var(--gl-control-background-color-readonly);
  box-shadow: none;
}
.gl-form-input:disabled,
.gl-form-input.form-control:disabled{
  cursor: not-allowed;
  background: var(--gl-control-background-color-disabled);
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-disabled);
  color: var(--gl-text-color-disabled);
}
.gl-form-input:not(.form-control-plaintext):focus-visible,
.gl-form-input.form-control:not(.form-control-plaintext):focus-visible {
  background: var(--gl-control-background-color-default);
  color: var(--gl-text-color-default);
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-focus), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-form-input:not(.form-control-plaintext):focus-visible,
  .gl-form-input.form-control:not(.form-control-plaintext):focus-visible {
    outline: 2px solid LinkText;
  }
}
.gl-form-input.is-invalid,
.gl-form-input.form-control.is-invalid {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-error);
}
.gl-form-input.is-invalid:focus-visible,
.gl-form-input.form-control.is-invalid:focus-visible {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-error), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-form-input.is-invalid:focus-visible,
  .gl-form-input.form-control.is-invalid:focus-visible {
    outline: 2px solid LinkText;
  }
}
.gl-form-input::placeholder,
.gl-form-input.form-control::placeholder {
  color: var(--gl-control-placeholder-color);
}
.gl-form-input.form-control-plaintext,
.gl-form-input.form-control.form-control-plaintext{
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.gl-form-input-xs {
  max-width: 5rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-input-xs {
    max-width: 5rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-input-xs {
    max-width: 5rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-input-xs {
    max-width: 5rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-input-xs {
    max-width: 5rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-input-xs {
    max-width: 5rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-input-xs {
    max-width: 5rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-input-xs {
    max-width: 5rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-input-xs {
    max-width: 5rem;
  }
}

.gl-form-input-sm {
  max-width: 10rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-input-sm {
    max-width: 10rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-input-sm {
    max-width: 10rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-input-sm {
    max-width: 10rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-input-sm {
    max-width: 10rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-input-sm {
    max-width: 10rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-input-sm {
    max-width: 10rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-input-sm {
    max-width: 10rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-input-sm {
    max-width: 10rem;
  }
}

.gl-form-input-md {
  max-width: 15rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-input-md {
    max-width: 15rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-input-md {
    max-width: 15rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-input-md {
    max-width: 15rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-input-md {
    max-width: 15rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-input-md {
    max-width: 15rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-input-md {
    max-width: 15rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-input-md {
    max-width: 15rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-input-md {
    max-width: 15rem;
  }
}

.gl-form-input-lg {
  max-width: 20rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-input-lg {
    max-width: 20rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-input-lg {
    max-width: 20rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-input-lg {
    max-width: 20rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-input-lg {
    max-width: 20rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-input-lg {
    max-width: 20rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-input-lg {
    max-width: 20rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-input-lg {
    max-width: 20rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-input-lg {
    max-width: 20rem;
  }
}

.gl-form-input-xl {
  max-width: 35rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-input-xl {
    max-width: 35rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-input-xl {
    max-width: 35rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-input-xl {
    max-width: 35rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-input-xl {
    max-width: 35rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-input-xl {
    max-width: 35rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-input-xl {
    max-width: 35rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-input-xl {
    max-width: 35rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-input-xl {
    max-width: 35rem;
  }
}

.input-group > .input-group-prepend > .btn-group > .btn,
.input-group > .input-group-append:not(:last-child) > .btn-group > .btn,
.input-group > .input-group-append:last-child > .btn-group:not(:last-child):not(.dropdown-toggle) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.input-group > .input-group-append > .btn-group > .btn,
.input-group > .input-group-prepend:not(:first-child) > .btn-group > .btn,
.input-group > .input-group-prepend:first-child > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.gl-form-password-input {
  position: relative;
  width: 100%;
}

 .modal-header .modal-title.gl-form-password-input {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-form-password-input input[type=password]::-ms-reveal {
  display: none;
}

.gl-form-password-input-field.gl-form-input{
  padding-inline-end: var(--gl-spacing-scale-7);
}

.gl-form-password-input-toggle {
  position: absolute;
  top: 50%;
  inset-inline-end: var(--gl-spacing-scale-2);
  transform: translateY(-50%);
}

.gl-form-checkbox-group{
  line-height: 1rem;
}

.gl-form-checkbox,
.gl-form-radio{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-form-checkbox,.recents-wrapper 
.gl-form-radio{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-form-checkbox,
.gl-form-radio{
  line-height: 1rem;
  color: var(--gl-text-color-default);
}
.gl-form-checkbox.form-check,
.gl-form-radio.form-check{
  display: flex;
  padding-left: var(--gl-spacing-scale-0);
}
.gl-form-checkbox.form-check-inline,
.gl-form-radio.form-check-inline{
  display: inline-flex;
}
.commit-content .committer.gl-form-checkbox.form-check-inline,.commit-content .committer
.gl-form-radio.form-check-inline {
  gap: 0.5ch;
}
.gl-form-checkbox.form-check-inline,
.gl-form-radio.form-check-inline{
  align-items: center;
}
.gl-form-checkbox .form-check-input,
.gl-form-radio .form-check-input{
  margin-top: var(--gl-spacing-scale-1);
  margin-left: var(--gl-spacing-scale-0);
  align-self: flex-start;
  position: static;
  height: auto;
  margin-right: var(--gl-spacing-scale-0);
}
.gl-form-checkbox .form-check-input:active, .gl-form-checkbox .form-check-input:focus-visible, .gl-form-checkbox .form-check-input:focus-visible:active,
.gl-form-radio .form-check-input:active,
.gl-form-radio .form-check-input:focus-visible,
.gl-form-radio .form-check-input:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-form-checkbox .form-check-label,
.gl-form-radio .form-check-label{
  padding-left: var(--gl-spacing-scale-3);
  line-height: 1rem;
}
.gl-form-checkbox .form-check-input:disabled,
.gl-form-checkbox .form-check-input:disabled ~ .form-check-label,
.gl-form-checkbox .custom-control-input:disabled,
.gl-form-checkbox .custom-control-input:disabled ~ .custom-control-label,
.gl-form-checkbox .custom-control-input:disabled ~ .custom-control-label > .help-text,
.gl-form-radio .form-check-input:disabled,
.gl-form-radio .form-check-input:disabled ~ .form-check-label,
.gl-form-radio .custom-control-input:disabled,
.gl-form-radio .custom-control-input:disabled ~ .custom-control-label,
.gl-form-radio .custom-control-input:disabled ~ .custom-control-label > .help-text{
  cursor: not-allowed;
  color: var(--gl-text-color-disabled);
}
.gl-form-checkbox.custom-control,
.gl-form-radio.custom-control{
  padding-left: var(--gl-spacing-scale-5);
}
.gl-form-checkbox.custom-control .custom-control-input ~ .custom-control-label,
.gl-form-radio.custom-control .custom-control-input ~ .custom-control-label{
  cursor: pointer;
  padding-left: var(--gl-spacing-scale-3);
  margin-bottom: var(--gl-spacing-scale-3);
}
.gl-form-checkbox.custom-control .custom-control-input ~ .custom-control-label::before, .gl-form-checkbox.custom-control .custom-control-input ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input ~ .custom-control-label::after {
  top: 0;
  left: -1rem;
}
.gl-form-checkbox.custom-control .custom-control-input ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input ~ .custom-control-label::before {
  background-color: var(--gl-control-background-color-default);
  border-color: var(--gl-control-border-color-default);
}
.gl-form-checkbox.custom-control .custom-control-input:not(:disabled):hover ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input:not(:disabled):hover ~ .custom-control-label::before {
  border-color: var(--gl-control-border-color-hover);
}
.gl-form-checkbox.custom-control .custom-control-input:not(:disabled):focus-visible ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input:not(:disabled):focus-visible ~ .custom-control-label::before{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
  border-color: var(--gl-control-border-color-focus);
}
.gl-form-checkbox.custom-control .custom-control-input:checked ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input:checked ~ .custom-control-label::before {
  background-color: var(--gl-control-background-color-selected-default);
  border-color: var(--gl-control-border-color-selected-default);
}
@media (forced-colors: active) {
  .gl-form-checkbox.custom-control .custom-control-input:checked ~ .custom-control-label::before,
  .gl-form-radio.custom-control .custom-control-input:checked ~ .custom-control-label::before {
    background-color: LinkText;
    border-color: LinkText;
  }
}
.gl-form-checkbox.custom-control .custom-control-input[type=checkbox]:checked ~ .custom-control-label::after,
.gl-form-checkbox.custom-control .custom-control-input[type=checkbox]:indeterminate ~ .custom-control-label::after,
.gl-form-checkbox.custom-control .custom-control-input[type=radio]:checked ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input[type=checkbox]:checked ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input[type=checkbox]:indeterminate ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input[type=radio]:checked ~ .custom-control-label::after {
  background: 50% 50% no-repeat;
  background-color: var(--gl-control-indicator-color-selected);
  mask-repeat: no-repeat;
  mask-position: center center;
}
.gl-form-checkbox.custom-control .custom-control-input[type=checkbox]:checked ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input[type=checkbox]:checked ~ .custom-control-label::after {
  background-color: var(--gl-control-indicator-color-selected);
  mask-image: url('data:image/svg+xml,%3Csvg width="10" height="8" viewBox="0 0 10 8" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M0.75 4.76289L3.15312 7.24678L9.25 1.1499" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/%3E%3C/svg%3E%0A');
}
.gl-form-checkbox.custom-control .custom-control-input[type=checkbox]:indeterminate ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input[type=checkbox]:indeterminate ~ .custom-control-label::after {
  background-color: var(--gl-control-indicator-color-selected);
  mask-image: url('data:image/svg+xml,%3Csvg width="10" height="2" viewBox="0 0 10 2" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M1.75 1H8.25" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/%3E%3C/svg%3E%0A');
}
.gl-form-checkbox.custom-control .custom-control-input[type=radio]:checked ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input[type=radio]:checked ~ .custom-control-label::after {
  background-color: var(--gl-control-indicator-color-selected);
  mask-image: url('data:image/svg+xml,%3Csvg width="6" height="6" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Ccircle cx="3" cy="3" r="3" fill="white"/%3E%3C/svg%3E%0A');
}
.gl-form-checkbox.custom-control .custom-control-input:not(:disabled):checked ~ .custom-control-label:hover::before,
.gl-form-checkbox.custom-control .custom-control-input:not(:disabled):hover:checked ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input:not(:disabled):checked ~ .custom-control-label:hover::before,
.gl-form-radio.custom-control .custom-control-input:not(:disabled):hover:checked ~ .custom-control-label::before {
  background-color: var(--gl-control-background-color-selected-hover);
  border-color: var(--gl-control-border-color-selected-hover);
}
.gl-form-checkbox.custom-control .custom-control-input:not(:disabled):focus-visible:checked ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input:not(:disabled):focus-visible:checked ~ .custom-control-label::before {
  background-color: var(--gl-control-background-color-selected-focus);
  border-color: var(--gl-control-border-color-selected-focus);
}
@media (forced-colors: active) {
  .gl-form-checkbox.custom-control .custom-control-input:not(:disabled):checked ~ .custom-control-label:hover::before,
  .gl-form-checkbox.custom-control .custom-control-input:not(:disabled):hover:checked ~ .custom-control-label::before,
  .gl-form-checkbox.custom-control .custom-control-input:not(:disabled):focus-visible:checked ~ .custom-control-label::before,
  .gl-form-radio.custom-control .custom-control-input:not(:disabled):checked ~ .custom-control-label:hover::before,
  .gl-form-radio.custom-control .custom-control-input:not(:disabled):hover:checked ~ .custom-control-label::before,
  .gl-form-radio.custom-control .custom-control-input:not(:disabled):focus-visible:checked ~ .custom-control-label::before {
    background-color: LinkText;
    border-color: LinkText;
  }
}
.gl-form-checkbox.custom-control .custom-control-input:not(:disabled) ~ .custom-control-label,
.gl-form-radio.custom-control .custom-control-input:not(:disabled) ~ .custom-control-label{
  color: var(--gl-text-color-default);
}
.gl-form-checkbox.custom-control.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before,
.gl-form-radio.custom-control.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  background-color: var(--gl-control-background-color-selected-default);
  border-color: var(--gl-control-border-color-selected-default);
}
@media (forced-colors: active) {
  .gl-form-checkbox.custom-control.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before,
  .gl-form-radio.custom-control.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
    background-color: LinkText;
    border-color: LinkText;
  }
}
.gl-form-checkbox.custom-control.custom-checkbox .custom-control-input:not(:disabled):indeterminate ~ .custom-control-label:hover::before,
.gl-form-radio.custom-control.custom-checkbox .custom-control-input:not(:disabled):indeterminate ~ .custom-control-label:hover::before {
  background-color: var(--gl-control-background-color-selected-hover);
  border-color: var(--gl-control-border-color-selected-hover);
}
.gl-form-checkbox.custom-control.custom-checkbox .custom-control-input:not(:disabled):focus-visible:indeterminate ~ .custom-control-label::before,
.gl-form-radio.custom-control.custom-checkbox .custom-control-input:not(:disabled):focus-visible:indeterminate ~ .custom-control-label::before {
  background-color: var(--gl-control-background-color-selected-focus);
  border-color: var(--gl-control-border-color-selected-focus);
}
@media (forced-colors: active) {
  .gl-form-checkbox.custom-control.custom-checkbox .custom-control-input:not(:disabled):indeterminate ~ .custom-control-label:hover::before,
  .gl-form-checkbox.custom-control.custom-checkbox .custom-control-input:not(:disabled):focus-visible:indeterminate ~ .custom-control-label::before,
  .gl-form-radio.custom-control.custom-checkbox .custom-control-input:not(:disabled):indeterminate ~ .custom-control-label:hover::before,
  .gl-form-radio.custom-control.custom-checkbox .custom-control-input:not(:disabled):focus-visible:indeterminate ~ .custom-control-label::before {
    background-color: LinkText;
    border-color: LinkText;
  }
}
.gl-form-checkbox.custom-control .custom-control-input:disabled ~ .custom-control-label,
.gl-form-radio.custom-control .custom-control-input:disabled ~ .custom-control-label{
  cursor: not-allowed;
}
.gl-form-checkbox.custom-control .custom-control-input:disabled ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input:disabled ~ .custom-control-label::before{
  pointer-events: auto;
  background-color: var(--gl-control-background-color-default);
  border-color: var(--gl-control-border-color-disabled);
}
@media (forced-colors: active) {
  .gl-form-checkbox.custom-control .custom-control-input:disabled ~ .custom-control-label::before,
  .gl-form-radio.custom-control .custom-control-input:disabled ~ .custom-control-label::before {
    opacity: 0.5;
  }
}
.gl-form-checkbox.custom-control .custom-control-input:checked:disabled ~ .custom-control-label::before,
.gl-form-checkbox.custom-control .custom-control-input[type=checkbox]:indeterminate:disabled ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input:checked:disabled ~ .custom-control-label::before,
.gl-form-radio.custom-control .custom-control-input[type=checkbox]:indeterminate:disabled ~ .custom-control-label::before {
  background-color: var(--gl-control-background-color-selected-disabled);
  border-color: var(--gl-control-border-color-selected-disabled);
}
.gl-form-checkbox.custom-control .custom-control-input:checked:disabled ~ .custom-control-label::after,
.gl-form-checkbox.custom-control .custom-control-input[type=checkbox]:indeterminate:disabled ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input:checked:disabled ~ .custom-control-label::after,
.gl-form-radio.custom-control .custom-control-input[type=checkbox]:indeterminate:disabled ~ .custom-control-label::after {
  background-image: none;
  background-color: var(--gl-control-indicator-color-disabled);
  /* Ensure state indicators (like the checkmark for checked or
    the dash for indeterminate) are visible in Windows High
    Contrast Mode.
  */
}
@media screen and (forced-colors: active) {
  .gl-form-checkbox.custom-control .custom-control-input:checked:disabled ~ .custom-control-label::after,
  .gl-form-checkbox.custom-control .custom-control-input[type=checkbox]:indeterminate:disabled ~ .custom-control-label::after,
  .gl-form-radio.custom-control .custom-control-input:checked:disabled ~ .custom-control-label::after,
  .gl-form-radio.custom-control .custom-control-input[type=checkbox]:indeterminate:disabled ~ .custom-control-label::after {
    forced-color-adjust: none;
    /* system color reference for disabled text applied to
      background here.
    */
    background-color: GrayText;
  }
}
.gl-form-checkbox .help-text,
.gl-form-radio .help-text{
  margin-top: var(--gl-spacing-scale-2);
  margin-bottom: var(--gl-spacing-scale-0);
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-form-checkbox .help-text,.recents-wrapper 
.gl-form-radio .help-text{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-form-checkbox .help-text,
.gl-form-radio .help-text{
  line-height: 1rem;
  color: var(--gl-text-color-subtle);
}

.gl-form-group{
  margin-bottom: var(--gl-spacing-scale-5);
}
.gl-form-group .col-form-label{
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-form-group .col-form-label{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-form-group .col-form-label{
  font-weight: var(--gl-font-weight-bold);
  line-height: 1rem;
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-3);
  color: var(--gl-text-color-strong);
}
.gl-form-group .col-form-label > .label-description{
  margin-top: var(--gl-spacing-scale-2);
  color: var(--gl-text-color-subtle);
}
.gl-form-group .optional-label,
.gl-form-group .label-description{
  font-weight: var(--gl-font-weight-normal);
}
.gl-form-group .invalid-feedback {
  color: var(--gl-control-text-color-error);
}
.gl-form-group .valid-feedback {
  color: var(--gl-control-text-color-valid);
}
.gl-form-group .invalid-feedback,
.gl-form-group .valid-feedback,
.gl-form-group .text-muted,
.gl-form-group .gl-text-secondary{
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-form-group .invalid-feedback,.recents-wrapper 
.gl-form-group .valid-feedback,.recents-wrapper 
.gl-form-group .text-muted,.recents-wrapper 
.gl-form-group .gl-text-secondary{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-form-group .invalid-feedback,
.gl-form-group .valid-feedback,
.gl-form-group .text-muted,
.gl-form-group .gl-text-secondary{
  line-height: 1rem;
}
.gl-form-group .text-muted{
  color: var(--gl-text-color-subtle) !important;
}
.gl-form-group .form-control + .invalid-feedback,
.gl-form-group .form-control + .valid-feedback,
.gl-form-group .form-control + .gl-text-secondary,
.gl-form-group .form-control + .text-muted, .gl-form-group .form-control.is-valid + .invalid-feedback + .text-muted, .gl-form-group .form-control.is-valid + .invalid-feedback + .gl-text-secondary{
  margin-top: var(--gl-spacing-scale-3);
}
.gl-form-group legend {
  border-bottom: 0;
}

.gl-form-radio-group{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-form-radio-group{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-form-radio-group{
  line-height: 1rem;
}

/*
This is a temporary measure to ensure custom select styles are not affected by our
lack of an autoprefixer tool for compiling bootstrap.

TODO: Remove once bootstrap is included in GitLab UI or we include an autoprefixer
on gitlab
See: https://gitlab.com/gitlab-org/gitlab/issues/30055
*/
/* stylelint-disable property-no-vendor-prefix */
.gl-form-select{
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-form-select{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-form-select{
  font-family: var(--gl-font-family-regular);
  opacity: var(--gl-opacity-10);
  line-height: 1rem;
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-4);
  height: auto;
  overflow: hidden;
  overflow-x: clip;
  overflow-y: visible;
  text-overflow: ellipsis;
  white-space: nowrap;
  min-width: 0;
}
.gl-badge:has(.gl-form-select, .gl-text-truncate) {
  max-width: 100%;
}
.gl-form-select{
  background-repeat: no-repeat;
  border-style: none;
  border-radius: var(--gl-control-border-radius);
  appearance: none;
  background-color: var(--gl-control-background-color-default);
  background-image: none;
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-default);
  color: var(--gl-text-color-default);
  padding-right: 1.75rem;
  position: relative;
}
@media (forced-colors: active) {
  .gl-form-select {
    box-shadow: none;
    border: 1px solid;
  }
}
.gl-form-select:hover {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-hover);
}
.gl-form-select:focus-visible, .gl-form-select:focus-visible:active {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-focus), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-form-select:focus-visible, .gl-form-select:focus-visible:active {
    outline: 2px solid LinkText !important;
  }
}
.gl-form-select:disabled{
  cursor: not-allowed;
  color: var(--gl-text-color-disabled);
  background-color: var(--gl-control-background-color-disabled);
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-disabled);
}
.gl-form-select.is-invalid:not(:disabled) {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-error);
}
.gl-form-select.is-invalid:not(:disabled):hover {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-error);
}
.gl-form-select.is-invalid:not(:disabled):focus-visible {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-error), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-form-select.is-invalid:not(:disabled):focus-visible {
    outline: 2px solid LinkText !important;
  }
}

.gl-form-select-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
}
.gl-form-select-wrapper::after {
  content: "";
  background-color: var(--gl-icon-color-default);
  mask-image: url('data:image/svg+xml,%3Csvg width="8" height="5" viewBox="0 0 8 5" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath fill-rule="evenodd" clip-rule="evenodd" d="M0.21967 0.21967C0.512563 -0.0732232 0.987437 -0.0732232 1.28033 0.21967L4 2.93934L6.71967 0.21967C7.01256 -0.073223 7.48744 -0.0732229 7.78033 0.21967C8.07322 0.512563 8.07322 0.987437 7.78033 1.28033L4.53033 4.53033C4.23744 4.82322 3.76256 4.82322 3.46967 4.53033L0.21967 1.28033C-0.0732233 0.987437 -0.0732233 0.512563 0.21967 0.21967Z" fill="%23666666"/%3E%3C/svg%3E%0A');
  mask-repeat: no-repeat;
  mask-position: center center;
  pointer-events: none;
  position: absolute;
  top: 50%;
  right: 0.75rem;
  transform: translateY(-50%);
  height: 5px;
  width: 8px;
}
@media (forced-colors: active) {
  .gl-form-select-wrapper::after {
    background-color: CanvasText;
  }
}
.gl-form-select-wrapper:has(> .gl-form-select:disabled)::after {
  background-color: var(--gl-icon-color-disabled);
}
@media (forced-colors: active) {
  .gl-form-select-wrapper:has(> .gl-form-select:disabled)::after {
    background-color: GrayText;
  }
}

.gl-form-select-xs {
  max-width: 5rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-select-xs {
    max-width: 5rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-select-xs {
    max-width: 5rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-select-xs {
    max-width: 5rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-select-xs {
    max-width: 5rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-select-xs {
    max-width: 5rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-select-xs {
    max-width: 5rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-select-xs {
    max-width: 5rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-select-xs {
    max-width: 5rem;
  }
}

.gl-form-select-sm {
  max-width: 10rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-select-sm {
    max-width: 10rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-select-sm {
    max-width: 10rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-select-sm {
    max-width: 10rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-select-sm {
    max-width: 10rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-select-sm {
    max-width: 10rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-select-sm {
    max-width: 10rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-select-sm {
    max-width: 10rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-select-sm {
    max-width: 10rem;
  }
}

.gl-form-select-md {
  max-width: 15rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-select-md {
    max-width: 15rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-select-md {
    max-width: 15rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-select-md {
    max-width: 15rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-select-md {
    max-width: 15rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-select-md {
    max-width: 15rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-select-md {
    max-width: 15rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-select-md {
    max-width: 15rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-select-md {
    max-width: 15rem;
  }
}

.gl-form-select-lg {
  max-width: 20rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-select-lg {
    max-width: 20rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-select-lg {
    max-width: 20rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-select-lg {
    max-width: 20rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-select-lg {
    max-width: 20rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-select-lg {
    max-width: 20rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-select-lg {
    max-width: 20rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-select-lg {
    max-width: 20rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-select-lg {
    max-width: 20rem;
  }
}

.gl-form-select-xl {
  max-width: 35rem;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-sm-form-select-xl {
    max-width: 35rem;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-sm-form-select-xl {
    max-width: 35rem;
  }
}

@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-md-form-select-xl {
    max-width: 35rem;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-md-form-select-xl {
    max-width: 35rem;
  }
}

@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-lg-form-select-xl {
    max-width: 35rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-lg-form-select-xl {
    max-width: 35rem;
  }
}

@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-xl-form-select-xl {
    max-width: 35rem;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-xl-form-select-xl {
    max-width: 35rem;
  }
}

/* stylelint-enable property-no-vendor-prefix */
.gl-form-combobox .gl-form-combobox-inner {
  max-height: 19.5rem;
  position: relative;
  flex-grow: 1;
  overflow-y: auto;
  padding-left: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-0);
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-2);
  list-style-type: none;
  border-radius: var(--gl-dropdown-border-radius);
}
.gl-form-combobox .gl-form-combobox-inner:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-form-combobox .gl-form-combobox-inner ul{
  list-style-type: none;
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item{
  cursor: pointer;
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  margin-top: var(--gl-spacing-scale-1);
  margin-bottom: var(--gl-spacing-scale-1);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item:first-child{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item:last-child{
  margin-bottom: var(--gl-spacing-scale-0);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item {
  transition: background-color 0.1s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
  border-radius: var(--gl-border-radius-default);
  border-width: 0px;
  width: 100%;
}
 .modal-header .modal-title.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item {
  background-color: var(--gl-dropdown-option-background-color-unselected-default);
  align-items: center;
  display: flex;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item{
  font-weight: var(--gl-font-weight-normal);
  line-height: 1rem;
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  position: relative;
  text-decoration-line: none;
  color: var(--gl-dropdown-option-text-color-default);
  text-align: left;
  white-space: normal;
}
@media (prefers-reduced-motion) {
  .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item .gl-dropdown-item-text-wrapper{
  min-width: var(--gl-spacing-scale-0);
  flex-grow: 1;
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:not(.disable-hover):hover {
  color: var(--gl-dropdown-option-text-color-hover);
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:focus-visible {
  color: var(--gl-dropdown-option-text-color-focus);
  background-color: var(--gl-dropdown-option-background-color-unselected-focus);
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:focus-visible {
    outline: 2px solid LinkText;
  }
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:focus-visible {
  z-index: 1;
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:active, .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:focus-visible:active {
  color: var(--gl-dropdown-option-text-color-active);
  background-color: var(--gl-dropdown-option-background-color-unselected-active);
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:active, .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:focus-visible:active {
    outline: 2px solid LinkText;
  }
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item.active {
  color: var(--gl-dropdown-option-text-color-focus) !important;
  background-color: var(--gl-dropdown-option-background-color-unselected-focus) !important;
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item.active {
    outline: 2px solid LinkText;
  }
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item.active {
  z-index: 1;
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item.is-focused {
  color: var(--gl-dropdown-option-text-color-focus) !important;
  background-color: var(--gl-dropdown-option-background-color-unselected-focus) !important;
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item.is-focused {
    outline: 2px solid LinkText;
  }
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item.is-focused {
  z-index: 1;
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item .dropdown-item:focus-visible {
  outline: none;
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item[aria-selected=true] .dropdown-item {
  background-color: var(--gl-dropdown-option-background-color-selected-default);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item[aria-selected=true] .dropdown-item:hover {
  background-color: var(--gl-dropdown-option-background-color-selected-hover);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item[aria-selected=true] .dropdown-item:focus-visible {
  background-color: var(--gl-dropdown-option-background-color-selected-focus);
}
.gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item[aria-selected=true] .dropdown-item:active, .gl-form-combobox .gl-form-combobox-inner .gl-dropdown-item[aria-selected=true] .dropdown-item:focus-visible:active {
  background-color: var(--gl-dropdown-option-background-color-selected-active);
}

.input-group-text {
  background-color: var(--gl-control-background-color-concatenation);
  border-color: var(--gl-control-border-color-default);
  color: var(--gl-text-color-default);
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .input-group-text{
  margin-top: var(--gl-spacing-scale-0);
}

.input-group-text{
  line-height: 1rem;
  border-radius: var(--gl-control-border-radius);
}

.gl-icon.s8 {
  width: 8px;
  height: 8px;
}
.gl-icon.s12 {
  width: 12px;
  height: 12px;
}
.gl-icon.s14 {
  width: 14px;
  height: 14px;
}
.gl-icon.s16 {
  width: 16px;
  height: 16px;
}
.gl-icon.s24 {
  width: 24px;
  height: 24px;
}
.gl-icon.s32 {
  width: 32px;
  height: 32px;
}
.gl-icon.s48 {
  width: 48px;
  height: 48px;
}
.gl-icon.s72 {
  width: 72px;
  height: 72px;
}

.gl-infinite-scroll-container{
  overflow-x: hidden;
  overflow-y: auto;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-infinite-scroll-container{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-infinite-scroll-legend{
  text-align: center;
  font-size: var(--gl-font-size-sm);
  color: var(--gl-text-color-subtle);
  margin-top: var(--gl-spacing-scale-3);
}

.gl-label{
  align-items: center;
  background-color: var(--gl-background-color-default);
  overflow: hidden;
  display: inline-flex;
}

.commit-content .committer.gl-label {
  gap: 0.5ch;
}

.gl-label{
  border-radius: .75rem;
  position: relative;
  max-width: 100%;
}

.modal-header .modal-title.gl-label {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-label{
  font-size: var(--gl-font-size-sm);
  line-height: 1rem;
  box-shadow: var(--label-inset-border) !important;
}
@media (forced-colors: active) {
  .gl-label {
    border: 1px solid;
  }
}
.gl-label:not(.gl-label-scoped) {
  background-color: var(--label-background-color);
}
.gl-label:has(*:first-child:focus-visible) {
  box-shadow: inset 0 0 0 1px var(--label-background-color, var(--gl-background-color-default)), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-label:has(*:first-child:focus-visible) {
    outline: 2px solid LinkText !important;
  }
}
.gl-label .gl-label-link{
  display: flex;
  font-weight: var(--gl-font-weight-normal);
  overflow: hidden;
  color: inherit;
  max-width: 100%;
}
.modal-header .modal-title.gl-label .gl-label-link {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-label .gl-label-link:hover, .gl-label .gl-label-link:focus-visible, .gl-label .gl-label-link:focus-visible:active{
  color: inherit;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  outline: 2px solid transparent;
  outline-offset: 2px;
}
.gl-label .gl-label-link-underline {
  text-decoration: none;
}
.gl-label .gl-label-link-underline:hover .gl-label-text,
.gl-label .gl-label-link-underline:hover .gl-label-text-scoped, .gl-label .gl-label-link-underline:focus-visible .gl-label-text,
.gl-label .gl-label-link-underline:focus-visible .gl-label-text-scoped, .gl-label .gl-label-link-underline:focus-visible:active .gl-label-text,
.gl-label .gl-label-link-underline:focus-visible:active .gl-label-text-scoped {
  text-decoration: underline;
}
.gl-label .gl-label-text,
.gl-label .gl-label-text-scoped{
  display: block;
  padding: 0.125rem 0.375rem;
  display: inline-block;
  min-width: 0;
  overflow-x: clip;
  overflow-y: visible;
  text-overflow: ellipsis;
  vertical-align: top;
  white-space: nowrap;
  max-width: 100%;
}
.gl-label > .gl-label-close.gl-button{
  border-width: 0px;
  display: flex;
  width: 0.875rem;
  height: 0.875rem;
  min-height: auto !important;
  min-width: auto !important;
  margin-left: -0.1875rem;
  margin-right: 0.1875rem;
  padding: var(--gl-spacing-scale-0);
  border-radius: var(--gl-border-radius-full);
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.gl-label > .gl-label-close.gl-button:focus-visible, .gl-label > .gl-label-close.gl-button:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-label > .gl-label-close.gl-button .gl-icon {
  vertical-align: -1px;
}

.gl-label-text-dark {
  color: var(--gl-label-light-text-color);
}
.gl-label-text-dark .gl-label-close.gl-button {
  color: var(--gl-label-light-button-icon-color-default);
  background-color: var(--gl-label-light-button-background-color-default);
}
.gl-label-text-dark .gl-label-close.gl-button:focus-visible, .gl-label-text-dark .gl-label-close.gl-button:hover {
  color: var(--label-background-color);
  background-color: var(--gl-label-light-button-background-color-hover);
}

.gl-label-text-light {
  color: var(--gl-label-dark-text-color);
}
.gl-label-text-light .gl-label-close.gl-button {
  color: var(--gl-label-dark-button-icon-color-default);
  background-color: var(--gl-label-dark-button-background-color-default);
}
.gl-label-text-light .gl-label-close.gl-button:focus-visible, .gl-label-text-light .gl-label-close.gl-button:hover {
  color: var(--label-background-color);
  background-color: var(--gl-label-dark-button-background-color-hover);
}

.gl-label-scoped .gl-label-close.gl-button {
  margin-left: -0.375rem;
  color: var(--gl-label-scoped-button-icon-color-default);
}
.gl-label-scoped .gl-label-close.gl-button:focus-visible, .gl-label-scoped .gl-label-close.gl-button:hover {
  color: var(--gl-label-scoped-button-icon-color-hover);
  background-color: var(--gl-label-scoped-button-background-color-hover);
}
.gl-label-scoped .gl-label-text {
  background-color: var(--label-background-color);
}
@media (forced-colors: active) {
  .gl-label-scoped .gl-label-text {
    border-right: 1px solid;
  }
}
.gl-label-scoped .gl-label-text-scoped {
  color: var(--gl-label-scoped-text-color);
  padding-left: 0.25rem;
  padding-right: 0.5rem;
}

.gl-label-tooltip-title{
  display: block;
  color: var(--gl-feedback-strong-text-color);
  font-weight: var(--gl-font-weight-bold);
}

.gl-link {
  text-underline-offset: var(--gl-spacing-scale-1);
}
.gl-link:hover{
  cursor: pointer;
}
.gl-link, .gl-link:hover, .gl-link:active, .gl-link:focus-visible{
  color: var(--gl-text-color-link);
}
.gl-link:active, .gl-link:focus-visible, .gl-link:focus-visible:active{
  text-decoration-line: underline;
  outline: 2px solid var(--gl-focus-ring-outer-color);
  outline-offset: 2px;
}

.gl-link-inline{
  text-decoration-line: underline;
}
.gl-link-inline:hover{
  text-decoration-line: underline;
}

.gl-link-external::after {
  content: " ↗"/attr(data-alt);
  font-size: 1em;
}

.gl-link-meta{
  text-decoration-line: none;
}
.gl-link-meta:hover{
  text-decoration-line: underline;
}
.gl-link-meta, .gl-link-meta:hover, .gl-link-meta:focus-visible, .gl-link-meta:focus-visible:hover{
  color: inherit;
}

.gl-link-mention,
.gl-link-mention-current{
  padding-left: var(--gl-spacing-scale-1);
  padding-right: var(--gl-spacing-scale-1);
  border-radius: var(--gl-border-radius-default);
  text-decoration-line: none;
}
.gl-link-mention:hover,
.gl-link-mention-current:hover{
  text-decoration-line: underline;
}
.gl-link-mention:active, .gl-link-mention:focus-visible, .gl-link-mention:focus-visible:active,
.gl-link-mention-current:active,
.gl-link-mention-current:focus-visible,
.gl-link-mention-current:focus-visible:active{
  text-decoration-line: none;
}

.gl-link-mention {
  background-color: var(--gl-link-mention-background-color-default);
}
.gl-link-mention, .gl-link-mention:hover, .gl-link-mention:active, .gl-link-mention:focus-visible, .gl-link-mention:focus-visible:active {
  color: var(--gl-link-mention-text-color-default);
}

.gl-link-mention-current {
  background-color: var(--gl-link-mention-background-color-current);
}
.gl-link-mention-current, .gl-link-mention-current:hover, .gl-link-mention-current:active, .gl-link-mention-current:focus-visible, .gl-link-mention-current:focus-visible:active {
  color: var(--gl-link-mention-text-color-current);
}

.gl-spinner-container{
  line-height: 0;
  text-align: center;
}

.gl-spinner {
  position: relative;
  display: inline-flex;
}

.commit-content .committer.gl-spinner {
  gap: 0.5ch;
}

.gl-spinner{
  border-radius: var(--gl-border-radius-full);
  border-style: solid;
  margin-left: auto;
  margin-right: auto;
  margin-top: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-0);
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-spinner{
  margin-top: var(--gl-spacing-scale-0);
}

@keyframes gl-spin{
  to{
    transform: rotate(360deg);
  }
}

.gl-spinner{
  animation: gl-spin 0.6s infinite linear;
  width: 1rem;
  height: 1rem;
  border-width: 2px;
  transform-origin: 50% 50% calc(1rem / 2 + 2px);
}
.gl-spinner.gl-spinner-md {
  width: 1.5rem;
  height: 1.5rem;
  border-width: 3px;
  transform-origin: 50% 50% calc(1.5rem / 2 + 3px);
}
.gl-spinner.gl-spinner-lg {
  width: 2rem;
  height: 2rem;
  border-width: 3px;
  transform-origin: 50% 50% calc(2rem / 2 + 3px);
}
.gl-spinner.gl-spinner-xl {
  width: 4rem;
  height: 4rem;
  border-width: 4px;
  transform-origin: 50% 50% calc(4rem / 2 + 4px);
}
.gl-spinner.gl-spinner-dark {
  border-color: var(--gl-spinner-track-color-default);
  border-top-color: var(--gl-spinner-segment-color-default);
}
.gl-spinner.gl-spinner-light {
  border-color: var(--gl-spinner-track-color-light);
  border-top-color: var(--gl-spinner-segment-color-light);
}

.gl-dots-loader{
  line-height: 0;
  text-align: center;
}

.gl-dots-loader::before,
.gl-dots-loader > span, .gl-dots-loader::after {
  content: "";
  display: inline-block;
  border-radius: 100%;
  animation: gl-dots-loader-animation 1400ms ease-in-out infinite;
  animation-fill-mode: both;
}
.gl-dots-loader::before {
  animation-delay: -0.3s;
}
.gl-dots-loader > span {
  animation-delay: -0.15s;
}
.gl-dots-loader::after {
  margin-right: 0 !important;
}
.gl-dots-loader::before,
.gl-dots-loader > span, .gl-dots-loader::after {
  width: 0.375rem;
  height: 0.375rem;
  margin-right: calc(0.375rem / 2);
}
.gl-dots-loader.gl-dots-loader::before,
.gl-dots-loader.gl-dots-loader > span, .gl-dots-loader.gl-dots-loader::after {
  background-color: var(--gl-icon-color-subtle);
}
.gl-dots-loader.gl-dots-loader-md::before,
.gl-dots-loader.gl-dots-loader-md > span, .gl-dots-loader.gl-dots-loader-md::after {
  width: 0.5rem;
  height: 0.5rem;
  margin-right: calc(0.5rem / 2);
}
.gl-dots-loader.gl-dots-loader-lg::before,
.gl-dots-loader.gl-dots-loader-lg > span, .gl-dots-loader.gl-dots-loader-lg::after {
  width: 0.75rem;
  height: 0.75rem;
  margin-right: calc(0.75rem / 2);
}
.gl-dots-loader.gl-dots-loader-xl::before,
.gl-dots-loader.gl-dots-loader-xl > span, .gl-dots-loader.gl-dots-loader-xl::after {
  width: 1rem;
  height: 1rem;
  margin-right: calc(1rem / 2);
}

@keyframes gl-dots-loader-animation {
  0%, 80%, 100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}
.gl-markdown{
  font-size: var(--gl-font-size-lg);
  line-height: var(--gl-line-height-24);
  color: var(--gl-text-color-default);
  font-family: var(--gl-font-family-regular);
  font-weight: var(--gl-font-weight-normal);
}
.gl-markdown :first-child{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-markdown h1,
.gl-markdown .gl-h1{
  font-weight: var(--gl-heading-1-font-weight);
  margin-top: var(--gl-heading-1-margin-top);
  font-size: var(--gl-heading-1-font-size);
  letter-spacing: var(--gl-heading-1-letter-spacing);
  line-height: var(--gl-heading-1-line-height);
  margin-bottom: var(--gl-heading-1-margin-bottom);
  color: var(--gl-heading-1-color);
  margin-top: var(--gl-spacing-scale-7);
}
.gl-markdown h2,
.gl-markdown .gl-h2{
  font-weight: var(--gl-heading-2-font-weight);
  margin-top: var(--gl-heading-2-margin-top);
  font-size: var(--gl-heading-2-font-size);
  letter-spacing: var(--gl-heading-2-letter-spacing);
  line-height: var(--gl-heading-2-line-height);
  margin-bottom: var(--gl-heading-2-margin-bottom);
  color: var(--gl-heading-2-color);
  margin-top: var(--gl-spacing-scale-6);
}
.gl-markdown h3,
.gl-markdown .gl-h3{
  font-weight: var(--gl-heading-3-font-weight);
  margin-top: var(--gl-heading-3-margin-top);
  font-size: var(--gl-heading-3-font-size);
  letter-spacing: var(--gl-heading-3-letter-spacing);
  line-height: var(--gl-heading-3-line-height);
  margin-bottom: var(--gl-heading-3-margin-bottom);
  color: var(--gl-heading-3-color);
  margin-top: var(--gl-spacing-scale-6);
}
.gl-markdown h4,
.gl-markdown .gl-h4{
  font-weight: var(--gl-heading-4-font-weight);
  margin-top: var(--gl-heading-4-margin-top);
  font-size: var(--gl-heading-4-font-size);
  letter-spacing: var(--gl-heading-4-letter-spacing);
  line-height: var(--gl-heading-4-line-height);
  margin-bottom: var(--gl-heading-4-margin-bottom);
  color: var(--gl-heading-4-color);
  margin-top: var(--gl-spacing-scale-5);
}
.gl-markdown h5,
.gl-markdown .gl-h5{
  font-weight: var(--gl-heading-5-font-weight);
  margin-top: var(--gl-heading-5-margin-top);
  font-size: var(--gl-heading-5-font-size);
  letter-spacing: var(--gl-heading-5-letter-spacing);
  line-height: var(--gl-heading-5-line-height);
  margin-bottom: var(--gl-heading-5-margin-bottom);
  color: var(--gl-heading-5-color);
  margin-top: var(--gl-spacing-scale-5);
}
.gl-markdown h6,
.gl-markdown .gl-h6{
  font-weight: var(--gl-heading-6-font-weight);
  margin-top: var(--gl-heading-6-margin-top);
  font-size: var(--gl-heading-6-font-size);
  letter-spacing: var(--gl-heading-6-letter-spacing);
  line-height: var(--gl-heading-6-line-height);
  margin-bottom: var(--gl-heading-6-margin-bottom);
  color: var(--gl-heading-6-color);
  margin-top: var(--gl-spacing-scale-5);
}
.gl-markdown p,
.gl-markdown .gl-paragraph{
  margin-top: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-0);
}
.gl-markdown p + p,
.gl-markdown p + .gl-paragraph,
.gl-markdown .gl-paragraph + p,
.gl-markdown .gl-paragraph + .gl-paragraph{
  margin-top: var(--gl-spacing-scale-5);
}
.gl-markdown p.sm,
.gl-markdown .gl-paragraph.sm {
  font-size: 0.875rem;
  line-height: var(--gl-line-height-20);
}
.gl-markdown .sm {
  font-size: 0.875rem;
  line-height: var(--gl-line-height-20);
}
.gl-markdown .monospace,
.gl-markdown code{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
}
.gl-markdown blockquote{
  color: var(--gl-text-color-subtle);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-6);
  margin-top: var(--gl-spacing-scale-3);
  margin-bottom: var(--gl-spacing-scale-3);
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
  box-shadow: inset 4px 0 0 0 var(--gl-border-color-strong);
}
.gl-markdown .idiff{
  border-radius: var(--gl-border-radius-default);
  display: inline-flex;
}
.commit-content .committer.gl-markdown .idiff {
  gap: 0.5ch;
}
.gl-markdown .idiff{
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
}
.gl-markdown .deletion{
  background-color: var(--gl-status-danger-background-color);
}
.gl-markdown .addition{
  background-color: var(--gl-status-success-background-color);
}
.gl-markdown code{
  border-radius: var(--gl-border-radius-default);
  background-color: var(--gl-background-color-strong);
  color: var(--gl-text-color-strong);
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  padding-top: var(--gl-spacing-scale-1);
  padding-bottom: var(--gl-spacing-scale-1);
}
.gl-markdown pre{
  border-radius: var(--gl-border-radius-default);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  box-shadow: inset 0 0 0 1px var(--gl-border-color-default);
  margin-top: var(--gl-spacing-scale-7);
  margin-bottom: var(--gl-spacing-scale-7);
  overflow: auto;
}
.gl-markdown pre code{
  background-color: var(--gl-background-color-default);
  border-radius: var(--gl-border-radius-none);
  color: var(--gl-text-color-strong);
  padding: var(--gl-spacing-scale-0);
}
.gl-markdown .audio-container{
  display: inline-flex;
}
.commit-content .committer.gl-markdown .audio-container {
  gap: 0.5ch;
}
.gl-markdown .audio-container{
  flex-direction: column;
  width: 100%;
}
 .modal-header .modal-title.gl-markdown .audio-container {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-markdown .audio-container audio{
  width: 100%;
}
 .modal-header .modal-title.gl-markdown .audio-container audio {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-markdown .audio-container a{
  margin-top: var(--gl-spacing-scale-3);
}
.gl-markdown .audio-container a::before{
  margin-right: var(--gl-spacing-scale-2);
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  content: "📎";
}
.gl-markdown table{
  margin-top: var(--gl-spacing-scale-7);
  margin-bottom: var(--gl-spacing-scale-7);
}
.gl-markdown table th,
.gl-markdown table td{
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-4);
  padding-bottom: var(--gl-spacing-scale-4);
  box-shadow: inset 0 -1px 0 0 var(--gl-border-color-default);
  vertical-align: top;
}
.gl-markdown table th {
  box-shadow: inset 0 1px 0 0 var(--gl-border-color-default), inset 0 -1px 0 0 var(--gl-border-color-default);
  font-weight: var(--gl-font-weight-bold);
}
.gl-markdown table thead{
  background-color: var(--gl-background-color-strong);
}
.gl-markdown table tr:nth-child(even){
  background-color: var(--gl-background-color-subtle);
}

.gl-compact-markdown{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-compact-markdown{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-compact-markdown{
  line-height: var(--gl-line-height-20);
}
.gl-compact-markdown h1,
.gl-compact-markdown .gl-h1{
  font-weight: var(--gl-heading-1-fixed-font-weight);
  margin-top: var(--gl-heading-1-fixed-margin-top);
  font-size: var(--gl-heading-1-fixed-font-size);
  letter-spacing: var(--gl-heading-1-fixed-letter-spacing);
  line-height: var(--gl-heading-1-fixed-line-height);
  margin-bottom: var(--gl-heading-1-fixed-margin-bottom);
  color: var(--gl-heading-1-fixed-color);
  margin-top: var(--gl-spacing-scale-7);
}
.gl-compact-markdown h2,
.gl-compact-markdown .gl-h2{
  font-weight: var(--gl-heading-2-fixed-font-weight);
  margin-top: var(--gl-heading-2-fixed-margin-top);
  font-size: var(--gl-heading-2-fixed-font-size);
  letter-spacing: var(--gl-heading-2-fixed-letter-spacing);
  line-height: var(--gl-heading-2-fixed-line-height);
  margin-bottom: var(--gl-heading-2-fixed-margin-bottom);
  color: var(--gl-heading-2-fixed-color);
  margin-top: var(--gl-spacing-scale-6);
}
.gl-compact-markdown h3,
.gl-compact-markdown .gl-h3{
  font-weight: var(--gl-heading-3-fixed-font-weight);
  margin-top: var(--gl-heading-3-fixed-margin-top);
  font-size: var(--gl-heading-3-fixed-font-size);
  letter-spacing: var(--gl-heading-3-fixed-letter-spacing);
  line-height: var(--gl-heading-3-fixed-line-height);
  margin-bottom: var(--gl-heading-3-fixed-margin-bottom);
  color: var(--gl-heading-3-fixed-color);
  margin-top: var(--gl-spacing-scale-6);
}
.gl-compact-markdown h4,
.gl-compact-markdown .gl-h4{
  font-weight: var(--gl-heading-4-fixed-font-weight);
  margin-top: var(--gl-heading-4-fixed-margin-top);
  font-size: var(--gl-heading-4-fixed-font-size);
  letter-spacing: var(--gl-heading-4-fixed-letter-spacing);
  line-height: var(--gl-heading-4-fixed-line-height);
  margin-bottom: var(--gl-heading-4-fixed-margin-bottom);
  color: var(--gl-heading-4-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.gl-compact-markdown h5,
.gl-compact-markdown .gl-h5{
  font-weight: var(--gl-heading-5-fixed-font-weight);
  margin-top: var(--gl-heading-5-fixed-margin-top);
  font-size: var(--gl-heading-5-fixed-font-size);
  letter-spacing: var(--gl-heading-5-fixed-letter-spacing);
  line-height: var(--gl-heading-5-fixed-line-height);
  margin-bottom: var(--gl-heading-5-fixed-margin-bottom);
  color: var(--gl-heading-5-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.gl-compact-markdown h6,
.gl-compact-markdown .gl-h6{
  font-weight: var(--gl-heading-6-fixed-font-weight);
  margin-top: var(--gl-heading-6-fixed-margin-top);
  font-size: var(--gl-heading-6-fixed-font-size);
  letter-spacing: var(--gl-heading-6-fixed-letter-spacing);
  line-height: var(--gl-heading-6-fixed-line-height);
  margin-bottom: var(--gl-heading-6-fixed-margin-bottom);
  color: var(--gl-heading-6-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.gl-compact-markdown .sm{
  font-size: var(--gl-font-size-sm);
}
.gl-compact-markdown .monospace,
.gl-compact-markdown code{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
}
.gl-compact-markdown table th,
.gl-compact-markdown table td{
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
}

body.modal-open{
  overflow: hidden;
}

.gl-modal{
  container-type: inline-size;
  container-name: gl-modal;
}
@media (min-width: 576px) {
  .gl-modal .modal-dialog-scrollable {
    max-height: calc(100% - 8rem);
  }
}
.gl-modal .modal-sm {
  max-width: 32rem;
}
.gl-modal .modal-md {
  max-width: 48rem;
}
.gl-modal .modal-lg {
  max-width: 61.875rem;
}
.gl-modal .modal-xl {
  max-width: 98%;
}
.gl-modal .modal-content{
  border-width: 0px;
  --tw-shadow: var(--gl-shadow-lg);
  --tw-shadow-colored: var(--gl-shadow-lg);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  color: var(--gl-text-color-default);
  background-color: var(--gl-background-color-overlap);
  border-radius: var(--gl-modal-border-radius);
}
.gl-modal .modal-content > :first-child {
  border-top-left-radius: var(--gl-modal-border-radius);
  border-top-right-radius: var(--gl-modal-border-radius);
}
.gl-modal .modal-content > :last-child {
  border-bottom-left-radius: var(--gl-modal-border-radius);
  border-bottom-right-radius: var(--gl-modal-border-radius);
}
.gl-modal .modal-header{
  padding-bottom: var(--gl-spacing-scale-3);
  border-style: none;
}
.gl-modal .modal-header .modal-title{
  font-weight: var(--gl-heading-scale-500-font-weight);
  margin-top: var(--gl-heading-scale-500-margin-top);
  font-size: var(--gl-heading-scale-500-font-size);
  letter-spacing: var(--gl-heading-scale-500-letter-spacing);
  line-height: var(--gl-heading-scale-500-line-height);
  color: var(--gl-heading-scale-500-color);
}
.gl-modal .modal-body {
  min-height: 80px;
  line-height: 1.5;
  position: relative;
  padding: var(--gl-spacing-scale-5);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  text-align: left;
  white-space: normal;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-modal .modal-body{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-modal .modal-body{
  line-height: var(--gl-line-height-20);
}
.gl-modal .modal-footer{
  display: flex;
  flex-direction: row;
  padding: var(--gl-spacing-scale-5);
  padding-top: var(--gl-spacing-scale-3);
  border-style: none;
}
.gl-modal .modal-footer .btn{
  margin: var(--gl-spacing-scale-0);
}
.gl-modal .modal-footer .btn + .btn:not(.dropdown-toggle-split),
.gl-modal .modal-footer .btn + .btn-group,
.gl-modal .modal-footer .btn-group + .btn{
  margin-left: var(--gl-spacing-scale-3);
}
.gl-modal .modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
@media (max-width: 575.98px) {
  .gl-modal .modal-footer{
    flex-direction: column;
  }
  .gl-modal .modal-footer .btn + .btn:not(.dropdown-toggle-split),
  .gl-modal .modal-footer .btn + .btn-group,
  .gl-modal .modal-footer .btn-group + .btn{
    margin-left: var(--gl-spacing-scale-0);
    margin-top: var(--gl-spacing-scale-3);
  }
  .gl-modal .modal-footer .btn-group .btn + .btn {
    margin-left: -1px;
    margin-top: var(--gl-spacing-scale-0);
  }
}
.gl-modal ~ .modal-backdrop{
  background-color: var(--gl-background-color-overlay);
  opacity: 1;
}
@media (min-width: 576px) {
  .gl-modal .modal-dialog{
    margin-left: auto;
    margin-right: auto;
    margin-top: var(--gl-spacing-scale-0);
    margin-bottom: var(--gl-spacing-scale-0);
    display: flex;
    align-items: center;
    min-height: calc(100% - 1rem);
  }
}

.gl-nav-item{
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-1);
  padding-bottom: var(--gl-spacing-scale-1);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  width: 100%;
}

 .modal-header .modal-title.gl-nav-item {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-nav-item{
  text-decoration-line: none;
  text-align: left;
  border-style: none;
  cursor: pointer;
  appearance: none;
}

.gl-nav-item:focus-visible{
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}

.gl-nav-item {
  min-height: 1.75rem;
  min-width: 1.75rem;
  border-radius: var(--gl-nav-item-border-radius);
  font-size: var(--gl-nav-item-font-size);
  font-weight: var(--gl-nav-item-font-weight);
  color: var(--gl-nav-item-foreground-color-default);
  background-color: var(--gl-nav-item-background-color-default);
}
.gl-nav-item.gl-nav-item-has-start-slot{
  padding-left: var(--gl-spacing-scale-2);
}
.gl-nav-item.gl-nav-item-has-end-slot{
  padding-right: var(--gl-spacing-scale-2);
}
.gl-nav-item.gl-nav-item-is-icon-only{
  padding-left: var(--gl-spacing-scale-1);
  padding-right: var(--gl-spacing-scale-1);
}
.gl-nav-item:hover{
  text-decoration-line: none;
  color: var(--gl-nav-item-foreground-color-hover);
  background-color: var(--gl-nav-item-background-color-hover);
}
.gl-nav-item:focus-visible {
  color: var(--gl-nav-item-foreground-color-focus);
  background-color: var(--gl-nav-item-background-color-focus);
}
.gl-nav-item:active, .gl-nav-item:focus-visible:active {
  color: var(--gl-nav-item-foreground-color-active);
  background-color: var(--gl-nav-item-background-color-active);
}
.gl-nav-item.selected {
  font-weight: var(--gl-nav-item-selected-font-weight);
  color: var(--gl-nav-item-selected-foreground-color-default);
  background-color: var(--gl-nav-item-selected-background-color-default);
}
.gl-nav-item.selected:hover {
  color: var(--gl-nav-item-selected-foreground-color-hover);
  background-color: var(--gl-nav-item-selected-background-color-hover);
}
.gl-nav-item.selected:focus-visible {
  color: var(--gl-nav-item-selected-foreground-color-focus);
  background-color: var(--gl-nav-item-selected-background-color-focus);
}
.gl-nav-item.selected:active, .gl-nav-item.selected:focus-visible:active {
  color: var(--gl-nav-item-selected-foreground-color-active);
  background-color: var(--gl-nav-item-selected-background-color-active);
}

.gl-nav-item.selected::before{
  position: absolute;
  content: "";
  background-color: var(--gl-nav-item-selected-indicator-color);
}

.gl-nav-item-indicator-left.selected::before{
  left: calc(var(--gl-spacing-scale-3) * -1);
  top: var(--gl-spacing-scale-2);
  bottom: var(--gl-spacing-scale-2);
  width: var(--gl-spacing-scale-1);
  border-top-right-radius: var(--gl-border-radius-default);
  border-bottom-right-radius: var(--gl-border-radius-default);
}

.gl-nav-item-indicator-right.selected::before{
  right: calc(var(--gl-spacing-scale-3) * -1);
  top: var(--gl-spacing-scale-2);
  bottom: var(--gl-spacing-scale-2);
  width: var(--gl-spacing-scale-1);
  border-top-left-radius: var(--gl-border-radius-default);
  border-bottom-left-radius: var(--gl-border-radius-default);
}

.gl-nav-item-indicator-bottom.selected::before{
  bottom: calc(var(--gl-spacing-scale-3) * -1);
  left: var(--gl-spacing-scale-2);
  right: var(--gl-spacing-scale-2);
  height: var(--gl-spacing-scale-1);
  border-top-left-radius: var(--gl-border-radius-default);
  border-top-right-radius: var(--gl-border-radius-default);
}

.gl-nav-item-slot{
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--gl-spacing-scale-6);
  width: var(--gl-spacing-scale-6);
  flex-shrink: 0;
}

.gl-nav-item-label{
  flex-grow: 1;
}

.gl-nav-item-chevron{
  margin: auto;
  color: var(--gl-text-color-subtle);
}

/*
 * Button-specific utilities
 */
.gl-button{
  display: inline-flex;
}
.commit-content .committer.gl-button {
  gap: 0.5ch;
}

.gl-button:not(.btn-link):focus-visible, .gl-button:not(.btn-link):active, .gl-button:not(.btn-link):focus-visible:active{
  text-decoration-line: none;
}

.gl-button.gl-button {
  border-radius: var(--gl-button-border-radius);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  background-color: var(--gl-button-default-primary-background-color-default);
  line-height: 1rem;
  color: var(--gl-button-default-primary-foreground-color-default);
  fill: currentColor;
  justify-content: center;
  align-items: center;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-button.gl-button{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-button.gl-button{
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  border: 1px solid var(--gl-button-default-primary-border-color-default);
  min-height: 2rem;
  min-width: 2rem;
  transition: color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), text-decoration-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (prefers-reduced-motion) {
  .gl-button.gl-button {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.gl-button.gl-button:focus-visible, .gl-button.gl-button:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-button.gl-button .gl-button-text{
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  padding-top: 1px;
  padding-bottom: 1px;
  margin-top: -1px;
  margin-bottom: -1px;
}
.gl-button.gl-button .gl-button-icon{
  height: var(--gl-spacing-scale-5);
  width: var(--gl-spacing-scale-5);
  flex-shrink: 0;
  margin-right: var(--gl-spacing-scale-2);
  top: auto;
}
.gl-button.gl-button .gl-button-count{
  display: inline-flex;
}
.commit-content .committer.gl-button.gl-button .gl-button-count {
  gap: 0.5ch;
}
.gl-button.gl-button .gl-button-count{
  align-items: center;
  justify-content: center;
  font-size: var(--gl-font-size-sm);
  font-weight: var(--gl-font-weight-normal);
  line-height: 1rem;
  margin-left: var(--gl-spacing-scale-2);
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  flex-shrink: 0;
  border-width: 1px;
  border-style: solid;
  border-color: var(--gl-border-color-transparent);
  border-radius: var(--gl-border-radius-full);
  min-width: var(--gl-spacing-scale-3);
  background-color: var(--gl-button-count-background-color);
}
.gl-button.gl-button gl-emoji{
  margin-right: var(--gl-spacing-scale-2);
  position: relative;
  font-size: var(--gl-font-size-lg);
}
.gl-button.gl-button.btn-default, .gl-button.gl-button.btn-default-secondary {
  color: var(--gl-button-default-primary-foreground-color-default);
  background-color: var(--gl-button-default-primary-background-color-default);
  border-color: var(--gl-button-default-primary-border-color-default);
}
.gl-button.gl-button.btn-default::before, .gl-button.gl-button.btn-default-secondary::before {
  background-color: var(--gl-button-default-primary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-button.gl-button.btn-default:hover, .gl-button.gl-button.btn-default-secondary:hover {
  color: var(--gl-button-default-primary-foreground-color-hover);
  background-color: var(--gl-button-default-primary-background-color-hover);
  border-color: var(--gl-button-default-primary-border-color-hover);
}
.gl-button.gl-button.btn-default:focus-visible, .gl-button.gl-button.btn-default-secondary:focus-visible {
  color: var(--gl-button-default-primary-foreground-color-focus);
  background-color: var(--gl-button-default-primary-background-color-focus);
  border-color: var(--gl-button-default-primary-border-color-focus);
}
.gl-button.gl-button.btn-default:active, .gl-button.gl-button.btn-default.active, .gl-button.gl-button.btn-default-secondary:active, .gl-button.gl-button.btn-default-secondary.active {
  color: var(--gl-button-default-primary-foreground-color-active);
  background-color: var(--gl-button-default-primary-background-color-active);
  border-color: var(--gl-button-default-primary-border-color-active);
}
.gl-button.gl-button.btn-default:active :focus-visible, .gl-button.gl-button.btn-default:active:focus-visible:active, .gl-button.gl-button.btn-default.active :focus-visible, .gl-button.gl-button.btn-default.active:focus-visible:active, .gl-button.gl-button.btn-default-secondary:active :focus-visible, .gl-button.gl-button.btn-default-secondary:active:focus-visible:active, .gl-button.gl-button.btn-default-secondary.active :focus-visible, .gl-button.gl-button.btn-default-secondary.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-button.gl-button.btn-default.selected, .gl-button.gl-button.btn-default-secondary.selected {
  color: var(--gl-button-selected-foreground-color-default);
  background-color: var(--gl-button-selected-background-color-default);
}
.gl-button.gl-button.btn-default.selected::before, .gl-button.gl-button.btn-default-secondary.selected::before {
  width: 2px !important;
}
.gl-button.gl-button.btn-default.selected::before,
.gl-button.gl-button.btn-default.selected + .gl-button::before, .gl-button.gl-button.btn-default-secondary.selected::before,
.gl-button.gl-button.btn-default-secondary.selected + .gl-button::before {
  background-color: var(--gl-button-selected-border-color-default);
}
.gl-button.gl-button.btn-default.selected, .gl-button.gl-button.btn-default-secondary.selected {
  border-width: 1px;
  border-color: var(--gl-button-selected-border-color-default);
  box-shadow: inset 0 0 0 1px var(--gl-button-selected-border-color-default);
}
.gl-button.gl-button.btn-default.selected:hover, .gl-button.gl-button.btn-default-secondary.selected:hover {
  color: var(--gl-button-selected-foreground-color-hover);
  background-color: var(--gl-button-selected-background-color-hover);
  border-color: var(--gl-button-selected-border-color-hover);
  box-shadow: inset 0 0 0 1px var(--gl-button-selected-border-color-hover);
}
.gl-button.gl-button.btn-default.selected:hover::before, .gl-button.gl-button.btn-default.selected:hover + .gl-button::before, .gl-button.gl-button.btn-default-secondary.selected:hover::before, .gl-button.gl-button.btn-default-secondary.selected:hover + .gl-button::before {
  background-color: var(--gl-button-selected-border-color-hover);
}
.gl-button.gl-button.btn-default.selected:focus-visible, .gl-button.gl-button.btn-default-secondary.selected:focus-visible {
  color: var(--gl-button-selected-foreground-color-focus);
  background-color: var(--gl-button-selected-background-color-focus);
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
  border-color: var(--gl-button-selected-border-color-focus);
}
.gl-button.gl-button.btn-default.selected:focus-visible::before, .gl-button.gl-button.btn-default.selected:focus-visible + .gl-button::before, .gl-button.gl-button.btn-default-secondary.selected:focus-visible::before, .gl-button.gl-button.btn-default-secondary.selected:focus-visible + .gl-button::before {
  background-color: var(--gl-button-selected-border-color-focus);
}
.gl-button.gl-button.btn-default.selected:active, .gl-button.gl-button.btn-default.selected.active, .gl-button.gl-button.btn-default-secondary.selected:active, .gl-button.gl-button.btn-default-secondary.selected.active {
  color: var(--gl-button-selected-foreground-color-active);
  background-color: var(--gl-button-selected-background-color-active);
  box-shadow: inset 0 0 0 1px var(--gl-button-selected-border-color-active);
  border-color: var(--gl-button-selected-border-color-active);
}
.gl-button.gl-button.btn-default.selected:active::before, .gl-button.gl-button.btn-default.selected.active::before, .gl-button.gl-button.btn-default.selected:active + .gl-button::before, .gl-button.gl-button.btn-default.selected.active + .gl-button::before, .gl-button.gl-button.btn-default-secondary.selected:active::before, .gl-button.gl-button.btn-default-secondary.selected.active::before, .gl-button.gl-button.btn-default-secondary.selected:active + .gl-button::before, .gl-button.gl-button.btn-default-secondary.selected.active + .gl-button::before {
  background-color: var(--gl-button-selected-border-color-active);
}
.gl-button.gl-button.btn-reset::before {
  background-color: var(--gl-button-default-primary-border-color-default);
}
.gl-button.gl-button.btn-default-tertiary {
  color: var(--gl-button-default-tertiary-foreground-color-default);
  background-color: var(--gl-button-default-tertiary-background-color-default);
  border-color: var(--gl-button-default-tertiary-border-color-default);
}
.gl-button.gl-button.btn-default-tertiary::before {
  background-color: var(--gl-button-default-tertiary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-button.gl-button.btn-default-tertiary:hover {
  color: var(--gl-button-default-tertiary-foreground-color-hover);
  background-color: var(--gl-button-default-tertiary-background-color-hover);
  border-color: var(--gl-button-default-tertiary-border-color-hover);
}
.gl-button.gl-button.btn-default-tertiary:focus-visible {
  color: var(--gl-button-default-tertiary-foreground-color-focus);
  background-color: var(--gl-button-default-tertiary-background-color-focus);
  border-color: var(--gl-button-default-tertiary-border-color-focus);
}
.gl-button.gl-button.btn-default-tertiary:active, .gl-button.gl-button.btn-default-tertiary.active {
  color: var(--gl-button-default-tertiary-foreground-color-active);
  background-color: var(--gl-button-default-tertiary-background-color-active);
  border-color: var(--gl-button-default-tertiary-border-color-active);
}
.gl-button.gl-button.btn-default-tertiary:active :focus-visible, .gl-button.gl-button.btn-default-tertiary:active:focus-visible:active, .gl-button.gl-button.btn-default-tertiary.active :focus-visible, .gl-button.gl-button.btn-default-tertiary.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-button.gl-button.btn-confirm {
  color: var(--gl-button-confirm-primary-foreground-color-default);
  background-color: var(--gl-button-confirm-primary-background-color-default);
  border-color: var(--gl-button-confirm-primary-border-color-default);
}
.gl-button.gl-button.btn-confirm::before {
  background-color: var(--gl-button-confirm-primary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-button.gl-button.btn-confirm:hover {
  color: var(--gl-button-confirm-primary-foreground-color-hover);
  background-color: var(--gl-button-confirm-primary-background-color-hover);
  border-color: var(--gl-button-confirm-primary-border-color-hover);
}
.gl-button.gl-button.btn-confirm:focus-visible {
  color: var(--gl-button-confirm-primary-foreground-color-focus);
  background-color: var(--gl-button-confirm-primary-background-color-focus);
  border-color: var(--gl-button-confirm-primary-border-color-focus);
}
.gl-button.gl-button.btn-confirm:active, .gl-button.gl-button.btn-confirm.active {
  color: var(--gl-button-confirm-primary-foreground-color-active);
  background-color: var(--gl-button-confirm-primary-background-color-active);
  border-color: var(--gl-button-confirm-primary-border-color-active);
}
.gl-button.gl-button.btn-confirm:active :focus-visible, .gl-button.gl-button.btn-confirm:active:focus-visible:active, .gl-button.gl-button.btn-confirm.active :focus-visible, .gl-button.gl-button.btn-confirm.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-button.gl-button.btn-confirm-secondary {
  color: var(--gl-button-confirm-secondary-foreground-color-default);
  background-color: var(--gl-button-confirm-secondary-background-color-default);
  border-color: var(--gl-button-confirm-secondary-border-color-default);
}
.gl-button.gl-button.btn-confirm-secondary::before {
  background-color: var(--gl-button-confirm-secondary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-button.gl-button.btn-confirm-secondary:hover {
  color: var(--gl-button-confirm-secondary-foreground-color-hover);
  background-color: var(--gl-button-confirm-secondary-background-color-hover);
  border-color: var(--gl-button-confirm-secondary-border-color-hover);
}
.gl-button.gl-button.btn-confirm-secondary:focus-visible {
  color: var(--gl-button-confirm-secondary-foreground-color-focus);
  background-color: var(--gl-button-confirm-secondary-background-color-focus);
  border-color: var(--gl-button-confirm-secondary-border-color-focus);
}
.gl-button.gl-button.btn-confirm-secondary:active, .gl-button.gl-button.btn-confirm-secondary.active {
  color: var(--gl-button-confirm-secondary-foreground-color-active);
  background-color: var(--gl-button-confirm-secondary-background-color-active);
  border-color: var(--gl-button-confirm-secondary-border-color-active);
}
.gl-button.gl-button.btn-confirm-secondary:active :focus-visible, .gl-button.gl-button.btn-confirm-secondary:active:focus-visible:active, .gl-button.gl-button.btn-confirm-secondary.active :focus-visible, .gl-button.gl-button.btn-confirm-secondary.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-button.gl-button.btn-confirm-tertiary {
  color: var(--gl-button-confirm-tertiary-foreground-color-default);
  background-color: var(--gl-button-confirm-tertiary-background-color-default);
  border-color: var(--gl-button-confirm-tertiary-border-color-default);
}
.gl-button.gl-button.btn-confirm-tertiary::before {
  background-color: var(--gl-button-confirm-tertiary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-button.gl-button.btn-confirm-tertiary:hover {
  color: var(--gl-button-confirm-tertiary-foreground-color-hover);
  background-color: var(--gl-button-confirm-tertiary-background-color-hover);
  border-color: var(--gl-button-confirm-tertiary-border-color-hover);
}
.gl-button.gl-button.btn-confirm-tertiary:focus-visible {
  color: var(--gl-button-confirm-tertiary-foreground-color-focus);
  background-color: var(--gl-button-confirm-tertiary-background-color-focus);
  border-color: var(--gl-button-confirm-tertiary-border-color-focus);
}
.gl-button.gl-button.btn-confirm-tertiary:active, .gl-button.gl-button.btn-confirm-tertiary.active {
  color: var(--gl-button-confirm-tertiary-foreground-color-active);
  background-color: var(--gl-button-confirm-tertiary-background-color-active);
  border-color: var(--gl-button-confirm-tertiary-border-color-active);
}
.gl-button.gl-button.btn-confirm-tertiary:active :focus-visible, .gl-button.gl-button.btn-confirm-tertiary:active:focus-visible:active, .gl-button.gl-button.btn-confirm-tertiary.active :focus-visible, .gl-button.gl-button.btn-confirm-tertiary.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-button.gl-button.btn-danger {
  color: var(--gl-button-danger-primary-foreground-color-default);
  background-color: var(--gl-button-danger-primary-background-color-default);
  border-color: var(--gl-button-danger-primary-border-color-default);
}
.gl-button.gl-button.btn-danger::before {
  background-color: var(--gl-button-danger-primary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-button.gl-button.btn-danger:hover {
  color: var(--gl-button-danger-primary-foreground-color-hover);
  background-color: var(--gl-button-danger-primary-background-color-hover);
  border-color: var(--gl-button-danger-primary-border-color-hover);
}
.gl-button.gl-button.btn-danger:focus-visible {
  color: var(--gl-button-danger-primary-foreground-color-focus);
  background-color: var(--gl-button-danger-primary-background-color-focus);
  border-color: var(--gl-button-danger-primary-border-color-focus);
}
.gl-button.gl-button.btn-danger:active, .gl-button.gl-button.btn-danger.active {
  color: var(--gl-button-danger-primary-foreground-color-active);
  background-color: var(--gl-button-danger-primary-background-color-active);
  border-color: var(--gl-button-danger-primary-border-color-active);
}
.gl-button.gl-button.btn-danger:active :focus-visible, .gl-button.gl-button.btn-danger:active:focus-visible:active, .gl-button.gl-button.btn-danger.active :focus-visible, .gl-button.gl-button.btn-danger.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-button.gl-button.btn-danger-secondary {
  color: var(--gl-button-danger-secondary-foreground-color-default);
  background-color: var(--gl-button-danger-secondary-background-color-default);
  border-color: var(--gl-button-danger-secondary-border-color-default);
}
.gl-button.gl-button.btn-danger-secondary::before {
  background-color: var(--gl-button-danger-secondary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-button.gl-button.btn-danger-secondary:hover {
  color: var(--gl-button-danger-secondary-foreground-color-hover);
  background-color: var(--gl-button-danger-secondary-background-color-hover);
  border-color: var(--gl-button-danger-secondary-border-color-hover);
}
.gl-button.gl-button.btn-danger-secondary:focus-visible {
  color: var(--gl-button-danger-secondary-foreground-color-focus);
  background-color: var(--gl-button-danger-secondary-background-color-focus);
  border-color: var(--gl-button-danger-secondary-border-color-focus);
}
.gl-button.gl-button.btn-danger-secondary:active, .gl-button.gl-button.btn-danger-secondary.active {
  color: var(--gl-button-danger-secondary-foreground-color-active);
  background-color: var(--gl-button-danger-secondary-background-color-active);
  border-color: var(--gl-button-danger-secondary-border-color-active);
}
.gl-button.gl-button.btn-danger-secondary:active :focus-visible, .gl-button.gl-button.btn-danger-secondary:active:focus-visible:active, .gl-button.gl-button.btn-danger-secondary.active :focus-visible, .gl-button.gl-button.btn-danger-secondary.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-button.gl-button.btn-danger-tertiary {
  color: var(--gl-button-danger-tertiary-foreground-color-default);
  background-color: var(--gl-button-danger-tertiary-background-color-default);
  border-color: var(--gl-button-danger-tertiary-border-color-default);
}
.gl-button.gl-button.btn-danger-tertiary::before {
  background-color: var(--gl-button-danger-tertiary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-button.gl-button.btn-danger-tertiary:hover {
  color: var(--gl-button-danger-tertiary-foreground-color-hover);
  background-color: var(--gl-button-danger-tertiary-background-color-hover);
  border-color: var(--gl-button-danger-tertiary-border-color-hover);
}
.gl-button.gl-button.btn-danger-tertiary:focus-visible {
  color: var(--gl-button-danger-tertiary-foreground-color-focus);
  background-color: var(--gl-button-danger-tertiary-background-color-focus);
  border-color: var(--gl-button-danger-tertiary-border-color-focus);
}
.gl-button.gl-button.btn-danger-tertiary:active, .gl-button.gl-button.btn-danger-tertiary.active {
  color: var(--gl-button-danger-tertiary-foreground-color-active);
  background-color: var(--gl-button-danger-tertiary-background-color-active);
  border-color: var(--gl-button-danger-tertiary-border-color-active);
}
.gl-button.gl-button.btn-danger-tertiary:active :focus-visible, .gl-button.gl-button.btn-danger-tertiary:active:focus-visible:active, .gl-button.gl-button.btn-danger-tertiary.active :focus-visible, .gl-button.gl-button.btn-danger-tertiary.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-button.gl-button.btn-default-secondary, .gl-button.gl-button.btn-confirm-secondary, .gl-button.gl-button.btn-danger-secondary, .gl-button.gl-button.btn-reset-secondary, .gl-button.gl-button.btn-reset-tertiary {
    color: LinkText;
    border: 1px solid LinkText;
  }
  .gl-button.gl-button.btn-default-tertiary, .gl-button.gl-button.btn-confirm-tertiary, .gl-button.gl-button.btn-danger-tertiary {
    color: LinkText;
    mix-blend-mode: initial;
    border: 0;
  }
}
.gl-button.gl-button.btn-sm, .btn-group-sm > .gl-button.gl-button.btn{
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  line-height: 1rem;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-button.gl-button.btn-sm,.recents-wrapper  .btn-group-sm > .gl-button.gl-button.btn{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-button.gl-button.btn-sm, .btn-group-sm > .gl-button.gl-button.btn {
  min-height: 1.5rem;
  min-width: 1.5rem;
}
.gl-button.gl-button.btn-sm gl-emoji, .btn-group-sm > .gl-button.gl-button.btn gl-emoji{
  font-size: var(--gl-font-size-sm);
}
.gl-button.gl-button.btn-icon{
  line-height: 1rem;
  padding: var(--gl-spacing-scale-0);
}
.gl-button.gl-button.btn-icon .gl-button-icon{
  margin-right: var(--gl-spacing-scale-0);
}
.gl-button.gl-button.button-ellipsis-horizontal, .gl-button.gl-button.button-ellipsis-horizontal.btn-sm{
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  min-height: auto;
  min-width: auto;
}
.gl-button.gl-button.button-ellipsis-horizontal svg, .gl-button.gl-button.button-ellipsis-horizontal.btn-sm svg{
  height: var(--gl-spacing-scale-5);
  width: var(--gl-spacing-scale-5);
  margin: var(--gl-spacing-scale-0);
}
.gl-button.gl-button.btn-label, .gl-button.gl-button.btn-label:hover, .gl-button.gl-button.btn-label:focus-visible, .gl-button.gl-button.btn-label:active{
  background-color: var(--gl-background-color-subtle);
  cursor: default;
  -webkit-user-select: text;
          user-select: text;
}
.gl-button.gl-button.btn-link{
  background-color: transparent;
  border-width: 0px;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-button.gl-button.btn-link{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-button.gl-button.btn-link{
  line-height: 1rem;
  padding-left: var(--gl-spacing-scale-0);
  padding-right: var(--gl-spacing-scale-0);
  border-radius: var(--gl-button-link-border-radius);
  color: var(--gl-button-link-text-color-default);
  min-height: auto;
  min-width: auto;
  text-decoration-thickness: auto;
  text-decoration-style: solid;
  text-decoration-color: transparent;
}
.gl-button.gl-button.btn-link:hover{
  background-color: transparent;
  color: var(--gl-button-link-text-color-hover);
  text-decoration-color: var(--gl-button-link-text-color-hover);
}
.gl-button.gl-button.btn-link:active {
  color: var(--gl-button-link-text-color-active);
  text-decoration-color: var(--gl-button-link-text-color-active);
}
.gl-button.gl-button.btn-link:active, .gl-button.gl-button.btn-link:focus-visible, .gl-button.gl-button.btn-link:focus-visible:active{
  background-color: transparent;
}
@media (forced-colors: active) {
  .gl-button.gl-button.btn-link {
    color: LinkText;
  }
}
.gl-button.gl-button.btn-block{
  width: 100%;
}
 .modal-header .modal-title.gl-button.gl-button.btn-block {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-button.gl-button.btn-block + .btn-block{
  margin-top: var(--gl-spacing-scale-2);
}
.gl-button.gl-button.disabled, .gl-button.gl-button.disabled:hover, .gl-button.gl-button.disabled:focus-visible, .gl-button.gl-button.disabled:active, .gl-button.gl-button.disabled.selected, .gl-button.gl-button[disabled], .gl-button.gl-button[disabled]:hover, .gl-button.gl-button[disabled]:focus-visible, .gl-button.gl-button[disabled]:active, .gl-button.gl-button[disabled].selected {
  background-color: var(--gl-button-disabled-background-color);
  color: var(--gl-button-disabled-foreground-color);
  border-color: var(--gl-button-disabled-border-color);
  opacity: 1;
  cursor: not-allowed !important;
}
.gl-button.gl-button.disabled::before, .gl-button.gl-button.disabled:hover::before, .gl-button.gl-button.disabled:focus-visible::before, .gl-button.gl-button.disabled:active::before, .gl-button.gl-button.disabled.selected::before, .gl-button.gl-button[disabled]::before, .gl-button.gl-button[disabled]:hover::before, .gl-button.gl-button[disabled]:focus-visible::before, .gl-button.gl-button[disabled]:active::before, .gl-button.gl-button[disabled].selected::before {
  background-color: var(--gl-button-disabled-border-color);
}
.gl-button.gl-button.disabled[class*=-tertiary], .gl-button.gl-button[disabled][class*=-tertiary], .gl-button.gl-button.btn-link.disabled, .gl-button.gl-button.btn-link[disabled]{
  background-color: transparent;
}
.gl-button.gl-button.disabled[class*=-tertiary]:not(:focus-visible), .gl-button.gl-button[disabled][class*=-tertiary]:not(:focus-visible), .gl-button.gl-button.btn-link.disabled:not(:focus-visible), .gl-button.gl-button.btn-link[disabled]:not(:focus-visible){
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

.gl-button-text:has(.gl-sr-only) {
  position: relative;
}

.gl-button-group:not(.gl-keyset-pagination),
.btn-group:not(.gl-keyset-pagination),
.gl-dropdown.btn-group{
  position: relative;
}
.gl-button-group:not(.gl-keyset-pagination) > .gl-button:not(:first-child),
.gl-button-group:not(.gl-keyset-pagination) > .btn-group:not(:first-child) > .gl-button,
.gl-button-group:not(.gl-keyset-pagination) > .gl-new-dropdown:not(:first-child) > .gl-button,
.btn-group:not(.gl-keyset-pagination) > .gl-button:not(:first-child),
.btn-group:not(.gl-keyset-pagination) > .btn-group:not(:first-child) > .gl-button,
.btn-group:not(.gl-keyset-pagination) > .gl-new-dropdown:not(:first-child) > .gl-button,
.gl-dropdown.btn-group > .gl-button:not(:first-child),
.gl-dropdown.btn-group > .btn-group:not(:first-child) > .gl-button,
.gl-dropdown.btn-group > .gl-new-dropdown:not(:first-child) > .gl-button{
  border-top-left-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
  border-left-width: 0px;
}
.gl-button-group:not(.gl-keyset-pagination) > .gl-button:not(:last-child):not(.dropdown-toggle),
.gl-button-group:not(.gl-keyset-pagination) > .btn-group:not(:last-child) > .gl-button,
.gl-button-group:not(.gl-keyset-pagination) > .gl-new-dropdown:not(:last-child) > .gl-button,
.btn-group:not(.gl-keyset-pagination) > .gl-button:not(:last-child):not(.dropdown-toggle),
.btn-group:not(.gl-keyset-pagination) > .btn-group:not(:last-child) > .gl-button,
.btn-group:not(.gl-keyset-pagination) > .gl-new-dropdown:not(:last-child) > .gl-button,
.gl-dropdown.btn-group > .gl-button:not(:last-child):not(.dropdown-toggle),
.gl-dropdown.btn-group > .btn-group:not(:last-child) > .gl-button,
.gl-dropdown.btn-group > .gl-new-dropdown:not(:last-child) > .gl-button{
  border-top-right-radius: var(--gl-border-radius-none);
  border-bottom-right-radius: var(--gl-border-radius-none);
  border-right-width: 0px;
}
.gl-button-group:not(.gl-keyset-pagination) > .gl-button:not(:first-child),
.gl-button-group:not(.gl-keyset-pagination) > .btn-group:not(:first-child) > .gl-button,
.gl-button-group:not(.gl-keyset-pagination) > .gl-new-dropdown:not(:first-child) > .gl-button,
.btn-group:not(.gl-keyset-pagination) > .gl-button:not(:first-child),
.btn-group:not(.gl-keyset-pagination) > .btn-group:not(:first-child) > .gl-button,
.btn-group:not(.gl-keyset-pagination) > .gl-new-dropdown:not(:first-child) > .gl-button,
.gl-dropdown.btn-group > .gl-button:not(:first-child),
.gl-dropdown.btn-group > .btn-group:not(:first-child) > .gl-button,
.gl-dropdown.btn-group > .gl-new-dropdown:not(:first-child) > .gl-button{
  position: relative;
  isolation: isolate;
  margin-left: 1px;
}
.gl-button-group:not(.gl-keyset-pagination) > .gl-button:not(:first-child)::before,
.gl-button-group:not(.gl-keyset-pagination) > .btn-group:not(:first-child) > .gl-button::before,
.gl-button-group:not(.gl-keyset-pagination) > .gl-new-dropdown:not(:first-child) > .gl-button::before,
.btn-group:not(.gl-keyset-pagination) > .gl-button:not(:first-child)::before,
.btn-group:not(.gl-keyset-pagination) > .btn-group:not(:first-child) > .gl-button::before,
.btn-group:not(.gl-keyset-pagination) > .gl-new-dropdown:not(:first-child) > .gl-button::before,
.gl-dropdown.btn-group > .gl-button:not(:first-child)::before,
.gl-dropdown.btn-group > .btn-group:not(:first-child) > .gl-button::before,
.gl-dropdown.btn-group > .gl-new-dropdown:not(:first-child) > .gl-button::before {
  content: "";
  position: absolute;
  bottom: -1px;
  left: -1px;
  top: -1px;
  display: block;
  width: 1px;
  z-index: 4;
}
.gl-button-group:not(.gl-keyset-pagination) > .gl-button:focus-visible, .gl-button-group:not(.gl-keyset-pagination) > .gl-button:active, .gl-button-group:not(.gl-keyset-pagination) > .gl-button.active,
.btn-group:not(.gl-keyset-pagination) > .gl-button:focus-visible,
.btn-group:not(.gl-keyset-pagination) > .gl-button:active,
.btn-group:not(.gl-keyset-pagination) > .gl-button.active,
.gl-dropdown.btn-group > .gl-button:focus-visible,
.gl-dropdown.btn-group > .gl-button:active,
.gl-dropdown.btn-group > .gl-button.active {
  z-index: 3;
}
.gl-button-group:not(.gl-keyset-pagination) .btn-confirm:not(.disabled):not([disabled])::before,
.gl-button-group:not(.gl-keyset-pagination) .btn-danger:not(.disabled):not([disabled])::before,
.btn-group:not(.gl-keyset-pagination) .btn-confirm:not(.disabled):not([disabled])::before,
.btn-group:not(.gl-keyset-pagination) .btn-danger:not(.disabled):not([disabled])::before,
.gl-dropdown.btn-group .btn-confirm:not(.disabled):not([disabled])::before,
.gl-dropdown.btn-group .btn-danger:not(.disabled):not([disabled])::before{
  background-color: transparent;
}
.gl-button-group:not(.gl-keyset-pagination) .gl-button.btn-icon .gl-button-text .gl-button-icon,
.btn-group:not(.gl-keyset-pagination) .gl-button.btn-icon .gl-button-text .gl-button-icon,
.gl-dropdown.btn-group .gl-button.btn-icon .gl-button-text .gl-button-icon{
  margin-right: -1px;
}
.gl-button-group:not(.gl-keyset-pagination).disabled::before, .gl-button-group:not(.gl-keyset-pagination)[disabled]::before,
.btn-group:not(.gl-keyset-pagination).disabled::before,
.btn-group:not(.gl-keyset-pagination)[disabled]::before,
.gl-dropdown.btn-group.disabled::before,
.gl-dropdown.btn-group[disabled]::before {
  background-color: var(--gl-button-disabled-border-color);
}
.gl-button-group:not(.gl-keyset-pagination) .btn-confirm-secondary:not(.disabled):not([disabled])::before,
.btn-group:not(.gl-keyset-pagination) .btn-confirm-secondary:not(.disabled):not([disabled])::before,
.gl-dropdown.btn-group .btn-confirm-secondary:not(.disabled):not([disabled])::before {
  background-color: var(--gl-button-confirm-secondary-border-color-default);
}
.gl-button-group:not(.gl-keyset-pagination) .btn-danger-secondary:not(.disabled):not([disabled])::before,
.btn-group:not(.gl-keyset-pagination) .btn-danger-secondary:not(.disabled):not([disabled])::before,
.gl-dropdown.btn-group .btn-danger-secondary:not(.disabled):not([disabled])::before {
  background-color: var(--gl-button-danger-secondary-border-color-default);
}

.gl-button-group-vertical,
.btn-group-vertical{
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.gl-button-group-vertical > .gl-button,
.gl-button-group-vertical > .btn-group,
.btn-group-vertical > .gl-button,
.btn-group-vertical > .btn-group{
  position: relative;
  width: 100%;
}
 .modal-header .modal-title.gl-button-group-vertical > .gl-button, .modal-header .modal-title
.gl-button-group-vertical > .btn-group, .modal-header .modal-title
.btn-group-vertical > .gl-button, .modal-header .modal-title
.btn-group-vertical > .btn-group {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-button-group-vertical > .gl-button:not(:first-child),
.gl-button-group-vertical > .btn-group:not(:first-child) > .gl-button,
.gl-button-group-vertical > .gl-new-dropdown:not(:first-child) > .gl-button,
.btn-group-vertical > .gl-button:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .gl-button,
.btn-group-vertical > .gl-new-dropdown:not(:first-child) > .gl-button{
  border-top-left-radius: var(--gl-border-radius-none);
  border-top-right-radius: var(--gl-border-radius-none);
  border-top-width: 0px;
}
.gl-button-group-vertical > .gl-button:not(:last-child):not(.dropdown-toggle),
.gl-button-group-vertical > .btn-group:not(:last-child) > .gl-button,
.gl-button-group-vertical > .gl-new-dropdown:not(:last-child) > .gl-button,
.btn-group-vertical > .gl-button:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .gl-button,
.btn-group-vertical > .gl-new-dropdown:not(:last-child) > .gl-button{
  border-bottom-right-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
  border-bottom-width: 0px;
}
.gl-button-group-vertical > .gl-button:not(:first-child),
.gl-button-group-vertical > .btn-group:not(:first-child) > .gl-button,
.gl-button-group-vertical > .gl-new-dropdown:not(:first-child) > .gl-button,
.btn-group-vertical > .gl-button:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .gl-button,
.btn-group-vertical > .gl-new-dropdown:not(:first-child) > .gl-button{
  position: relative;
  margin-top: 1px;
}
.gl-button-group-vertical > .gl-button:not(:first-child)::before,
.gl-button-group-vertical > .btn-group:not(:first-child) > .gl-button::before,
.gl-button-group-vertical > .gl-new-dropdown:not(:first-child) > .gl-button::before,
.btn-group-vertical > .gl-button:not(:first-child)::before,
.btn-group-vertical > .btn-group:not(:first-child) > .gl-button::before,
.btn-group-vertical > .gl-new-dropdown:not(:first-child) > .gl-button::before {
  content: "";
  position: absolute;
  left: -1px;
  right: -1px;
  top: -1px;
  display: block;
  height: 1px;
  z-index: 4;
}
.gl-button-group-vertical .btn-confirm:not(.disabled):not([disabled])::before,
.gl-button-group-vertical .btn-danger:not(.disabled):not([disabled])::before,
.btn-group-vertical .btn-confirm:not(.disabled):not([disabled])::before,
.btn-group-vertical .btn-danger:not(.disabled):not([disabled])::before{
  background-color: transparent;
}

.gl-pagination{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-pagination{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-pagination{
  text-wrap: nowrap;
}
.gl-pagination ul {
  border-radius: var(--gl-action-border-radius);
  display: flex;
  margin: var(--gl-spacing-scale-0);
  padding-left: var(--gl-spacing-scale-0);
  list-style-type: none;
}
.gl-pagination a {
  color: var(--gl-action-neutral-foreground-color-default);
}

.gl-pagination-item {
  border-radius: var(--gl-action-border-radius);
  transition: color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
  display: flex;
  justify-content: center;
  padding: var(--gl-spacing-scale-3);
  line-height: 1rem;
  text-decoration-line: none;
  min-width: var(--gl-spacing-scale-7);
  text-align: center;
  border-width: 1px;
  border-style: solid;
  color: var(--gl-action-neutral-foreground-color-default);
  background-color: var(--gl-action-neutral-background-color-default);
  border-color: var(--gl-action-neutral-border-color-default);
}

.gl-pagination-item:hover{
  color: var(--gl-action-neutral-foreground-color-hover);
  background-color: var(--gl-action-neutral-background-color-hover);
  border-color: var(--gl-action-neutral-border-color-hover);
}

.gl-pagination-item:focus-visible{
  color: var(--gl-action-neutral-foreground-color-focus);
  background-color: var(--gl-action-neutral-background-color-focus);
  border-color: var(--gl-action-neutral-border-color-focus);
}

.gl-pagination-item:active{
  color: var(--gl-action-neutral-foreground-color-active);
  background-color: var(--gl-action-neutral-background-color-active);
  border-color: var(--gl-action-neutral-border-color-active);
}
@media (prefers-reduced-motion) {
  .gl-pagination-item {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.gl-pagination-item:hover{
  text-decoration-line: none;
}
.gl-pagination-item:focus-visible, .gl-pagination-item:active:focus-visible{
  text-decoration-line: none;
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-pagination-item:active{
  text-decoration-line: none;
}
.gl-pagination-item:not(.disabled).active {
  color: var(--gl-action-selected-foreground-color-default);
  background-color: var(--gl-action-selected-background-color-default);
  border-color: var(--gl-action-selected-border-color-default);
}
.gl-pagination-item:not(.disabled).active:hover {
  color: var(--gl-action-selected-foreground-color-hover);
  background-color: var(--gl-action-selected-background-color-hover);
  border-color: var(--gl-action-selected-border-color-hover);
}
.gl-pagination-item:not(.disabled).active:focus-visible {
  color: var(--gl-action-selected-foreground-color-focus);
  background-color: var(--gl-action-selected-background-color-focus);
  border-color: var(--gl-action-selected-border-color-focus);
}
.gl-pagination-item:not(.disabled).active:active {
  color: var(--gl-action-selected-foreground-color-active);
  background-color: var(--gl-action-selected-background-color-active);
  border-color: var(--gl-action-selected-border-color-active);
}

.gl-pagination .disabled .gl-pagination-item{
  border-color: var(--gl-border-color-transparent);
  background-color: transparent;
  color: var(--gl-action-disabled-foreground-color);
}

.gl-path-nav {
  position: relative;
  display: flex;
}
.gl-path-nav .gl-path-nav-list{
  padding: var(--gl-spacing-scale-1);
  margin: var(--gl-spacing-scale-0);
  list-style-type: none;
  display: inline-flex;
}
.commit-content .committer.gl-path-nav .gl-path-nav-list {
  gap: 0.5ch;
}
.gl-path-nav .gl-path-nav-list{
  overflow: hidden;
  margin-left: -1px;
  position: relative;
}
.gl-path-nav .gl-path-nav-list-item{
  min-width: -moz-fit-content;
  min-width: fit-content;
  padding-top: 1px;
  padding-bottom: 1px;
}
.gl-path-nav .gl-path-nav-list-item:first-of-type {
  padding-left: 1px;
}
.gl-path-nav .gl-path-button{
  padding-left: var(--gl-spacing-scale-5);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  display: flex;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-path-nav .gl-path-button{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-path-nav .gl-path-button{
  z-index: var(--gl-zindex-0);
  font-weight: var(--gl-font-weight-bold);
  line-height: 1rem;
  border-top-left-radius: var(--gl-border-radius-default);
  border-bottom-left-radius: var(--gl-border-radius-default);
  border-style: none;
  background-color: var(--gl-action-neutral-background-color-default);
  color: var(--gl-action-neutral-foreground-color-default);
  margin-right: 0.875rem;
  padding-right: 0.625rem;
  position: relative;
}
.gl-path-nav .gl-path-button::before, .gl-path-nav .gl-path-button::after{
  background-color: inherit;
  content: "";
  position: absolute;
  top: 0.25rem;
  right: -0.75rem;
  width: 1.5rem;
  z-index: -1;
  height: 1.5rem;
  transform: rotate(45deg) skew(14deg, 14deg);
  border-top-left-radius: 0.625rem;
  border-bottom-right-radius: 0.625rem;
  border-top-right-radius: 0.125rem;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
}
.gl-path-nav .gl-path-button::before {
  background-color: var(--gl-color-alpha-0);
  display: none;
  z-index: 2;
  right: calc(-0.75rem + 1px);
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0.5px -0.5px 0 2.5px var(--gl-focus-ring-outer-color);
  clip-path: polygon(0% 0%, 0% -30%, 160% 0%, 75% 130%, 100% 100%);
  transform: rotate(45deg) skew(14deg, 14deg) scale(0.99);
}
.gl-path-nav .gl-path-button:hover {
  background-color: var(--gl-action-neutral-background-color-hover);
  color: var(--gl-action-neutral-foreground-color-hover);
}
.gl-path-nav .gl-path-button:focus-visible {
  background-color: var(--gl-action-neutral-background-color-focus);
  color: var(--gl-action-neutral-foreground-color-focus);
}
.gl-path-nav .gl-path-button:active {
  background-color: var(--gl-action-neutral-background-color-active);
  color: var(--gl-action-neutral-foreground-color-active);
}
.gl-path-nav .gl-path-button:active, .gl-path-nav .gl-path-button:focus-visible, .gl-path-nav .gl-path-button:focus-visible:active {
  box-shadow: 5px -3px 0 -2px var(--gl-focus-ring-inner-color), 5px 3px 0 -2px var(--gl-focus-ring-inner-color), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
  border-top-right-radius: 1px;
  border-bottom-right-radius: 1px;
}
.gl-path-nav .gl-path-button:active::before, .gl-path-nav .gl-path-button:focus-visible::before, .gl-path-nav .gl-path-button:focus-visible:active::before {
  display: block;
}
.gl-path-nav .gl-path-button.gl-path-active-item {
  background-color: var(--gl-action-selected-background-color-default);
  color: var(--gl-action-selected-foreground-color-default);
}
.gl-path-nav .gl-path-button:disabled{
  cursor: not-allowed;
  background-color: var(--gl-color-alpha-0);
  box-shadow: none;
  color: var(--gl-action-disabled-foreground-color);
}
.gl-path-nav .gl-path-button:disabled::before {
  box-shadow: none;
}
.gl-path-nav .gl-path-fade{
  width: var(--gl-spacing-scale-8);
  height: 100%;
  z-index: var(--gl-zindex-2);
  bottom: 0;
  color: var(--gl-text-color-subtle);
  position: absolute;
}
.gl-path-nav .gl-path-fade-left {
  left: 0;
  background-image: linear-gradient(to left, rgba(255, 255, 255, 0), var(--path-bg-color) 33%);
}
.gl-path-nav .gl-path-fade-right {
  right: 0;
  text-align: right;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0), var(--path-bg-color) 33%);
}
.gl-path-nav .gl-clear-icon-button{
  padding: var(--gl-spacing-scale-0);
  height: 100%;
  color: var(--gl-icon-color-subtle);
}
.gl-path-nav .gl-clear-icon-button .gl-icon{
  vertical-align: middle;
}

.gl-popover {
  max-width: 17.5rem;
  background-color: var(--gl-background-color-overlap);
  border-style: none;
  --tw-drop-shadow: drop-shadow(0 0 0.5px var(--gl-shadow-color-default, #05050629)) drop-shadow(0 0.5px 1px var(--gl-shadow-color-default, #05050629)) drop-shadow(0 1px 3px var(--gl-shadow-color-default, #05050629));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  font-size: var(--gl-font-size-sm);
  border-radius: var(--gl-feedback-border-radius);
}
.gl-popover .popover-body{
  color: var(--gl-text-color-default);
}
.gl-popover.bs-popover-top, .gl-popover.bs-popover-auto[x-placement^=top] {
  /* When popover position is top, the arrow is translated 1 pixel
  *  due to the box-shadow include in our custom styles.
  */
}
.gl-popover.bs-popover-top > .arrow::before, .gl-popover.bs-popover-auto[x-placement^=top] > .arrow::before {
  bottom: 1px;
  border-top-color: var(--gl-background-color-overlap);
}
.gl-popover.bs-popover-top > .arrow::after, .gl-popover.bs-popover-auto[x-placement^=top] > .arrow::after {
  bottom: 2px;
  border-top-color: var(--gl-background-color-overlap);
}
.gl-popover.bs-popover-bottom > .arrow::before, .gl-popover.bs-popover-auto[x-placement^=bottom] > .arrow::before {
  top: 1px;
  border-bottom-color: var(--gl-background-color-overlap);
}
.gl-popover.bs-popover-bottom > .arrow::after, .gl-popover.bs-popover-auto[x-placement^=bottom] > .arrow::after {
  top: 2px;
  border-bottom-color: var(--gl-background-color-overlap);
}
.gl-popover.bs-popover-bottom > .popover-header::before, .gl-popover.bs-popover-auto[x-placement^=bottom] > .popover-header::before {
  border-color: var(--gl-background-color-overlap);
}
.gl-popover.bs-popover-right > .arrow::before, .gl-popover.bs-popover-auto[x-placement^=right] > .arrow::before {
  left: 1px;
  border-right-color: var(--gl-background-color-overlap);
}
.gl-popover.bs-popover-right > .arrow::after, .gl-popover.bs-popover-auto[x-placement^=right] > .arrow::after {
  left: 2px;
  border-right-color: var(--gl-background-color-overlap);
}
.gl-popover.bs-popover-left > .arrow::before, .gl-popover.bs-popover-auto[x-placement^=left] > .arrow::before {
  right: 1px;
  border-left-color: var(--gl-background-color-overlap);
}
.gl-popover.bs-popover-left > .arrow::after, .gl-popover.bs-popover-auto[x-placement^=left] > .arrow::after {
  right: 2px;
  border-left-color: var(--gl-background-color-overlap);
}
.gl-popover .popover-header{
  font-weight: var(--gl-heading-scale-200-font-weight);
  margin-top: var(--gl-heading-scale-200-margin-top);
  font-size: var(--gl-heading-scale-200-font-size);
  letter-spacing: var(--gl-heading-scale-200-letter-spacing);
  line-height: var(--gl-heading-scale-200-line-height);
  color: var(--gl-heading-scale-200-color);
  border-bottom-width: 0px;
  padding-bottom: var(--gl-spacing-scale-0);
}
.gl-popover.has-title .popover-header{
  hyphens: auto;
  overflow-wrap: anywhere;
  word-break: normal;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.gl-popover.has-close-button:not(.has-title) .popover-header {
  padding-top: 0.25rem;
}
.gl-popover .popover-body{
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
}
.gl-popover .popover-body > .popover-hr{
  margin-top: var(--gl-spacing-scale-5);
  margin-bottom: var(--gl-spacing-scale-5);
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
}

.gl-progress-bar {
  background-color: var(--gl-progress-bar-track-color);
  border-radius: var(--gl-border-radius-full);
}

.gl-progress{
  flex-direction: column;
  justify-content: center;
  width: 100%;
}

 .modal-header .modal-title.gl-progress {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-progress{
  overflow: hidden;
  text-align: center;
  white-space: nowrap;
  transition: transform 0.6s cubic-bezier(0.22, 0.61, 0.36, 1);
  transform-origin: left;
}

.gl-progress-bar-primary {
  background-color: var(--gl-progress-bar-indicator-color-default);
}

.gl-progress-bar-success {
  background-color: var(--gl-progress-bar-indicator-color-success);
}

.gl-progress-bar-warning {
  background-color: var(--gl-progress-bar-indicator-color-warning);
}

.gl-progress-bar-danger {
  background-color: var(--gl-progress-bar-indicator-color-danger);
}

.gl-search-box-by-type-search-icon{
  width: var(--gl-spacing-scale-5);
  position: absolute;
  left: 0.5rem;
  top: calc(50% - 16px / 2);
}

.gl-search-box-by-type{
  display: flex;
  position: relative;
}

.gl-search-box-by-type-loading-icon{
  fill: var(--gl-icon-color-subtle);
  width: var(--gl-spacing-scale-5);
  margin-right: var(--gl-spacing-scale-2);
}

.gl-search-box-by-type-clear{
  z-index: var(--gl-zindex-3);
}

.gl-search-box-by-type-input,
.gl-search-box-by-type-input.gl-form-input{
  height: var(--gl-spacing-scale-7);
  padding-right: var(--gl-spacing-scale-7);
  padding-left: 1.75rem;
}
.gl-search-box-by-type-input::-webkit-search-cancel-button,
.gl-search-box-by-type-input.gl-form-input::-webkit-search-cancel-button{
  display: none;
}

.gl-search-box-by-type-input-borderless,
.gl-search-box-by-type-input-borderless.gl-form-input{
  border-style: none;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-search-box-by-type-input-borderless,.recents-wrapper 
.gl-search-box-by-type-input-borderless.gl-form-input{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-search-box-by-type-input-borderless,
.gl-search-box-by-type-input-borderless.gl-form-input{
  height: auto;
  line-height: 1rem;
  padding-left: var(--gl-spacing-scale-7);
  padding-top: var(--gl-spacing-scale-4);
  padding-bottom: var(--gl-spacing-scale-4);
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  width: 100%;
}

 .modal-header .modal-title.gl-search-box-by-type-input-borderless, .modal-header .modal-title
.gl-search-box-by-type-input-borderless.gl-form-input {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-search-box-by-type-input-borderless,
.gl-search-box-by-type-input-borderless.gl-form-input {
  border-radius: 0;
  padding-right: calc(1.5rem + 0.25rem);
}
.gl-search-box-by-type-input-borderless:not(.form-control-plaintext):focus-visible,
.gl-search-box-by-type-input-borderless.gl-form-input:not(.form-control-plaintext):focus-visible {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-search-box-by-type-input-borderless:not(.form-control-plaintext):focus-visible,
  .gl-search-box-by-type-input-borderless.gl-form-input:not(.form-control-plaintext):focus-visible {
    outline: 2px solid LinkText;
  }
}
.gl-search-box-by-type-input-borderless::placeholder,
.gl-search-box-by-type-input-borderless.gl-form-input::placeholder {
  color: var(--gl-control-placeholder-color);
}
.gl-search-box-by-type-input-borderless::-webkit-search-cancel-button,
.gl-search-box-by-type-input-borderless.gl-form-input::-webkit-search-cancel-button{
  display: none;
}

.gl-search-box-by-type-right-icons{
  display: flex;
  align-items: center;
  line-height: 0;
  right: 0.25rem;
  position: absolute;
  height: 100%;
}

.gl-search-box-by-click{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-search-box-by-click{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-search-box-by-click .gl-search-box-by-click-history > .gl-button {
  padding-left: 0.75rem !important;
  padding-right: 0.5rem !important;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.gl-search-box-by-click .gl-search-box-by-click-history > .gl-button,
.gl-search-box-by-click .gl-search-box-by-click-search-button.gl-button {
  background-color: var(--gl-control-background-color-default);
  border-color: var(--gl-control-border-color-default) !important;
}
.gl-search-box-by-click .gl-search-box-by-click-history > .gl-button:disabled,
.gl-search-box-by-click .gl-search-box-by-click-search-button.gl-button:disabled {
  background: var(--gl-control-background-color-disabled);
  border-color: var(--gl-control-border-color-disabled) !important;
}
.gl-search-box-by-click .gl-search-box-by-click-input::-webkit-search-cancel-button{
  display: none;
}
.gl-search-box-by-click .gl-search-box-by-click-clear-button {
  position: absolute;
  top: 0.25rem;
  right: 0.25rem;
  margin-right: var(--gl-spacing-scale-2);
  z-index: var(--gl-zindex-3);
}

.gl-search-box-by-click-with-search-button .gl-search-box-by-click-input{
  padding-right: var(--gl-spacing-scale-7);
}
.gl-search-box-by-click-with-search-button .gl-search-box-by-click-clear-button {
  right: 2rem;
}

.gl-skeleton-loader-default-container {
  width: 235px;
}

.gl-skeleton-loader-fill-background-color {
  fill: var(--gl-skeleton-loader-background-color);
}

.gl-skeleton-loader stop{
  opacity: var(--gl-opacity-10);
}
.gl-skeleton-loader .background-stop {
  stop-color: var(--gl-skeleton-loader-background-color);
}
.gl-skeleton-loader .shimmer-stop {
  stop-color: var(--gl-skeleton-loader-shimmer-color);
}

.gl-tabs-wrapper{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  position: relative;
  display: flex;
  flex-wrap: wrap;
  border-bottom-width: 1px;
}

.gl-tabs-nav{
  flex-grow: 1;
}

.gl-tab-nav-item {
  position: relative;
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  padding-top: var(--gl-spacing-scale-5);
  padding-bottom: var(--gl-spacing-scale-5);
  line-height: 1rem;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-tab-nav-item{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-tab-nav-item{
  display: flex;
  justify-content: center;
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  height: 100%;
  color: var(--gl-action-neutral-foreground-color-default);
  background-color: var(--gl-action-neutral-background-color-default);
  border-color: var(--gl-action-neutral-border-color-default);
}

.gl-tab-nav-item:hover{
  color: var(--gl-action-neutral-foreground-color-hover);
  background-color: var(--gl-action-neutral-background-color-hover);
  border-color: var(--gl-action-neutral-border-color-hover);
}

.gl-tab-nav-item:focus-visible{
  color: var(--gl-action-neutral-foreground-color-focus);
  background-color: var(--gl-action-neutral-background-color-focus);
  border-color: var(--gl-action-neutral-border-color-focus);
}

.gl-tab-nav-item:active{
  color: var(--gl-action-neutral-foreground-color-active);
  background-color: var(--gl-action-neutral-background-color-active);
  border-color: var(--gl-action-neutral-border-color-active);
}

.gl-tab-nav-item {
  transition: box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-radius 0.1s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.gl-tab-nav-item::before {
  content: "";
  position: absolute;
  border-bottom: 2px solid transparent;
  translate: 0 2px;
  transition: border-bottom 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), translate 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
  bottom: -1px;
  left: -1px;
  right: -1px;
}
@media (prefers-reduced-motion: reduce) {
  .gl-tab-nav-item, .gl-tab-nav-item::before {
    transition-duration: 0.01ms;
  }
}
.gl-tab-nav-item:hover:not(.gl-tab-nav-item-active)::before {
  border-bottom-color: var(--gl-border-color-strong);
  translate: 0;
}
.gl-tab-nav-item:focus-visible{
  border-radius: var(--gl-border-radius-default);
}
.gl-tab-nav-item.disabled{
  pointer-events: auto;
  cursor: not-allowed;
  color: var(--gl-action-disabled-foreground-color);
}
.gl-tab-nav-item.disabled:hover{
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.gl-tab-nav-item > .gl-tab-counter-badge {
  font-weight: inherit;
  margin-left: var(--gl-spacing-scale-2);
}

.gl-tab-content{
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-tab-content{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-tab-content{
  line-height: 1rem;
  color: var(--gl-text-color-default);
}

.gl-tab-nav-item-active{
  font-weight: var(--gl-font-weight-bold);
  z-index: 1;
}
.gl-tab-nav-item-active:active, .gl-tab-nav-item-active:focus-visible, .gl-tab-nav-item-active:focus-visible:active {
  box-shadow: inset 0 0 0 1px var(--gl-action-neutral-border-color-active), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-tab-nav-item-active:active, .gl-tab-nav-item-active:focus-visible, .gl-tab-nav-item-active:focus-visible:active {
    outline: 2px solid LinkText;
  }
}
.gl-scrollable-tabs-nav .gl-tab-nav-item-active:active, .gl-scrollable-tabs-nav .gl-tab-nav-item-active:focus-visible, .gl-scrollable-tabs-nav .gl-tab-nav-item-active:focus-visible:active {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-scrollable-tabs-nav .gl-tab-nav-item-active:active, .gl-scrollable-tabs-nav .gl-tab-nav-item-active:focus-visible, .gl-scrollable-tabs-nav .gl-tab-nav-item-active:focus-visible:active {
    outline: 2px solid LinkText;
  }
}
.gl-scrollable-tabs-nav .gl-tab-nav-item-active:active::before, .gl-scrollable-tabs-nav .gl-tab-nav-item-active:focus-visible::before, .gl-scrollable-tabs-nav .gl-tab-nav-item-active:focus-visible:active::before {
  border-radius: 0 0 1px 1px;
  left: 3px;
  right: 3px;
  bottom: 3px;
}
.gl-tab-nav-item-active:active::before, .gl-tab-nav-item-active:focus-visible::before, .gl-tab-nav-item-active:focus-visible:active::before {
  border-radius: 0 0 2px 2px;
  left: 0;
  right: 0;
}
.gl-tab-nav-item-active::before {
  border-bottom-color: var(--gl-tab-selected-indicator-color-default);
  translate: 0;
}

.gl-actions-tabs-start{
  width: 100%;
}

 .modal-header .modal-title.gl-actions-tabs-start {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-actions-tabs-start{
  display: flex;
  flex-direction: column;
  flex-grow: 0;
  margin-top: var(--gl-spacing-scale-3);
}

@container (min-width: 768px){
  .gl-actions-tabs-start{
    display: none;
  }
}

.gl-actions-tabs-end{
  display: none;
  flex-grow: 0;
  justify-content: flex-end;
  align-items: center;
  flex-direction: row;
  margin-top: var(--gl-spacing-scale-0);
}

@container (min-width: 768px){
  .gl-actions-tabs-end{
    display: flex;
  }
}

.gl-actions-tabs-start button,
.gl-actions-tabs-end button{
  margin-bottom: var(--gl-spacing-scale-3);
}

@container (min-width: 768px){
  .gl-actions-tabs-start button,
.gl-actions-tabs-end button{
    margin-right: var(--gl-spacing-scale-3);
    margin-bottom: var(--gl-spacing-scale-0);
  }
}
.gl-actions-tabs-start button:last-child,
.gl-actions-tabs-end button:last-child{
  margin: var(--gl-spacing-scale-0);
}

.gl-tabs-fade{
  position: absolute;
  bottom: var(--gl-spacing-scale-0);
  top: var(--gl-spacing-scale-0);
  z-index: var(--gl-zindex-2);
  width: var(--gl-spacing-scale-8);
  padding: var(--gl-spacing-scale-2);
  display: flex;
}

.gl-tabs-fade-left{
  left: var(--gl-spacing-scale-0);
  background-image: linear-gradient(to left, rgba(255, 255, 255, 0), var(--gl-background-color-default) 33%);
}

.gl-tabs-fade-right{
  right: var(--gl-spacing-scale-0);
  justify-content: flex-end;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0), var(--gl-background-color-default) 33%);
}

.gl-tabs-fade-icon-button{
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  color: var(--gl-action-neutral-foreground-color-default);
  background-color: var(--gl-action-neutral-background-color-default);
  border-color: var(--gl-action-neutral-border-color-default);
}

.gl-tabs-fade-icon-button:hover{
  color: var(--gl-action-neutral-foreground-color-hover);
  background-color: var(--gl-action-neutral-background-color-hover);
  border-color: var(--gl-action-neutral-border-color-hover);
}

.gl-tabs-fade-icon-button:focus-visible{
  color: var(--gl-action-neutral-foreground-color-focus);
  background-color: var(--gl-action-neutral-background-color-focus);
  border-color: var(--gl-action-neutral-border-color-focus);
}

.gl-tabs-fade-icon-button:active{
  color: var(--gl-action-neutral-foreground-color-active);
  background-color: var(--gl-action-neutral-background-color-active);
  border-color: var(--gl-action-neutral-border-color-active);
}

.gl-tabs-fade-icon-button{
  padding: var(--gl-spacing-scale-0);
  height: 100%;
}

.gl-scrollable-tabs-nav{
  overflow: hidden;
  position: relative;
  flex-wrap: nowrap;
}

/*
 * These styles are specific to the gl-toast component.
 * Documentation: https://design.gitlab.com/components/toast
 */
.b-toaster {
  z-index: 1100;
}
.b-toaster.b-toaster-bottom-left {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  padding: 0;
  height: 0;
  overflow: visible;
}
.b-toaster.b-toaster-bottom-left .b-toaster-slot {
  position: absolute;
  max-width: 36.625rem;
  padding: 0;
  margin: 0;
  width: auto;
  display: flex;
  flex-direction: column;
  gap: var(--gl-spacing-scale-4);
  bottom: 1.5rem;
  left: 1.5rem;
  right: auto;
  view-transition-name: gl-toast;
}
@supports (-moz-appearance: none) {
  .b-toaster.b-toaster-bottom-left .b-toaster-slot {
    view-transition-name: unset;
  }
}
@media (max-width: 575.98px) {
  .b-toaster.b-toaster-bottom-left .b-toaster-slot{
    width: 100%;
  }
 .modal-header .modal-title.b-toaster.b-toaster-bottom-left .b-toaster-slot {
  margin-right: -1rem;
  padding-right: 1rem;
}
  .b-toaster.b-toaster-bottom-left .b-toaster-slot{
    padding-left: var(--gl-spacing-scale-3);
    padding-right: var(--gl-spacing-scale-3);
    left: 0;
    right: 0;
  }
}
.b-toaster .b-toast {
  display: block;
  position: relative;
  max-width: 36.625rem;
}
@supports (-moz-appearance: none) {
  .b-toaster .b-toast {
    transition: all 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
}
.b-toaster .gl-toast {
  opacity: 1;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .b-toaster .gl-toast{
  margin-top: var(--gl-spacing-scale-0);
}
.b-toaster .gl-toast{
  padding-top: var(--gl-spacing-scale-5);
  padding-bottom: var(--gl-spacing-scale-5);
  padding-left: var(--gl-spacing-scale-6);
  padding-right: var(--gl-spacing-scale-6);
  line-height: 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  --tw-shadow: var(--gl-shadow-md);
  --tw-shadow-colored: var(--gl-shadow-md);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  border-radius: var(--gl-feedback-border-radius);
  background-color: var(--gl-feedback-strong-background-color);
  color: var(--gl-feedback-strong-text-color);
}
.b-toaster .gl-toast.fade:not(.show) {
  opacity: 0;
}
.b-toaster .toast-body {
  display: block;
  font-weight: var(--gl-font-weight-300);
  padding-right: var(--gl-spacing-scale-3);
  order: 1;
}
.b-toaster .toast-header{
  display: flex;
  order: 2;
}
.b-toaster .gl-toast-action{
  padding: var(--gl-spacing-scale-3);
  margin: var(--gl-spacing-scale-0);
  margin-left: var(--gl-spacing-scale-5);
  text-transform: none;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .b-toaster .gl-toast-action{
  margin-top: var(--gl-spacing-scale-0);
}
.b-toaster .gl-toast-action{
  white-space: nowrap;
  font-weight: var(--gl-font-weight-bold);
  cursor: pointer;
  color: var(--gl-feedback-strong-link-color);
}
.b-toaster .gl-toast-close-button{
  margin-left: var(--gl-spacing-scale-5);
  color: inherit !important;
}

::view-transition-group(gl-toast) {
  animation-duration: 0.2s;
  animation-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
}

table.gl-table {
  background-color: var(--gl-color-alpha-0);
  color: var(--gl-text-color-default);
}
table.gl-table tr th,
table.gl-table tr td{
  border-bottom-width: 1px;
  background-color: transparent;
  padding: var(--gl-spacing-scale-5);
  border-bottom-style: solid;
  border-color: var(--gl-border-color-default);
  line-height: 1rem;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper table.gl-table tr th,.recents-wrapper 
table.gl-table tr td{
  margin-top: var(--gl-spacing-scale-0);
}
table.gl-table tr th,
table.gl-table tr td{
  vertical-align: top;
  color: var(--gl-text-color-default);
  font-weight: var(--gl-font-weight-normal);
}
table.gl-table tr:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
  position: relative;
  z-index: 1;
}
table.gl-table.table-borderless tr td{
  border-bottom-width: 0px;
}
table.gl-table thead tr th{
  font-weight: var(--gl-font-weight-bold);
  color: var(--gl-text-color-heading);
}
table.gl-table thead tr th .gl-table-th-sort-icon-wrapper{
  margin-left: var(--gl-spacing-scale-2);
}
table.gl-table thead tr th.gl-table-th-align-right > div{
  flex-direction: row-reverse;
}
table.gl-table thead tr th.gl-table-th-align-right > div .gl-table-th-sort-icon-wrapper{
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-2);
}
table.gl-table thead tr th [name=sort-icon] {
  -webkit-user-select: none;
          user-select: none;
  color: var(--gl-table-sorting-icon-color);
}
table.gl-table--sticky-header thead tr {
  position: sticky;
  top: -1px;
  background-color: var(--gl-background-color-default);
  box-shadow: inset 0 -1px 0 var(--gl-border-color-default);
}
table.gl-table .table-primary,
table.gl-table .table-primary:hover {
  background-color: var(--gl-feedback-info-background-color);
}
table.gl-table .table-primary > td,
table.gl-table .table-primary:hover > td {
  background-color: var(--gl-feedback-info-background-color);
}
table.gl-table caption{
  padding-top: var(--gl-spacing-scale-2);
}
table.gl-table.b-table.b-table-stacked tbody > tr::after {
  content: "";
  height: var(--gl-spacing-scale-6);
  width: 100%;
}
 .modal-header table.modal-title.gl-table.b-table.b-table-stacked tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
table.gl-table.b-table.b-table-stacked tbody > tr::after{
  display: block;
}
table.gl-table.b-table.b-table-stacked tbody > tr > td[data-label],
table.gl-table.b-table.b-table-stacked tbody > tr > th[data-label]{
  border-left-width: 1px;
  border-right-width: 1px;
  border-left-style: solid;
  border-right-style: solid;
}
table.gl-table.b-table.b-table-stacked tbody > tr > td[data-label]::before,
table.gl-table.b-table.b-table-stacked tbody > tr > th[data-label]::before{
  text-align: left;
}
table.gl-table.b-table.b-table-stacked tbody > tr > td[data-label]:first-child,
table.gl-table.b-table.b-table-stacked tbody > tr > th[data-label]:first-child{
  border-top-width: 1px;
  border-top-style: solid;
}
table.gl-table.b-table.b-table-stacked tbody > tr > td[data-label]:not(:first-child),
table.gl-table.b-table.b-table-stacked tbody > tr > th[data-label]:not(:first-child){
  border-top-width: 0px;
}
table.gl-table.b-table.b-table-stacked tbody > tr div{
  text-align: right;
  overflow-wrap: break-word;
}
@container (width < 576px) {
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr::after {
    content: "";
    height: var(--gl-spacing-scale-6);
    width: 100%;
  }
 .modal-header .modal-title:where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr::after{
    display: block;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label],
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th[data-label]{
    border-left-width: 1px;
    border-right-width: 1px;
    border-left-style: solid;
    border-right-style: solid;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label]::before,
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th[data-label]::before{
    text-align: left;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label]:first-child,
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th[data-label]:first-child{
    border-top-width: 1px;
    border-top-style: solid;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label]:not(:first-child),
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th[data-label]:not(:first-child){
    border-top-width: 0px;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-sm tbody > tr div{
    text-align: right;
    overflow-wrap: break-word;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr::after {
    content: "";
    height: var(--gl-spacing-scale-6);
    width: 100%;
  }
 .modal-header .modal-title:where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr::after{
    display: block;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label],
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th[data-label]{
    border-left-width: 1px;
    border-right-width: 1px;
    border-left-style: solid;
    border-right-style: solid;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label]::before,
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th[data-label]::before{
    text-align: left;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label]:first-child,
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th[data-label]:first-child{
    border-top-width: 1px;
    border-top-style: solid;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label]:not(:first-child),
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th[data-label]:not(:first-child){
    border-top-width: 0px;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-sm tbody > tr div{
    text-align: right;
    overflow-wrap: break-word;
  }
}
@container (width < 768px) {
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr::after {
    content: "";
    height: var(--gl-spacing-scale-6);
    width: 100%;
  }
 .modal-header .modal-title:where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr::after{
    display: block;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label],
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr > th[data-label]{
    border-left-width: 1px;
    border-right-width: 1px;
    border-left-style: solid;
    border-right-style: solid;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label]::before,
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr > th[data-label]::before{
    text-align: left;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label]:first-child,
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr > th[data-label]:first-child{
    border-top-width: 1px;
    border-top-style: solid;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label]:not(:first-child),
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr > th[data-label]:not(:first-child){
    border-top-width: 0px;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-md tbody > tr div{
    text-align: right;
    overflow-wrap: break-word;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr::after {
    content: "";
    height: var(--gl-spacing-scale-6);
    width: 100%;
  }
 .modal-header .modal-title:where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr::after{
    display: block;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label],
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr > th[data-label]{
    border-left-width: 1px;
    border-right-width: 1px;
    border-left-style: solid;
    border-right-style: solid;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label]::before,
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr > th[data-label]::before{
    text-align: left;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label]:first-child,
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr > th[data-label]:first-child{
    border-top-width: 1px;
    border-top-style: solid;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label]:not(:first-child),
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr > th[data-label]:not(:first-child){
    border-top-width: 0px;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-md tbody > tr div{
    text-align: right;
    overflow-wrap: break-word;
  }
}
@container (width < 992px) {
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr::after {
    content: "";
    height: var(--gl-spacing-scale-6);
    width: 100%;
  }
 .modal-header .modal-title:where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr::after{
    display: block;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label],
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th[data-label]{
    border-left-width: 1px;
    border-right-width: 1px;
    border-left-style: solid;
    border-right-style: solid;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label]::before,
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th[data-label]::before{
    text-align: left;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label]:first-child,
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th[data-label]:first-child{
    border-top-width: 1px;
    border-top-style: solid;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label]:not(:first-child),
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th[data-label]:not(:first-child){
    border-top-width: 0px;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-lg tbody > tr div{
    text-align: right;
    overflow-wrap: break-word;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr::after {
    content: "";
    height: var(--gl-spacing-scale-6);
    width: 100%;
  }
 .modal-header .modal-title:where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr::after{
    display: block;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label],
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th[data-label]{
    border-left-width: 1px;
    border-right-width: 1px;
    border-left-style: solid;
    border-right-style: solid;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label]::before,
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th[data-label]::before{
    text-align: left;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label]:first-child,
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th[data-label]:first-child{
    border-top-width: 1px;
    border-top-style: solid;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label]:not(:first-child),
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th[data-label]:not(:first-child){
    border-top-width: 0px;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-lg tbody > tr div{
    text-align: right;
    overflow-wrap: break-word;
  }
}
@container (width < 1200px) {
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr::after {
    content: "";
    height: var(--gl-spacing-scale-6);
    width: 100%;
  }
 .modal-header .modal-title:where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr::after{
    display: block;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr > td[data-label],
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr > th[data-label]{
    border-left-width: 1px;
    border-right-width: 1px;
    border-left-style: solid;
    border-right-style: solid;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr > td[data-label]::before,
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr > th[data-label]::before{
    text-align: left;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr > td[data-label]:first-child,
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr > th[data-label]:first-child{
    border-top-width: 1px;
    border-top-style: solid;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr > td[data-label]:not(:first-child),
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr > th[data-label]:not(:first-child){
    border-top-width: 0px;
  }
  :where(html.with-gl-container-queries) table.gl-table.b-table.b-table-stacked-xl tbody > tr div{
    text-align: right;
    overflow-wrap: break-word;
  }
}
@media (width < 1200px) {
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr::after {
    content: "";
    height: var(--gl-spacing-scale-6);
    width: 100%;
  }
 .modal-header .modal-title:where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr::after {
  margin-right: -1rem;
  padding-right: 1rem;
}
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr::after{
    display: block;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr > td[data-label],
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr > th[data-label]{
    border-left-width: 1px;
    border-right-width: 1px;
    border-left-style: solid;
    border-right-style: solid;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr > td[data-label]::before,
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr > th[data-label]::before{
    text-align: left;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr > td[data-label]:first-child,
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr > th[data-label]:first-child{
    border-top-width: 1px;
    border-top-style: solid;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr > td[data-label]:not(:first-child),
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr > th[data-label]:not(:first-child){
    border-top-width: 0px;
  }
  :where(html:not(.with-gl-container-queries)) table.gl-table.b-table.b-table-stacked-xl tbody > tr div{
    text-align: right;
    overflow-wrap: break-word;
  }
}
table.gl-table.table-hover tbody tr:hover, table.gl-table.table-hover td.table-secondary:hover {
  background-color: var(--gl-table-row-background-color-hover);
}
table.gl-table thead th:hover {
  background-color: transparent !important;
}
table.gl-table thead th:hover [name=sort-icon] {
  display: flex !important;
}

.table.b-table > thead > tr > th,
.table.b-table > tfoot > tr > th {
  background-image: none !important;
}

.table.b-table > thead > tr > [aria-sort]:not(.b-table-sort-icon-left),
.table.b-table > tfoot > tr > [aria-sort]:not(.b-table-sort-icon-left) {
  padding-right: 1rem;
}

/**
* Toggle button
*
* @usage
*  ### Active and Inactive text should be provided as data attributes:
*  <button type="button" class="project-feature-toggle" data-enabled-text="Enabled" data-disabled-text="Disabled">
*  <i class="fa fa-spinner fa-spin loading-icon hidden"></i>
*  </button>

*  ### Checked should have `is-checked` class
*  <button type="button" class="project-feature-toggle is-checked" data-enabled-text="Enabled" data-disabled-text="Disabled">
*  <i class="fa fa-spinner fa-spin loading-icon hidden"></i>
*  </button>

*  ### Disabled should have `is-disabled` class
*  <button type="button" class="project-feature-toggle is-disabled" data-enabled-text="Enabled" data-disabled-text="Disabled" disabled="true">
*  <i class="fa fa-spinner fa-spin loading-icon hidden"></i>
*  </button>
*/
.gl-toggle-wrapper{
  line-height: 1rem;
  font-weight: var(--gl-font-weight-normal);
  display: inline-flex;
}
.commit-content .committer.gl-toggle-wrapper {
  gap: 0.5ch;
}

.gl-description-label{
  color: var(--gl-text-color-subtle);
}

.gl-help-label{
  margin-top: var(--gl-spacing-scale-3);
  font-weight: var(--gl-font-weight-normal);
  color: var(--gl-text-color-subtle);
}

.gl-toggle-label-inline{
  flex-direction: row;
  align-items: center;
}
.gl-toggle-label-inline .gl-toggle-label{
  white-space: nowrap;
  margin-bottom: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-3);
}
.gl-toggle-label-inline .gl-help-label{
  margin-top: var(--gl-spacing-scale-0);
  margin-left: var(--gl-spacing-scale-3);
}

.gl-toggle-label{
  font-weight: var(--gl-font-weight-bold);
  color: var(--gl-text-color-strong);
}

.gl-toggle{
  display: inline-flex;
}

.commit-content .committer.gl-toggle {
  gap: 0.5ch;
}

.gl-toggle{
  align-items: center;
  justify-content: center;
  border-width: 0px;
  cursor: pointer;
  color: var(--gl-toggle-switch-icon-color-unchecked-default);
  background-color: var(--gl-toggle-switch-track-color-unchecked-default);
  position: relative;
  width: 2.25rem;
  height: 1.25rem;
  -webkit-user-select: none;
          user-select: none;
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-unchecked-default);
  border-radius: .75rem;
  line-height: 1rem;
  transition: color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (prefers-reduced-motion) {
  .gl-toggle {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
@media (forced-colors: active) {
  .gl-toggle {
    outline: 1px solid CanvasText !important;
    outline-offset: -1px;
    transition: none;
  }
}
.gl-toggle::selection, .gl-toggle::before::selection, .gl-toggle::after::selection{
  background-color: transparent;
}
.gl-toggle:hover {
  color: var(--gl-toggle-switch-icon-color-unchecked-hover);
  background-color: var(--gl-toggle-switch-track-color-unchecked-hover);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-unchecked-hover);
}
.gl-toggle:focus-visible {
  color: var(--gl-toggle-switch-icon-color-unchecked-focus);
  background-color: var(--gl-toggle-switch-track-color-unchecked-focus);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-unchecked-focus), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-toggle:focus-visible {
    outline: 2px solid LinkText !important;
  }
}
.gl-toggle:active {
  color: var(--gl-toggle-switch-icon-color-unchecked-active);
  background-color: var(--gl-toggle-switch-track-color-unchecked-active);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-unchecked-active), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-toggle:active {
    outline: 2px solid LinkText !important;
  }
}
.gl-toggle:hover .toggle-icon::before, .gl-toggle:focus-visible .toggle-icon::before {
  transform: scale(0.875);
}
.gl-toggle .toggle-loading{
  height: var(--gl-spacing-scale-5);
}
.gl-toggle .toggle-icon{
  position: absolute;
  width: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
  left: var(--gl-spacing-scale-1);
  top: var(--gl-spacing-scale-1);
  transition: transform 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (prefers-reduced-motion) {
  .gl-toggle .toggle-icon {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
@media (forced-colors: active) {
  .gl-toggle .toggle-icon {
    transition: none;
  }
}
.gl-toggle .toggle-icon::before {
  content: "";
  position: absolute;
  inset: var(--gl-spacing-scale-0);
  border-radius: var(--gl-border-radius-full);
  background-color: var(--gl-toggle-switch-background-color-unchecked-default);
  transform: scale(0.75);
  transition: transform 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (prefers-reduced-motion) {
  .gl-toggle .toggle-icon::before {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
@media (forced-colors: active) {
  .gl-toggle .toggle-icon::before {
    background-color: CanvasText;
    transition: none;
  }
}
.gl-toggle .toggle-icon > svg{
  position: absolute;
  width: var(--gl-spacing-scale-4);
  height: var(--gl-spacing-scale-4);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: none;
}
@media (forced-colors: active) {
  .gl-toggle .toggle-icon > svg {
    color: Canvas;
    display: block;
  }
}
.gl-toggle.is-checked {
  color: var(--gl-toggle-switch-icon-color-checked-default);
  background-color: var(--gl-toggle-switch-track-color-checked-default);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-checked-default);
}
.gl-toggle.is-checked:hover {
  color: var(--gl-toggle-switch-icon-color-checked-hover);
  background-color: var(--gl-toggle-switch-track-color-checked-hover);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-checked-hover);
}
.gl-toggle.is-checked:focus-visible {
  color: var(--gl-toggle-switch-icon-color-checked-focus);
  background-color: var(--gl-toggle-switch-track-color-checked-focus);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-checked-focus), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-toggle.is-checked:focus-visible {
    outline: 2px solid LinkText !important;
  }
}
.gl-toggle.is-checked:active {
  color: var(--gl-toggle-switch-icon-color-checked-active);
  background-color: var(--gl-toggle-switch-track-color-checked-active);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-checked-active), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-toggle.is-checked:active {
    outline: 2px solid LinkText !important;
  }
  .gl-toggle.is-checked {
    background-color: CanvasText !important;
  }
  .gl-toggle.is-checked svg {
    color: CanvasText;
  }
}
.gl-toggle.is-checked .toggle-icon {
  transform: translateX(1rem);
}
.gl-toggle.is-checked .toggle-icon::before {
  background-color: var(--gl-toggle-switch-background-color-checked-default);
  transform: scale(1);
}
.gl-toggle.is-disabled{
  cursor: not-allowed;
  background-color: var(--gl-toggle-switch-track-color-unchecked-disabled);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-unchecked-disabled);
}
.gl-toggle.is-disabled .toggle-icon {
  color: var(--gl-toggle-switch-icon-color-disabled);
}
.gl-toggle.is-disabled .toggle-icon::before {
  background-color: var(--gl-toggle-switch-background-color-unchecked-disabled);
}
@media (forced-colors: active) {
  .gl-toggle.is-disabled .toggle-icon::before {
    background-color: GrayText;
  }
}
.gl-toggle.is-disabled:hover .toggle-icon::before, .gl-toggle.is-disabled:focus-visible .toggle-icon::before {
  transform: scale(0.75);
}
.gl-toggle.is-disabled:active, .gl-toggle.is-disabled:focus-visible, .gl-toggle.is-disabled:focus-visible:active {
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-unchecked-disabled), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-toggle.is-disabled:active, .gl-toggle.is-disabled:focus-visible, .gl-toggle.is-disabled:focus-visible:active {
    outline: 2px solid LinkText !important;
  }
}
.gl-toggle.is-checked.is-disabled {
  background-color: var(--gl-toggle-switch-track-color-checked-disabled);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-checked-disabled);
}
.gl-toggle.is-checked.is-disabled .toggle-icon::before {
  background-color: var(--gl-toggle-switch-background-color-checked-disabled);
  transform: scale(1);
}
.gl-toggle.is-checked.is-disabled:hover .toggle-icon::before, .gl-toggle.is-checked.is-disabled:focus-visible .toggle-icon::before {
  transform: scale(1);
}
.gl-toggle.is-checked.is-disabled:active, .gl-toggle.is-checked.is-disabled:focus-visible, .gl-toggle.is-checked.is-disabled:focus-visible:active {
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-checked-disabled), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-toggle.is-checked.is-disabled:active, .gl-toggle.is-checked.is-disabled:focus-visible, .gl-toggle.is-checked.is-disabled:focus-visible:active {
    outline: 2px solid LinkText !important;
  }
  .gl-toggle.is-checked.is-disabled {
    background-color: GrayText !important;
  }
}
.gl-toggle.is-loading, .gl-toggle.is-checked.is-loading {
  background-color: var(--gl-toggle-switch-track-color-loading);
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-loading);
}
.gl-toggle.is-loading:active, .gl-toggle.is-loading:focus-visible, .gl-toggle.is-loading:focus-visible:active, .gl-toggle.is-checked.is-loading:active, .gl-toggle.is-checked.is-loading:focus-visible, .gl-toggle.is-checked.is-loading:focus-visible:active {
  box-shadow: inset 0 0 0 1px var(--gl-toggle-switch-track-border-color-loading), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color) !important;
  outline: none !important;
}
@media (forced-colors: active) {
  .gl-toggle.is-loading:active, .gl-toggle.is-loading:focus-visible, .gl-toggle.is-loading:focus-visible:active, .gl-toggle.is-checked.is-loading:active, .gl-toggle.is-checked.is-loading:focus-visible, .gl-toggle.is-checked.is-loading:focus-visible:active {
    outline: 2px solid LinkText !important;
  }
}

.gl-token {
  color: var(--gl-token-foreground-color);
  background-color: var(--gl-token-background-color);
  padding-left: var(--gl-spacing-scale-3);
  display: inline-flex;
}

.commit-content .committer.gl-token {
  gap: 0.5ch;
}

.gl-token{
  flex-direction: column;
  justify-content: center;
  border-radius: var(--gl-token-border-radius);
}
.gl-token.gl-token-view-only{
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-3);
}

.gl-token-search-type-variant {
  background-color: var(--gl-token-background-color);
  border-top-right-radius: var(--gl-border-radius-none);
  border-bottom-right-radius: var(--gl-border-radius-none);
}

.gl-token-search-value-variant{
  border-top-left-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
}

.gl-token-content{
  font-size: var(--gl-font-size-sm);
  line-height: 1rem;
  display: flex;
  align-items: center;
  color: inherit;
}
.gl-token-content > .gl-avatar:first-child,
.gl-token-content > .gl-spinner-container:first-child{
  margin-right: var(--gl-spacing-scale-2);
}

.gl-token-close{
  margin-left: var(--gl-spacing-scale-2);
  color: inherit !important;
  background-color: transparent !important;
}

.gl-tooltip{
  font-size: var(--gl-font-size-sm);
  padding: var(--gl-spacing-scale-2);
}
.gl-tooltip .tooltip-inner{
  --tw-drop-shadow: drop-shadow(0 0 0.5px var(--gl-shadow-color-default, #05050629)) drop-shadow(0 0.5px 1px var(--gl-shadow-color-default, #05050629)) drop-shadow(0 1px 3px var(--gl-shadow-color-default, #05050629));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  line-height: 1rem;
  font-weight: var(--gl-font-weight-normal);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  border-radius: var(--gl-feedback-border-radius);
  background: var(--gl-feedback-strong-background-color);
  color: var(--gl-feedback-strong-text-color);
  --gl-text-color-subtle: var(--gl-tooltip-text-color-subtle);
}
.gl-tooltip .arrow{
  height: var(--gl-spacing-scale-3);
  width: var(--gl-spacing-scale-2);
}
.gl-tooltip .arrow::before{
  border-width: 4px;
}

.gl-tooltip.bs-tooltip-top .arrow, .gl-tooltip.bs-tooltip-auto[x-placement^=top] .arrow,
.gl-tooltip.bs-tooltip-bottom .arrow,
.gl-tooltip.bs-tooltip-auto[x-placement^=bottom] .arrow{
  width: var(--gl-spacing-scale-3);
  height: var(--gl-spacing-scale-2);
}

.gl-tooltip.bs-tooltip-top .arrow::before, .gl-tooltip.bs-tooltip-auto[x-placement^=top] .arrow::before{
  border-bottom-width: 0px;
  border-top-color: var(--gl-feedback-strong-background-color);
}

.gl-tooltip.bs-tooltip-right .arrow::before, .gl-tooltip.bs-tooltip-auto[x-placement^=right] .arrow::before{
  border-left-width: 0px;
  border-right-color: var(--gl-feedback-strong-background-color);
}

.gl-tooltip.bs-tooltip-bottom .arrow::before, .gl-tooltip.bs-tooltip-auto[x-placement^=bottom] .arrow::before{
  border-top-width: 0px;
  border-bottom-color: var(--gl-feedback-strong-background-color);
}

.gl-tooltip.bs-tooltip-left .arrow::before, .gl-tooltip.bs-tooltip-auto[x-placement^=left] .arrow::before{
  border-right-width: 0px;
  border-left-color: var(--gl-feedback-strong-background-color);
}

.gl-heatmap {
  position: relative;
}
.gl-heatmap .gl-legend-inline-series{
  pointer-events: none;
}

.gl-legend {
  position: relative;
}

.gl-legend-inline-series,
.gl-legend-tabular-row {
  font: inherit;
  border-width: 0px;
  background-color: transparent;
  padding: var(--gl-spacing-scale-0);
  text-align: left;
}

.gl-chart-h-auto .gl-legend-inline {
  max-height: 6.75rem;
  overflow: auto;
}

.gl-legend-tabular.gl-legend-b-fade::after,
.gl-chart-h-auto .gl-legend-inline.gl-legend-b-fade::after {
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--gl-background-color-default));
  bottom: 0;
  content: "";
  display: block;
  height: var(--gl-spacing-scale-4);
  position: absolute;
  width: 100%;
}

 .modal-header .modal-title.gl-legend-tabular.gl-legend-b-fade::after, .modal-header .modal-title
.gl-chart-h-auto .gl-legend-inline.gl-legend-b-fade::after {
  margin-right: -1rem;
  padding-right: 1rem;
}

.gl-legend-inline{
  display: flex;
  flex-wrap: wrap;
  flex-shrink: 0;
}
.gl-legend-inline .gl-legend-inline-series{
  display: flex;
  flex-shrink: 0;
  justify-content: space-between;
  align-items: center;
  padding-right: var(--gl-spacing-scale-5);
  border-radius: var(--gl-border-radius-default);
}
.gl-legend-inline .gl-legend-inline-series:hover{
  cursor: pointer;
  text-decoration-line: underline;
}
.gl-legend-inline .gl-legend-inline-series:focus-visible {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-legend-inline .gl-legend-inline-series:focus-visible {
    outline: 2px solid LinkText;
  }
}
.gl-legend-inline .gl-legend-inline-series .gl-legend-inline-series-label{
  margin-right: var(--gl-spacing-scale-3);
}

.gl-legend-tabular .gl-legend-tabular-header{
  display: flex;
  justify-content: flex-end;
}
.gl-legend-tabular .gl-legend-tabular-header-cell,
.gl-legend-tabular .gl-legend-tabular-details-cell{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: right;
  width: 12.5%;
}
.gl-legend-tabular .gl-legend-tabular-header-cell{
  font-weight: var(--gl-font-weight-bold);
  line-height: var(--gl-line-height-24);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
}
.gl-legend-tabular .gl-legend-tabular-body {
  height: 5.25rem;
  overflow-y: auto;
}
.gl-legend-tabular .gl-legend-tabular-row{
  display: flex;
  width: 100%;
}
 .modal-header .modal-title.gl-legend-tabular .gl-legend-tabular-row {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-legend-tabular .gl-legend-tabular-row:nth-child(odd){
  background-color: var(--gl-background-color-strong);
}
.gl-legend-tabular .gl-legend-tabular-row:focus-visible {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-legend-tabular .gl-legend-tabular-row:focus-visible {
    outline: 2px solid LinkText;
  }
}
.gl-legend-tabular .gl-legend-tabular-title-cell,
.gl-legend-tabular .gl-legend-tabular-details-cell{
  line-height: var(--gl-line-height-24);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
}
.gl-legend-tabular .gl-legend-tabular-title-cell{
  overflow: hidden;
  width: 50%;
}

.gl-series-label-container{
  display: flex;
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .gl-series-label-container{
  margin-top: var(--gl-spacing-scale-0);
}

.gl-series-label-container{
  overflow: hidden;
  overflow-wrap: break-word;
}

.gl-series-label-color{
  flex-shrink: 0;
  margin-right: var(--gl-spacing-scale-3);
}
.gl-series-label-color svg{
  display: block;
}

.gl-series-label-text{
  overflow: hidden;
  overflow-wrap: break-word;
}

.gl-single-stat{
  line-height: 1;
}
.gl-single-stat:hover[tabindex="0"]{
  background-color: var(--gl-background-color-strong);
  border-radius: var(--gl-border-radius-default);
}
.gl-single-stat .gl-single-stat-number {
  font-size: clamp(1.5rem, 0.8333333333rem + 1.3888888889vw, 1.875rem);
}
.gl-single-stat .gl-single-stat-content .gl-badge {
  position: relative;
  top: -0.125em;
}

.gl-chart-tooltip {
  position: absolute;
}
.gl-chart-tooltip .popover{
  min-width: var(--gl-spacing-scale-0);
  width: max-content;
  max-width: 32rem;
}

.gl-charts-tooltip-default-format-series{
  display: flex;
  justify-content: space-between;
}
.gl-charts-tooltip-default-format-series-label, .gl-charts-tooltip-default-format-series-value{
  font-size: var(--gl-font-size-sm);
}
.gl-charts-tooltip-default-format-series-label{
  line-height: 1rem;
  margin-right: var(--gl-spacing-scale-7);
}
.gl-charts-tooltip-default-format-series-value{
  font-weight: var(--gl-font-weight-bold);
}

/**
 * gridstack SASS styles 12.6.0
 * Copyright (c) 2021-2025 Alain Dumesny - see GridStack root license
 */
.grid-stack {
  position: relative;
}

.grid-stack-rtl {
  direction: ltr;
}

.grid-stack-rtl > .grid-stack-item {
  direction: rtl;
}

.grid-stack-placeholder > .placeholder-content {
  background-color: rgba(0, 0, 0, 0.1);
  margin: 0;
  position: absolute;
  width: auto;
  z-index: 0 !important;
}

.grid-stack > .grid-stack-item {
  position: absolute;
  padding: 0;
  top: 0;
  width: var(--gs-column-width);
  height: var(--gs-cell-height);
}

.grid-stack > .grid-stack-item > .grid-stack-item-content {
  margin: 0;
  position: absolute;
  width: auto;
  overflow-x: hidden;
  overflow-y: auto;
}

.grid-stack > .grid-stack-item.size-to-content:not(.size-to-content-max) > .grid-stack-item-content {
  overflow-y: hidden;
}

.grid-stack:not(.grid-stack-rtl) > .grid-stack-item {
  left: 0;
}

.grid-stack.grid-stack-rtl > .grid-stack-item {
  right: 0;
}

.grid-stack > .grid-stack-item > .grid-stack-item-content,
.grid-stack > .grid-stack-placeholder > .placeholder-content {
  top: var(--gs-item-margin-top);
  right: var(--gs-item-margin-right);
  bottom: var(--gs-item-margin-bottom);
  left: var(--gs-item-margin-left);
}

.grid-stack-item > .ui-resizable-handle {
  position: absolute;
  font-size: 0.1px;
  display: block;
  touch-action: none;
}

.grid-stack-item.ui-resizable-disabled > .ui-resizable-handle, .grid-stack-item.ui-resizable-autohide > .ui-resizable-handle {
  display: none;
}

.grid-stack-item > .ui-resizable-ne,
.grid-stack-item > .ui-resizable-nw,
.grid-stack-item > .ui-resizable-se,
.grid-stack-item > .ui-resizable-sw {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23666" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 20 20"><path d="m10 3 2 2H8l2-2v14l-2-2h4l-2 2"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
}

.grid-stack-item > .ui-resizable-ne {
  transform: rotate(45deg);
}

.grid-stack-item > .ui-resizable-sw {
  transform: rotate(45deg);
}

.grid-stack-item > .ui-resizable-nw {
  transform: rotate(-45deg);
}

.grid-stack-item > .ui-resizable-se {
  transform: rotate(-45deg);
}

.grid-stack-item > .ui-resizable-nw {
  cursor: nw-resize;
  width: 20px;
  height: 20px;
  top: var(--gs-item-margin-top);
  left: var(--gs-item-margin-left);
}

.grid-stack-item > .ui-resizable-n {
  cursor: n-resize;
  height: 10px;
  top: var(--gs-item-margin-top);
  left: 25px;
  right: 25px;
}

.grid-stack-item > .ui-resizable-ne {
  cursor: ne-resize;
  width: 20px;
  height: 20px;
  top: var(--gs-item-margin-top);
  right: var(--gs-item-margin-right);
}

.grid-stack-item > .ui-resizable-e {
  cursor: e-resize;
  width: 10px;
  top: 15px;
  bottom: 15px;
  right: var(--gs-item-margin-right);
}

.grid-stack-item > .ui-resizable-se {
  cursor: se-resize;
  width: 20px;
  height: 20px;
  bottom: var(--gs-item-margin-bottom);
  right: var(--gs-item-margin-right);
}

.grid-stack-item > .ui-resizable-s {
  cursor: s-resize;
  height: 10px;
  left: 25px;
  bottom: var(--gs-item-margin-bottom);
  right: 25px;
}

.grid-stack-item > .ui-resizable-sw {
  cursor: sw-resize;
  width: 20px;
  height: 20px;
  bottom: var(--gs-item-margin-bottom);
  left: var(--gs-item-margin-left);
}

.grid-stack-item > .ui-resizable-w {
  cursor: w-resize;
  width: 10px;
  top: 15px;
  bottom: 15px;
  left: var(--gs-item-margin-left);
}

.grid-stack-item.ui-draggable-dragging > .ui-resizable-handle {
  display: none !important;
}

.grid-stack-item.ui-draggable-dragging {
  will-change: left, right, top;
}

.grid-stack-item.ui-resizable-resizing {
  will-change: width, height;
}

.ui-draggable-dragging,
.ui-resizable-resizing {
  z-index: 10000;
}

.ui-draggable-dragging > .grid-stack-item-content,
.ui-resizable-resizing > .grid-stack-item-content {
  box-shadow: 1px 4px 6px rgba(0, 0, 0, 0.2);
  opacity: 0.8;
}

.grid-stack-animate,
.grid-stack-animate .grid-stack-item {
  transition: left 0.3s, right 0.3s, top 0.3s, height 0.3s, width 0.3s;
}

.grid-stack-animate .grid-stack-item.ui-draggable-dragging,
.grid-stack-animate .grid-stack-item.ui-resizable-resizing,
.grid-stack-animate .grid-stack-item.grid-stack-placeholder {
  transition: left 0s, right 0s, top 0s, height 0s, width 0s;
}

.grid-stack > .grid-stack-item[gs-y="0"] {
  top: 0px;
}

.grid-stack:not(.grid-stack-rtl) > .grid-stack-item[gs-x="0"] {
  left: 0%;
}

.grid-stack.grid-stack-rtl > .grid-stack-item[gs-x="0"] {
  right: 0%;
}

.gl-truncate-component {
  display: inline-flex;
  max-width: 100%;
}

.gl-truncate-start,
.gl-truncate-end {
  flex: 0 1 auto;
  min-width: 0;
  white-space: nowrap;
  overflow-x: clip;
  overflow-y: visible;
}

.gl-truncate-start {
  direction: rtl;
  text-align: left;
  text-overflow: "";
}

.gl-truncate-end {
  text-overflow: ellipsis;
}

/**
  Note: although vendor-prefixes are used here, these properties are supported by all browsers.
  See https://caniuse.com/css-line-clamp
**/
.gl-truncate-text {
  display: -webkit-box;
  -webkit-line-clamp: var(--mobile-lines);
  -webkit-box-orient: vertical;
}
@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-truncate-text {
    -webkit-line-clamp: var(--lines);
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-truncate-text {
    -webkit-line-clamp: var(--lines);
  }
}

.gl-new-dropdown{
  display: inline-flex;
}

.commit-content .committer.gl-new-dropdown {
  gap: 0.5ch;
}

.gl-new-dropdown{
  vertical-align: middle;
}
.gl-new-dropdown .gl-new-dropdown-custom-toggle > *:first-child:not(:disabled){
  cursor: pointer;
}
.gl-new-dropdown .gl-new-dropdown-custom-toggle > *:first-child:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-new-dropdown .gl-new-dropdown-toggle.gl-button:not(.gl-new-dropdown-toggle-no-caret, .btn-icon){
  padding-right: var(--gl-spacing-scale-3);
}
.gl-new-dropdown .gl-new-dropdown-toggle.gl-button:not(.gl-new-dropdown-toggle-no-caret, .btn-icon).btn-sm, .gl-new-dropdown .btn-group-sm > .gl-new-dropdown-toggle.gl-button.btn:not(.gl-new-dropdown-toggle-no-caret, .btn-icon){
  padding-right: var(--gl-spacing-scale-2);
}
.gl-new-dropdown .gl-new-dropdown-toggle.gl-new-dropdown-toggle-no-caret .gl-new-dropdown-chevron{
  display: none;
}
.gl-new-dropdown .gl-new-dropdown-toggle .gl-button-text{
  display: inline-flex;
}
.commit-content .committer.gl-new-dropdown .gl-new-dropdown-toggle .gl-button-text {
  gap: 0.5ch;
}
.gl-new-dropdown .gl-new-dropdown-toggle .gl-button-text:has(.gl-sr-only) {
  width: auto;
}
.gl-new-dropdown .gl-new-dropdown-toggle.is-invalid{
  border-color: var(--gl-control-border-color-error);
}
.gl-new-dropdown .gl-new-dropdown-toggle.is-invalid:focus{
  border-color: var(--gl-control-border-color-error);
}
.gl-new-dropdown .gl-new-dropdown-button-text{
  margin-right: auto;
  overflow: hidden;
  text-overflow: ellipsis;
}
.gl-new-dropdown.btn-sm .gl-icon, .btn-group-sm > .gl-new-dropdown.btn .gl-icon{
  margin-top: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-0);
}
.gl-new-dropdown.btn-sm .gl-icon.gl-new-dropdown-chevron, .btn-group-sm > .gl-new-dropdown.btn .gl-icon.gl-new-dropdown-chevron{
  height: var(--gl-spacing-scale-5);
  width: var(--gl-spacing-scale-5);
}
.gl-new-dropdown .gl-button:not(.gl-new-dropdown-caret-only) .gl-button-icon.gl-new-dropdown-chevron{
  margin-left: var(--gl-spacing-scale-2);
  margin-right: var(--gl-spacing-scale-0);
}
.gl-new-dropdown .gl-new-dropdown-icon-only.gl-button:not(.gl-new-dropdown-toggle-no-caret){
  padding-right: var(--gl-spacing-scale-2);
  padding-left: var(--gl-spacing-scale-3);
}
.gl-new-dropdown .gl-new-dropdown-icon-only.gl-button:not(.gl-new-dropdown-toggle-no-caret).btn-sm, .gl-new-dropdown .btn-group-sm > .gl-new-dropdown-icon-only.gl-button.btn:not(.gl-new-dropdown-toggle-no-caret){
  padding-right: var(--gl-spacing-scale-0);
}
.gl-new-dropdown .gl-new-dropdown-icon-only .gl-button-icon.gl-button-icon{
  margin-right: var(--gl-spacing-scale-0);
}
.gl-new-dropdown .gl-new-dropdown-icon-only .gl-button-icon.gl-button-icon.gl-button-loading-indicator{
  margin-right: var(--gl-spacing-scale-2);
}
.gl-new-dropdown .gl-new-dropdown-icon-only.btn-sm .gl-new-dropdown-chevron, .gl-new-dropdown .btn-group-sm > .gl-new-dropdown-icon-only.btn .gl-new-dropdown-chevron{
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
}
.gl-new-dropdown .gl-new-dropdown-caret-only{
  padding-left: var(--gl-spacing-scale-2);
}
.gl-new-dropdown .gl-new-dropdown-caret-only.btn-sm, .gl-new-dropdown .btn-group-sm > .gl-new-dropdown-caret-only.btn{
  padding-left: var(--gl-spacing-scale-0);
}

.gl-new-dropdown-container .gl-new-dropdown-arrow {
  width: 8px;
  height: 8px;
  background: var(--gl-dropdown-background-color);
  border-bottom: 1px solid var(--gl-dropdown-background-color);
  border-right: 1px solid var(--gl-dropdown-background-color);
  position: absolute;
}
.gl-new-dropdown-container .gl-new-dropdown-panel{
  display: none;
  background-color: var(--gl-dropdown-background-color);
  border-radius: var(--gl-dropdown-border-radius);
  --tw-drop-shadow: drop-shadow(0 0 0.5px var(--gl-shadow-color-default, #05050629)) drop-shadow(0 0.5px 1px var(--gl-shadow-color-default, #05050629)) drop-shadow(0 1px 3px var(--gl-shadow-color-default, #05050629));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
  top: 0;
  left: 0;
  z-index: 1000;
}
.gl-new-dropdown-container .gl-new-dropdown-panel-fluid-width {
  min-width: 15.5rem;
  max-width: 28.5rem;
}
.gl-new-dropdown-container .gl-new-dropdown-inner{
  display: flex;
  flex-direction: column;
  max-height: 19.5rem;
}
.gl-new-dropdown-container .gl-new-dropdown-contents {
  position: relative;
  flex-grow: 1;
  overflow-y: auto;
  padding-left: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-0);
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-2);
  list-style-type: none;
}
.gl-new-dropdown-container .gl-new-dropdown-contents:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.gl-new-dropdown-container .gl-new-dropdown-contents ul{
  list-style-type: none;
}
.gl-new-dropdown-container .gl-new-dropdown-contents-with-scrim-overlay {
  padding: 0;
}
.gl-new-dropdown-container .gl-new-dropdown-contents .top-scrim-wrapper,
.gl-new-dropdown-container .gl-new-dropdown-contents .bottom-scrim-wrapper {
  height: 0.25rem;
  opacity: 0;
  position: sticky;
  z-index: 1;
  display: block;
  overflow: visible;
  left: 1px;
  right: 1px;
  pointer-events: none;
  transition: opacity 0.1s;
}
.gl-new-dropdown-container .gl-new-dropdown-contents .top-scrim-wrapper {
  top: 0;
}
.gl-new-dropdown-container .gl-new-dropdown-contents .top-scrim-wrapper .top-scrim {
  left: 0;
  right: 0;
}
.gl-new-dropdown-container .gl-new-dropdown-contents .top-scrim-wrapper .top-scrim.top-scrim-light {
  height: 2.25rem;
  border-radius: 0.375rem 0.375rem 0 0;
  background: linear-gradient(180deg, var(--gl-dropdown-background-color) 0%, var(--gl-color-alpha-0));
}
.gl-new-dropdown-container .gl-new-dropdown-contents .top-scrim-wrapper .top-scrim.top-scrim-dark {
  height: 0.25rem;
  background: linear-gradient(180deg, var(--gl-shadow-color-default) 0%, var(--gl-color-alpha-0) 100%);
}
.gl-new-dropdown-container .gl-new-dropdown-contents .bottom-scrim-wrapper {
  bottom: 0;
  height: 0.25rem;
}
.gl-new-dropdown-container .gl-new-dropdown-contents .bottom-scrim-wrapper .bottom-scrim {
  height: 0;
  position: relative;
  top: calc(-2.25rem + 0.25rem);
  border-radius: 0 0 0.375rem 0.375rem;
  background: linear-gradient(180deg, var(--gl-color-alpha-0) 0%, var(--gl-dropdown-background-color));
}
.gl-new-dropdown-container .gl-new-dropdown-contents.top-scrim-visible .top-scrim-wrapper, .gl-new-dropdown-container .gl-new-dropdown-contents.bottom-scrim-visible .bottom-scrim-wrapper {
  opacity: 1;
}
.gl-new-dropdown-container .gl-new-dropdown-contents.bottom-scrim-visible .bottom-scrim {
  height: 2.25rem;
}

.btn-group .gl-new-dropdown:not(:last-child) .gl-new-dropdown-toggle{
  border-top-right-radius: var(--gl-border-radius-none);
  border-bottom-right-radius: var(--gl-border-radius-none);
}
.btn-group .gl-new-dropdown:not(:first-child) .gl-new-dropdown-toggle{
  border-top-left-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
}
.btn-group .gl-new-dropdown:hover .gl-new-dropdown-toggle{
  z-index: var(--gl-zindex-1);
}
.btn-group .gl-new-dropdown .gl-new-dropdown-toggle:focus-visible,
.btn-group .gl-new-dropdown .gl-new-dropdown-toggle:active{
  z-index: var(--gl-zindex-1);
}

.gl-new-dropdown-item{
  cursor: pointer;
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  margin-top: var(--gl-spacing-scale-1);
  margin-bottom: var(--gl-spacing-scale-1);
  /* when there is a scrim `li` items inside the list, the first and last real items
  do not match the selector `:first-child` and `:last-child`,
  that's why we have to target them with a different selector */
}
.gl-new-dropdown-item:first-child, .gl-new-dropdown-contents-with-scrim-overlay > .gl-new-dropdown-item:nth-child(3):not(:last-child){
  margin-top: var(--gl-spacing-scale-0);
}
.gl-new-dropdown-item:last-child, .gl-new-dropdown-contents-with-scrim-overlay > .gl-new-dropdown-item:nth-last-child(3):not(:first-child){
  margin-bottom: var(--gl-spacing-scale-0);
}
.gl-new-dropdown-item:not(.disabled):hover .gl-new-dropdown-item-content {
  color: var(--gl-dropdown-option-text-color-hover);
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
}
.gl-new-dropdown-item:not(.disabled):focus-visible .gl-new-dropdown-item-content {
  color: var(--gl-dropdown-option-text-color-focus);
  background-color: var(--gl-dropdown-option-background-color-unselected-focus);
}
.gl-new-dropdown-item:not(.disabled):active .gl-new-dropdown-item-content, .gl-new-dropdown-item:not(.disabled):focus-visible:active .gl-new-dropdown-item-content {
  color: var(--gl-dropdown-option-text-color-active);
  background-color: var(--gl-dropdown-option-background-color-unselected-active);
}
.gl-new-dropdown-item[aria-selected=true] .gl-new-dropdown-item-content {
  background-color: var(--gl-dropdown-option-background-color-selected-default);
}
.gl-new-dropdown-item[aria-selected=true].disabled .gl-new-dropdown-item-content {
  background-color: var(--gl-background-color-disabled);
}
.gl-new-dropdown-item[aria-selected=true]:not(.disabled):hover .gl-new-dropdown-item-content {
  background-color: var(--gl-dropdown-option-background-color-selected-hover);
}
.gl-new-dropdown-item[aria-selected=true]:not(.disabled):hover .gl-new-dropdown-item-check-icon {
  color: var(--gl-dropdown-option-indicator-color-selected-hover);
}
.gl-new-dropdown-item[aria-selected=true]:not(.disabled):focus-visible .gl-new-dropdown-item-content {
  background-color: var(--gl-dropdown-option-background-color-selected-focus);
}
.gl-new-dropdown-item[aria-selected=true]:not(.disabled):focus-visible .gl-new-dropdown-item-check-icon {
  color: var(--gl-dropdown-option-indicator-color-selected-focus);
}
.gl-new-dropdown-item[aria-selected=true]:not(.disabled):active .gl-new-dropdown-item-content, .gl-new-dropdown-item[aria-selected=true]:not(.disabled):focus-visible:active .gl-new-dropdown-item-content {
  background-color: var(--gl-dropdown-option-background-color-selected-active);
}
.gl-new-dropdown-item[aria-selected=true]:not(.disabled):active .gl-new-dropdown-item-check-icon, .gl-new-dropdown-item[aria-selected=true]:not(.disabled):focus-visible:active .gl-new-dropdown-item-check-icon {
  color: var(--gl-dropdown-option-indicator-color-selected-active);
}
.gl-new-dropdown-item:focus-visible {
  outline: none;
}
.gl-new-dropdown-item:not(.disabled):active .gl-new-dropdown-item-content, .gl-new-dropdown-item:not(.disabled):focus-visible .gl-new-dropdown-item-content, .gl-new-dropdown-item:not(.disabled):focus-visible:active .gl-new-dropdown-item-content {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-new-dropdown-item:not(.disabled):active .gl-new-dropdown-item-content, .gl-new-dropdown-item:not(.disabled):focus-visible .gl-new-dropdown-item-content, .gl-new-dropdown-item:not(.disabled):focus-visible:active .gl-new-dropdown-item-content {
    outline: 2px solid LinkText;
  }
}
.gl-new-dropdown-item:focus-visible .gl-new-dropdown-item-content {
  z-index: 1;
}
.gl-new-dropdown-item.gl-new-dropdown-item-highlighted .gl-new-dropdown-item-content {
  color: var(--gl-dropdown-option-text-color-focus);
  background-color: var(--gl-dropdown-option-background-color-unselected-focus);
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-new-dropdown-item.gl-new-dropdown-item-highlighted .gl-new-dropdown-item-content {
    outline: 2px solid LinkText;
  }
}
.gl-new-dropdown-item.disabled {
  cursor: not-allowed;
  -webkit-user-select: none;
          user-select: none;
}
.gl-new-dropdown-item.disabled .gl-new-dropdown-item-content {
  color: var(--gl-text-color-disabled);
  pointer-events: none;
}
.gl-new-dropdown-item.disabled .gl-new-dropdown-item-content .gl-new-dropdown-item-check-icon {
  color: var(--gl-icon-color-disabled);
}
.gl-new-dropdown-item .gl-new-dropdown-item-content {
  transition: background-color 0.1s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
  border-radius: var(--gl-border-radius-default);
  border-width: 0px;
  width: 100%;
}
 .modal-header .modal-title.gl-new-dropdown-item .gl-new-dropdown-item-content {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-new-dropdown-item .gl-new-dropdown-item-content {
  background-color: var(--gl-dropdown-option-background-color-unselected-default);
  align-items: center;
  display: flex;
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-new-dropdown-item .gl-new-dropdown-item-content{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-new-dropdown-item .gl-new-dropdown-item-content{
  font-weight: var(--gl-font-weight-normal);
  line-height: 1rem;
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  position: relative;
  text-decoration-line: none;
  color: var(--gl-dropdown-option-text-color-default);
  text-align: left;
  white-space: normal;
}
@media (prefers-reduced-motion) {
  .gl-new-dropdown-item .gl-new-dropdown-item-content {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.gl-new-dropdown-item .gl-new-dropdown-item-content .gl-new-dropdown-item-check-icon{
  flex-shrink: 0;
  margin-right: var(--gl-spacing-scale-3);
  color: var(--gl-dropdown-option-indicator-color-selected-default);
}
.gl-new-dropdown-item .gl-new-dropdown-item-content .gl-new-dropdown-item-icon{
  flex-shrink: 0;
  margin-right: var(--gl-spacing-scale-2);
  display: inline-block;
  height: var(--gl-spacing-scale-5);
  width: var(--gl-spacing-scale-5);
}
.gl-new-dropdown-item .gl-new-dropdown-item-content .gl-new-dropdown-item-icon .gl-icon {
  vertical-align: -3px;
}
.gl-new-dropdown-item .gl-new-dropdown-item-content .gl-new-dropdown-item-text-wrapper{
  min-width: var(--gl-spacing-scale-0);
  flex-grow: 1;
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
}
.gl-new-dropdown-item.gl-new-dropdown-item-danger .gl-new-dropdown-item-content {
  color: var(--gl-action-danger-foreground-color-default);
  background-color: var(--gl-action-danger-background-color-default);
}
.gl-new-dropdown-item.gl-new-dropdown-item-danger:hover .gl-new-dropdown-item-content:not(:disabled):not(.disabled) {
  color: var(--gl-action-danger-foreground-color-hover);
  background-color: var(--gl-action-danger-background-color-hover);
}
.gl-new-dropdown-item.gl-new-dropdown-item-danger:focus-visible .gl-new-dropdown-item-content {
  color: var(--gl-action-danger-foreground-color-focus);
  background-color: var(--gl-action-danger-background-color-focus);
}
.gl-new-dropdown-item.gl-new-dropdown-item-danger:active .gl-new-dropdown-item-content, .gl-new-dropdown-item.gl-new-dropdown-item-danger:focus-visible:active .gl-new-dropdown-item-content {
  color: var(--gl-action-danger-foreground-color-active);
  background-color: var(--gl-action-danger-background-color-active);
}

.gl-listbox-search {
  position: relative;
}
.gl-listbox-search .gl-listbox-search-input{
  width: 100%;
}
 .modal-header .modal-title.gl-listbox-search .gl-listbox-search-input {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-listbox-search .gl-listbox-search-input{
  line-height: 1rem;
  height: auto;
  border-style: none;
  border-radius: var(--gl-border-radius-none);
  padding-left: calc(2rem + 0.25rem);
  padding-right: calc(1.5rem + 0.25rem);
  padding-top: var(--gl-spacing-scale-4);
  padding-bottom: var(--gl-spacing-scale-4);
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .gl-listbox-search .gl-listbox-search-input{
  margin-top: var(--gl-spacing-scale-0);
}
.gl-listbox-search .gl-listbox-search-input{
  color: var(--gl-text-color-default);
  background-color: var(--gl-dropdown-search-background-color);
}
.gl-listbox-search .gl-listbox-search-input:focus-visible {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .gl-listbox-search .gl-listbox-search-input:focus-visible {
    outline: 2px solid LinkText;
  }
}
.gl-listbox-search .gl-listbox-search-input::placeholder {
  color: var(--gl-control-placeholder-color);
}
.gl-listbox-search .gl-listbox-search-input::-webkit-search-cancel-button{
  display: none;
}
.gl-listbox-search.gl-listbox-topmost .gl-listbox-search-input {
  border-top-left-radius: calc(0.5rem - 1px);
  border-top-right-radius: calc(0.5rem - 1px);
}
.gl-listbox-search .gl-listbox-search-icon {
  position: absolute;
  top: calc(50% - 12px / 2);
  left: 0.75rem;
  color: var(--gl-icon-color-subtle);
}
.gl-listbox-search .gl-listbox-search-clear-button {
  position: absolute;
  top: calc(50% - 24px / 2);
  right: 0.5rem;
}

.gl-empty-state-content {
  max-width: 65ch;
}

:root.ui-neutral,
.ui-neutral-scope {
  --gl-color-neutral-0: #fff;
  --gl-color-neutral-10: #fbfafd;
  --gl-color-neutral-50: #ececef;
  --gl-color-neutral-100: #dcdcde;
  --gl-color-neutral-200: #bfbfc3;
  --gl-color-neutral-300: #a4a3a8;
  --gl-color-neutral-400: #89888d;
  --gl-color-neutral-500: #737278;
  --gl-color-neutral-600: #626168;
  --gl-color-neutral-700: #4c4b51;
  --gl-color-neutral-800: #3a383f;
  --gl-color-neutral-900: #28272d;
  --gl-color-neutral-950: #18171d;
  --gl-color-neutral-1000: #050506;
}

:root.ui-indigo,
.ui-indigo-scope {
  --gl-color-neutral-0: #fff;
  --gl-color-neutral-10: #f9f8fa;
  --gl-color-neutral-50: #efebf2;
  --gl-color-neutral-100: #e1d9e6;
  --gl-color-neutral-200: #c2bdc7;
  --gl-color-neutral-300: #a5a2a8;
  --gl-color-neutral-400: #89888b;
  --gl-color-neutral-500: #737374;
  --gl-color-neutral-600: #646067;
  --gl-color-neutral-700: #504955;
  --gl-color-neutral-800: #3f3546;
  --gl-color-neutral-900: #2e2434;
  --gl-color-neutral-950: #1d1424;
  --gl-color-neutral-1000: #120a18;
}

:root.ui-blue,
.ui-blue-scope {
  --gl-color-neutral-0: #fff;
  --gl-color-neutral-10: #f8f8fa;
  --gl-color-neutral-50: #e9ebf0;
  --gl-color-neutral-100: #d7dce5;
  --gl-color-neutral-200: #bcbfc6;
  --gl-color-neutral-300: #a1a3a7;
  --gl-color-neutral-400: #88888a;
  --gl-color-neutral-500: #727273;
  --gl-color-neutral-600: #5f6266;
  --gl-color-neutral-700: #474c54;
  --gl-color-neutral-800: #333945;
  --gl-color-neutral-900: #222733;
  --gl-color-neutral-950: #121722;
  --gl-color-neutral-1000: #090d17;
}

:root.ui-green,
.ui-green-scope {
  --gl-color-neutral-0: #fff;
  --gl-color-neutral-10: #f7f9f8;
  --gl-color-neutral-50: #e6edeb;
  --gl-color-neutral-100: #d4dfdb;
  --gl-color-neutral-200: #b9c1bf;
  --gl-color-neutral-300: #a0a4a3;
  --gl-color-neutral-400: #878988;
  --gl-color-neutral-500: #717372;
  --gl-color-neutral-600: #5e6361;
  --gl-color-neutral-700: #444e4a;
  --gl-color-neutral-800: #313b38;
  --gl-color-neutral-900: #1f2a26;
  --gl-color-neutral-950: #101916;
  --gl-color-neutral-1000: #060f0c;
}

:root.ui-red,
.ui-red-scope {
  --gl-color-neutral-0: #fff;
  --gl-color-neutral-10: #fbf7f9;
  --gl-color-neutral-50: #f4eaee;
  --gl-color-neutral-100: #e9d7de;
  --gl-color-neutral-200: #cabbc1;
  --gl-color-neutral-300: #aaa1a4;
  --gl-color-neutral-400: #8b8789;
  --gl-color-neutral-500: #747273;
  --gl-color-neutral-600: #656062;
  --gl-color-neutral-700: #53494c;
  --gl-color-neutral-800: #423539;
  --gl-color-neutral-900: #312428;
  --gl-color-neutral-950: #201418;
  --gl-color-neutral-1000: #150a0e;
}

:root.ui-gray,
.ui-gray-scope {
  --gl-color-neutral-0: #fff;
  --gl-color-neutral-10: #f8f8f8;
  --gl-color-neutral-50: #ececec;
  --gl-color-neutral-100: #dcdcdc;
  --gl-color-neutral-200: #bfbfbf;
  --gl-color-neutral-300: #a3a3a3;
  --gl-color-neutral-400: #898889;
  --gl-color-neutral-500: #727272;
  --gl-color-neutral-600: #616161;
  --gl-color-neutral-700: #4b4b4b;
  --gl-color-neutral-800: #383839;
  --gl-color-neutral-900: #272727;
  --gl-color-neutral-950: #171717;
  --gl-color-neutral-1000: #0d0d0d;
}

:root.ui-indigo,
.ui-indigo-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-purple-500);
  --gl-nav-item-foreground-color-default: var(--gl-color-purple-800);
  --gl-nav-item-foreground-color-hover: var(--gl-color-purple-950);
}

:root.ui-indigo.gl-dark,
.ui-indigo-scope.gl-dark-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-purple-300);
  --gl-nav-item-foreground-color-default: var(--gl-color-purple-200);
  --gl-nav-item-foreground-color-hover: var(--gl-color-purple-50);
}

:root.ui-blue,
.ui-blue-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-blue-500);
  --gl-nav-item-foreground-color-default: var(--gl-color-blue-800);
  --gl-nav-item-foreground-color-hover: var(--gl-color-blue-950);
}

:root.ui-blue.gl-dark,
.ui-blue-scope.gl-dark-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-blue-300);
  --gl-nav-item-foreground-color-default: var(--gl-color-blue-200);
  --gl-nav-item-foreground-color-hover: var(--gl-color-blue-50);
}

:root.ui-green,
.ui-green-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-green-500);
  --gl-nav-item-foreground-color-default: var(--gl-color-green-800);
  --gl-nav-item-foreground-color-hover: var(--gl-color-green-950);
}

:root.ui-green.gl-dark,
.ui-green-scope.gl-dark-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-green-300);
  --gl-nav-item-foreground-color-default: var(--gl-color-green-200);
  --gl-nav-item-foreground-color-hover: var(--gl-color-green-50);
}

:root.ui-red,
.ui-red-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-red-500);
  --gl-nav-item-foreground-color-default: var(--gl-color-red-800);
  --gl-nav-item-foreground-color-hover: var(--gl-color-red-950);
}

:root.ui-red.gl-dark,
.ui-red-scope.gl-dark-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-red-300);
  --gl-nav-item-foreground-color-default: var(--gl-color-red-200);
  --gl-nav-item-foreground-color-hover: var(--gl-color-red-50);
}

:root.ui-gray,
.ui-gray-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-neutral-500);
  --gl-nav-item-foreground-color-default: var(--gl-color-neutral-800);
  --gl-nav-item-foreground-color-hover: var(--gl-color-neutral-950);
}

:root.ui-gray.gl-dark,
.ui-gray-scope.gl-dark-scope {
  --gl-nav-item-selected-indicator-color: var(--gl-color-neutral-300);
  --gl-nav-item-foreground-color-default: var(--gl-color-neutral-200);
  --gl-nav-item-foreground-color-hover: var(--gl-color-neutral-50);
}

/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/**
* Declares a property with a fluid value that decreases or
* rises depending on the viewport’s size. The property type
* should be numeric.
*
* Values are expected in rem units.
* Fluid range: between 48rem (768px) – 75rem (1200px).
*
* @param $property Property name, i.e. line-height, font-size, width, height, etc.
* @param $min Property value lower bound.
* @param $max Property value upper bound.
*/
/**
* Helper function for :focus
*
* @param $size is deprecated and should not be used anymore
*/
/**
* Helper function for @media of at least the minimum
* breakpoint width.
*
* @param $name Breakpoint name, such as `sm` or `md`.
*/
/**
* Helper function for @media of at most the maximum
* breakpoint width.
*
* Note: Before using, consider using a mobile-first
* approach, and define @media for larger breakpoints
* using `gl-media-breakpoint-up` while using this rule as
* the starting point instead.
*
* @param $name Breakpoint, such as `sm` or `md`. `xs` is not valid
*/
/**
* Helper function to resolve font-size value from $gl-font-sizes and
* $gl-font-sizes-fixed maps.
*
* @param $size Number font-size scale
* @param $fixed Boolean toggle default and fixed font size scales
*/
.resizable-content{
  height: 100%;
  width: 100%;
}
 .modal-header .modal-title.resizable-content {
  margin-right: -1rem;
  padding-right: 1rem;
}
.resizable-content {
  background: var(--gl-background-color-default);
  border-radius: 0.5rem;
  overflow-y: auto;
  --tw-shadow: var(--gl-shadow-lg);
  --tw-shadow-colored: var(--gl-shadow-lg);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .resizable-content{
  margin-top: var(--gl-spacing-scale-0);
}
.resizable-content{
  line-height: 1rem;
  display: flex;
  flex-direction: column;
}

.resizable-component .resizable-t,
.resizable-component .resizable-l {
  background-color: transparent;
  border-radius: 3px;
}
@media (prefers-reduced-motion) {
  .resizable-component .resizable-t,
  .resizable-component .resizable-l {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.resizable-component .resizable-t,
.resizable-component .resizable-l {
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.resizable-component .resizable-t:hover,
.resizable-component .resizable-l:hover {
  background-color: var(--gl-color-blue-200);
}
.resizable-component .resizable-t {
  width: 95% !important;
  transform: translateX(-50%);
  left: 50% !important;
  height: 4px !important;
  top: 2px !important;
}
.resizable-component .resizable-l {
  height: 95% !important;
  transform: translateY(-50%);
  top: 50% !important;
  width: 4px !important;
  left: 2px !important;
}
.resizable-component .duo-chat{
  z-index: var(--gl-zindex-0);
}
.resizable-component .resizable-l,
.resizable-component .resizable-lt,
.resizable-component .resizable-t{
  z-index: var(--gl-zindex-1);
}

.duo-chat {
  z-index: 999;
  font-family: var(--gl-font-family-regular);
}
.duo-chat .message-enter-active,
.duo-chat .message-leave-active {
  transition: all 0.5s ease;
}
.duo-chat .message-enter,
.duo-chat .message-leave-to{
  opacity: var(--gl-opacity-0);
  transform: translateY(10px);
}
.duo-chat .duo-chat-loader.message-leave,
.duo-chat .duo-chat-loader.message-leave-to {
  transition: none;
}
.duo-chat .duo-agent-mode-switcher > *,
.duo-chat .duo-model-switcher > * {
  width: 100%;
}

.duo-chat-drawer {
  right: 0;
  transition-property: all;
  transition-timing-function: ease;
  transition-duration: 200ms;
  position: fixed;
  height: 100%;
  width: 100%;
}

 .modal-header .modal-title.duo-chat-drawer {
  margin-right: -1rem;
  padding-right: 1rem;
}

.duo-chat-drawer{
  overflow-y: auto;
  --tw-shadow: var(--gl-shadow-lg);
  --tw-shadow-colored: var(--gl-shadow-lg);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .duo-chat-drawer{
  margin-top: var(--gl-spacing-scale-0);
}

.duo-chat-drawer{
  line-height: 1rem;
  display: flex;
  flex-direction: column;
}

.duo-chat-drawer-footer{
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  padding-bottom: var(--gl-spacing-scale-4);
}
.duo-chat-drawer-footer::before {
  background: linear-gradient(to bottom, transparent, var(--gl-background-color-default));
  top: 0;
  --tw-translate-y: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  content: "";
  left: 0;
  position: absolute;
  pointer-events: none;
  width: 100%;
}
 .modal-header .modal-title.duo-chat-drawer-footer::before {
  margin-right: -1rem;
  padding-right: 1rem;
}
.duo-chat-drawer-footer::before{
  height: var(--gl-spacing-scale-4);
}

.duo-chat-history {
  scroll-behavior: smooth;
  /*
  Browsers a are pretty good at keeping the focus on an element while
  the parent element grows in size. With this we mark all child elements
  of the chat history as "non" anchors.
  https://developer.mozilla.org/en-US/docs/Web/CSS/overflow-anchor
  */
}
.duo-chat-history * {
  overflow-anchor: none;
}
.duo-chat-history {
  /*
  Right at the bottom of the chat history we add a scroll-anchor element.
  This scroll-anchor element is the only "possible" anchor. The beauty of it:
  It only will be used as an anchor _if_ it is currently inside the view port.
  So if the user manually scrolls up while a chunked message is coming in,
  it won't stick to the bottom while the message still loads.
  */
}
.duo-chat-history .scroll-anchor {
  overflow-anchor: auto;
  height: 1px;
  margin-top: -1px;
}

.history-item{
  padding-right: var(--gl-spacing-scale-2);
  margin-left: calc(var(--gl-spacing-scale-3) * -1);
  margin-right: calc(var(--gl-spacing-scale-3) * -1);
  border-radius: var(--gl-border-radius-lg);
  display: flex;
  gap: var(--gl-spacing-scale-3);
  align-items: center;
  background: var(--gl-button-default-tertiary-background-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.history-item:hover, .history-item:focus, .history-item:focus-within {
  background: var(--gl-button-default-tertiary-background-color-hover);
}
.history-item:hover .history-remove-button, .history-item:focus .history-remove-button, .history-item:focus-within .history-remove-button {
  opacity: 1;
}
.history-item .history-remove-button {
  opacity: 0;
  transition: opacity 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.history-item .history-item-name{
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  border-radius: var(--gl-border-radius-lg);
  border-width: 0px;
}
.history-item .history-item-name, .history-item .history-item-name:hover, .history-item .history-item-name:active, .history-item .history-item-name:focus {
  background-color: transparent !important;
}
.history-item .gl-button-text{
  width: 100%;
}
 .modal-header .modal-title.history-item .gl-button-text {
  margin-right: -1rem;
  padding-right: 1rem;
}
.history-item .gl-button-text{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: var(--gl-spacing-scale-3);
  text-align: left;
}

.duo-chat-input{
  display: flex;
  flex-direction: column;
  max-height: 240px;
  overflow: hidden;
  background: var(--gl-control-background-color-default);
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-default);
  border-radius: 1.25rem;
}
.duo-chat-input:focus-within {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-focus), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
@media (forced-colors: active) {
  .duo-chat-input:focus-within {
    outline: 2px solid LinkText;
  }
}
.duo-chat-input .gl-form-textarea.form-control {
  flex: 1;
  resize: none;
  max-height: 240px;
  padding-right: 40px;
  border-radius: 1.25rem;
}
.duo-chat-input::after {
  content: attr(data-value) " ";
  visibility: hidden;
  padding: var(--gl-spacing-scale-4);
  font-family: var(--gl-font-family-regular);
  padding-right: 40px;
  word-break: break-word;
}

.duo-chat .duo-chat-suggestion-button{
  border-radius: var(--gl-border-radius-2xl);
}

.slash-commands{
  margin-top: calc(var(--gl-spacing-scale-2) * -1);
}
.slash-commands .active-command{
  background-color: var(--gl-background-color-strong);
  border-radius: .25rem;
}
.slash-commands .gl-dropdown-item button.dropdown-item{
  font-size: var(--gl-font-size-sm);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  background-color: transparent;
}
.slash-commands .gl-dropdown-item button.dropdown-item:hover{
  background-color: transparent;
}

.duo-chat-markdown{
  font-size: var(--gl-font-size-lg);
  line-height: var(--gl-line-height-24);
  color: var(--gl-text-color-default);
  font-family: var(--gl-font-family-regular);
  font-weight: var(--gl-font-weight-normal);
}
.duo-chat-markdown [dir=auto] {
  text-align: initial;
}
.duo-chat-markdown :first-child{
  margin-top: var(--gl-spacing-scale-0);
}
.duo-chat-markdown h1,
.duo-chat-markdown .gl-h1{
  font-weight: var(--gl-heading-1-font-weight);
  margin-top: var(--gl-heading-1-margin-top);
  font-size: var(--gl-heading-1-font-size);
  letter-spacing: var(--gl-heading-1-letter-spacing);
  line-height: var(--gl-heading-1-line-height);
  margin-bottom: var(--gl-heading-1-margin-bottom);
  color: var(--gl-heading-1-color);
  margin-top: var(--gl-spacing-scale-7);
}
.duo-chat-markdown h2,
.duo-chat-markdown .gl-h2{
  font-weight: var(--gl-heading-2-font-weight);
  margin-top: var(--gl-heading-2-margin-top);
  font-size: var(--gl-heading-2-font-size);
  letter-spacing: var(--gl-heading-2-letter-spacing);
  line-height: var(--gl-heading-2-line-height);
  margin-bottom: var(--gl-heading-2-margin-bottom);
  color: var(--gl-heading-2-color);
  margin-top: var(--gl-spacing-scale-6);
}
.duo-chat-markdown h3,
.duo-chat-markdown .gl-h3{
  font-weight: var(--gl-heading-3-font-weight);
  margin-top: var(--gl-heading-3-margin-top);
  font-size: var(--gl-heading-3-font-size);
  letter-spacing: var(--gl-heading-3-letter-spacing);
  line-height: var(--gl-heading-3-line-height);
  margin-bottom: var(--gl-heading-3-margin-bottom);
  color: var(--gl-heading-3-color);
  margin-top: var(--gl-spacing-scale-6);
}
.duo-chat-markdown h4,
.duo-chat-markdown .gl-h4{
  font-weight: var(--gl-heading-4-font-weight);
  margin-top: var(--gl-heading-4-margin-top);
  font-size: var(--gl-heading-4-font-size);
  letter-spacing: var(--gl-heading-4-letter-spacing);
  line-height: var(--gl-heading-4-line-height);
  margin-bottom: var(--gl-heading-4-margin-bottom);
  color: var(--gl-heading-4-color);
  margin-top: var(--gl-spacing-scale-5);
}
.duo-chat-markdown h5,
.duo-chat-markdown .gl-h5{
  font-weight: var(--gl-heading-5-font-weight);
  margin-top: var(--gl-heading-5-margin-top);
  font-size: var(--gl-heading-5-font-size);
  letter-spacing: var(--gl-heading-5-letter-spacing);
  line-height: var(--gl-heading-5-line-height);
  margin-bottom: var(--gl-heading-5-margin-bottom);
  color: var(--gl-heading-5-color);
  margin-top: var(--gl-spacing-scale-5);
}
.duo-chat-markdown h6,
.duo-chat-markdown .gl-h6{
  font-weight: var(--gl-heading-6-font-weight);
  margin-top: var(--gl-heading-6-margin-top);
  font-size: var(--gl-heading-6-font-size);
  letter-spacing: var(--gl-heading-6-letter-spacing);
  line-height: var(--gl-heading-6-line-height);
  margin-bottom: var(--gl-heading-6-margin-bottom);
  color: var(--gl-heading-6-color);
  margin-top: var(--gl-spacing-scale-5);
}
.duo-chat-markdown p,
.duo-chat-markdown .gl-paragraph{
  margin-top: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-0);
}
.duo-chat-markdown p + p,
.duo-chat-markdown p + .gl-paragraph,
.duo-chat-markdown .gl-paragraph + p,
.duo-chat-markdown .gl-paragraph + .gl-paragraph{
  margin-top: var(--gl-spacing-scale-5);
}
.duo-chat-markdown p.sm,
.duo-chat-markdown .gl-paragraph.sm {
  font-size: 0.875rem;
  line-height: var(--gl-line-height-20);
}
.duo-chat-markdown .sm {
  font-size: 0.875rem;
  line-height: var(--gl-line-height-20);
}
.duo-chat-markdown blockquote{
  color: var(--gl-text-color-subtle);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-6);
  margin-top: var(--gl-spacing-scale-3);
  margin-bottom: var(--gl-spacing-scale-3);
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
  box-shadow: inset 4px 0 0 0 var(--gl-border-color-default);
}
.duo-chat-markdown .idiff{
  border-radius: .25rem;
  display: inline-flex;
}
.commit-content .committer.duo-chat-markdown .idiff {
  gap: 0.5ch;
}
.duo-chat-markdown .idiff{
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
}
.duo-chat-markdown .deletion{
  background-color: var(--red-100);
}
.duo-chat-markdown .addition{
  background-color: var(--green-100);
}
.duo-chat-markdown .audio-container{
  display: inline-flex;
}
.commit-content .committer.duo-chat-markdown .audio-container {
  gap: 0.5ch;
}
.duo-chat-markdown .audio-container{
  flex-direction: column;
  width: 100%;
}
 .modal-header .modal-title.duo-chat-markdown .audio-container {
  margin-right: -1rem;
  padding-right: 1rem;
}
.duo-chat-markdown .audio-container audio{
  width: 100%;
}
 .modal-header .modal-title.duo-chat-markdown .audio-container audio {
  margin-right: -1rem;
  padding-right: 1rem;
}
.duo-chat-markdown .audio-container a{
  margin-top: var(--gl-spacing-scale-3);
}
.duo-chat-markdown .audio-container a::before{
  margin-right: var(--gl-spacing-scale-2);
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  content: "📎";
}
.duo-chat-markdown table{
  margin-top: var(--gl-spacing-scale-7);
  margin-bottom: var(--gl-spacing-scale-7);
}
.duo-chat-markdown table th,
.duo-chat-markdown table td{
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-4);
  padding-bottom: var(--gl-spacing-scale-4);
  box-shadow: inset 0 -1px 0 0 var(--gl-border-color-default);
  vertical-align: top;
}
.duo-chat-markdown table th {
  box-shadow: inset 0 1px 0 0 var(--gl-border-color-default), inset 0 -1px 0 0 var(--gl-border-color-default);
  font-weight: var(--gl-font-weight-bold);
}
.duo-chat-markdown table thead{
  background-color: var(--gl-background-color-strong);
}
.duo-chat-markdown table tr:nth-child(even){
  background-color: var(--gl-background-color-subtle);
}

.duo-chat-compact-markdown{
  font-size: var(--gl-font-size-base);
}

.recents-wrapper .duo-chat-compact-markdown{
  margin-top: var(--gl-spacing-scale-0);
}

.duo-chat-compact-markdown{
  line-height: var(--gl-line-height-20);
}
.duo-chat-compact-markdown h1,
.duo-chat-compact-markdown .gl-h1{
  font-weight: var(--gl-heading-1-fixed-font-weight);
  margin-top: var(--gl-heading-1-fixed-margin-top);
  font-size: var(--gl-heading-1-fixed-font-size);
  letter-spacing: var(--gl-heading-1-fixed-letter-spacing);
  line-height: var(--gl-heading-1-fixed-line-height);
  margin-bottom: var(--gl-heading-1-fixed-margin-bottom);
  color: var(--gl-heading-1-fixed-color);
  margin-top: var(--gl-spacing-scale-7);
}
.duo-chat-compact-markdown h2,
.duo-chat-compact-markdown .gl-h2{
  font-weight: var(--gl-heading-2-fixed-font-weight);
  margin-top: var(--gl-heading-2-fixed-margin-top);
  font-size: var(--gl-heading-2-fixed-font-size);
  letter-spacing: var(--gl-heading-2-fixed-letter-spacing);
  line-height: var(--gl-heading-2-fixed-line-height);
  margin-bottom: var(--gl-heading-2-fixed-margin-bottom);
  color: var(--gl-heading-2-fixed-color);
  margin-top: var(--gl-spacing-scale-6);
}
.duo-chat-compact-markdown h3,
.duo-chat-compact-markdown .gl-h3{
  font-weight: var(--gl-heading-3-fixed-font-weight);
  margin-top: var(--gl-heading-3-fixed-margin-top);
  font-size: var(--gl-heading-3-fixed-font-size);
  letter-spacing: var(--gl-heading-3-fixed-letter-spacing);
  line-height: var(--gl-heading-3-fixed-line-height);
  margin-bottom: var(--gl-heading-3-fixed-margin-bottom);
  color: var(--gl-heading-3-fixed-color);
  margin-top: var(--gl-spacing-scale-6);
}
.duo-chat-compact-markdown h4,
.duo-chat-compact-markdown .gl-h4{
  font-weight: var(--gl-heading-4-fixed-font-weight);
  margin-top: var(--gl-heading-4-fixed-margin-top);
  font-size: var(--gl-heading-4-fixed-font-size);
  letter-spacing: var(--gl-heading-4-fixed-letter-spacing);
  line-height: var(--gl-heading-4-fixed-line-height);
  margin-bottom: var(--gl-heading-4-fixed-margin-bottom);
  color: var(--gl-heading-4-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.duo-chat-compact-markdown h5,
.duo-chat-compact-markdown .gl-h5{
  font-weight: var(--gl-heading-5-fixed-font-weight);
  margin-top: var(--gl-heading-5-fixed-margin-top);
  font-size: var(--gl-heading-5-fixed-font-size);
  letter-spacing: var(--gl-heading-5-fixed-letter-spacing);
  line-height: var(--gl-heading-5-fixed-line-height);
  margin-bottom: var(--gl-heading-5-fixed-margin-bottom);
  color: var(--gl-heading-5-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.duo-chat-compact-markdown h6,
.duo-chat-compact-markdown .gl-h6{
  font-weight: var(--gl-heading-6-fixed-font-weight);
  margin-top: var(--gl-heading-6-fixed-margin-top);
  font-size: var(--gl-heading-6-fixed-font-size);
  letter-spacing: var(--gl-heading-6-fixed-letter-spacing);
  line-height: var(--gl-heading-6-fixed-line-height);
  margin-bottom: var(--gl-heading-6-fixed-margin-bottom);
  color: var(--gl-heading-6-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.duo-chat-compact-markdown .sm{
  font-size: var(--gl-font-size-sm);
}
.duo-chat-compact-markdown table th,
.duo-chat-compact-markdown table td{
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
}

.message-tool-approval-collapsed {
  border-bottom: 0;
}

.message-tool-approval-collapsed-header {
  border-bottom-left-radius: calc(var(--gl-card-border-radius) - 1px);
  border-bottom-right-radius: calc(var(--gl-card-border-radius) - 1px);
}

.duo-chat-loader{
  display: flex;
}
@media (prefers-reduced-motion) {
  .duo-chat-loader .transition {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.duo-chat-loader .transition {
  transition: width 200ms cubic-bezier(0.22, 0.61, 0.36, 1);
}
.duo-chat-loader .text-enter{
  opacity: var(--gl-opacity-0);
}
@media (prefers-reduced-motion) {
  .duo-chat-loader .text-enter-active {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.duo-chat-loader .text-enter-active {
  transition: opacity 400ms cubic-bezier(0.22, 0.61, 0.36, 1);
}
.duo-chat-loader .text-enter-to{
  opacity: var(--gl-opacity-10);
}
.duo-chat-loader .text-leave{
  opacity: var(--gl-opacity-10);
}
@media (prefers-reduced-motion) {
  .duo-chat-loader .text-leave-active {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.duo-chat-loader .text-leave-active {
  transition: opacity 200ms cubic-bezier(0.22, 0.61, 0.36, 1);
}
.duo-chat-loader .text-leave-to{
  opacity: var(--gl-opacity-0);
}

.duo-chat-message {
  position: relative;
  border-radius: 1rem 1rem 0;
  color: var(--duo-chat-message-color, inherit) !important;
  --gl-text-color-heading: var(--duo-chat-message-heading-color, inherit) !important;
}
.duo-chat-message p:not(:last-of-type){
  margin-bottom: var(--gl-spacing-scale-4);
}
.duo-chat-message p:last-of-type{
  margin-bottom: var(--gl-spacing-scale-0);
}

@keyframes animated-text-segment-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.duo-chat-message-markdown-smooth .animated-text-segment {
  animation: animated-text-segment-fade-in 0.3s ease-out forwards;
}

.duo-chat-message-error > p {
  margin: 0;
}

.agentic-feedback-hover-wrapper {
  transition: width 0.3s ease-in-out, opacity 0.3s ease-in-out, margin 0.3s ease-in-out;
}
.gl-group:hover .agentic-feedback-hover-wrapper, .agentic-feedback-hover-wrapper:focus-within {
  width: auto;
  opacity: 1;
  margin-right: 0;
  overflow: visible;
}

.duo-message-pre-block pre{
  border-radius: .25rem;
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  padding-top: var(--gl-spacing-scale-4);
  padding-bottom: var(--gl-spacing-scale-4);
  max-height: 60vh;
  overflow: auto;
  scroll-behavior: smooth;
  color: inherit;
  background-color: var(--gl-background-color-preformat, var(--gl-background-color-default));
  box-shadow: none;
}
.duo-message-pre-block pre::before, .duo-message-pre-block pre::after {
  content: "";
  left: 1px;
  width: calc(100% - 2px);
  position: absolute;
  pointer-events: none;
  height: var(--gl-spacing-scale-7);
  border-bottom-right-radius: .25rem;
  border-bottom-left-radius: .25rem;
}
.duo-message-pre-block pre.scrim-top::before {
  background: linear-gradient(to bottom, transparent, var(--gl-background-color-default));
  top: 1px;
  --tw-rotate: -180deg;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}
.duo-message-pre-block pre.scrim-bottom::after {
  background: linear-gradient(to bottom, transparent, var(--gl-background-color-default));
  bottom: 1px;
}

.message-tool-approval pre.duo-message-pre-block{
  background-color: var(--gl-background-color-subtle);
}

.duo-message-pre-block pre code{
  display: block;
  white-space: pre;
  border-radius: var(--gl-border-radius-none);
  background-color: transparent;
  padding: var(--gl-spacing-scale-0);
  font-size: var(--gl-font-size-sm);
  color: var(--gl-text-color-default);
}

.duo-message-pre-block code.hljs {
  background: transparent !important;
  padding: 0 !important;
}

.duo-message-pre-block duo-copy-code,
.duo-message-pre-block duo-insert-code-snippet {
  position: absolute;
  transition-property: all;
  transition-timing-function: ease;
  transition-duration: 200ms;
  opacity: var(--gl-opacity-0);
  right: 0.5rem;
  top: calc(0.5rem - 1px);
  z-index: var(--gl-zindex-1);
}
.duo-message-pre-block duo-copy-code [role=tooltip],
.duo-message-pre-block duo-insert-code-snippet [role=tooltip] {
  display: none;
  background: var(--gl-feedback-strong-background-color);
  color: var(--gl-feedback-strong-text-color);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-1);
  padding-bottom: var(--gl-spacing-scale-1);
  width: max-content;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: .25rem;
}
.duo-message-pre-block duo-copy-code [role=tooltip] .arrow,
.duo-message-pre-block duo-insert-code-snippet [role=tooltip] .arrow {
  position: absolute;
  background: inherit;
  height: var(--gl-spacing-scale-3);
  width: var(--gl-spacing-scale-3);
  transform: rotate(45deg);
}
.duo-message-pre-block duo-copy-code {
  margin-right: 2.5rem;
}
.duo-message-pre-block:focus duo-copy-code,
.duo-message-pre-block:focus duo-insert-code-snippet,
.duo-message-pre-block:focus .copy-to-clipboard-button-container, .duo-message-pre-block:hover duo-copy-code,
.duo-message-pre-block:hover duo-insert-code-snippet,
.duo-message-pre-block:hover .copy-to-clipboard-button-container, .duo-message-pre-block:has(button:focus) duo-copy-code,
.duo-message-pre-block:has(button:focus) duo-insert-code-snippet,
.duo-message-pre-block:has(button:focus) .copy-to-clipboard-button-container {
  opacity: 1;
}

.duo-chat-message-markdown-smooth .duo-message-pre-block:focus duo-copy-code,
.duo-chat-message-markdown-smooth .duo-message-pre-block:focus duo-insert-code-snippet, .duo-chat-message-markdown-smooth .duo-message-pre-block:hover duo-copy-code,
.duo-chat-message-markdown-smooth .duo-message-pre-block:hover duo-insert-code-snippet, .duo-chat-message-markdown-smooth .duo-message-pre-block:has(button:focus) duo-copy-code,
.duo-chat-message-markdown-smooth .duo-message-pre-block:has(button:focus) duo-insert-code-snippet {
  opacity: 0;
}

.insert-code-hidden duo-insert-code-snippet {
  display: none;
}
.insert-code-hidden duo-copy-code {
  margin-right: 0;
}

.duo-chat-markdown .monospace,
.duo-chat-markdown code,
.duo-chat-compact-markdown .monospace,
.duo-chat-compact-markdown code{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
}

.duo-chat-markdown code{
  border-radius: .25rem;
  background-color: var(--gl-background-color-strong);
  color: var(--gl-text-color-default);
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  padding-top: var(--gl-spacing-scale-1);
  padding-bottom: var(--gl-spacing-scale-1);
}

.duo-chat-message code{
  background-color: var(--gl-status-neutral-background-color);
}

.recents-wrapper .gl-accordion-item-header .gl-button.gl-button.btn-link{
  display: block;
  width: 100%;
}

 .modal-header .modal-title.recents-wrapper .gl-accordion-item-header .gl-button.gl-button.btn-link {
  margin-right: -1rem;
  padding-right: 1rem;
}

.recents-wrapper .gl-accordion-item-header .gl-button.gl-button.btn-link{
  padding-left: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-2);
  border-radius: var(--gl-border-radius-none);
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  text-decoration-line: none;
  text-transform: uppercase;
  font-weight: var(--gl-font-weight-bold);
  font-size: var(--gl-font-size-sm);
}
.recents-wrapper .gl-accordion-item-header > .collapse{
  margin-left: var(--gl-spacing-scale-0);
}
.recents-wrapper .gl-text-base{
  margin-top: var(--gl-spacing-scale-0);
}

.agentic-binary-feedback .feedback-colored-icon {
  animation: feedback-fade-out 0.3s ease-in-out forwards;
  animation-delay: 0.3s;
  will-change: opacity;
  margin-left: 4px;
}
.agentic-binary-feedback .feedback-thanks {
  pointer-events: none;
  animation: feedback-fade-in 0.3s ease-in-out forwards;
  animation-delay: 0.3s;
  will-change: opacity, width, margin;
}

@keyframes feedback-fade-out {
  to {
    opacity: 0;
    width: 0;
    overflow: hidden;
    pointer-events: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .feedback-colored-icon,
  .feedback-thanks {
    animation: none;
  }
}
@keyframes feedback-fade-in {
  to {
    opacity: 1;
    width: auto;
    margin-left: -6px;
    pointer-events: auto;
  }
}
body {
  font-size: 0.875rem;
}

legend{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  margin-bottom: 20px;
}

button,
html [type=button],
[type=reset],
[type=submit],
[role=button] {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  -webkit-appearance: inherit;
  cursor: pointer;
}

h1,
.h1,
h2,
.h2,
h3,
.h3 {
  margin-top: 20px;
  margin-bottom: 10px;
}

h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin-top: 10px;
  margin-bottom: 10px;
}

h5,
.h5 {
  font-size: 0.875rem;
}

b,
strong {
  font-weight: 600;
}

hr {
  overflow: hidden;
}

code{
  padding-top: var(--gl-spacing-scale-1);
  padding-bottom: var(--gl-spacing-scale-1);
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  color: var(--gl-text-color-strong);
  background-color: var(--gl-background-color-strong);
  border-radius: .25rem;
}
.code > code, .build-log code {
  background-color: inherit;
  padding: unset;
}

table {
  border-spacing: 0;
}

pre code {
  white-space: pre-wrap;
}

/*
 Bootstrap 4.1.2 introduced a new default vertical alignment which breaks our icons,
 so we need to reset the vertical alignment to the default value. See:
 - https://gitlab.com/gitlab-org/gitlab-foss/issues/51362
 */
svg {
  vertical-align: baseline;
}

.form-control,
.search form {
  font-size: 0.875rem;
}

/* Our adjustments to hx & .hx above add unnecessary margins to modal-title
   and page-title in modals, so we set them to 0 in order to have properly
   formatted modal headers. */
.modal-header .modal-title,
.modal-header .page-title {
  margin-top: 0;
  margin-bottom: 0;
}

input[type=file] {
  line-height: 1;
}

@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .form-group.row > .col-form-label {
    text-align: right;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .form-group.row > .col-form-label {
    text-align: right;
  }
}

.hidden {
  display: none !important;
  visibility: hidden !important;
}

.hide {
  display: none;
}

.dropdown-toggle::after,
.dropright .dropdown-menu-toggle::after {
  display: none;
}

.badge:not(.gl-badge),
.label {
  padding: 4px 5px;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  display: inline-block;
}

.divider {
  height: 0;
  margin: 4px 0;
  overflow: hidden;
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
}

.info-well{
  background-color: var(--gl-background-color-subtle);
  color: var(--gl-text-color-default);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-color: var(--gl-border-color-section);
  border-radius: .25rem;
  margin-bottom: 16px;
}
.info-well .well-segment {
  padding: 1rem;
}
.info-well .well-segment:not(:first-of-type){
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  border-top-color: var(--gl-border-color-section);
}
.info-well .well-segment p:last-of-type,
.info-well .well-segment ol:last-of-type,
.info-well .well-segment ul:last-of-type,
.info-well .well-segment .form-group:last-of-type {
  margin-bottom: 0;
}

.card.card-without-border, .card.bg-light {
  border: 0 !important;
}

.nav-tabs {
  border-bottom: 0;
}
.nav-tabs .nav-link {
  border-top: 0;
  border-left: 0;
  border-right: 0;
}
.nav-tabs .nav-item {
  margin-bottom: 0;
}

.alert {
  border-radius: 0;
}

.alert-danger {
  background-color: var(--gl-feedback-danger-background-color);
  border-color: var(--gl-feedback-danger-border-color);
  color: var(--gl-feedback-danger-text-color);
}

input[type=color].form-control {
  height: 32px;
}

.project-templates-buttons .btn {
  vertical-align: unset;
}

:root {
  --layout-sticky-header-height: 0px;
  --container-padding-x: 0.75rem;
  --ai-panel-width: 0px;
  --ai-navigation-rail-size: 0px;
}

:root.page-with-ai-panel {
  --ai-panel-width: clamp(25rem, 20vw, 35rem);
  --ai-navigation-rail-size: 2.5rem;
}

html {
  scrollbar-color: var(--gl-color-neutral-400) transparent;
}
@media (forced-colors: active) {
  html {
    scrollbar-color: var(--gl-color-neutral-950) transparent;
  }
}
html.touch .tooltip {
  display: none !important;
}

.page-with-panels, .page-with-panels body{
  height: 100%;
}
.page-with-panels body{
  display: flex;
  flex-direction: column;
  background-color: var(--gl-application-chrome-background-color);
}

.container-fluid.limit-container-width .flash-container.sticky, .limit-container-width.container-sm .flash-container.sticky, .limit-container-width.container-md .flash-container.sticky, .limit-container-width.container-lg .flash-container.sticky, .limit-container-width.container-xl .flash-container.sticky {
  max-width: 1006px;
  margin-right: auto;
  margin-left: auto;
}

.container-queries-enabled {
  width: calc(100% + var(--container-padding-x) * 2 + var(--scrollbar-width, 0px));
  padding-right: var(--container-padding-x);
  padding-left: calc(var(--container-padding-x) + var(--scrollbar-width, 0px));
  margin-right: calc(var(--container-padding-x) * -1);
  margin-left: calc((var(--container-padding-x) + var(--scrollbar-width, 0px)) * -1);
}

.layout-page{
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
}

.page-with-panels .layout-page:where(.page-with-super-sidebar){
  display: grid;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  grid-template-rows: auto 1fr auto var(--ai-navigation-rail-size);
  gap: var(--gl-spacing-scale-0);
}

@media (min-width: 576px){
  .page-with-panels .layout-page:where(.page-with-super-sidebar){
    padding-bottom: var(--gl-spacing-scale-3);
  }
}

.page-with-panels .layout-page:where(.page-with-super-sidebar){
  min-height: var(--gl-spacing-scale-0);
  flex: 1 1 0%;
}

@media (min-width: 576px){
  .page-with-panels .layout-page:where(.page-with-super-sidebar){
    padding-left: var(--gl-spacing-scale-3);
    padding-right: var(--gl-spacing-scale-3);
  }
}

.page-with-panels .layout-page:where(.page-with-super-sidebar) {
  grid-template-areas: "broadcast-message" "panels" "ai-panel" "ai-navigation-rail";
}
@media (min-width: 992px) {
  .page-with-panels .layout-page:where(.page-with-super-sidebar){
    grid-template-columns: auto 1fr auto var(--ai-navigation-rail-size);
    grid-template-rows: auto 1fr;
    grid-template-areas: "super-sidebar-nav broadcast-message broadcast-message ." "super-sidebar-nav panels ai-panel ai-navigation-rail";
  }
}
.page-with-panels .broadcast-wrapper {
  grid-area: broadcast-message;
}
.page-with-panels .broadcast-wrapper:has(> .gl-broadcast-message){
  margin-bottom: var(--gl-spacing-scale-3);
}
@media (min-width: 992px) {
  .page-with-panels .super-sidebar-wrapper {
    grid-area: super-sidebar-nav;
  }
}
.page-with-panels .panels-container {
  grid-area: panels;
}

@media (min-width: 576px){
  .page-with-panels.page-with-ai-panel .layout-page{
    padding-bottom: var(--gl-spacing-scale-0);
  }
}

@media (min-width: 992px){
  .page-with-panels.page-with-ai-panel .layout-page{
    padding-bottom: var(--gl-spacing-scale-3);
    padding-right: var(--gl-spacing-scale-0);
  }
}

.panels-container{
  position: relative;
  flex-grow: 1;
  display: flex;
  padding-right: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  min-height: var(--gl-spacing-scale-0);
  --application-header-height: 0px;
  --system-header-height: 0px;
  --performance-bar-height: 0px;
  --header-height: 0px;
  --top-bar-height: 0px;
}
.panels-container .panel-content-inner > .alert-wrapper:not(:has(*)),
.panels-container .vue-portal-target .work-item-detail-panel-content > .alert-wrapper:not(:has(*)){
  display: none;
}

@supports (width: calc-size(auto, size)) {
  .panels-container,
  .super-sidebar.super-sidebar-toggled-manually {
    width: calc-size(auto, size);
    /* stylelint-disable-next-line property-no-unknown */
    interpolate-size: allow-keywords;
    transition: width 0.25s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.25s cubic-bezier(0.22, 0.61, 0.36, 1);
  }
}
.ai-panel-wrapper {
  grid-area: ai-panel;
  overflow: inherit;
  position: relative;
}

.ai-navigation-rail {
  grid-area: ai-navigation-rail;
  display: flex;
  flex: 1 1 0%;
  align-items: center;
  gap: var(--gl-spacing-scale-5);
  padding: var(--gl-spacing-scale-3);
  height: var(--ai-navigation-rail-size);
}

@media (min-width: 992px){
  .ai-navigation-rail{
    flex-direction: column;
    gap: var(--gl-spacing-scale-3);
    width: var(--ai-navigation-rail-size);
    height: 100%;
  }
}
.ai-navigation-rail .gl-nav-item.selected::before{
  bottom: -6px;
}
@media (min-width: 992px){
  .ai-navigation-rail .gl-nav-item.selected::before{
    bottom: var(--gl-spacing-scale-2);
    right: -6px;
  }
  .layout-page.ai-panel-maximized{
    grid-template-columns: auto 2fr 3fr;
  }
}
.layout-page.ai-panel-maximized .ai-panel-wrapper {
  grid-column-start: panels;
  grid-column-end: ai-panel;
}
.layout-page.ai-panel-maximized .ai-panel{
  width: 100%;
}
 .modal-header .modal-title.layout-page.ai-panel-maximized .ai-panel {
  margin-right: -1rem;
  padding-right: 1rem;
}
.layout-page.ai-panel-maximized .ai-panel{
  border-left-color: var(--gl-border-color-transparent);
}
.layout-page.ai-panel-maximized .ai-panel:where(.gl-dark *){
  border-left-color: var(--gl-border-color-subtle);
}
.layout-page.ai-panel-maximized .ai-panel{
  border-radius: var(--gl-border-radius-xl);
  --tw-shadow: var(--gl-shadow-sm);
  --tw-shadow-colored: var(--gl-shadow-sm);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  clip-path: none;
}
.layout-page.ai-panel-maximized .panels-container {
  display: none;
}
@media (min-width: 2560px) {
  .layout-page.ai-panel-maximized .ai-panel-wrapper {
    grid-column-start: ai-panel;
  }
  .layout-page.ai-panel-maximized .ai-panel{
    border-left-style: solid;
    border-left-color: var(--gl-border-color-default);
    border-left-width: 1px;
    border-top-left-radius: var(--gl-border-radius-none);
    border-bottom-left-radius: var(--gl-border-radius-none);
  }
  .layout-page.ai-panel-maximized .panels-container {
    display: flex;
  }
}

.content-wrapper {
  padding-top: var(--top-bar-height);
  padding-bottom: 56px;
}

.container {
  padding-top: 0;
  z-index: 5;
}
.container .content {
  margin: 0;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .container .content {
    margin-top: 20px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .container .content {
    margin-top: 20px;
  }
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .container .container .title {
    padding-left: 15px !important;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .container .container .title {
    padding-left: 15px !important;
  }
}

.container-limited {
  max-width: 1296px;
}
.container-limited.limit-container-width {
  max-width: 1006px;
}

.alert-wrapper-top-space .gl-alert:first-child{
  margin-top: var(--gl-spacing-scale-3);
}

.alert-wrapper .alert-link-group {
  float: right;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .alert-wrapper .alert-link-group {
    float: none;
    margin-top: 8px;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .alert-wrapper .alert-link-group {
    float: none;
    margin-top: 8px;
  }
}

.fullscreen-layout {
  padding-top: 0;
  height: 100vh;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  overflow: hidden;
}
.fullscreen-layout > #js-peek {
  position: static;
  top: auto;
}
.fullscreen-layout .flash-container {
  margin-top: 0;
  margin-bottom: 0;
}

.gl-drawer-responsive {
  width: 28%;
  min-width: 400px;
  padding-left: 16px;
  padding-right: 16px;
  box-shadow: none;
  background-color: var(--gl-background-color-subtle);
  border-left-style: solid;
  border-left-color: var(--gl-border-color-default);
  border-left-width: 1px;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .gl-drawer-responsive {
    min-width: unset;
    width: 100%;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-drawer-responsive {
    min-width: unset;
    width: 100%;
  }
}
.gl-drawer-responsive .gl-drawer-header,
.gl-drawer-responsive .gl-drawer-body > * {
  padding-left: 0;
  padding-right: 0;
}

#goog-gt-tt {
  display: none;
}

/*
 * These are used by the `Tab width` user preference in
 * `https://gitlab.com/-/profile/preferences`. The `css_class_for_user` method in
 * `lib/gitlab/tab_width.rb` is used to add one of these classes to the `body` element.
*/
.tab-width-1 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 1;
}

.tab-width-2 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 2;
}

.tab-width-3 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 3;
}

.tab-width-4 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 4;
}

.tab-width-5 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 5;
}

.tab-width-6 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 6;
}

.tab-width-7 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 7;
}

.tab-width-8 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 8;
}

.tab-width-9 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 9;
}

.tab-width-10 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 10;
}

.tab-width-11 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 11;
}

.tab-width-12 {
  /* stylelint-disable-next-line property-no-vendor-prefix */
  tab-size: 12;
}

:root {
  /**
   * Bloom backgrounds
   */
}
:root.with-bloom body{
  background-color: var(--gl-application-chrome-background-color);
}
:root.with-bloom body::before, :root.with-bloom body::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-repeat: no-repeat;
}
@media (prefers-reduced-motion: no-preference) {
  :root.with-bloom body::before, :root.with-bloom body::after {
    transition: opacity 0.6s ease-in-out;
  }
}
:root.with-bloom body::before {
  opacity: 0;
}
@media (min-width: 992px) {
  :root.with-bloom body::before {
    background-image: url(/assets/blooms/bloom-side-a17ad5187e2a6699d57babcd08a1eb502866d773d2d631cc01a47e47e1023b19.png);
    background-position: top right;
    background-size: 350px 600px;
    opacity: 1;
  }
}
:root.with-bloom body::after {
  background-image: url(/assets/blooms/bloom-bottom-0767bcecbbfc2dffc3ed95fe12b689d298c7e0845e609c9538b68de5ebf38c80.png);
  background-position: bottom right -300px;
  background-size: 1200px 400px;
  opacity: 0;
}
:root.with-bloom.ai-panel-is-open body::before {
  opacity: 0;
}
:root.with-bloom.ai-panel-is-open body::after {
  opacity: 1;
}
:root.html-devise-layout body{
  background-color: var(--gl-application-chrome-background-color);
}
:root.html-devise-layout body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image: url(/assets/blooms/bloom-grand-ambient-a1791dfc95bc1d5b14a11439df5ad4d69be46f89ec8e23af9fac01b7090980f4.png);
  background-position: bottom center;
  background-size: 1440px 525px;
  background-repeat: no-repeat;
}
:root.html-devise-layout .footer-container hr {
  display: none;
}

.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}
.animated.once {
  animation-iteration-count: 1;
}
.animated.short {
  animation-duration: 321ms;
  animation-fill-mode: none;
}

@keyframes pulse {
  from, to {
    transform: scale3d(1, 1, 1);
  }
  50% {
    transform: scale3d(1.05, 1.05, 1.05);
  }
}
.pulse {
  animation-name: pulse;
}

/*
* General hover animations
*/
.btn {
  transition: background-color 100ms linear, border-color 100ms linear, color 100ms linear, box-shadow 100ms linear;
}

.dropdown-menu-toggle {
  transition: border-color 100ms linear;
}

.note-action-button,
.dropdown-toggle-caret {
  transition: color 100ms linear;
}

.stage-nav-item {
  transition: background-color 100ms linear, box-shadow 100ms linear;
}

.dropdown-menu a,
.dropdown-menu button {
  transition: none;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fade-in {
  animation: fadeIn 200ms 1;
}

@keyframes fadeInHalf {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 0.5;
  }
}
.fade-in-half {
  animation: fadeInHalf 200ms 1;
}

@keyframes fadeInFull {
  0% {
    opacity: 0.5;
  }
  100% {
    opacity: 1;
  }
}
.fade-in-full {
  animation: fadeInFull 200ms 1;
}

.animation-container {
  height: 40px;
  overflow: hidden;
}
.animation-container.animation-container-small {
  height: 12px;
}
.animation-container.animation-container-right .skeleton-line-2 {
  left: 0;
  right: 150px;
}
.animation-container [class^=skeleton-line-] {
  position: relative;
  background-color: var(--gl-background-color-strong);
  height: 10px;
  overflow: hidden;
}
.animation-container [class^=skeleton-line-]:not(:last-of-type) {
  margin-bottom: 4px;
}
.animation-container [class^=skeleton-line-]::after {
  content: " ";
  display: block;
  animation: blockTextShine 1s linear infinite forwards;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: linear-gradient(to right, #ecebea 0%, #f7f7f5 20%, #ecebea 40%, #ecebea 100%);
  height: 10px;
}

.skeleton-line-1 {
  width: 156px;
}

.skeleton-line-2 {
  width: 235px;
}

.skeleton-line-3 {
  width: 200px;
}

@keyframes blockTextShine {
  0% {
    transform: translateX(-468px);
  }
  100% {
    transform: translateX(468px);
  }
}
.slide-down-enter-active {
  transition: transform 0.2s;
}

.slide-down-enter,
.slide-down-leave-to {
  transform: translateY(-30%);
}

.slide-in-fwd-bottom-enter-active {
  animation: slide-in-fwd-bottom 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}

.slide-in-fwd-bottom-leave-active {
  animation: slide-in-fwd-bottom 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94) both reverse;
}

/* ----------------------------------------------
 * Generated by Animista on 2019-4-26 17:40:41
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */
@keyframes slide-in-fwd-bottom {
  0% {
    transform: translateZ(-1400px) translateY(800px);
    opacity: 0;
  }
  100% {
    transform: translateZ(0) translateY(0);
    opacity: 1;
  }
}
.hotspot-pulse{
  position: relative;
}
.hotspot-pulse::after {
  content: "";
  height: var(--gl-spacing-scale-3);
  width: var(--gl-spacing-scale-3);
  border-radius: var(--gl-border-radius-full);
  background-color: var(--gl-status-info-icon-color);
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
}
@media (prefers-reduced-motion) {
  .hotspot-pulse::before {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    animation-delay: 0ms !important;
  }
}
.hotspot-pulse::before {
  content: "";
  position: absolute;
  height: var(--gl-spacing-scale-3);
  width: var(--gl-spacing-scale-3);
  border-radius: var(--gl-border-radius-full);
  pointer-events: none;
  /* Position exactly where the ::after dot will be */
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgb(from var(--gl-status-info-icon-color) r g b/0.7);
  z-index: 1;
  animation: hotspot-pulse 2s infinite;
  transform-origin: center;
}

@keyframes hotspot-pulse {
  0% {
    transform: translateY(-50%) scale(1);
    opacity: 0.7;
  }
  100% {
    transform: translateY(-50%) scale(2.5);
    opacity: 0;
  }
}
/**
* Transition classes are built dynamically, please read about vue-transitions
* here before removing https://vuejs.org/guide/built-ins/transition
**/
.fade-enter-active,
.fade-leave-active,
.fade-in-enter-active,
.fade-out-leave-active{
  transition-property: opacity;
  transition-timing-function: ease;
  transition-duration: 200ms;
}

.fade-enter,
.fade-in-enter,
.fade-out-leave-to,
.fade-leave-to {
  opacity: 0;
}

.slide-enter-from-element.slide-enter, .slide-enter-from-element.slide-leave-to {
  position: absolute;
  transform: translateX(-150%);
}

.slide-enter-to-element.slide-enter, .slide-enter-to-element.slide-leave-to {
  position: absolute;
  transform: translateX(150%);
}

.slide-enter-active,
.slide-leave-active {
  transition: transform 300ms ease-out;
}

.slide-enter-to,
.slide-leave {
  transform: translateX(0);
}

.blob-embed {
  margin: 16px 0;
  overflow: hidden;
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-radius: var(--gl-border-radius-lg);
}
.blob-embed .blob-embed-header {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 8px 16px;
  background-color: var(--gl-background-color-subtle);
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.blob-embed .blob-embed-title {
  font-size: 90%;
  word-break: break-all;
  color: var(--gl-text-color-default);
}
.blob-embed .line-numbers a {
  text-decoration: none;
}
.blob-embed .line-numbers a::after {
  content: none;
}

.nothing-here-block {
  text-align: center;
  padding: 16px;
  color: var(--gl-text-color-subtle);
  font-weight: 400;
  font-size: 14px;
}
.nothing-here-block.diff-collapsed {
  padding: 5px;
  line-height: 34px;
}
.nothing-here-block.diff-collapsed .click-to-expand {
  cursor: pointer;
  vertical-align: initial;
}

.row-content-block {
  margin-top: 0;
  background-color: var(--gl-background-color-subtle);
  padding: 16px;
  margin-bottom: 0;
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  color: var(--gl-text-color-default);
}
.row-content-block.top-block {
  border-top: 0;
}
.row-content-block.top-block .container-fluid, .row-content-block.top-block .container-sm, .row-content-block.top-block .container-md, .row-content-block.top-block .container-lg, .row-content-block.top-block .container-xl {
  background-color: inherit;
}
.row-content-block.middle-block {
  margin-top: 24px;
  margin-bottom: 0;
}
.row-content-block.second-block {
  margin-top: -1px;
  margin-bottom: 0;
}
.row-content-block.footer-block {
  margin-top: 24px;
  border-bottom: 0;
}
.row-content-block.content-component-block{
  background-color: var(--gl-background-color-default);
}
.row-content-block .title{
  color: var(--gl-text-color-heading);
}
.row-content-block > p:last-child {
  margin-bottom: 0;
}

.content-block {
  padding: 16px 0;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.content-block > .controls {
  float: right;
}

.landing {
  margin: 16px auto;
  overflow: hidden;
  display: flex;
  position: relative;
  border: 1px solid var(--gl-banner-intro-border-color);
  border-radius: 0.25rem;
  background-color: var(--gl-feedback-info-background-color);
  justify-content: center;
}
.landing .svg-container {
  align-self: center;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .landing {
    flex-direction: column;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .landing {
    flex-direction: column;
  }
}

.empty-state {
  margin: 5% auto 0;
}
.empty-state .text-content {
  max-width: 460px;
  margin: 0 auto;
  padding: 16px;
}
.empty-state .emoji-icon {
  display: inline-block;
}
.empty-state .btn:not(.split-content-button):not(.dropdown-toggle-split) {
  margin: 8px 4px;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .empty-state .btn:not(.split-content-button):not(.dropdown-toggle-split) {
    width: 100%;
    margin: 8px 0;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .empty-state .btn:not(.split-content-button):not(.dropdown-toggle-split) {
    width: 100%;
    margin: 8px 0;
  }
}

.code-block {
  white-space: pre;
  overflow-x: auto;
  font-size: 12px;
  border: 0;
  padding: 0.5rem;
}
.code-block code {
  background-color: inherit;
  padding: inherit;
}

.gl-empty-state {
  margin-top: 2rem;
}

#js-vue-page-breadcrumbs-wrapper {
  flex-grow: 1;
  min-width: 1px;
  /*
   * Our auto-resizing GlBreadcrumb component works best when it is set to grow with the available space.
   * Only this way can its ResizeObserver detect that more space than currently taken is available,
   * so it can uncollapse items when more space becomes available.
   * But we do *not* want this effect on pages that use the injectVueAppBreadcrumbs() mechanism.
   * There, we want the lefthand breadcrumbs only take as much space as they needed on their first size calc,
   * so that the second, injected GlBreadcrumb component sits right next to it, with no "grow effect" taking
   * empty space between them.
   * The only downside to this approach is that on such injected pages, the lefthand breadcrumbs won't
   * uncollapse themselves when more space becomes available, as they won't "grow" into it, not triggering
   * their ResizeObserver.
   */
}
#js-vue-page-breadcrumbs-wrapper nav.gl-breadcrumbs:only-of-type {
  flex-grow: 1;
}
#js-vue-page-breadcrumbs-wrapper {
  /* If a Vue app portals its breadcrumbs here (like `NewNamespacePage` does), hide the others! */
  /* stylelint-disable-next-line gitlab/no-has -- scoped to direct children of breadcrumb container */
}
#js-vue-page-breadcrumbs-wrapper > :has(~ .vue-portal-target) {
  display: none;
}
#js-vue-page-breadcrumbs-wrapper {
  /* ... and give portaled element room to grow */
}
#js-vue-page-breadcrumbs-wrapper > .vue-portal-target {
  flex-grow: 1;
}

.btn {
  white-space: nowrap;
  border-radius: var(--gl-button-border-radius);
  font-size: 0.875rem;
  font-weight: 400;
  padding: 6px 10px;
}
.btn:focus-visible, .btn:active {
  background-color: #ecebea;
}
.btn:focus-visible:active {
  outline: 0;
}
.btn.btn-grouped {
  margin-left: 0.5rem;
  float: left;
}
.btn.btn-grouped.inline {
  float: none;
}
.btn svg {
  height: 15px;
  width: 15px;
}
.btn svg:not(:last-child) {
  margin-right: 5px;
}

.btn-group.btn-grouped {
  margin-left: 0.5rem;
  float: left;
}
.btn-group.btn-grouped.inline {
  float: none;
}

.button-reset{
  border-style: none;
  background-color: transparent;
  padding: var(--gl-spacing-scale-0);
}

.button-reset:focus-visible{
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}

.button-reset {
  cursor: default !important;
}

/**
 * Use `gl-button-theme` mixin from GitLab UI to apply same styles to
 * <button class="btn"> and <button class="btn btn-danger"> as GlButton.
 * Use `:not(.gl-button)` selector to avoid overriding GlButton usage.
 * Use `.btn-danger.btn-danger` double selector to increase specificity
 * against Bootstrap default .btn-danger styles for hover/focus states.
 */
.btn:not(.gl-button) {
  color: var(--gl-button-default-primary-foreground-color-default);
  background-color: var(--gl-button-default-primary-background-color-default);
  border-color: var(--gl-button-default-primary-border-color-default);
}
.btn:not(.gl-button)::before {
  background-color: var(--gl-button-default-primary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.btn:not(.gl-button):hover {
  color: var(--gl-button-default-primary-foreground-color-hover);
  background-color: var(--gl-button-default-primary-background-color-hover);
  border-color: var(--gl-button-default-primary-border-color-hover);
}
.btn:not(.gl-button):focus-visible {
  color: var(--gl-button-default-primary-foreground-color-focus);
  background-color: var(--gl-button-default-primary-background-color-focus);
  border-color: var(--gl-button-default-primary-border-color-focus);
}
.btn:not(.gl-button):active, .btn:not(.gl-button).active {
  color: var(--gl-button-default-primary-foreground-color-active);
  background-color: var(--gl-button-default-primary-background-color-active);
  border-color: var(--gl-button-default-primary-border-color-active);
}
.btn:not(.gl-button):active :focus-visible, .btn:not(.gl-button):active:focus-visible:active, .btn:not(.gl-button).active :focus-visible, .btn:not(.gl-button).active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.btn:not(.gl-button).btn-danger.btn-danger {
  color: var(--gl-button-danger-primary-foreground-color-default);
  background-color: var(--gl-button-danger-primary-background-color-default);
  border-color: var(--gl-button-danger-primary-border-color-default);
}
.btn:not(.gl-button).btn-danger.btn-danger::before {
  background-color: var(--gl-button-danger-primary-border-color-default);
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.btn:not(.gl-button).btn-danger.btn-danger:hover {
  color: var(--gl-button-danger-primary-foreground-color-hover);
  background-color: var(--gl-button-danger-primary-background-color-hover);
  border-color: var(--gl-button-danger-primary-border-color-hover);
}
.btn:not(.gl-button).btn-danger.btn-danger:focus-visible {
  color: var(--gl-button-danger-primary-foreground-color-focus);
  background-color: var(--gl-button-danger-primary-background-color-focus);
  border-color: var(--gl-button-danger-primary-border-color-focus);
}
.btn:not(.gl-button).btn-danger.btn-danger:active, .btn:not(.gl-button).btn-danger.btn-danger.active {
  color: var(--gl-button-danger-primary-foreground-color-active);
  background-color: var(--gl-button-danger-primary-background-color-active);
  border-color: var(--gl-button-danger-primary-border-color-active);
}
.btn:not(.gl-button).btn-danger.btn-danger:active :focus-visible, .btn:not(.gl-button).btn-danger.btn-danger:active:focus-visible:active, .btn:not(.gl-button).btn-danger.btn-danger.active :focus-visible, .btn:not(.gl-button).btn-danger.btn-danger.active:focus-visible:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.input-group-prepend .btn,
.input-group-append .btn {
  border-radius: var(--gl-button-border-radius);
  font-size: 0.875rem;
  font-weight: 400;
  padding: 6px 10px;
}
.input-group-prepend .btn:focus-visible, .input-group-prepend .btn:active,
.input-group-append .btn:focus-visible,
.input-group-append .btn:active {
  background-color: #ecebea;
}
.input-group-prepend .btn:hover,
.input-group-append .btn:hover {
  outline: none;
}
.input-group-prepend .btn:active,
.input-group-append .btn:active {
  outline: none;
}
.input-group-prepend .active,
.input-group-append .active {
  box-shadow: rgba(0, 0, 0, 0.16);
  border: 1px solid #dcdbd9 !important;
  background-color: #ecebea !important;
}

.btn.disabled, .btn.disabled:hover,
.btn[disabled],
.btn[disabled]:hover,
fieldset[disabled] .btn,
fieldset[disabled] .btn:hover,
.dropdown-toggle[disabled],
.dropdown-toggle[disabled]:hover,
[disabled].dropdown-menu-toggle,
[disabled].dropdown-menu-toggle:hover{
  background-color: var(--gl-background-color-disabled);
  border-color: #dcdbd9;
  color: var(--gl-text-color-disabled);
  opacity: 1;
  text-decoration: none;
  cursor: default;
}
.btn.disabled.cursor-not-allowed, .btn.disabled:hover.cursor-not-allowed,
.btn[disabled].cursor-not-allowed,
.btn[disabled]:hover.cursor-not-allowed,
fieldset[disabled] .btn.cursor-not-allowed,
fieldset[disabled] .btn:hover.cursor-not-allowed,
.dropdown-toggle[disabled].cursor-not-allowed,
.dropdown-toggle[disabled]:hover.cursor-not-allowed,
[disabled].dropdown-menu-toggle.cursor-not-allowed,
[disabled].dropdown-menu-toggle:hover.cursor-not-allowed {
  cursor: not-allowed;
}
.btn.disabled i, .btn.disabled:hover i,
.btn[disabled] i,
.btn[disabled]:hover i,
fieldset[disabled] .btn i,
fieldset[disabled] .btn:hover i,
.dropdown-toggle[disabled] i,
.dropdown-toggle[disabled]:hover i,
[disabled].dropdown-menu-toggle i,
[disabled].dropdown-menu-toggle:hover i{
  color: var(--gl-text-color-disabled);
}

.new-activities-block {
  min-height: 240px;
}

.contrib-calendar-wrapper,
.contrib-legend-wrapper {
  max-width: 1296px;
  margin-left: auto;
  margin-right: auto;
}

.contrib-calendar {
  grid-template-rows: auto repeat(7, minmax(0, 1fr));
  grid-template-columns: auto;
  grid-auto-columns: minmax(15px, 1fr);
}

.user-contribution-graph-cell {
  min-width: 15px;
  min-height: 15px;
}

.contrib-calendar .user-contribution-graph-cell {
  transition: background-color 0.5s ease var(--contrib-fade-delay, 0ms), border-color 0.1s ease;
}

.contrib-calendar button.user-contribution-graph-cell {
  cursor: pointer;
}
.contrib-calendar button.user-contribution-graph-cell:hover, .contrib-calendar button.user-contribution-graph-cell:focus, .contrib-calendar button.user-contribution-graph-cell.is-active:hover, .contrib-calendar button.user-contribution-graph-cell.is-active:focus {
  z-index: 1;
  border: 2px solid var(--gl-focus-ring-inner-color);
  outline: 2px solid var(--gl-focus-ring-outer-color) !important;
  outline-offset: 0;
}
.contrib-calendar button.user-contribution-graph-cell.is-active {
  z-index: 1;
  border: 2px solid var(--gl-background-color-default);
  outline: 2px solid var(--gl-action-selected-border-color-default) !important;
  outline-offset: 0;
}

.contrib-calendar div.user-contribution-graph-cell {
  opacity: 0;
}

.contrib-legend-cell {
  cursor: help;
}

.user-contribution-graph-cell{
  border-radius: var(--gl-border-radius-sm);
}

.user-contribution-graph-cell-0 {
  background-color: var(--user-contribution-graph-cell-level-0);
}

.user-contribution-graph-cell-1 {
  background-color: var(--user-contribution-graph-cell-level-1);
}

.user-contribution-graph-cell-2 {
  background-color: var(--user-contribution-graph-cell-level-2);
}

.user-contribution-graph-cell-3 {
  background-color: var(--user-contribution-graph-cell-level-3);
}

.user-contribution-graph-cell-4 {
  background-color: var(--user-contribution-graph-cell-level-4);
}

.user-contrib-cell:hover, .user-contrib-cell:focus-visible, .user-contrib-cell.is-active {
  cursor: pointer;
  outline: none;
  stroke: var(--gl-text-color-default);
}
.user-contrib-cell:active, .user-contrib-cell.is-active {
  stroke-width: 2px;
}
.user-contrib-cell[data-level="0"] {
  fill: var(--user-contribution-graph-cell-level-0);
}
.user-contrib-cell[data-level="1"] {
  fill: var(--user-contribution-graph-cell-level-1);
}
.user-contrib-cell[data-level="2"] {
  fill: var(--user-contribution-graph-cell-level-2);
}
.user-contrib-cell[data-level="3"] {
  fill: var(--user-contribution-graph-cell-level-3);
}
.user-contrib-cell[data-level="4"] {
  fill: var(--user-contribution-graph-cell-level-4);
}

.contribution-event{
  column-gap: var(--gl-spacing-scale-3);
  row-gap: var(--gl-spacing-scale-2);
  display: grid;
  align-items: center;
}
.contribution-event::before{
  width: var(--gl-spacing-scale-1);
  left: var(--gl-spacing-scale-4);
  top: var(--gl-spacing-scale-6);
  bottom: var(--gl-spacing-scale-0);
  background-color: var(--gl-background-color-strong);
  content: "";
  transform: translateX(-50%);
  position: absolute;
}

.contribution-event-avatar {
  grid-template-columns: var(--gl-spacing-scale-6) auto 1fr;
  grid-template-areas: "author author author" ". icon title" ". description description" ". timestamp timestamp";
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .contribution-event-avatar {
    grid-template-columns: var(--gl-spacing-scale-6) min-content 1fr auto;
    grid-template-areas: "author author author timestamp" ". icon title ." ". description description .";
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .contribution-event-avatar {
    grid-template-columns: var(--gl-spacing-scale-6) min-content 1fr auto;
    grid-template-areas: "author author author timestamp" ". icon title ." ". description description .";
  }
}
.contribution-event-avatar .contribution-event-icon{
  margin-right: calc(var(--gl-spacing-scale-1) * -1);
}

.contribution-event-default {
  grid-template-columns: auto 1fr;
  grid-template-areas: "icon title" ". description" ". timestamp";
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .contribution-event-default {
    grid-template-columns: auto 1fr auto;
    grid-template-areas: "icon title timestamp" ". description .";
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .contribution-event-default {
    grid-template-columns: auto 1fr auto;
    grid-template-areas: "icon title timestamp" ". description .";
  }
}

.contribution-event-author {
  grid-area: author;
}

.contribution-event-icon {
  grid-area: icon;
}

.contribution-event-timestamp {
  grid-area: timestamp;
}

.contribution-event-title {
  grid-area: title;
}

.contribution-event-description {
  grid-area: description;
}

.contribution-event:last-of-type::before {
  display: none;
}

:root {
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
}

.with-performance-bar {
  --performance-bar-height: 2.5rem;
}

.with-system-header {
  --system-header-height: 16px;
}

.with-header {
  --header-height: calc(3rem + 1px);
}

.with-top-bar {
  --top-bar-height: 3rem;
}

.with-system-footer {
  --system-footer-height: 16px;
}

@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .right-sidebar-collapsed {
    --application-bar-right: 62px;
  }
  :where(html.with-gl-container-queries) .right-sidebar-collapsed.is-merge-request {
    --application-bar-right: 0px;
  }
  :where(html.with-gl-container-queries) .right-sidebar-expanded {
    --application-bar-right: 290px;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar-collapsed {
    --application-bar-right: 62px;
  }
  :where(html:not(.with-gl-container-queries)) .right-sidebar-collapsed.is-merge-request {
    --application-bar-right: 0px;
  }
  :where(html:not(.with-gl-container-queries)) .right-sidebar-expanded {
    --application-bar-right: 290px;
  }
}
/** COLORS **/
.text-underline,
.text-underline:hover {
  text-decoration: underline;
}

.hint {
  font-style: italic;
  color: var(--gl-text-color-disabled);
}

.light{
  color: var(--gl-text-color-default);
}

.tab-content {
  overflow: visible;
}

pre.clean {
  background: none;
  border: 0;
  margin: 0;
  padding: 0;
}
pre.wrap {
  word-break: break-word;
  white-space: pre-wrap;
}

hr{
  margin-top: var(--gl-spacing-scale-6);
  margin-bottom: var(--gl-spacing-scale-6);
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  border-color: var(--gl-border-color-subtle);
}

.str-truncated {
  display: inline-block;
  min-width: 0;
  overflow-x: clip;
  overflow-y: visible;
  text-overflow: ellipsis;
  vertical-align: top;
  white-space: nowrap;
  max-width: 82%;
}

.str-truncated-100 {
  display: inline-block;
  min-width: 0;
  overflow-x: clip;
  overflow-y: visible;
  text-overflow: ellipsis;
  vertical-align: top;
  white-space: nowrap;
  max-width: 100%;
}

.item-title {
  font-weight: 600;
}

.loading {
  margin: 20px auto;
  height: 40px;
  color: var(--gl-text-color-subtle);
  font-size: 32px;
  text-align: center;
}

p.time{
  color: var(--gl-text-color-disabled);
  font-size: 90%;
  margin: 30px 3px 3px 2px;
}

.highlight {
  text-shadow: none;
}

li.note img {
  max-width: 100%;
}

.markdown img {
  max-width: 100%;
}

.wiki_content code,
.readme code {
  background-color: inherit;
}

.error-message {
  padding: 10px;
  background: #f15168;
  margin: 0;
  color: #fff;
}
.error-message a {
  color: #fff;
  text-decoration: underline;
}

.warning_message {
  border-left: 4px solid #f7b951;
  color: #28272d;
  padding: 16px 24px;
  margin-bottom: 12px;
  background-color: #fdf0d5;
}
.warning_message.centered {
  text-align: center;
}
.warning_message .close svg {
  width: 16px;
  height: 16px;
}
.warning_message .close {
  color: inherit;
}

.gitlab-promo a{
  color: var(--gl-text-color-disabled);
  margin-right: 30px;
}

.milestone .progress {
  margin-top: 4px;
  box-shadow: none;
  background-color: #dcdbd9;
}

.chart {
  overflow: hidden;
  height: 220px;
}

.card.card-body {
  margin-bottom: 16px;
}
.card.card-body hr{
  border-color: var(--gl-border-color-subtle);
}

.dropzone .dz-preview .dz-progress{
  border-style: solid !important;
  border-color: var(--gl-border-color-default) !important;
  border-width: 1px !important;
}
.dropzone .dz-preview .dz-progress .dz-upload {
  background: #0d8070 !important;
}

.dz-message {
  margin: 0;
}

.alert {
  margin-bottom: 16px;
}

.progress {
  height: 4px;
}

.gl-accessibility:focus-visible {
  display: flex;
  align-items: center;
  top: 1px;
  left: 1px;
  width: auto;
  height: 100%;
  padding: 0 10px;
  clip: auto;
  text-decoration: none;
  color: var(--gl-text-color-default);
  background-color: var(--gl-background-color-subtle);
  z-index: 1;
}

.tooltip .tooltip-inner {
  word-wrap: break-word;
}

.disabled-content {
  pointer-events: none;
  opacity: 0.5;
}

/** COMMON CLASSES **/
/**
  🚨 Do not use these classes — they are deprecated and being removed. 🚨
  See https://gitlab.com/gitlab-org/gitlab/-/issues/217418 for more details.
**/
.center {
  text-align: center;
}

.block {
  display: block;
}

.vertical-align-text-top {
  vertical-align: text-top;
}

.vertical-align-middle {
  vertical-align: middle;
}

/** COMMON SIZING CLASSES **/
.w-0 {
  width: 0;
}

.w-8em {
  width: 8em;
}

.w-30p {
  width: 30%;
}

.w-60p {
  width: 60%;
}

.h-32-px {
  height: 32px;
}

.mw-6em {
  max-width: 6em;
}

.drag-handle {
  width: 4px;
}
.drag-handle:hover{
  background-color: var(--gl-background-color-strong);
}
.drag-handle.is-dragging {
  background-color: #8a8888;
}

.cursor-pointer {
  cursor: pointer;
}

.cursor-default {
  cursor: default !important;
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .full-width-mobile {
    width: 100%;
  }
  :where(html.with-gl-container-queries) .full-width-mobile > .dropdown-menu,
  :where(html.with-gl-container-queries) .full-width-mobile > .btn,
  :where(html.with-gl-container-queries) .full-width-mobile > .gl-new-dropdown-toggle > .gl-button-text {
    width: 100%;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .full-width-mobile {
    width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .full-width-mobile > .dropdown-menu,
  :where(html:not(.with-gl-container-queries)) .full-width-mobile > .btn,
  :where(html:not(.with-gl-container-queries)) .full-width-mobile > .gl-new-dropdown-toggle > .gl-button-text {
    width: 100%;
  }
}

.gl-font-size-0 {
  font-size: 0;
}

.gl-pseudo-placeholder:empty::before {
  content: attr(data-placeholder);
  font-weight: 400;
  color: var(--gl-control-placeholder-color);
  cursor: text;
}

.gl-pagination ul {
  margin-bottom: 1rem;
}

.gl-label-text + .gl-label-text {
  padding-left: 0.25rem;
  padding-right: 0.5rem;
}

.gl-label-scoped {
  box-shadow: 0 0 0 2px currentColor inset;
}

.gl-label-tooltip-footer {
  color: var(--gl-tooltip-text-color-subtle);
}

.ref-container,
.commit-sha-container {
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
  font-size: 0.75rem;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  border-radius: 0.25rem;
}

.ref-container {
  color: var(--gl-link-mention-text-color-default) !important;
  background-color: var(--gl-link-mention-background-color-default);
}

.commit-sha-container{
  background-color: var(--gl-background-color-strong) !important;
  color: var(--gl-text-color-subtle) !important;
}

[readonly] {
  cursor: default;
}

copy-code {
  position: absolute;
  opacity: 0;
  top: 0.5rem;
  right: 0.5rem;
}
.markdown-code-block:hover copy-code, copy-code:focus-within {
  opacity: 1;
}

.markdown-code-block insert-code-snippet {
  display: none;
}

.dropdown {
  position: relative;
}
.dropdown.gl-dropdown button.dropdown-toggle {
  display: inline-flex;
}
.dropdown .btn-link:hover {
  cursor: pointer;
}

.show.dropdown .dropdown-menu {
  transform: translateY(0);
  display: block;
  min-height: 40px;
  max-height: 445px;
  overflow-y: auto;
}
.show.dropdown .dropdown-menu.dropdown-extended-height {
  max-height: 400px;
}
.show.dropdown .dropdown-menu.dropdown-extended-height .gl-dropdown-inner {
  max-height: 398px;
}
.show.dropdown .dropdown-menu.dropdown-reduced-height {
  max-height: 312px;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .show.dropdown .dropdown-menu {
    width: 100%;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .show.dropdown .dropdown-menu {
    width: 100%;
  }
}
.show.dropdown .dropdown-menu .gl-dropdown-inner {
  max-height: 310px;
}
.show.dropdown .dropdown-toggle,
.show.dropdown .dropdown-menu-toggle {
  border-color: #c1bfbe;
}
.show.dropdown [data-toggle=dropdown] {
  outline: 0;
}

.dropdown-toggle:active, .dropdown-toggle:focus-visible,
.dropdown-menu-toggle:active,
.dropdown-menu-toggle:focus-visible,
.dropdown-menu-close:active,
.dropdown-menu-close:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.dropdown-toggle,
.dropdown-menu-toggle,
.confidential-merge-request-fork-group .dropdown-toggle{
  border-radius: .25rem;
  padding: 6px 8px 6px 10px;
  text-align: left;
  white-space: nowrap;
  color: var(--gl-button-default-primary-foreground-color-default);
  background-color: var(--gl-button-default-primary-background-color-default);
  border: 1px solid var(--gl-button-default-primary-border-color-default);
  transition: color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.dropdown-toggle:hover,
.dropdown-menu-toggle:hover,
.confidential-merge-request-fork-group .dropdown-toggle:hover {
  color: var(--gl-button-default-primary-foreground-color-hover);
  background-color: var(--gl-button-default-primary-background-color-hover);
  border-color: var(--gl-button-default-primary-border-color-hover);
}
.dropdown-toggle:focus-visible,
.dropdown-menu-toggle:focus-visible,
.confidential-merge-request-fork-group .dropdown-toggle:focus-visible {
  color: var(--gl-button-default-primary-foreground-color-focus);
  background-color: var(--gl-button-default-primary-background-color-focus);
  border-color: var(--gl-button-default-primary-border-color-focus);
}
.dropdown-toggle:active, .dropdown-toggle.active,
.dropdown-menu-toggle:active,
.dropdown-menu-toggle.active,
.confidential-merge-request-fork-group .dropdown-toggle:active,
.confidential-merge-request-fork-group .dropdown-toggle.active {
  color: var(--gl-button-default-primary-foreground-color-active);
  background-color: var(--gl-button-default-primary-background-color-active);
  border-color: var(--gl-button-default-primary-border-color-active);
}
.dropdown-toggle:active:focus-visible, .dropdown-toggle.active:focus-visible,
.dropdown-menu-toggle:active:focus-visible,
.dropdown-menu-toggle.active:focus-visible,
.confidential-merge-request-fork-group .dropdown-toggle:active:focus-visible,
.confidential-merge-request-fork-group .dropdown-toggle.active:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.dropdown-toggle:disabled.read-only,
.dropdown-menu-toggle:disabled.read-only,
.confidential-merge-request-fork-group .dropdown-toggle:disabled.read-only{
  color: var(--gl-text-color-default) !important;
}
.dropdown-toggle.large,
.dropdown-menu-toggle.large,
.confidential-merge-request-fork-group .dropdown-toggle.large {
  width: 200px;
}
.dropdown-toggle.wide,
.dropdown-menu-toggle.wide,
.confidential-merge-request-fork-group .dropdown-toggle.wide {
  width: 100%;
}
.dropdown-toggle.wide + .dropdown-select,
.dropdown-menu-toggle.wide + .dropdown-select,
.confidential-merge-request-fork-group .dropdown-toggle.wide + .dropdown-select {
  width: 100%;
}
.dropdown-toggle.dynamic,
.dropdown-menu-toggle.dynamic,
.confidential-merge-request-fork-group .dropdown-toggle.dynamic {
  width: auto;
  min-width: 160px;
  max-width: 100%;
  padding-right: 25px;
}

.dropdown-menu-toggle.dropdown-menu-toggle {
  justify-content: flex-start;
  overflow: hidden;
  padding-top: 7px;
  padding-bottom: 7px;
  padding-right: 25px;
  position: relative;
  text-overflow: ellipsis;
  line-height: 16px;
  width: 160px;
  color: var(--gl-button-default-primary-foreground-color-default);
  background-color: var(--gl-button-default-primary-background-color-default);
  border: 1px solid var(--gl-button-default-primary-border-color-default);
  transition: color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.dropdown-menu-toggle.dropdown-menu-toggle:hover {
  color: var(--gl-button-default-primary-foreground-color-hover);
  background-color: var(--gl-button-default-primary-background-color-hover);
  border-color: var(--gl-button-default-primary-border-color-hover);
}
.dropdown-menu-toggle.dropdown-menu-toggle:focus-visible {
  color: var(--gl-button-default-primary-foreground-color-focus);
  background-color: var(--gl-button-default-primary-background-color-focus);
  border-color: var(--gl-button-default-primary-border-color-focus);
}
.dropdown-menu-toggle.dropdown-menu-toggle:active, .dropdown-menu-toggle.dropdown-menu-toggle.active {
  color: var(--gl-button-default-primary-foreground-color-active);
  background-color: var(--gl-button-default-primary-background-color-active);
  border-color: var(--gl-button-default-primary-border-color-active);
}
.dropdown-menu-toggle.dropdown-menu-toggle:active:focus-visible, .dropdown-menu-toggle.dropdown-menu-toggle.active:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.dropdown-menu-toggle.dropdown-menu-toggle .gl-spinner {
  position: absolute;
  top: 9px;
  right: 8px;
}
.dropdown-menu-toggle.dropdown-menu-toggle .dropdown-menu-toggle-icon {
  position: absolute;
  right: 8px;
  color: currentColor;
}

.labels .dropdown-menu-toggle.wide + .dropdown-select {
  max-height: unset;
}

.gl-dropdown .dropdown-menu-toggle {
  padding-right: 8px;
}
.gl-dropdown .dropdown-menu-toggle .gl-dropdown-toggle-text {
  min-height: 1.25rem;
}

.dropdown-menu {
  display: none;
  position: absolute;
  width: auto;
  top: 100%;
  z-index: 300;
  min-width: 240px;
  max-width: 500px;
  margin-top: 4px;
  margin-bottom: 24px;
  font-size: 0.875rem;
  font-weight: 400;
  padding: 8px 0;
  background-color: var(--gl-dropdown-background-color);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-color: var(--gl-dropdown-border-color);
  border-radius: .25rem;
  --tw-shadow: var(--gl-shadow-md);
  --tw-shadow-colored: var(--gl-shadow-md);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  color: var(--gl-text-color-default);
}
.dropdown-menu.dropdown-open-top {
  margin-bottom: 4px;
}
.dropdown-menu.is-loading .dropdown-content {
  display: none;
}
.dropdown-menu.is-loading .dropdown-loading {
  display: block;
}
.non-blocking-loader .dropdown-menu.is-loading .dropdown-content {
  display: block;
  height: 2rem;
}
.non-blocking-loader .dropdown-menu.is-loading .dropdown-content ul {
  display: none;
}
.non-blocking-loader .dropdown-menu .dropdown-loading {
  position: relative;
}
.dropdown-menu ul {
  margin: 0;
  padding: 0;
}
.dropdown-menu li {
  display: block;
  text-align: left;
  list-style: none;
}
.dropdown-menu li > a,
.dropdown-menu li > button,
.dropdown-menu li .gl-button.btn-link,
.dropdown-menu li .menu-item {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  display: block;
  font-weight: 400;
  position: relative;
  padding: 8px 12px;
  color: var(--gl-text-color-default);
  line-height: 16px;
  white-space: normal;
  overflow: hidden;
  text-align: left;
  width: 100%;
}
.dropdown-menu li > a.disable-hover,
.dropdown-menu li > button.disable-hover,
.dropdown-menu li .gl-button.btn-link.disable-hover,
.dropdown-menu li .menu-item.disable-hover {
  text-decoration: none;
}
.dropdown-menu li > a:not(.disable-hover):hover, .dropdown-menu li > a:active, .dropdown-menu li > a:focus-visible, .dropdown-menu li > a.is-focused,
.dropdown-menu li > button:not(.disable-hover):hover,
.dropdown-menu li > button:active,
.dropdown-menu li > button:focus-visible,
.dropdown-menu li > button.is-focused,
.dropdown-menu li .gl-button.btn-link:not(.disable-hover):hover,
.dropdown-menu li .gl-button.btn-link:active,
.dropdown-menu li .gl-button.btn-link:focus-visible,
.dropdown-menu li .gl-button.btn-link.is-focused,
.dropdown-menu li .menu-item:not(.disable-hover):hover,
.dropdown-menu li .menu-item:active,
.dropdown-menu li .menu-item:focus-visible,
.dropdown-menu li .menu-item.is-focused {
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
  color: var(--gl-dropdown-option-text-color-hover);
  outline: 0;
  text-decoration: none;
}
.dropdown-menu li > a:active, .dropdown-menu li > a:focus-visible, .dropdown-menu li > a:focus-visible:active, .dropdown-menu li > a.is-focused,
.dropdown-menu li > button:active,
.dropdown-menu li > button:focus-visible,
.dropdown-menu li > button:focus-visible:active,
.dropdown-menu li > button.is-focused,
.dropdown-menu li .gl-button.btn-link:active,
.dropdown-menu li .gl-button.btn-link:focus-visible,
.dropdown-menu li .gl-button.btn-link:focus-visible:active,
.dropdown-menu li .gl-button.btn-link.is-focused,
.dropdown-menu li .menu-item:active,
.dropdown-menu li .menu-item:focus-visible,
.dropdown-menu li .menu-item:focus-visible:active,
.dropdown-menu li .menu-item.is-focused {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .dropdown-menu li > a:active, .dropdown-menu li > a:focus-visible, .dropdown-menu li > a:focus-visible:active, .dropdown-menu li > a.is-focused,
  .dropdown-menu li > button:active,
  .dropdown-menu li > button:focus-visible,
  .dropdown-menu li > button:focus-visible:active,
  .dropdown-menu li > button.is-focused,
  .dropdown-menu li .gl-button.btn-link:active,
  .dropdown-menu li .gl-button.btn-link:focus-visible,
  .dropdown-menu li .gl-button.btn-link:focus-visible:active,
  .dropdown-menu li .gl-button.btn-link.is-focused,
  .dropdown-menu li .menu-item:active,
  .dropdown-menu li .menu-item:focus-visible,
  .dropdown-menu li .menu-item:focus-visible:active,
  .dropdown-menu li .menu-item.is-focused {
    outline: 2px solid LinkText;
  }
}
.dropdown-menu li > a.dropdown-menu-user-link,
.dropdown-menu li > button.dropdown-menu-user-link,
.dropdown-menu li .gl-button.btn-link.dropdown-menu-user-link,
.dropdown-menu li .menu-item.dropdown-menu-user-link {
  line-height: 16px;
  padding-top: 10px;
  padding-bottom: 7px;
  white-space: nowrap;
}
.dropdown-menu li > a.dropdown-menu-user-link .dropdown-menu-user-username,
.dropdown-menu li > button.dropdown-menu-user-link .dropdown-menu-user-username,
.dropdown-menu li .gl-button.btn-link.dropdown-menu-user-link .dropdown-menu-user-username,
.dropdown-menu li .menu-item.dropdown-menu-user-link .dropdown-menu-user-username {
  display: block;
}
.dropdown-menu .divider {
  height: 1px;
  margin: 0.25rem 0;
  padding: 0;
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  border-top-color: var(--gl-dropdown-border-color);
}
.dropdown-menu .separator {
  width: 100%;
  height: 1px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: var(--gl-dropdown-border-color);
}
.dropdown-menu .dropdown-menu-empty-item a:hover, .dropdown-menu .dropdown-menu-empty-item a:focus-visible {
  background-color: transparent;
}
.dropdown-menu .dropdown-header{
  color: var(--gl-text-color-strong);
  font-weight: var(--gl-font-weight-bold);
  font-size: 13px;
  line-height: 16px;
  padding: 8px 12px;
}
.dropdown-menu.capitalize-header .dropdown-header {
  text-transform: capitalize;
}
.dropdown-menu .unclickable {
  cursor: not-allowed;
  padding: 5px 8px;
  color: var(--gl-text-color-subtle);
}
.dropdown-menu .badge.badge-pill + span:not(.badge):not(.badge-pill) {
  margin-right: 40px;
}

.dropdown-item {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  display: block;
  font-weight: 400;
  position: relative;
  padding: 8px 12px;
  color: var(--gl-text-color-default);
  line-height: 16px;
  white-space: normal;
  overflow: hidden;
  text-align: left;
  width: 100%;
}
.dropdown-item.disable-hover {
  text-decoration: none;
}
.dropdown-item:not(.disable-hover):hover, .dropdown-item:active, .dropdown-item:focus-visible, .dropdown-item.is-focused {
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
  color: var(--gl-dropdown-option-text-color-hover);
  outline: 0;
  text-decoration: none;
}
.dropdown-item:active, .dropdown-item:focus-visible, .dropdown-item:focus-visible:active, .dropdown-item.is-focused {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .dropdown-item:active, .dropdown-item:focus-visible, .dropdown-item:focus-visible:active, .dropdown-item.is-focused {
    outline: 2px solid LinkText;
  }
}
.dropdown-item.dropdown-menu-user-link {
  line-height: 16px;
  padding-top: 10px;
  padding-bottom: 7px;
  white-space: nowrap;
}
.dropdown-item.dropdown-menu-user-link .dropdown-menu-user-username {
  display: block;
}

.droplab-dropdown .dropdown-toggle > i,
.droplab-dropdown .dropdown-toggle > svg {
  pointer-events: none;
}
.droplab-dropdown .dropdown-menu {
  display: none;
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.droplab-dropdown .dropdown-menu li {
  cursor: pointer;
}
.droplab-dropdown .dropdown-menu li.droplab-item-active button {
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
  color: var(--gl-dropdown-option-text-color-hover);
  outline: 0;
}
.droplab-dropdown .dropdown-menu li > a,
.droplab-dropdown .dropdown-menu li > button,
.droplab-dropdown .dropdown-menu li > .gl-button {
  display: flex;
  justify-content: flex-start;
  margin: 0;
  text-align: left;
  text-overflow: inherit;
}
.droplab-dropdown .dropdown-menu li > button.dropdown-epic-button {
  flex-direction: column;
}
.droplab-dropdown .dropdown-menu li > button.dropdown-epic-button .reference{
  color: var(--gl-text-color-disabled);
  margin-top: 4px;
}
.droplab-dropdown .dropdown-menu li.droplab-item-selected i, .droplab-dropdown .dropdown-menu li.droplab-item-selected svg {
  visibility: visible;
}
.droplab-dropdown .dropdown-menu li .icon {
  visibility: hidden;
}
.droplab-dropdown .dropdown-menu li .description {
  display: inline-block;
  white-space: normal;
  margin-left: 5px;
}
.droplab-dropdown .dropdown-menu li .description p {
  margin-bottom: 0;
}
.droplab-dropdown .icon {
  display: inline-block;
  vertical-align: top;
  padding-top: 2px;
}

.comment-type-dropdown.show .dropdown-menu {
  display: block;
}

.filtered-search-box-input-container .dropdown-menu {
  max-width: 280px;
}

.dropdown-menu-full-width {
  width: 100%;
}

.dropdown-menu-paging .dropdown-page-two,
.dropdown-menu-paging .dropdown-menu-back {
  display: none;
}
.dropdown-menu-paging.is-page-two .dropdown-page-one {
  display: none;
}
.dropdown-menu-paging.is-page-two .dropdown-page-two,
.dropdown-menu-paging.is-page-two .dropdown-menu-back {
  display: block;
}
.dropdown-menu-paging.is-page-two .dropdown-content {
  padding: 0 10px;
}

.dropdown-menu-user .avatar {
  float: left;
  width: 32px;
  height: 32px;
  margin: 0 10px 0 0;
}
.dropdown-menu-user .sidebar-participant .merge-icon {
  top: calc(50% + 5px);
  left: 3rem;
}

.dropdown-menu-user-full-name {
  display: block;
  font-weight: 400;
  line-height: 16px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.dropdown-menu-user-username {
  display: block;
  line-height: 16px;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.dropdown-select {
  width: 300px;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .dropdown-select {
    width: 100%;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .dropdown-select {
    width: 100%;
  }
}

.dropdown-menu-selectable li a,
.dropdown-menu-selectable li button,
.dropdown-menu-selectable li .dropdown-item {
  padding: 8px 40px;
  position: relative;
}
.dropdown-menu-selectable li a.is-indeterminate, .dropdown-menu-selectable li a.is-active,
.dropdown-menu-selectable li button.is-indeterminate,
.dropdown-menu-selectable li button.is-active,
.dropdown-menu-selectable li .dropdown-item.is-indeterminate,
.dropdown-menu-selectable li .dropdown-item.is-active{
  color: var(--gl-text-color-default);
}
.dropdown-menu-selectable li a.is-indeterminate.dropdown-menu-user-link::before, .dropdown-menu-selectable li a.is-active.dropdown-menu-user-link::before,
.dropdown-menu-selectable li button.is-indeterminate.dropdown-menu-user-link::before,
.dropdown-menu-selectable li button.is-active.dropdown-menu-user-link::before,
.dropdown-menu-selectable li .dropdown-item.is-indeterminate.dropdown-menu-user-link::before,
.dropdown-menu-selectable li .dropdown-item.is-active.dropdown-menu-user-link::before {
  top: 50%;
  transform: translateY(-50%);
}
.dropdown-menu-selectable li a.is-indeterminate::before,
.dropdown-menu-selectable li button.is-indeterminate::before,
.dropdown-menu-selectable li .dropdown-item.is-indeterminate::before {
  position: absolute;
  left: 16px;
  top: 16px;
  transform: translateY(-50%);
  font-style: normal;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: "—";
}
.dropdown-menu-selectable li a.is-active,
.dropdown-menu-selectable li button.is-active,
.dropdown-menu-selectable li .dropdown-item.is-active {
  position: relative;
}
.dropdown-menu-selectable li a.is-active::before,
.dropdown-menu-selectable li button.is-active::before,
.dropdown-menu-selectable li .dropdown-item.is-active::before {
  content: "";
  display: block;
  position: absolute;
  top: 0.5rem;
  left: 1rem;
  width: 1rem;
  height: 1rem;
  mask-image: url(/assets/icons-stacked-91dc04b815ed13993cce0cc332a54006fb25da653d24ee925870fb17dcabab3c.svg#check);
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center center;
  background: var(--gl-dropdown-option-indicator-color-selected-default);
}

.dropdown-title {
  position: relative;
  padding: 8px 12px;
  padding-bottom: 16px;
  margin-bottom: 8px;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: var(--gl-text-color-strong);
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-dropdown-border-color);
  overflow: hidden;
}

.dropdown-title-button {
  padding: 0;
  color: #bfbfbf;
  border: 0;
  background: none;
  outline: 0;
}
.dropdown-title-button:hover {
  color: rgb(152.75, 152.75, 152.75);
}

.dropdown-menu-back {
  left: 10px;
  top: 8px;
}

.dropdown-input {
  position: relative;
  margin-bottom: 10px;
  padding: 0 10px;
}
.dropdown-input .input-icon,
.dropdown-input .dropdown-input-clear,
.dropdown-input .dropdown-input-search {
  position: absolute;
  top: 8px;
  right: 20px;
  fill: var(--gl-icon-color-subtle);
  font-size: 12px;
  pointer-events: none;
}
.dropdown-input .dropdown-input-clear {
  display: none;
  cursor: pointer;
  pointer-events: all;
  top: 8px;
  font-size: 14px;
}
.dropdown-input .dropdown-input-clear:not(.gl-icon) {
  right: 22px;
}
.dropdown-input.has-value .dropdown-input-clear {
  display: block;
}
.dropdown-input.has-value .dropdown-input-search {
  display: none;
}

.dropdown-input-field {
  background-color: var(--gl-control-background-color-default);
  display: block;
  width: 100%;
  min-height: 30px;
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  color: var(--gl-text-color-subtle);
  line-height: 30px;
  border: 1px solid var(--gl-control-border-color-default);
  border-radius: 0.25rem;
  outline: 0;
}
.dropdown-input-field:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.dropdown-input-field:hover ~ .dropdown-input-clear{
  color: var(--gl-text-color-subtle);
}

.dropdown-content {
  max-height: 252px;
  overflow-y: auto;
}

.dropdown-info-note{
  color: var(--gl-text-color-subtle);
  text-align: center;
}

.dropdown-footer {
  padding-top: 10px;
  margin-top: 10px;
  font-size: 13px;
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  border-top-color: var(--gl-dropdown-border-color);
}

.dropdown-footer-content {
  padding-left: 10px;
  padding-right: 10px;
}

.dropdown-footer-list {
  font-size: 14px;
}
.dropdown-footer-list a {
  cursor: pointer;
  padding-left: 10px;
}

.dropdown-create-new-item-button {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  display: block;
  font-weight: 400;
  position: relative;
  padding: 8px 12px;
  color: var(--gl-text-color-default);
  line-height: 16px;
  white-space: normal;
  overflow: hidden;
  text-align: left;
  width: 100%;
}
.dropdown-create-new-item-button.disable-hover {
  text-decoration: none;
}
.dropdown-create-new-item-button:not(.disable-hover):hover, .dropdown-create-new-item-button:active, .dropdown-create-new-item-button:focus-visible, .dropdown-create-new-item-button.is-focused {
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
  color: var(--gl-dropdown-option-text-color-hover);
  outline: 0;
  text-decoration: none;
}
.dropdown-create-new-item-button:active, .dropdown-create-new-item-button:focus-visible, .dropdown-create-new-item-button:focus-visible:active, .dropdown-create-new-item-button.is-focused {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .dropdown-create-new-item-button:active, .dropdown-create-new-item-button:focus-visible, .dropdown-create-new-item-button:focus-visible:active, .dropdown-create-new-item-button.is-focused {
    outline: 2px solid LinkText;
  }
}
.dropdown-create-new-item-button.dropdown-menu-user-link {
  line-height: 16px;
  padding-top: 10px;
  padding-bottom: 7px;
  white-space: nowrap;
}
.dropdown-create-new-item-button.dropdown-menu-user-link .dropdown-menu-user-username {
  display: block;
}
.dropdown-create-new-item-button {
  width: 100%;
  background-color: transparent;
  border: 0;
  text-align: left;
  text-overflow: ellipsis;
}

.dropdown-loading {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  z-index: 9;
  background-color: rgba(255, 255, 255, 0.6);
  font-size: 28px;
}

.dropdown-label-box {
  margin-right: 0.5rem;
  margin-top: 0.25rem;
  display: inline-block;
  width: 1rem;
  height: 0.5rem;
  border-radius: 0.25rem;
  border: 1px solid var(--gl-dropdown-background-color);
}

.git-revision-dropdown .dropdown-content {
  max-height: 215px;
}

.sidebar-move-issue-dropdown .dropdown-content {
  max-height: 160px;
}

.dropdown-menu-author .dropdown-content {
  max-height: 215px;
}

.dropdown-menu-labels .dropdown-content {
  max-height: 128px;
}

.dropdown-menu-inner-title {
  display: block;
  color: var(--gl-text-color-default);
  font-weight: 600;
}

.dropdown-menu-inner-content {
  display: block;
  color: var(--gl-text-color-subtle);
}

.dropdown-toggle-text.is-default {
  color: var(--gl-text-color-subtle);
}

.pika-single.animate-picker.is-bound,
.pika-single.animate-picker.is-bound.is-hidden {
  /*
   * Having `!important` is not recommended but
   * since `pikaday` sets positioning inline
   * there's no way it can be gracefully overridden
   * using config options.
   */
  position: absolute !important;
  display: block;
}

.pika-single.animate-picker.is-bound {
  transform: translateY(0);
  display: block;
}
.pika-single.animate-picker.is-bound.is-hidden {
  transform: translateY(-10px);
  display: none;
  overflow: hidden;
}

.labels-select-wrapper.is-standalone {
  min-width: 240px;
}
.labels-select-wrapper.is-standalone .labels-select-dropdown-contents {
  max-height: 350px;
}
.labels-select-wrapper.is-standalone .labels-select-dropdown-contents .dropdown-content {
  height: 250px;
}
.labels-select-wrapper li:hover .label-item, .labels-select-wrapper li.is-focused .label-item {
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
  color: var(--gl-dropdown-option-text-color-hover);
  outline: 0;
  text-decoration: none;
}
.labels-select-wrapper .labels-select-dropdown-button .gl-button-text {
  width: 100%;
}
.labels-select-wrapper .labels-select-dropdown-contents {
  min-height: 40px;
  max-height: 330px;
  z-index: 2;
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-color: var(--gl-dropdown-border-color);
  background-color: var(--gl-dropdown-background-color);
  --tw-shadow: var(--gl-shadow-md);
  --tw-shadow-colored: var(--gl-shadow-md);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.labels-select-wrapper .labels-select-dropdown-contents .dropdown-content {
  height: 135px;
}
.labels-select-wrapper .labels-fetch-loading {
  top: 0;
  left: 0;
  opacity: 0.5;
  background-color: #fff;
  z-index: 1;
}
.labels-select-wrapper .dropdown-header-button .gl-icon {
  color: #bfbfbf;
}
.labels-select-wrapper .dropdown-header-button .gl-icon:hover{
  color: var(--gl-text-color-disabled);
}
.labels-select-wrapper .label-item {
  padding: 8px 20px;
}

.bulk-update .dropdown-toggle-text.is-default{
  color: var(--gl-text-color-default);
}

.gl-dropdown-text-py-0 .b-dropdown-text {
  padding-top: 0;
  padding-bottom: 0;
}

.gl-dropdown-text-block .b-dropdown-text {
  display: block;
}

.gl-dropdown .gl-dropdown-menu-wide {
  width: 25rem;
}

.gl-dropdown.gl-dropdown-menu-full-width .dropdown-menu {
  width: 100%;
}

.group-namespace-dropdown .gl-new-dropdown-custom-toggle {
  display: flex;
  flex: auto;
}
.group-namespace-dropdown .gl-new-dropdown-custom-toggle .gl-button-text {
  display: flex;
  width: 100%;
}

.group-namespace-dropdown .gl-new-dropdown-item-text-wrapper {
  word-break: break-word;
}

/**
 * File content holder
 *
 */
.file-holder{
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-radius: var(--gl-border-radius-lg);
}
.file-holder.file-holder-top-border{
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-color: var(--gl-border-color-section);
}
.file-holder.file-holder-top-border .file-title{
  border-top-left-radius: var(--gl-border-radius-lg);
  border-top-right-radius: var(--gl-border-radius-lg);
}
.file-holder.readme-holder {
  margin: 16px 0;
}
.file-holder .file-title {
  position: relative;
  background-color: var(--gl-background-color-subtle);
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-section);
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
  margin: 0;
  text-align: left;
  padding: 10px 16px;
  word-wrap: break-word;
}
.file-holder .file-title .file-actions .btn:not(.btn-icon) {
  padding: 0 10px;
  font-size: 13px;
  line-height: 28px;
}
.file-holder .file-title a:not(.btn){
  color: var(--gl-text-color-default);
}
.file-holder .file-blame-legend .left-label {
  padding-right: 5px;
}
.file-holder .file-blame-legend .right-label {
  padding-left: 5px;
}
.file-holder .file-blame-legend .legend-box {
  display: inline-block;
  width: 10px;
  height: 10px;
  padding: 0 2px;
}
.file-holder .file-blame-legend .legend-box-0 {
  background-color: #303470;
}
.file-holder .file-blame-legend .legend-box-1 {
  background-color: #374291;
}
.file-holder .file-blame-legend .legend-box-2 {
  background-color: #3f51ae;
}
.file-holder .file-blame-legend .legend-box-3 {
  background-color: #4e65cd;
}
.file-holder .file-blame-legend .legend-box-4 {
  background-color: #617ae2;
}
.file-holder .file-blame-legend .legend-box-5 {
  background-color: #7992f5;
}
.file-holder .file-blame-legend .legend-box-6 {
  background-color: #97acff;
}
.file-holder .file-blame-legend .legend-box-7 {
  background-color: #b7c6ff;
}
.file-holder .file-blame-legend .legend-box-8 {
  background-color: #d2dcff;
}
.file-holder .file-blame-legend .legend-box-9 {
  background-color: #e9ebff;
}
.file-holder .file-content.image_file, .file-holder .file-content.audio, .file-holder .file-content.video{
  background-color: var(--gl-background-color-strong);
  text-align: center;
  padding: 30px;
}
.file-holder .file-content.image_file img,
.file-holder .file-content.image_file audio,
.file-holder .file-content.image_file video, .file-holder .file-content.audio img,
.file-holder .file-content.audio audio,
.file-holder .file-content.audio video, .file-holder .file-content.video img,
.file-holder .file-content.video audio,
.file-holder .file-content.video video {
  max-width: 80%;
}
.file-holder .file-content.md {
  padding: 16px;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .file-holder .file-content.md {
    padding: 32px;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .file-holder .file-content.md {
    padding: 32px;
  }
}
.file-holder .file-content.blob-no-preview{
  background-color: var(--gl-background-color-strong);
  text-shadow: 0 1px 2px #fff;
  padding: 100px 0;
}
.file-holder .file-content.logs{
  background-color: var(--gl-background-color-strong);
  max-height: 700px;
  overflow-y: auto;
}
.file-holder .file-content.logs ol {
  margin-left: 40px;
  padding: 10px 0;
  margin-bottom: 0;
  background-color: var(--gl-background-color-default);
  border-left-style: solid;
  border-left-color: var(--gl-border-color-default);
  border-left-width: 1px;
  border-left-color: var(--gl-border-color-section);
}
.file-holder .file-content.logs ol li {
  color: #888;
}
.file-holder .file-content.logs ol li p {
  margin: 0;
  color: #333;
  line-height: 24px;
  padding-left: 10px;
}
.file-holder .file-content.logs ol li:hover {
  background: #e8f2fd;
}
.file-holder .file-content .list-inline.previews {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-content: flex-start;
  align-items: baseline;
}
.file-holder .file-content .list-inline.previews .preview {
  padding: 16px;
}

span.idiff.left {
  border-top-left-radius: 2px;
  border-bottom-left-radius: 2px;
}
span.idiff.right {
  border-top-right-radius: 2px;
  border-bottom-right-radius: 2px;
}

.file-stats ul {
  list-style: none;
  margin: 0;
  padding: 10px 0;
}
.file-stats ul li {
  padding: 3px 0;
  line-height: 20px;
}
.file-stats .new-file a{
  color: var(--gl-text-color-success);
}
.file-stats .deleted-file a{
  color: var(--gl-text-color-danger);
}
.file-stats a {
  text-decoration: none;
}
.file-stats a .new-file{
  color: var(--gl-text-color-success);
}
.file-stats a .deleted-file {
  color: #ac203a;
}

.file-title-flex-parent, .file-holder .file-title-flex-parent {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  background-color: var(--gl-background-color-subtle);
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  margin: 0;
  min-height: 2.625rem;
  border-radius: calc(0.5rem - 1px) calc(0.5rem - 1px) 0 0;
}
.snippet-file-content .file-title-flex-parent:has(button[aria-expanded=true]) {
  z-index: 5;
}
.file-title-flex-parent .file-header-content {
  padding-right: 30px;
}
.file-title-flex-parent a{
  color: var(--gl-text-color-default);
}

.is-stl-loading .stl-controls {
  display: none;
}

.file-fork-suggestion {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  background-color: var(--gl-background-color-subtle);
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-section);
  padding: 5px 16px;
}

.file-fork-suggestion-note {
  margin-right: 1.5em;
}

.preview-container .file-container{
  background-color: var(--gl-background-color-strong);
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.preview-container .file-container .file-content {
  padding: 16px;
  max-width: 100%;
  max-height: 100%;
}
.preview-container .file-container .file-content img {
  max-width: 90%;
  max-height: 70vh;
}
.preview-container .file-container .file-info {
  font-size: 12px;
  color: var(--gl-text-color-subtle);
}
.preview-container .note-container .user-avatar-link.new-comment {
  position: absolute;
}
.preview-container .diff-discussions:not(:last-child) .discussion .discussion-body {
  padding-bottom: 16px;
}
.preview-container .diff-discussions:not(:last-child) .discussion .discussion-body .discussion-reply-holder{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-subtle);
}
.preview-container .diff-discussions:not(:last-child) .discussion .discussion-body .discussion-reply-holder:where(.gl-dark *){
  border-bottom-color: var(--gl-border-color-section);
}
.preview-container .diff-discussions:not(:last-child) .discussion .discussion-body .discussion-reply-holder {
  border-radius: 0;
}
.preview-container .md-previewer {
  padding: 16px;
}

#js-openapi-viewer pre.version,
#js-openapi-viewer code {
  background-color: transparent;
  border: transparent;
}
.gl-dark #js-openapi-viewer {
  background: transparent;
  filter: invert(1) hue-rotate(180deg);
}

.code-navigation-line:hover .code-navigation {
  border-bottom: 1px #c1bfbe dashed;
}
.code-navigation-line:hover .code-navigation:hover {
  border-bottom-color: #18171d;
}

.code-navigation-popover.popover {
  max-width: min(35rem, 100vw - 32px);
}

.code-navigation-popover-container {
  max-height: 20rem;
}

.code-navigation-popover .code {
  padding-left: 1.5rem;
  text-indent: -1rem;
}

.tree-item-link:not(.is-submodule) span {
  z-index: 2;
}
.tree-item-link:not(.is-submodule)::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.version-link {
  display: inline-block;
  align-self: center;
  margin-top: 0.25rem;
  width: 1rem;
  height: 1rem;
  background-color: #8a8888;
  mask-image: url(/assets/icons-stacked-91dc04b815ed13993cce0cc332a54006fb25da653d24ee925870fb17dcabab3c.svg#doc-versions);
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center;
}
.version-link:hover {
  background-color: #050408;
}

.blob-viewer[data-loading] .file-content.code .line:nth-of-type(1n+70):not(:last-of-type),
.blob-viewer[data-loading] .file-content.code .file-line-num:nth-of-type(1n+70):not(:last-of-type) {
  display: none !important;
}

.blob-viewer[data-loading] .file-content.code .line:nth-of-type(69):not(:last-of-type)::after,
.blob-viewer[data-loading] .file-content.code .file-line-num:nth-of-type(69):not(:last-of-type)::after {
  display: block;
  font-weight: 600;
  content: "…";
}

.blob-viewer[data-loading] .file-content.code .line:nth-of-type(69):not(:last-of-type)::after {
  text-align: center;
}

.file-holder [data-loading] .file-content *:nth-of-type(1n+30) {
  display: none;
}

.mr-tree-list {
  --file-row-level-padding: 16px;
  display: flex;
  flex-direction: column;
  min-height: 0;
  max-height: var(--tree-list-max-height);
}
.mr-tree-list .vue-recycle-scroller {
  height: 100%;
  min-height: 0;
  flex: 1;
}

.diffs-tree-drawer .mr-tree-list {
  max-height: none;
}

.mr-tree-list:not(.tree-list-blobs) .tree-list-parent::before, .repository-tree-list .tree-list-parent::before {
  content: "";
  position: absolute;
  z-index: 1;
  pointer-events: none;
  top: 0;
  left: 14px;
  width: calc(var(--level) * var(--file-row-level-padding));
  bottom: 0;
  background: linear-gradient(to right, var(--gl-border-color-default) 1px, transparent 1px) repeat-x 0/var(--file-row-level-padding) 100%;
}

.blame-age-indicator {
  border-left: 3px solid var(--blame-age-color, transparent);
}

.code {
  padding: 0;
  border-top-left-radius: var(--gl-border-radius-none);
  border-top-right-radius: var(--gl-border-radius-none);
  border-bottom-right-radius: .25rem;
  border-bottom-left-radius: .25rem;
}

.filter-item {
  vertical-align: top;
}
.filter-item.update-issues-btn {
  float: right;
  margin-right: 0;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .filter-item.update-issues-btn {
    float: none;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .filter-item.update-issues-btn {
    float: none;
  }
}

@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .filter-item:not(:last-child) {
    margin-right: 6px;
  }
  :where(html.with-gl-container-queries) .bulk-update .filter-item {
    margin-right: 0;
  }
  :where(html.with-gl-container-queries) .sort-filter {
    display: inline-block;
    float: right;
  }
  :where(html.with-gl-container-queries) .dropdown-menu-sort {
    left: auto;
    right: 0;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .filter-item:not(:last-child) {
    margin-right: 6px;
  }
  :where(html:not(.with-gl-container-queries)) .bulk-update .filter-item {
    margin-right: 0;
  }
  :where(html:not(.with-gl-container-queries)) .sort-filter {
    display: inline-block;
    float: right;
  }
  :where(html:not(.with-gl-container-queries)) .dropdown-menu-sort {
    left: auto;
    right: 0;
  }
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .filter-item {
    display: block;
    margin: 0 0 10px;
  }
  :where(html.with-gl-container-queries) .dropdown-menu-toggle.dropdown-menu-toggle,
  :where(html.with-gl-container-queries) .update-issues-btn .btn {
    width: 100%;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .filter-item {
    display: block;
    margin: 0 0 10px;
  }
  :where(html:not(.with-gl-container-queries)) .dropdown-menu-toggle.dropdown-menu-toggle,
  :where(html:not(.with-gl-container-queries)) .update-issues-btn .btn {
    width: 100%;
  }
}
.filtered-search-wrapper .tokens-container {
  display: flex;
  flex: 1;
  padding-left: 12px;
  position: relative;
  margin-bottom: 0;
  width: 1px;
}
.filtered-search-wrapper .input-token {
  max-width: 200px;
  padding: 0;
}
.filtered-search-wrapper .input-token:hover, .filtered-search-wrapper .input-token:focus-visible {
  background-color: inherit;
  color: inherit;
}
.filtered-search-wrapper .input-token:only-child,
.filtered-search-wrapper .input-token:last-child {
  flex: 1;
  max-width: inherit;
}

.filtered-search-token,
.filtered-search-term {
  display: flex;
  flex-shrink: 0;
  margin-top: 2px;
  margin-bottom: 2px;
}
.filtered-search-token .selectable,
.filtered-search-term .selectable {
  display: flex;
}
.filtered-search-token .name,
.filtered-search-token .operator,
.filtered-search-token .value,
.filtered-search-term .name,
.filtered-search-term .operator,
.filtered-search-term .value {
  display: inline-block;
  padding: 2px 7px;
  font-size: var(--gl-font-size-sm);
}
.filtered-search-token .name,
.filtered-search-token .operator,
.filtered-search-token .value-container,
.filtered-search-term .name,
.filtered-search-term .operator,
.filtered-search-term .value-container {
  color: var(--gl-token-foreground-color);
}
.filtered-search-token .name,
.filtered-search-token .operator,
.filtered-search-token .value-container,
.filtered-search-token .value,
.filtered-search-term .name,
.filtered-search-term .operator,
.filtered-search-term .value-container,
.filtered-search-term .value {
  display: inline-flex;
  align-self: center;
  align-items: center;
  height: 24px;
}
.filtered-search-token .name,
.filtered-search-term .name {
  background-color: var(--gl-filtered-search-token-type-background-color-default);
  border-radius: 2px 0 0 2px;
  margin-right: 1px;
  text-transform: capitalize;
}
.filtered-search-token .operator,
.filtered-search-term .operator {
  background-color: var(--gl-filtered-search-token-operator-background-color-default);
  margin-right: 1px;
}
.filtered-search-token .value-container,
.filtered-search-term .value-container {
  display: flex;
  align-items: center;
  background-color: var(--gl-filtered-search-token-data-background-color-default);
  border-radius: 0 2px 2px 0;
  margin-right: 4px;
  padding-right: 4px;
}
.filtered-search-token .value,
.filtered-search-term .value {
  padding-right: 0;
}
.filtered-search-token .remove-token,
.filtered-search-term .remove-token {
  display: inline-flex;
  align-self: center;
  padding-left: 8px;
  padding-right: 0;
}
.filtered-search-token .remove-token .close-icon,
.filtered-search-term .remove-token .close-icon {
  color: var(--gl-icon-color-subtle);
}
.filtered-search-token .remove-token:hover .close-icon,
.filtered-search-term .remove-token:hover .close-icon {
  color: var(--gl-icon-color-default);
}
.filtered-search-token .remove-token.inverted .close-icon,
.filtered-search-term .remove-token.inverted .close-icon {
  color: var(--gl-color-neutral-0);
  opacity: 0.85;
}
.filtered-search-token .remove-token.inverted:hover .close-icon,
.filtered-search-term .remove-token.inverted:hover .close-icon {
  color: var(--gl-color-neutral-0);
}

.filtered-search-token:hover .name,
.filtered-search-token .selected .name,
.filtered-search-term .selected .name {
  background-color: var(--gl-filtered-search-token-type-background-color-hover);
}
.filtered-search-token:hover .operator,
.filtered-search-token .selected .operator,
.filtered-search-term .selected .operator {
  background-color: var(--gl-filtered-search-token-operator-background-color-hover);
}
.filtered-search-token:hover .value-container,
.filtered-search-token .selected .value-container,
.filtered-search-term .selected .value-container {
  background-color: var(--gl-filtered-search-token-data-background-color-hover);
}

.filtered-search-term .name {
  background-color: inherit;
  color: var(--gl-token-foreground-color);
  text-transform: none;
}
.filtered-search-term .selectable {
  cursor: text;
}

.scroll-container {
  display: flex;
  overflow-x: auto;
  white-space: nowrap;
  width: 100%;
}

.filtered-search-box {
  position: relative;
  flex: 1;
  display: flex;
  width: 100%;
  min-width: 0;
  border: 1px solid var(--gl-control-border-color-default);
  background-color: var(--gl-background-color-default);
  border-radius: var(--gl-control-border-radius);
}
.filtered-search-box.focus, .filtered-search-box.focus:hover{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.filtered-search-box gl-emoji {
  display: inline-block;
  font-family: inherit;
  font-size: inherit;
  vertical-align: inherit;
}
.filtered-search-box gl-emoji img {
  height: 1rem;
  width: 1rem;
}
.filtered-search-box .form-control {
  position: relative;
  min-width: 200px;
  padding-right: 25px;
  padding-left: 0;
  height: 30px;
  background-color: transparent;
  line-height: inherit;
}
.filtered-search-box .form-control, .filtered-search-box .form-control:focus-visible, .filtered-search-box .form-control:hover {
  outline: none;
  border-color: transparent;
  box-shadow: none;
}

.filtered-search-box-input-container {
  flex: 1;
  position: relative;
  min-width: 0;
  height: 30px;
  background-color: var(--gl-control-background-color-default);
  border-radius: var(--gl-control-border-radius);
}

.filtered-search-input-dropdown-menu {
  max-height: 445px;
  max-width: 280px;
  overflow: auto;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .filtered-search-input-dropdown-menu {
    width: auto;
    left: 0;
    right: 0;
    max-width: none;
    min-width: 100%;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .filtered-search-input-dropdown-menu {
    width: auto;
    left: 0;
    right: 0;
    max-width: none;
    min-width: 100%;
  }
}

.filtered-search-history-dropdown-wrapper {
  position: static;
  display: flex;
  flex-direction: column;
}

.filtered-search-history-dropdown-toggle-button.gl-button {
  border-radius: calc(var(--gl-control-border-radius) - 1px) 0 0 calc(var(--gl-control-border-radius) - 1px);
  margin: -1px 0 -1px -1px;
  flex: 1;
  transition: color 0.1s linear;
  width: auto;
}

.filtered-search-history-dropdown {
  width: 40%;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .filtered-search-history-dropdown {
    left: 0;
    right: 0;
    max-width: none;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .filtered-search-history-dropdown {
    left: 0;
    right: 0;
    max-width: none;
  }
}

.filtered-search-history-dropdown-content {
  max-height: none;
}
.filtered-search-history-dropdown-content .filtered-search-history-dropdown-item,
.filtered-search-history-dropdown-content .filtered-search-history-clear-button {
  white-space: nowrap;
  text-overflow: ellipsis;
}

.filtered-search-history-dropdown-token {
  display: inline;
}
.filtered-search-history-dropdown-token:not(:last-child) {
  margin-right: 0.3em;
}
.filtered-search-history-dropdown-token > .value {
  font-weight: 600;
}

.issues-details-filters,
.epics-details-filters{
  padding-top: var(--gl-spacing-scale-3);
  padding-left: var(--container-padding-x);
  padding-right: var(--container-padding-x);
  background-color: transparent;
}

@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .issues-details-filters,
  :where(html.with-gl-container-queries) .epics-details-filters{
    padding-top: var(--gl-spacing-scale-3);
    padding-bottom: var(--gl-spacing-scale-3);
    background-color: var(--gl-background-color-default);
  }
  :where(html.with-gl-container-queries) .filter-dropdown-container > div {
    margin: 0;
  }
  :where(html.with-gl-container-queries) .filter-dropdown-container > div > .btn {
    margin: 0 0 10px;
    width: 100%;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .issues-details-filters,
  :where(html:not(.with-gl-container-queries)) .epics-details-filters{
    padding-top: var(--gl-spacing-scale-3);
    padding-bottom: var(--gl-spacing-scale-3);
    background-color: var(--gl-background-color-default);
  }
  :where(html:not(.with-gl-container-queries)) .filter-dropdown-container > div {
    margin: 0;
  }
  :where(html:not(.with-gl-container-queries)) .filter-dropdown-container > div > .btn {
    margin: 0 0 10px;
    width: 100%;
  }
}
.droplab-dropdown .dropdown-menu .filter-dropdown-item .btn {
  text-overflow: ellipsis;
}
.droplab-dropdown .dropdown-menu .filter-dropdown-item .btn svg {
  margin-right: 8px;
}
.droplab-dropdown .dropdown-menu .filter-dropdown-item .btn .dropdown-label-box {
  border-color: var(--gl-background-color-default);
  border-style: solid;
  border-width: 1px;
  width: 17px;
  height: 17px;
  top: 0;
}

.filter-dropdown-loading {
  padding: 8px 16px;
  text-align: center;
}

.vue-filtered-search-bar-container .gl-search-box-by-click {
  min-width: 0;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .vue-filtered-search-bar-container .sort-dropdown-container {
    margin-left: 10px;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .vue-filtered-search-bar-container .sort-dropdown-container {
    margin-left: 10px;
  }
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .vue-filtered-search-bar-container .sort-dropdown-container {
    margin-top: 10px;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .vue-filtered-search-bar-container .sort-dropdown-container {
    margin-top: 10px;
  }
}

.flash-container {
  margin: 0;
  font-size: 14px;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: var(--gl-spacing-scale-3);
}
.flash-container.sticky {
  position: sticky;
  top: 0;
  z-index: 251;
}
.flash-container.flash-container-page {
  margin-bottom: 0;
}
.flash-container:empty {
  margin: 0;
}
.flash-container:has(.gl-alert){
  margin-top: var(--gl-spacing-scale-3);
}
.flash-container .flash-alert:not(.gl-alert),
.flash-container .flash-notice:not(.gl-alert),
.flash-container .flash-success:not(.gl-alert),
.flash-container .flash-warning:not(.gl-alert) {
  padding: 16px 32px 16px 20px;
  margin-top: 10px;
}
.flash-container .flash-alert:not(.gl-alert) .container-fluid, .flash-container .flash-alert:not(.gl-alert) .container-sm, .flash-container .flash-alert:not(.gl-alert) .container-md, .flash-container .flash-alert:not(.gl-alert) .container-lg, .flash-container .flash-alert:not(.gl-alert) .container-xl,
.flash-container .flash-alert:not(.gl-alert) .container-fluid.container-limited,
.flash-container .flash-notice:not(.gl-alert) .container-fluid,
.flash-container .flash-notice:not(.gl-alert) .container-sm,
.flash-container .flash-notice:not(.gl-alert) .container-md,
.flash-container .flash-notice:not(.gl-alert) .container-lg,
.flash-container .flash-notice:not(.gl-alert) .container-xl,
.flash-container .flash-notice:not(.gl-alert) .container-fluid.container-limited,
.flash-container .flash-success:not(.gl-alert) .container-fluid,
.flash-container .flash-success:not(.gl-alert) .container-sm,
.flash-container .flash-success:not(.gl-alert) .container-md,
.flash-container .flash-success:not(.gl-alert) .container-lg,
.flash-container .flash-success:not(.gl-alert) .container-xl,
.flash-container .flash-success:not(.gl-alert) .container-fluid.container-limited,
.flash-container .flash-warning:not(.gl-alert) .container-fluid,
.flash-container .flash-warning:not(.gl-alert) .container-sm,
.flash-container .flash-warning:not(.gl-alert) .container-md,
.flash-container .flash-warning:not(.gl-alert) .container-lg,
.flash-container .flash-warning:not(.gl-alert) .container-xl,
.flash-container .flash-warning:not(.gl-alert) .container-fluid.container-limited {
  background: transparent;
}
.flash-container.flash-container-no-margin .gl-alert {
  margin-top: 0;
  margin-bottom: 0;
}
.flash-container.flash-container-no-margin .flash-alert,
.flash-container.flash-container-no-margin .flash-notice,
.flash-container.flash-container-no-margin .flash-success,
.flash-container.flash-container-no-margin .flash-warning {
  margin-top: 0;
}

.gl-browser-ie .flash-container {
  position: fixed;
  max-width: 1006px;
  left: 50%;
}
.gl-browser-ie .flash-container .flash-alert {
  position: relative;
  left: -50%;
}

textarea {
  resize: vertical;
}

input {
  border-radius: 0.25rem;
  color: var(--gl-text-color-default);
  background-color: var(--gl-control-background-color-default);
}

input[type=text].danger {
  background: #f2dede !important;
  border-color: #f15168;
  text-shadow: 0 1px 1px #fff;
}

/**
 * When form input type is search, browsers add a clear input button inside
 * the input field. This overlaps with the input field we have already added.
 */
/* stylelint-disable property-no-vendor-prefix */
input[type=search] {
  appearance: textfield;
}
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-results-button {
  display: none;
}

/* stylelint-enable property-no-vendor-prefix */
.form-actions{
  margin-top: var(--gl-spacing-scale-0);
  margin-bottom: calc(var(--gl-spacing-scale-5) * -1);
  padding: var(--gl-spacing-scale-5);
  background-color: var(--gl-background-color-subtle);
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
}

label {
  font-weight: 600;
}
label.inline-label {
  margin: 0;
}
label.form-check-label, label.custom-control-label {
  font-weight: 400;
}
label.label-bold {
  font-weight: 600;
}

.custom-form-control {
  width: 150px;
}

@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .custom-form-control {
    width: 150px;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .custom-form-control {
    width: 150px;
  }
}
/* Medium devices (desktops, 992px and up) */
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .custom-form-control {
    width: 170px;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .custom-form-control {
    width: 170px;
  }
}
/* Large devices (large desktops, 1200px and up) */
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .custom-form-control {
    width: 200px;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .custom-form-control {
    width: 200px;
  }
}
.help-form .form-group {
  margin-left: 0;
  margin-right: 0;
}
.help-form .form-group .form-control {
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .help-form .form-group {
    padding: 0 16px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .help-form .form-group {
    padding: 0 16px;
  }
}

.fieldset-form fieldset {
  margin-bottom: 20px;
}

.form-control {
  background: var(--gl-control-background-color-default);
  color: var(--gl-text-color-default);
  border-radius: var(--gl-control-border-radius);
  padding: 6px 10px;
}
.form-control.input-short {
  width: 200px;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .form-control.input-short {
    width: 280px;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .form-control.input-short {
    width: 280px;
  }
}

.form-control:focus-visible,
[contenteditable=true]:focus-visible {
  background: var(--gl-control-background-color-default);
  border-color: var(--gl-control-border-color-default);
  color: var(--gl-text-color-default);
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.select-control {
  line-height: 1.3;
  padding-left: 10px;
  padding-right: 10px;
  appearance: none;
  /* stylelint-disable property-no-vendor-prefix */
  -webkit-appearance: none;
  -moz-appearance: none;
  /* stylelint-enable property-no-vendor-prefix */
}
.select-control::-ms-expand {
  display: none;
}

.form-control::placeholder {
  color: var(--gl-control-placeholder-color);
}

.input-group .input-group-prepend:not(:first-child):not(:last-child),
.input-group .input-group-append:not(:first-child):not(:last-child) {
  border-left: 0;
  border-right: 0;
}

.form-text {
  margin-bottom: 0;
  margin-top: 0.25rem;
  font-size: 0.875rem;
}
.form-text .invisible {
  visibility: hidden;
}

.gl-field-error,
.invalid-feedback{
  color: var(--gl-text-color-danger);
  font-size: 0.875rem;
  margin-top: 0.5rem;
}

.gl-show-field-errors .form-control:not(textarea) {
  height: 32px;
}
.gl-show-field-errors .gl-field-success-outline {
  border: 1px solid #0c7265;
}
.gl-show-field-errors .gl-field-success-outline:focus-visible {
  box-shadow: 0 0 0 1px #0c7265 inset, 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 4px 0 #0c7265;
  border: 0 none;
}
.gl-show-field-errors .gl-field-error-outline {
  border: 1px solid #de1d4b;
}
.gl-show-field-errors .gl-field-error-outline:focus-visible {
  box-shadow: 0 0 0 1px #de1d4b inset, 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 4px 0 rgba(222, 29, 75, 0.6);
  border: 0 none;
}
.gl-show-field-errors .gl-field-success-message{
  color: var(--gl-text-color-success);
}
.gl-show-field-errors .gl-field-error-message{
  color: var(--gl-text-color-danger);
}

.show-password-complexity-errors .form-control:not(textarea) {
  height: 32px;
}
.show-password-complexity-errors .password-complexity-error-outline {
  border: 1px solid #de1d4b;
}
.show-password-complexity-errors .password-complexity-error-outline:focus-visible {
  box-shadow: 0 0 0 1px #de1d4b inset, 0 1px 1px rgba(0, 0, 0, 0.075) inset, 0 0 4px 0 rgba(222, 29, 75, 0.6);
  border: 0 none;
}

.select-wrapper {
  position: relative;
}

.input-lg {
  max-width: 320px;
  width: 100%;
}

.input-group-text {
  max-height: 32px;
}

.add-issuable-form-input-wrapper.focus {
  border-color: var(--gl-control-border-color-focus);
}
.gl-show-field-errors .add-issuable-form-input-wrapper.form-control:not(textarea) {
  height: auto;
}

.add-issuable-form-input-wrapper.focus,
.issue-token-remove-button:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

/**
 * Styles that apply to all GFM related forms.
 */
.gfm-commit,
.gfm-commit_range{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
  font-size: 95%;
}

.gfm-project_member.gfm-project_member,
.md a.gfm-project_member {
  padding: 0 2px;
  color: var(--gl-link-mention-text-color-default);
  background-color: var(--gl-link-mention-background-color-default);
  border-radius: 0.25rem;
}
.gfm-project_member.gfm-project_member.current-user,
.md a.gfm-project_member.current-user {
  color: var(--gl-link-mention-text-color-current);
  background-color: var(--gl-link-mention-background-color-current);
}

.gfm-color_chip {
  display: inline-block;
  line-height: 1;
  margin: 0 0 2px 4px;
  vertical-align: middle;
  border-radius: 3px;
  width: 0.9em;
  height: 0.9em;
  background: #fff;
  background-image: linear-gradient(135deg, #dcdbd9 25%, transparent 0%, transparent 75%, #dcdbd9 0%), linear-gradient(135deg, #dcdbd9 25%, transparent 0%, transparent 75%, #dcdbd9 0%);
  background-size: 1em 1em;
  background-position: 0 0, 0.5em 0.5em;
}
.gfm-color_chip > span {
  display: inline-block;
  width: 100%;
  height: 100%;
  margin-bottom: 2px;
  border-radius: 3px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--gl-color-alpha-dark-24);
}

/*
 * MARKDOWN ALERTS - These are completely separate from our Alert component.
 * These are user-generated content, formatted like:
 * > [!note]
 * > Highlights information that users should take into account, even when skimming.
 */
.md .markdown-alert{
  border-width: 0px;
  border-left-width: 4px;
  border-left-style: solid;
  padding-left: var(--gl-spacing-scale-4);
  padding-top: var(--gl-spacing-scale-2);
  padding-bottom: var(--gl-spacing-scale-2);
  margin-top: var(--gl-spacing-scale-5);
  margin-bottom: var(--gl-spacing-scale-5);
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
}
.md .markdown-alert .markdown-alert-title{
  font-weight: var(--gl-heading-4-font-weight);
  margin-top: var(--gl-heading-4-margin-top);
  font-size: var(--gl-heading-4-font-size);
  letter-spacing: var(--gl-heading-4-letter-spacing);
  line-height: var(--gl-heading-4-line-height);
  margin-bottom: var(--gl-heading-4-margin-bottom);
  color: var(--gl-heading-4-color);
  margin-bottom: var(--gl-spacing-scale-2);
}
.md .markdown-alert > *:last-child{
  margin-bottom: var(--gl-spacing-scale-0);
}
.md .markdown-alert.markdown-alert-note {
  border-color: var(--gl-feedback-info-icon-color);
}
.md .markdown-alert.markdown-alert-note .markdown-alert-title {
  color: var(--gl-feedback-info-text-color);
}
.md .markdown-alert.markdown-alert-tip {
  border-color: var(--gl-feedback-success-icon-color);
}
.md .markdown-alert.markdown-alert-tip .markdown-alert-title {
  color: var(--gl-feedback-success-text-color);
}
.md .markdown-alert.markdown-alert-important{
  border-color: var(--purple-600);
}
.md .markdown-alert.markdown-alert-important .markdown-alert-title{
  color: var(--purple-700);
}
.md .markdown-alert.markdown-alert-warning {
  border-color: var(--gl-feedback-danger-icon-color);
}
.md .markdown-alert.markdown-alert-warning .markdown-alert-title {
  color: var(--gl-feedback-danger-text-color);
}
.md .markdown-alert.markdown-alert-caution {
  border-color: var(--gl-feedback-warning-icon-color);
}
.md .markdown-alert.markdown-alert-caution .markdown-alert-title {
  color: var(--gl-feedback-warning-text-color);
}

kbd{
  color: var(--gl-text-color-default);
  background-color: var(--gl-background-color-subtle);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-bottom-color: var(--gl-border-color-strong);
  display: inline-block;
  padding: 3px 5px;
  font-size: 0.75rem;
  line-height: 10px;
  vertical-align: unset;
  border-image: none;
  border-radius: 3px;
  box-shadow: 0 -1px 0 var(--gl-border-color-strong) inset;
}
kbd.flat{
  color: var(--gl-text-color-strong);
  background-color: var(--gl-background-color-strong);
  border-color: var(--gl-border-color-strong);
  border-radius: .25rem;
  box-shadow: none;
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-size: 12px;
  line-height: 1;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: keep-all;
}

.navbar-empty {
  justify-content: center;
  height: var(--header-height);
  background: var(--gl-background-color-default);
  border-bottom: 1px solid var(--gl-border-color-default);
}
.navbar-empty .tanuki-logo,
.navbar-empty .brand-header-logo {
  max-height: 100%;
}

.set-user-status-modal .modal-body {
  min-height: unset;
}
.set-user-status-modal .input-lg {
  max-width: unset;
}
.set-user-status-modal .emoji-menu-toggle-button {
  line-height: 1;
  padding: 0;
  min-width: 16px;
}
.set-user-status-modal .emoji-menu-toggle-button .award-control-icon-positive,
.set-user-status-modal .emoji-menu-toggle-button .award-control-icon-super-positive {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.set-user-status-modal .emoji-menu-toggle-button:hover .award-control-icon-neutral, .set-user-status-modal .emoji-menu-toggle-button.is-active .award-control-icon-neutral {
  opacity: 0;
}
.set-user-status-modal .emoji-menu-toggle-button:hover .award-control-icon-positive, .set-user-status-modal .emoji-menu-toggle-button.is-active .award-control-icon-positive {
  opacity: 1;
}
.set-user-status-modal .emoji-menu-toggle-button.is-active .award-control-icon-positive {
  opacity: 0;
}
.set-user-status-modal .emoji-menu-toggle-button.is-active .award-control-icon-super-positive {
  opacity: 1;
}
.set-user-status-modal .emoji-menu-toggle-button {
  padding: 6px 10px;
}
.set-user-status-modal .input-group,
.set-user-status-modal .input-group .input-group-prepend,
.set-user-status-modal .input-group .input-group-append {
  height: 32px;
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .nav-links > li > a .badge.badge-pill {
    display: none;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .nav-links > li > a .badge.badge-pill {
    display: none;
  }
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .nav-links > li > a {
    margin-right: 3px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .nav-links > li > a {
    margin-right: 3px;
  }
}

.top-app-header {
  top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
}

/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/*
 * Layout
 */
/**
  🚨 Do not use this spacing scale — it is deprecated and being removed. 🚨
  See https://gitlab.com/gitlab-org/gitlab/issues/36857 for more details.

  Instead, if you need a spacing class, add it to app/assets/stylesheets/framework/common.scss,
  using the following values.

    $gl-spacing-scale-0: 0;
    $gl-spacing-scale-1: 2px;
    $gl-spacing-scale-2: 4px;
    $gl-spacing-scale-3: 8px;
    $gl-spacing-scale-4: 12px;
    $gl-spacing-scale-5: 16px;
    $gl-spacing-scale-6: 24px;
    $gl-spacing-scale-7: 32px;
    $gl-spacing-scale-8: 40px;
    $gl-spacing-scale-9: 48px;
    $gl-spacing-scale-10: 56px;
    $gl-spacing-scale-11: 64px;
    $gl-spacing-scale-12: 80px;
    $gl-spacing-scale-13: 96px;

  E.g., a padding top of 96px can be added using:
  .gl-shim-pt-13 {
    padding-top: 96px;
  }

  Please use -shim- so it can be differentiated from the old scale classes.

  These will be replaced when the Gitlab UI utilities are included.
**/
/* Will be moved to @gitlab/ui by https://gitlab.com/gitlab-org/gitlab-services/design.gitlab.com/-/issues/2792 */
/* End gitlab-ui#1709 */
/*
 * Text
 */
/*
 * Lists
 */
/*
 * Code
 */
/*
 * Tooltips
 */
/*
 * Padding
 */
/*
 * Misc
 */
/*
 * Merge requests
 */
/*
 * Calculated heights
 */
/* tanuki logo colors */
/*
 * State colors:
 */
/*
 * Commit Diff Colors
 */
/*
 * The transparent colors are used in Monaco editor. Using full opacity colors
 * would hide other layers (selected text, matching brackets).
 *
 * When the transparent colors get layered on white background, they create their
 * full opacity counterparts:
 *
 *  - white + $line-added-transparent = $line-added
 *  - white + $line-added-transparent + $line-added-dark-transparent = $line-added-dark
 *
 * More details: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41553
 */
/*
 * Fonts
 * The --default-mono-font and --default-regular-font variables give users
 * a way to override our font choices for them.
 */
/*
* Dropdowns
*/
/*
* Sidebar
*/
/*
* Buttons
*/
/*
* Badges
*/
/*
 *  Award emoji
 */
/*
 * Search Box
 */
/*
 *  Notes
 */
/*
* Boards
*/
/*
* Builds
*/
/*
* Commit Page
*/
/*
* Files
*/
/*
* Forms
*/
/*
* Label
*/
/*
* Animation
*/
/*
* Login
*/
/*
* Typography
*/
/*
Pipeline Graph
*/
/*
GitLab Plans
*/
/*
Performance Bar
*/
/*
Image Commenting cursor
*/
/*
Popup
*/
/*
Drawers
*/
/*
Modals
*/
/*
Popovers
*/
/*
Merge requests
*/
/*
Board Swimlanes
*/
/*
Source Editor theme overrides
*/
/**
 Bootstrap 4.2.0 introduced new icons for validating forms.
 Our design system does not use those, so we are disabling them for now:
 - Docs: https://getbootstrap.com/docs/4.3/components/forms/#server-side
 - Issue: https://gitlab.com/gitlab-org/design.gitlab.com/issues/242
 */
/**
  This file contains only imports of Bootstrap, GitLab UI and GitLab mixins,
  variables and functions, in the correct order.

  It is meant to be used in page_bundles, but SHOULD NOT introduce any
  styles of it's own. We actually check in CI that compiling _this_ file doesn't
  result in any additional styles.

  See: scripts/frontend/check_page_bundle_mixins_css_for_sideeffects.js
 */
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/*
 * Layout
 */
/**
  🚨 Do not use this spacing scale — it is deprecated and being removed. 🚨
  See https://gitlab.com/gitlab-org/gitlab/issues/36857 for more details.

  Instead, if you need a spacing class, add it to app/assets/stylesheets/framework/common.scss,
  using the following values.

    $gl-spacing-scale-0: 0;
    $gl-spacing-scale-1: 2px;
    $gl-spacing-scale-2: 4px;
    $gl-spacing-scale-3: 8px;
    $gl-spacing-scale-4: 12px;
    $gl-spacing-scale-5: 16px;
    $gl-spacing-scale-6: 24px;
    $gl-spacing-scale-7: 32px;
    $gl-spacing-scale-8: 40px;
    $gl-spacing-scale-9: 48px;
    $gl-spacing-scale-10: 56px;
    $gl-spacing-scale-11: 64px;
    $gl-spacing-scale-12: 80px;
    $gl-spacing-scale-13: 96px;

  E.g., a padding top of 96px can be added using:
  .gl-shim-pt-13 {
    padding-top: 96px;
  }

  Please use -shim- so it can be differentiated from the old scale classes.

  These will be replaced when the Gitlab UI utilities are included.
**/
/* Will be moved to @gitlab/ui by https://gitlab.com/gitlab-org/gitlab-services/design.gitlab.com/-/issues/2792 */
/* End gitlab-ui#1709 */
/*
 * Text
 */
/*
 * Lists
 */
/*
 * Code
 */
/*
 * Tooltips
 */
/*
 * Padding
 */
/*
 * Misc
 */
/*
 * Merge requests
 */
/*
 * Calculated heights
 */
/* tanuki logo colors */
/*
 * State colors:
 */
/*
 * Commit Diff Colors
 */
/*
 * The transparent colors are used in Monaco editor. Using full opacity colors
 * would hide other layers (selected text, matching brackets).
 *
 * When the transparent colors get layered on white background, they create their
 * full opacity counterparts:
 *
 *  - white + $line-added-transparent = $line-added
 *  - white + $line-added-transparent + $line-added-dark-transparent = $line-added-dark
 *
 * More details: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41553
 */
/*
 * Fonts
 * The --default-mono-font and --default-regular-font variables give users
 * a way to override our font choices for them.
 */
/*
* Dropdowns
*/
/*
* Sidebar
*/
/*
* Buttons
*/
/*
* Badges
*/
/*
 *  Award emoji
 */
/*
 * Search Box
 */
/*
 *  Notes
 */
/*
* Boards
*/
/*
* Builds
*/
/*
* Commit Page
*/
/*
* Files
*/
/*
* Forms
*/
/*
* Label
*/
/*
* Animation
*/
/*
* Login
*/
/*
* Typography
*/
/*
Pipeline Graph
*/
/*
GitLab Plans
*/
/*
Performance Bar
*/
/*
Image Commenting cursor
*/
/*
Popup
*/
/*
Drawers
*/
/*
Modals
*/
/*
Popovers
*/
/*
Merge requests
*/
/*
Board Swimlanes
*/
/*
Source Editor theme overrides
*/
/**
 Bootstrap 4.2.0 introduced new icons for validating forms.
 Our design system does not use those, so we are disabling them for now:
 - Docs: https://getbootstrap.com/docs/4.3/components/forms/#server-side
 - Issue: https://gitlab.com/gitlab-org/design.gitlab.com/issues/242
 */
/*
 * This file is only for overriding Bootstrap 4 variables.
 * Please add any new variables to variables.scss
 */
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/**
 * Prefilled mixins
 * Mixins with fixed values
 */
/*
 * Base mixin for lists in GitLab
 */
/*
 * Mixin for status badges, as used for pipelines and commit signatures
 */
/*
 * Mixin that fixes wrapping issues with long strings (e.g. URLs)
 *
 * Note: the width needs to be set for it to work in Firefox
 */
/*
* Mixin that handles the container for the job logs (CI/CD and kubernetes pod logs)
*/
/*
* Mixin that handles the position of the controls placed on the top bar
*/
/*
* Mixin that handles the size and right margin of avatars.
*/
/**
* Style to apply to, for example, search results matches or text wrapped
* around <mark> (allowed in Markdown).
*/
/**
* Line connecting activity entries, used in issuables, work items etc
*/
/**
 * Deprecated mixin for dark mode
 */
/**
* CI/CD Job item failed status background
*
* Sets background color of items to visually
* highlight failed jobs in the UI.
*/
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/**
* Declares a property with a fluid value that decreases or
* rises depending on the viewport’s size. The property type
* should be numeric.
*
* Values are expected in rem units.
* Fluid range: between 48rem (768px) – 75rem (1200px).
*
* @param $property Property name, i.e. line-height, font-size, width, height, etc.
* @param $min Property value lower bound.
* @param $max Property value upper bound.
*/
/**
* Helper function for :focus
*
* @param $size is deprecated and should not be used anymore
*/
/**
* Helper function for @media of at least the minimum
* breakpoint width.
*
* @param $name Breakpoint name, such as `sm` or `md`.
*/
/**
* Helper function for @media of at most the maximum
* breakpoint width.
*
* Note: Before using, consider using a mobile-first
* approach, and define @media for larger breakpoints
* using `gl-media-breakpoint-up` while using this rule as
* the starting point instead.
*
* @param $name Breakpoint, such as `sm` or `md`. `xs` is not valid
*/
/**
* Helper function to resolve font-size value from $gl-font-sizes and
* $gl-font-sizes-fixed maps.
*
* @param $size Number font-size scale
* @param $fixed Boolean toggle default and fixed font size scales
*/
/**
* Extends values from syntax highlight themes for merge conflict view.
*/
.file-content.code {
  border: 0;
  box-shadow: none;
  margin: 0;
  padding: 0;
  table-layout: fixed;
}
.file-content.code pre {
  line-height: 0;
  border: 0;
  border-radius: 0 0 0.25rem;
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-size: 90%;
  margin: 0;
  overflow: auto;
  overflow-y: hidden;
  white-space: pre;
  word-wrap: normal;
  border-left: 1px solid;
}
.file-content.code pre code.line, .file-content.code pre code .line {
  padding-left: 10px;
  padding-right: 10px;
}
.file-content.code pre code {
  display: inline-block;
  min-width: 100%;
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  white-space: normal;
  word-wrap: normal;
  padding: 0;
}
.file-content.code pre code .line {
  display: block;
  width: 100%;
  white-space: pre;
}
.file-content.code pre code .line:empty::before, .file-content.code pre code .line span:empty::before {
  content: "​";
}
.file-content.code pre code .line .selected-inline-item-mark {
  background: #2575c6 !important;
}
.file-content.code pre code .line .inline-item-mark {
  padding: 0 5px;
  margin-right: 5px;
  border-radius: 4px;
  background: #747273;
  color: #fff;
}
.file-content.code pre code .line .inline-section-marker {
  padding-right: 2px;
  border-radius: 4px;
}
.file-content.code pre code .line:last-of-type {
  border-bottom-right-radius: calc(0.5rem - 1px);
}
.file-content.code .line-numbers {
  padding: 0 10px;
  line-height: 19px;
  text-align: right;
  float: left;
  border-bottom-left-radius: 0.25rem;
}
.file-content.code .line-numbers a {
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  white-space: nowrap;
  display: flex;
  justify-content: flex-end;
  position: relative;
}
.file-content.code .line-numbers a i,
.file-content.code .line-numbers a svg {
  float: left;
  margin-top: 3px;
  margin-right: 5px;
  visibility: hidden;
}
.file-content.code .line-numbers a:hover, .file-content.code .line-numbers a:focus-visible {
  outline: none;
}
.file-content.code .line-numbers a:hover i,
.file-content.code .line-numbers a:hover svg, .file-content.code .line-numbers a:focus-visible i,
.file-content.code .line-numbers a:focus-visible svg {
  visibility: visible;
}
.file-content.code .line-numbers a::after {
  content: " ";
  display: block;
  height: 24px;
  position: absolute;
  top: 50%;
  right: 0;
  width: 24px;
  transform: translateY(-50%);
}
.file-content.code .line-numbers:last-of-type {
  border-bottom-left-radius: calc(0.5rem - 1px);
}
.file-content.code pre .line,
.file-content.code pre .plain-lines,
.file-content.code .line-numbers a {
  font-size: 0.8125rem;
  line-height: 1.1875rem;
  min-height: 1.1875rem;
}
.file-content.code .mark-multiple-line-expand-button {
  background-color: #dcdbd9;
  color: #8a8888;
}
.file-content.code .mark-multiple-line-expand-button:hover {
  background-color: #dcdbd9;
  color: #8a8888;
}

td.line-numbers {
  line-height: 1;
}

.project-highlight-puc .unicode-bidi::before {
  content: "�";
  cursor: pointer;
  -webkit-text-decoration: underline wavy #de1d4b;
          text-decoration: underline wavy #de1d4b;
}

pre .hll {
  background-color: var(--code-highlighted-line-background-color) !important;
}

.blob-viewer {
  --source-line-height: 1.1875rem;
}
.blob-viewer.code {
  border-bottom-right-radius: calc(0.5rem - 1px);
  border-bottom-left-radius: calc(0.5rem - 1px);
}
.blob-viewer .blame {
  border-bottom-left-radius: calc(0.5rem - 1px);
}
.blame ~ .blob-viewer.code .line-numbers:last-of-type {
  border-bottom-left-radius: 0;
}
.blob-viewer .line-numbers {
  min-width: 6rem;
}
.blob-viewer .line-numbers .line-links {
  display: flex;
}
.blob-viewer .line-numbers.line-links {
  border-bottom-left-radius: 0;
}
.blob-viewer .line-numbers.line-links + pre {
  margin-left: 6rem;
}
.blob-viewer .line-numbers:not(.line-links) a:hover::before,
.blob-viewer .line-numbers:not(.line-links) a:focus-within::before,
.blob-viewer .line-links:hover a::before,
.blob-viewer .line-links.is-over a::before,
.blob-viewer .line-links a:focus-visible::before {
  visibility: visible;
}
.blob-viewer .file-line-num {
  justify-content: flex-end;
  flex-grow: 1;
  padding-right: 0.5rem;
}
.blob-viewer .file-line-blame {
  margin-left: 0.5rem;
}
.blob-viewer .file-line-num,
.blob-viewer .file-line-blame {
  align-items: center;
  display: flex;
}
.blob-viewer .diff-line-num.line-links {
  border-right-color: var(--code-border-color);
}
.blob-viewer .diff-line-num.hll,
.blob-viewer pre .hll {
  --highlighted-line-shadow-top: 0 0 transparent;
  --highlighted-line-shadow-bottom: 0 0 transparent;
}
.blob-viewer .diff-line-num.line-links.hll {
  background-color: var(--code-highlighted-line-background-color);
  box-shadow: inset 1px 0 var(--code-highlighted-line-border-color), var(--highlighted-line-shadow-top), var(--highlighted-line-shadow-bottom);
}
.blob-viewer pre .hll {
  box-shadow: inset -1px 0 var(--code-highlighted-line-border-color), var(--highlighted-line-shadow-top), var(--highlighted-line-shadow-bottom);
}
.blob-viewer .diff-line-num.highlight-top,
.blob-viewer pre .highlight-top {
  --highlighted-line-shadow-top: inset 0 1px var(--code-highlighted-line-border-color);
}
.blob-viewer .diff-line-num.highlight-bottom,
.blob-viewer pre .highlight-bottom {
  --highlighted-line-shadow-bottom: inset 0 -1px var(--code-highlighted-line-border-color);
}
.blob-viewer .diff-line-num.hll .file-line-num {
  color: var(--code-line-number-hover-color, #646163);
}
.blob-viewer .diff-line-num.line-links:hover,
.blob-viewer .diff-line-num.line-links.is-over {
  background-color: var(--code-line-number-hover-background-color, #e1daf7);
}
.blob-viewer .file-line-num:hover {
  color: var(--code-line-number-hover-color, #646163);
}
.blob-viewer .diff-line-num .file-line-blame:hover::before {
  background-color: var(--code-line-number-hover-color, #646163);
}

.source-viewer-scrollbar {
  height: 1rem;
}

.source-viewer-file-content {
  scrollbar-width: none;
}
.source-viewer-file-content::-webkit-scrollbar {
  display: none;
}

/** light list with border-bottom between li **/
ul.bordered-list,
ul.unstyled-list {
  margin: 5px 0;
  padding: 0;
  list-style: none;
}
ul.bordered-list > li::after,
ul.unstyled-list > li::after {
  display: block;
  clear: both;
  content: "";
}
ul.bordered-list > li,
ul.unstyled-list > li {
  padding: 10px 0;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-subtle);
  display: block;
  margin: 0;
}
ul.bordered-list > li:last-child,
ul.unstyled-list > li:last-child {
  border-bottom: 0;
}
ul.bordered-list > li.active,
ul.unstyled-list > li.active{
  background-color: var(--gl-background-color-subtle);
}
ul.bordered-list > li.active a,
ul.unstyled-list > li.active a{
  font-weight: var(--gl-font-weight-bold);
}
ul.bordered-list > li.hide,
ul.unstyled-list > li.hide {
  display: none;
}
ul.bordered-list > li.light a,
ul.unstyled-list > li.light a{
  color: var(--gl-text-color-default);
}

ul.unstyled-list > li {
  border-bottom: 0;
}

ul.list-items-py-2 > li {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

ul.content-list {
  margin: 5px 0;
  padding: 0;
  list-style: none;
}
ul.content-list > li::after {
  display: block;
  clear: both;
  content: "";
}
ul.content-list > li {
  padding: 10px 0;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-subtle);
  display: block;
  margin: 0;
}
ul.content-list > li:last-child {
  border-bottom: 0;
}
ul.content-list > li.active{
  background-color: var(--gl-background-color-subtle);
}
ul.content-list > li.active a{
  font-weight: var(--gl-font-weight-bold);
}
ul.content-list > li.hide {
  display: none;
}
ul.content-list > li.light a{
  color: var(--gl-text-color-default);
}
ul.content-list {
  margin: 0;
  padding: 0;
}
ul.content-list li{
  border-color: var(--gl-border-color-default);
  font-size: 0.875rem;
  color: var(--gl-text-color-default);
  word-break: break-word;
}
ul.content-list li .title {
  font-weight: 600;
}
ul.content-list li a{
  color: var(--gl-text-color-default);
}
ul.content-list li a.inline-link{
  color: var(--gl-text-color-link);
}
ul.content-list li .description {
  display: inline-block;
  min-width: 0;
  overflow-x: clip;
  overflow-y: visible;
  text-overflow: ellipsis;
  vertical-align: top;
  white-space: nowrap;
  max-width: 82%;
}
ul.content-list li .controls {
  float: right;
}
ul.content-list li .controls > .btn,
ul.content-list li .controls > .btn-group,
ul.content-list li .controls > .dropdown.inline {
  margin-right: 0.5rem;
}
ul.content-list li .controls > .btn.has-tooltip, ul.content-list li .controls > .btn:last-child,
ul.content-list li .controls > .btn-group.has-tooltip,
ul.content-list li .controls > .btn-group:last-child,
ul.content-list li .controls > .dropdown.inline.has-tooltip,
ul.content-list li .controls > .dropdown.inline:last-child {
  margin-right: 0;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) ul.content-list li .controls > .btn.has-tooltip, :where(html.with-gl-container-queries) ul.content-list li .controls > .btn:last-child,
  :where(html.with-gl-container-queries) ul.content-list li .controls > .btn-group.has-tooltip,
  :where(html.with-gl-container-queries) ul.content-list li .controls > .btn-group:last-child,
  :where(html.with-gl-container-queries) ul.content-list li .controls > .dropdown.inline.has-tooltip,
  :where(html.with-gl-container-queries) ul.content-list li .controls > .dropdown.inline:last-child {
    margin: 0 auto;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) ul.content-list li .controls > .btn.has-tooltip, :where(html:not(.with-gl-container-queries)) ul.content-list li .controls > .btn:last-child,
  :where(html:not(.with-gl-container-queries)) ul.content-list li .controls > .btn-group.has-tooltip,
  :where(html:not(.with-gl-container-queries)) ul.content-list li .controls > .btn-group:last-child,
  :where(html:not(.with-gl-container-queries)) ul.content-list li .controls > .dropdown.inline.has-tooltip,
  :where(html:not(.with-gl-container-queries)) ul.content-list li .controls > .dropdown.inline:last-child {
    margin: 0 auto;
  }
}

.flex-list .flex-row {
  display: flex;
  align-items: center;
  white-space: nowrap;
}
.flex-list .dropdown .btn-block {
  margin-bottom: 0;
  line-height: inherit;
}
.flex-list .badge-secondary{
  color: var(--gl-text-color-subtle);
}

ul.content-list.content-list-items-padding > li,
ul.content-list.issuable-list > li,
.card > .content-list > li {
  padding: 10px 16px;
}

ul.controls {
  float: right;
  list-style: none;
  display: flex;
  align-items: center;
}
ul.controls .btn {
  padding: 10px 14px;
}
ul.controls > li {
  float: left;
  margin-right: 10px;
}
ul.controls > li:last-child {
  margin-right: 0;
}
ul.controls > li .author-link .avatar-inline {
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 0;
}
ul.controls .issuable-pipeline-broken a,
ul.controls .author-link {
  display: flex;
}

ul.indent-list {
  padding: 10px 0 0 30px;
}

@keyframes spin-avatar {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.horizontal-list {
  padding-left: 0;
  list-style: none;
}
.horizontal-list > li {
  float: left;
}
.horizontal-list.list-items-separated > li:not(:last-child)::after {
  content: "·";
  margin: 0 4px;
}

.tanuki-logo{
  vertical-align: middle;
}
.tanuki-logo .tanuki {
  fill: #e24329;
  transition: all 0.8s;
}
.tanuki-logo .tanuki:hover {
  fill: rgb(241.2160493827, 165.6419753086, 153.2839506173);
  transition: all 0.1s;
}
.tanuki-logo .left-cheek,
.tanuki-logo .right-cheek {
  fill: #fc6d26;
  transition: all 0.8s;
}
.tanuki-logo .left-cheek:hover,
.tanuki-logo .right-cheek:hover {
  fill: rgb(253.7386363636, 193.6136363636, 163.7613636364);
  transition: all 0.1s;
}
.tanuki-logo .chin {
  fill: #fca326;
  transition: all 0.8s;
}
.tanuki-logo .chin:hover {
  fill: rgb(253.7386363636, 216.3181818182, 163.7613636364);
  transition: all 0.1s;
}
.tanuki-logo.animate .tanuki-shape {
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
}
.tanuki-logo.animate .tanuki {
  animation-name: animate-tanuki-base;
}
@keyframes animate-tanuki-base {
  0%, 50% {
    fill: #e24329;
  }
  25% {
    fill: rgb(241.2160493827, 165.6419753086, 153.2839506173);
  }
}
.tanuki-logo.animate .right-cheek {
  animation-name: animate-tanuki-right-cheek;
}
@keyframes animate-tanuki-right-cheek {
  25%, 75% {
    fill: #fc6d26;
  }
  50% {
    fill: rgb(253.7386363636, 193.6136363636, 163.7613636364);
  }
}
.tanuki-logo.animate .chin {
  animation-name: animate-tanuki-chin;
}
@keyframes animate-tanuki-chin {
  50%, 100% {
    fill: #fca326;
  }
  75% {
    fill: rgb(253.7386363636, 216.3181818182, 163.7613636364);
  }
}
.tanuki-logo.animate .left-cheek {
  animation-name: animate-tanuki-left-cheek;
}
@keyframes animate-tanuki-left-cheek {
  25%, 75% {
    fill: #fc6d26;
  }
  100% {
    fill: rgb(253.7386363636, 193.6136363636, 163.7613636364);
  }
}

.js-highlight {
  color: var(--find-and-replace-match-text-color);
  background-color: var(--find-and-replace-match-background-color);
}

.js-highlight-active {
  color: var(--find-and-replace-match-active-text-color);
  background-color: var(--find-and-replace-match-active-background-color);
}

.div-dropzone-wrapper .div-dropzone {
  position: relative;
}
.div-dropzone-wrapper .div-dropzone .div-dropzone-hover {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -11.5px;
  margin-left: -15px;
  opacity: 0;
  font-size: 30px;
  transition: opacity 200ms ease-in-out;
  pointer-events: none;
}
.div-dropzone-wrapper .div-dropzone .div-dropzone-icon {
  display: block;
  text-align: center;
  font-size: inherit;
}
.div-dropzone-wrapper .div-dropzone .dz-preview {
  display: none;
}

.nav-links li.md-header-toolbar {
  margin-left: auto;
  visibility: hidden;
}
.nav-links li.md-header-toolbar.active {
  visibility: visible;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .nav-links li.md-header-toolbar.active {
    flex: none;
    display: flex;
    justify-content: center;
    width: 100%;
    flex-wrap: wrap;
    margin-top: 8px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .nav-links li.md-header-toolbar.active {
    flex: none;
    display: flex;
    justify-content: center;
    width: 100%;
    flex-wrap: wrap;
    margin-top: 8px;
  }
}

.referenced-users{
  color: var(--gl-text-color-default);
  padding: 0 16px 8px;
}

.referenced-commands {
  background: #e8f2fd;
  padding: 8px 16px;
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}
.referenced-commands p {
  margin: 0;
}

.md-preview-holder {
  min-height: 177px;
  padding: 10px 0;
  overflow-x: auto;
}

.markdown-area {
  border-radius: 0;
  min-height: 140px;
  max-height: 500px;
  padding: 5px;
  box-shadow: none;
  width: 100%;
  resize: none !important;
  background-color: transparent;
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-color: var(--gl-border-color-subtle);
  transition-property: box-shadow;
  transition-timing-function: ease;
  transition-duration: 200ms;
}

.md-suggestion-diff {
  display: table !important;
  border-style: solid !important;
  border-color: var(--gl-border-color-default) !important;
  border-width: 1px !important;
  border-color: var(--gl-border-color-section) !important;
}
.md-suggestion-diff td {
  border: 0 !important;
}
.md-suggestion-diff tr.old td {
  border-radius: 0 !important;
}

.suggestions.md > .markdown-code-block {
  position: relative;
}

.md-suggestion-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: var(--gl-background-color-section);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-color: var(--gl-border-color-section);
  border-radius: 0.25rem 0.25rem 0 0;
}

/* these two styles are important to prevent certain LaTeX from
   hijacking a page: https://gitlab.com/gitlab-org/gitlab/-/issues/394770
*/
.math-content-inline {
  overflow: hidden;
  display: inline-flex;
}

.math-content-display {
  overflow: auto;
  display: block;
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .referenced-users {
    margin-right: 0;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .referenced-users {
    margin-right: 0;
  }
}
.md-area-wrapper-fill,
.md-area-wrapper-fill .md-content-editor-wrapper,
.md-area-wrapper-fill .md-content-editor-wrapper .content-editor-body,
.md-area-wrapper-fill .md-content-editor-wrapper .md,
.md-area-wrapper-fill .md-area,
.md-area-wrapper-fill .md-write-holder,
.md-area-wrapper-fill .md-preview-holder,
.md-area-wrapper-fill .zen-backdrop,
.md-area-wrapper-fill .div-dropzone-wrapper,
.md-area-wrapper-fill .div-dropzone {
  display: flex;
  flex-direction: column;
  flex: 1 1 0;
  min-height: 0;
}
.md-area-wrapper-fill .md-content-editor-wrapper > .md-area {
  overflow-y: auto;
}
.md-area-wrapper-fill .md .ProseMirror {
  flex: 1 1 0;
  overflow-y: visible !important;
  resize: none !important;
  max-height: none !important;
}
.md-area-wrapper-fill .markdown-area.note-textarea {
  flex: 1 1 0;
  min-height: 0;
  height: 100%;
  overflow-y: auto !important;
  resize: none !important;
  max-height: none !important;
}
.md-area-wrapper-fill .md-preview-holder {
  overflow-y: auto;
}
.md-area-wrapper-fill .md-area,
.md-area-wrapper-fill .md-area:focus-within,
.md-area-wrapper-fill .md-area:hover,
.md-area-wrapper-fill .md-area-wrapper,
.md-area-wrapper-fill .zen-backdrop,
.md-area-wrapper-fill .div-dropzone-wrapper,
.md-area-wrapper-fill .div-dropzone {
  border: 0 !important;
  box-shadow: none !important;
}
.md-area-wrapper-fill .md-write-holder textarea:focus-visible,
.md-area-wrapper-fill .zen-backdrop:not(.fullscreen) textarea:focus-visible,
.md-area-wrapper-fill .md .ProseMirror:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

.media {
  display: flex;
  align-items: flex-start;
}

.media-body {
  flex: 1;
}

.modal-header .page-title,
.modal-header .modal-title {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
}
.modal-header .page-title .modal-title-with-label span,
.modal-header .modal-title .modal-title-with-label span {
  vertical-align: middle;
  display: inline-block;
}
.modal-header .modal-title {
  line-height: 1.5rem;
}
.modal-header .modal-title.gl-max-w-full, .modal-header .modal-title.gl-w-full {
  margin-right: -1rem;
  padding-right: 1rem;
}
.modal-header .close {
  font-weight: 400;
  line-height: 16px;
  color: #28272d;
  opacity: 1;
}

.modal-body {
  line-height: 1.5;
  position: relative;
  min-height: 80px;
  padding: 1rem;
  text-align: left;
  white-space: normal;
}
.modal-body .form-actions {
  margin: 1rem -1rem -1rem;
}

.modal-footer {
  display: flex;
  flex-direction: row;
}
.modal-footer .btn {
  margin: 0;
}
.modal-footer .btn + .btn,
.modal-footer .btn + .btn-group,
.modal-footer .btn-group + .btn,
.modal-footer .btn-group + .btn-group {
  margin-left: 0.5rem;
}
.modal-footer .btn-group .btn + .btn {
  margin-left: -1px;
}
@media (max-width: 575.98px) {
  .modal-footer {
    flex-direction: column;
  }
  .modal-footer .btn-group .btn + .btn {
    margin-left: -1px;
    margin-top: 0;
  }
}

body.modal-open {
  overflow: hidden;
  padding-right: 0 !important;
}

.modal-open .modal-backdrop {
  display: none;
}

.modal{
  background-color: var(--gl-background-color-overlay);
}
.modal .modal-content{
  border-radius: var(--gl-border-radius-2xl);
}
.modal .modal-content > :first-child{
  border-top-left-radius: var(--gl-border-radius-2xl);
  border-top-right-radius: var(--gl-border-radius-2xl);
}
.modal .modal-content > :last-child{
  border-bottom-right-radius: var(--gl-border-radius-2xl);
  border-bottom-left-radius: var(--gl-border-radius-2xl);
}

.card {
  margin-bottom: 16px;
}

.card-slim {
  margin-bottom: 6px;
}

.card-header {
  padding: 6px 16px;
  line-height: 36px;
}
.card-header .controls {
  margin-top: -2px;
  float: right;
}
.card-header .dropdown-menu-toggle {
  line-height: 20px;
}
.card-header .badge.badge-pill {
  margin-top: -2px;
  margin-left: 5px;
}
.card-header.split {
  display: flex;
  align-items: center;
}
.card-header .left {
  flex: 1 1 auto;
}
.card-header .right {
  flex: 0 0 auto;
  text-align: right;
}

.card-body {
  padding: 16px;
}
.card-body .form-actions {
  margin: -16px;
  margin-top: 16px;
}

.popup::before, .popup::after {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.popup::before {
  border-color: transparent;
  border-bottom-color: #ecebea;
  border-width: 16px;
  margin-left: -16px;
}
.popup::after {
  border-color: transparent;
  border-bottom-color: #f7f7f5;
  border-width: 15px;
  margin-left: -15px;
}
.popup {
  padding: 16px;
  background-color: var(--gl-background-color-subtle);
  border: 1px solid #ecebea;
  border-radius: .25rem;
  box-shadow: 0 5px 8px rgba(90, 90, 90, 0.05);
  position: relative;
}

.nav-links {
  display: flex;
  padding: 0;
  margin: 0;
  list-style: none;
  height: auto;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.nav-links li:not(.md-header-toolbar) {
  display: flex;
}
.nav-links li:not(.md-header-toolbar) a,
.nav-links li:not(.md-header-toolbar) button{
  padding-top: var(--gl-spacing-scale-5);
  padding-bottom: var(--gl-spacing-scale-5);
  padding-left: var(--gl-spacing-scale-4);
  padding-right: var(--gl-spacing-scale-4);
  color: var(--gl-text-color-default);
  font-size: var(--gl-font-size-base);
}
.recents-wrapper .nav-links li:not(.md-header-toolbar) a,.recents-wrapper 
.nav-links li:not(.md-header-toolbar) button{
  margin-top: var(--gl-spacing-scale-0);
}
.nav-links li:not(.md-header-toolbar) a,
.nav-links li:not(.md-header-toolbar) button{
  line-height: 1rem;
  border-width: 0px;
  white-space: nowrap;
}
.nav-links li:not(.md-header-toolbar) a:hover, .nav-links li:not(.md-header-toolbar) a:active,
.nav-links li:not(.md-header-toolbar) button:hover,
.nav-links li:not(.md-header-toolbar) button:active {
  text-decoration: none;
  color: var(--gl-text-default);
  box-shadow: inset 0 -2px 0 0 var(--gl-tab-selected-indicator-color-default);
}
.nav-links li:not(.md-header-toolbar) a:focus-visible,
.nav-links li:not(.md-header-toolbar) button:focus-visible {
  text-decoration: none;
  color: var(--gl-text-default);
  outline: 2px solid var(--gl-focus-ring-color, var(--gl-tab-selected-indicator-color-default));
  outline-offset: 2px;
  box-shadow: none;
}
.nav-links li:not(.md-header-toolbar) button {
  padding-top: 0;
  background-color: transparent;
}
.nav-links li:not(.md-header-toolbar).active a, .nav-links li:not(.md-header-toolbar).active button,
.nav-links li:not(.md-header-toolbar) a.active{
  color: var(--gl-text-color-default);
  font-weight: var(--gl-font-weight-bold);
  box-shadow: inset 0 -2px 0 0 var(--gl-tab-selected-indicator-color-default);
}
.nav-links li:not(.md-header-toolbar).active a .badge.badge-pill, .nav-links li:not(.md-header-toolbar).active button .badge.badge-pill,
.nav-links li:not(.md-header-toolbar) a.active .badge.badge-pill{
  font-weight: var(--gl-font-weight-bold);
  color: var(--gl-badge-neutral-text-color-default);
  background-color: var(--gl-badge-neutral-background-color-default);
}

.top-area{
  display: flex;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
@container panel (width < 992px) {
  :where(html.with-gl-container-queries) .top-area {
    flex-flow: column-reverse wrap;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .top-area {
    flex-flow: column-reverse wrap;
  }
}
.top-area .nav-text {
  flex: 1;
  padding-top: 16px;
  padding-bottom: 11px;
  display: inline-block;
  line-height: 28px;
  white-space: normal;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .top-area .nav-text {
    width: 100%;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .top-area .nav-text {
    width: 100%;
  }
}
.top-area .nav-links {
  border-bottom: 0;
  flex: 1;
}
.top-area .nav-links.wide {
  width: 100%;
  display: block;
}
.top-area .nav-links.scrolling-tabs {
  float: left;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .top-area .nav-links {
    width: 100%;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .top-area .nav-links {
    width: 100%;
  }
}
.top-area .nav-controls {
  display: inline-block;
  text-align: right;
}
.top-area .nav-controls > .btn,
.top-area .nav-controls > .btn-group,
.top-area .nav-controls > .btn-container,
.top-area .nav-controls > .dropdown,
.top-area .nav-controls > .gl-new-dropdown,
.top-area .nav-controls > input,
.top-area .nav-controls > form {
  margin-right: 8px;
}
.top-area .nav-controls > .btn:last-child,
.top-area .nav-controls > .btn-group:last-child,
.top-area .nav-controls > .btn-container:last-child,
.top-area .nav-controls > .dropdown:last-child,
.top-area .nav-controls > .gl-new-dropdown:last-child,
.top-area .nav-controls > input:last-child,
.top-area .nav-controls > form:last-child {
  margin-right: 0;
  float: right;
}
.top-area .nav-controls > .btn-grouped {
  float: none;
}
.top-area .nav-controls .icon-label {
  display: none;
}
.top-area .nav-controls input {
  display: inline-block;
  position: relative;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .top-area .nav-controls {
    display: flex;
    align-items: center;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls {
    display: flex;
    align-items: center;
  }
}
@container panel (width < 992px) {
  :where(html.with-gl-container-queries) .top-area .nav-controls {
    flex: 0 0 100%;
    margin-top: 8px;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls {
    flex: 0 0 100%;
    margin-top: 8px;
  }
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .top-area .nav-controls {
    padding-bottom: 0;
    width: 100%;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls .btn.dropdown-toggle-split {
    margin-left: 1px;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls {
    /* This resets the width of the control so that the search button doesn't wrap */
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls .gl-search-box-by-click .form-control {
    width: 1%;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls .dropdown-menu-toggle {
    margin-bottom: 0;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls form {
    display: block;
    height: auto;
    margin-bottom: 8px;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls form input {
    width: 100%;
    margin: 0 0 10px;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls .icon-label {
    display: inline-block;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > .btn,
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > .btn-container,
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > .dropdown,
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > input,
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > form {
    flex: 1 1 auto;
    margin: 0 0 10px;
    margin-left: 10px;
    width: auto;
  }
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > .btn:first-child,
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > .btn-container:first-child,
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > .dropdown:first-child,
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > input:first-child,
  :where(html.with-gl-container-queries) .top-area .nav-controls.inline > form:first-child {
    margin-left: 0;
    float: none;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls {
    padding-bottom: 0;
    width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls .btn.dropdown-toggle-split {
    margin-left: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls {
    /* This resets the width of the control so that the search button doesn't wrap */
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls .gl-search-box-by-click .form-control {
    width: 1%;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls .dropdown-menu-toggle {
    margin-bottom: 0;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls form {
    display: block;
    height: auto;
    margin-bottom: 8px;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls form input {
    width: 100%;
    margin: 0 0 10px;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls .icon-label {
    display: inline-block;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > .btn,
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > .btn-container,
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > .dropdown,
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > input,
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > form {
    flex: 1 1 auto;
    margin: 0 0 10px;
    margin-left: 10px;
    width: auto;
  }
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > .btn:first-child,
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > .btn-container:first-child,
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > .dropdown:first-child,
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > input:first-child,
  :where(html:not(.with-gl-container-queries)) .top-area .nav-controls.inline > form:first-child {
    margin-left: 0;
    float: none;
  }
}
.top-area.adjust .nav-text,
.top-area.adjust .nav-controls {
  width: auto;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .top-area.adjust .nav-text,
  :where(html.with-gl-container-queries) .top-area.adjust .nav-controls {
    width: 100%;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .top-area.adjust .nav-text,
  :where(html:not(.with-gl-container-queries)) .top-area.adjust .nav-controls {
    width: 100%;
  }
}
.top-area.multi-line .nav-text {
  line-height: 20px;
}
.top-area.multi-line .nav-controls {
  padding: 17px 0;
}
.top-area pre {
  width: 100%;
}

.scrolling-tabs-container {
  position: relative;
}
.merge-request-tabs-container .scrolling-tabs-container {
  overflow: hidden;
}
.scrolling-tabs-container .nav-links {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  display: flex;
  flex-wrap: nowrap;
}
.scrolling-tabs-container .nav-links::-webkit-scrollbar {
  display: none;
}
.scrolling-tabs-container .fade-left::after,
.scrolling-tabs-container .fade-right::after {
  content: "";
  pointer-events: none;
  z-index: -1;
  display: block;
  width: 16px;
  height: 100%;
  position: absolute;
  top: 0;
}
.scrolling-tabs-container .fade-right {
  visibility: hidden;
  opacity: 0;
  z-index: 2;
  position: absolute;
  bottom: 12px;
  width: 43px;
  height: 30px;
  transition-duration: 0.3s;
  transform: translateZ(0);
  background: linear-gradient(to left, #f7f7f5 45%, rgba(247, 247, 245, 0.4));
  border: 0;
  padding: 0;
}
.scrolling-tabs-container .fade-right:hover{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.scrolling-tabs-container .fade-right.scrolling {
  visibility: visible;
  opacity: 1;
  transition-duration: 0.3s;
}
.scrolling-tabs-container .fade-right svg {
  position: absolute;
  top: 12px;
  font-size: 18px;
}
.scrolling-tabs-container .fade-right {
  right: -5px;
}
.scrolling-tabs-container .fade-right svg {
  right: -7px;
}
.scrolling-tabs-container .fade-right::after {
  right: 0;
  background: linear-gradient(270deg, #fff, transparent);
}
.scrolling-tabs-container .fade-left {
  visibility: hidden;
  opacity: 0;
  z-index: 2;
  position: absolute;
  bottom: 12px;
  width: 43px;
  height: 30px;
  transition-duration: 0.3s;
  transform: translateZ(0);
  background: linear-gradient(to right, #f7f7f5 45%, rgba(247, 247, 245, 0.4));
  border: 0;
  padding: 0;
}
.scrolling-tabs-container .fade-left:hover{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.scrolling-tabs-container .fade-left.scrolling {
  visibility: visible;
  opacity: 1;
  transition-duration: 0.3s;
}
.scrolling-tabs-container .fade-left svg {
  position: absolute;
  top: 12px;
  font-size: 18px;
}
.scrolling-tabs-container .fade-left {
  left: -5px;
  text-align: center;
}
.scrolling-tabs-container .fade-left svg {
  left: -7px;
}
.scrolling-tabs-container .fade-left::after {
  left: 0;
  background: linear-gradient(90deg, #fff, transparent);
}

.inner-page-scroll-tabs .fade-right {
  visibility: hidden;
  opacity: 0;
  z-index: 2;
  position: absolute;
  bottom: 12px;
  width: 43px;
  height: 30px;
  transition-duration: 0.3s;
  transform: translateZ(0);
  background: linear-gradient(to left, #fff 45%, rgba(255, 255, 255, 0.4));
  border: 0;
  padding: 0;
}
.inner-page-scroll-tabs .fade-right:hover{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.inner-page-scroll-tabs .fade-right.scrolling {
  visibility: visible;
  opacity: 1;
  transition-duration: 0.3s;
}
.inner-page-scroll-tabs .fade-right svg {
  position: absolute;
  top: 12px;
  font-size: 18px;
}
.inner-page-scroll-tabs .fade-right {
  right: 0;
  text-align: right;
}
.inner-page-scroll-tabs .fade-right svg {
  right: 5px;
}
.inner-page-scroll-tabs .fade-left {
  visibility: hidden;
  opacity: 0;
  z-index: 2;
  position: absolute;
  bottom: 12px;
  width: 43px;
  height: 30px;
  transition-duration: 0.3s;
  transform: translateZ(0);
  background: linear-gradient(to right, #fff 45%, rgba(255, 255, 255, 0.4));
  border: 0;
  padding: 0;
}
.inner-page-scroll-tabs .fade-left:hover{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.inner-page-scroll-tabs .fade-left.scrolling {
  visibility: visible;
  opacity: 1;
  transition-duration: 0.3s;
}
.inner-page-scroll-tabs .fade-left svg {
  position: absolute;
  top: 12px;
  font-size: 18px;
}
.inner-page-scroll-tabs .fade-left {
  left: 0;
  text-align: left;
}
.inner-page-scroll-tabs .fade-left svg {
  left: 5px;
}
.inner-page-scroll-tabs .fade-right,
.inner-page-scroll-tabs .fade-left {
  top: auto;
}
.inner-page-scroll-tabs.is-smaller .fade-right,
.inner-page-scroll-tabs.is-smaller .fade-left {
  top: 11px;
}

.nav-block {
  position: relative;
}
.nav-block .nav-links {
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  display: flex;
  flex-wrap: nowrap;
}
.nav-block .nav-links::-webkit-scrollbar {
  display: none;
}
.nav-block .nav-links .fade-right {
  visibility: hidden;
  opacity: 0;
  z-index: 2;
  position: absolute;
  bottom: 12px;
  width: 43px;
  height: 30px;
  transition-duration: 0.3s;
  transform: translateZ(0);
  background: linear-gradient(to left, #fff 45%, rgba(255, 255, 255, 0.4));
  border: 0;
  padding: 0;
}
.nav-block .nav-links .fade-right:hover{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.nav-block .nav-links .fade-right.scrolling {
  visibility: visible;
  opacity: 1;
  transition-duration: 0.3s;
}
.nav-block .nav-links .fade-right svg {
  position: absolute;
  top: 12px;
  font-size: 18px;
}
.nav-block .nav-links .fade-right {
  right: -5px;
}
.nav-block .nav-links .fade-right svg {
  right: -7px;
}
.nav-block .nav-links .fade-left {
  visibility: hidden;
  opacity: 0;
  z-index: 2;
  position: absolute;
  bottom: 12px;
  width: 43px;
  height: 30px;
  transition-duration: 0.3s;
  transform: translateZ(0);
  background: linear-gradient(to right, #fff 45%, rgba(255, 255, 255, 0.4));
  border: 0;
  padding: 0;
}
.nav-block .nav-links .fade-left:hover{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.nav-block .nav-links .fade-left.scrolling {
  visibility: visible;
  opacity: 1;
  transition-duration: 0.3s;
}
.nav-block .nav-links .fade-left svg {
  position: absolute;
  top: 12px;
  font-size: 18px;
}
.nav-block .nav-links .fade-left {
  left: -5px;
}
.nav-block .nav-links .fade-left svg {
  left: -7px;
}
.nav-block.activities{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  display: flex;
  align-items: center;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .nav-block.activities {
    display: block;
    overflow: visible;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .nav-block.activities {
    display: block;
    overflow: visible;
  }
}
.nav-block.activities .nav-links {
  border-bottom: 0;
}

.content-wrapper {
  width: 100%;
}
.content-wrapper .container-fluid, .content-wrapper .container-sm, .content-wrapper .container-md, .content-wrapper .container-lg, .content-wrapper .container-xl{
  padding-top: var(--gl-spacing-scale-0);
  padding-bottom: var(--gl-spacing-scale-0);
  padding-left: var(--container-padding-x);
  padding-right: var(--container-padding-x);
}

.page-initialised .content-wrapper{
  transition-property: padding;
  transition-timing-function: ease;
  transition-duration: 200ms;
}

.right-sidebar-collapsed {
  padding-right: 0;
}
@container content-panels (width >= 576px) {
  :where(html.with-gl-container-queries) .right-sidebar-collapsed:not(.is-merge-request){
    border-left-style: solid;
    border-left-color: var(--gl-border-color-default);
    border-left-width: 1px;
  }
  :where(html.with-gl-container-queries) .right-sidebar-collapsed:not(.is-merge-request):not(.wiki-sidebar):not(.build-sidebar):not(.issuable-bulk-update-sidebar) .panel-content-inner {
    padding-right: 62px;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar-collapsed:not(.is-merge-request){
    border-left-style: solid;
    border-left-color: var(--gl-border-color-default);
    border-left-width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .right-sidebar-collapsed:not(.is-merge-request):not(.wiki-sidebar):not(.build-sidebar):not(.issuable-bulk-update-sidebar) .panel-content-inner {
    padding-right: 62px;
  }
}
.right-sidebar-collapsed .sidebar-collapsed-icon .btn{
  background-color: var(--gl-background-color-subtle);
}
.right-sidebar-collapsed .sidebar-collapsed-icon:not(.disabled) {
  cursor: pointer;
}
.right-sidebar-collapsed .sidebar-collapsed-icon svg {
  width: 16px;
  height: 16px;
}
.right-sidebar-collapsed .right-sidebar-header {
  flex-wrap: wrap;
}

.right-sidebar-expanded {
  padding-right: 0;
  z-index: 300;
}
.right-sidebar-expanded .right-sidebar-header {
  padding-block: 0.75rem;
  margin-left: 20px;
}
.right-sidebar-expanded .inline-block {
  display: inline-block;
}
.right-sidebar-expanded.right-sidebar-merge-requests {
  width: 290px;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .right-sidebar-expanded.right-sidebar-merge-requests {
    z-index: auto;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar-expanded.right-sidebar-merge-requests {
    z-index: auto;
  }
}
.right-sidebar-expanded.right-sidebar-merge-requests .shortcut-sidebar-dropdown-toggle {
  margin-right: 0 !important;
}
@container content-panels (width >= 576px) {
  :where(html.with-gl-container-queries) .right-sidebar-expanded:not(.wiki-sidebar, .build-sidebar, .is-merge-request) .panel-content-inner {
    padding-right: 290px;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar-expanded:not(.wiki-sidebar, .build-sidebar, .is-merge-request) .panel-content-inner {
    padding-right: 290px;
  }
}

.right-sidebar:where(.right-sidebar-expanded){
  border-left-style: solid;
  border-left-color: var(--gl-border-color-default);
  border-left-width: 1px;
}
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .right-sidebar.right-sidebar-merge-requests {
    border-left: 0;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar.right-sidebar-merge-requests {
    border-left: 0;
  }
}

.issues-bulk-update.right-sidebar {
  display: flex;
  flex-direction: column;
  width: 290px;
  width: 0;
  padding: 0;
  transition-property: width;
  transition-timing-function: ease;
  transition-duration: 200ms;
}
.issues-bulk-update.right-sidebar.right-sidebar-expanded {
  display: flex;
  flex-direction: column;
  width: 290px;
}
.issues-bulk-update.right-sidebar.right-sidebar-expanded .issuable-sidebar-header {
  padding: 11px 0;
}
.issues-bulk-update.right-sidebar.right-sidebar-expanded .block:last-of-type {
  border: 0;
}
.issues-bulk-update.right-sidebar.right-sidebar-collapsed {
  display: flex;
  flex-direction: column;
  width: 290px;
  width: 0;
  padding: 0;
}
.issues-bulk-update.right-sidebar.right-sidebar-collapsed .block {
  padding: 16px 0;
  width: 250px;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.issues-bulk-update.right-sidebar .issuable-sidebar {
  padding: 0 3px;
}
.issues-bulk-update.right-sidebar .block {
  border-bottom: 0;
  padding-top: 0;
}

.issues-bulk-update.right-sidebar.right-sidebar-collapsed{
  border-left-width: 0px;
}

.issuable-sidebar .labels .value.dont-hide ~ .selectbox {
  padding-top: 8px;
}
.issuable-sidebar .labels .title .gl-button {
  font-weight: 600;
}
.issuable-sidebar .labels .title .gl-button .gl-button{
  color: var(--gl-text-color-default);
}

.sidebar-collapsed-icon {
  font-size: 12px;
}

.toggle-right-sidebar-button{
  transition-property: width;
  transition-timing-function: ease;
  transition-duration: 200ms;
  height: 48px;
  padding: 0 16px;
  background-color: var(--gl-background-color-subtle);
  border: 0;
  color: var(--gl-text-color-subtle);
  display: flex;
  align-items: center;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.toggle-right-sidebar-button:hover{
  background-color: var(--gl-background-color-strong);
  color: var(--gl-text-color-default);
}

.edit-link {
  margin-right: -0.25rem;
}

.issuable-sidebar.is-merge-request .edit-link {
  margin-right: 0;
}

.assignee-grid {
  grid-template-areas: "attention user";
  grid-template-columns: min-content 1fr;
}

.reviewer-grid {
  grid-template-areas: "user approval rerequest remove";
  grid-template-columns: 1fr;
}

.reviewers-dropdown .gl-new-dropdown-panel,
.sidebar-dropdown-widget-listbox .gl-new-dropdown-panel {
  min-width: 274px;
}

.merge-request-approved-icon {
  animation: approval-animate 350ms ease-in;
}

@keyframes approval-animate {
  0% {
    transform: scale(0);
  }
  75% {
    transform: scale(1.4);
  }
  100% {
    transform: scale(1);
  }
}
.assignee-grid [data-css-area=user],
.reviewer-grid [data-css-area=user] {
  grid-area: user;
}

.right-sidebar:not(.right-sidebar-merge-requests) {
  position: fixed;
  bottom: var(--system-footer-height);
  right: var(--scrollbar-width, 0);
  background-color: var(--gl-background-color-default);
  z-index: 200;
  overflow: hidden;
  transition-property: width;
  transition-timing-function: ease;
  transition-duration: 200ms;
  top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
}
@container panel (width < 992px) {
  :where(html.with-gl-container-queries) .right-sidebar:not(.right-sidebar-merge-requests) {
    z-index: 251;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar:not(.right-sidebar-merge-requests) {
    z-index: 251;
  }
}
@container panel (width < 992px) {
  :where(html.with-gl-container-queries) .right-sidebar.right-sidebar-merge-requests {
    position: fixed;
    bottom: var(--system-footer-height);
    right: var(--scrollbar-width, 0);
    background-color: var(--gl-background-color-default);
    overflow: hidden;
    transition-property: width;
    transition-timing-function: ease;
    transition-duration: 200ms;
    top: calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height)));
    z-index: 251;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar.right-sidebar-merge-requests {
    position: fixed;
    bottom: var(--system-footer-height);
    right: var(--scrollbar-width, 0);
    background-color: var(--gl-background-color-default);
    overflow: hidden;
    transition-property: width;
    transition-timing-function: ease;
    transition-duration: 200ms;
    top: calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height)));
    z-index: 251;
  }
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .right-sidebar.right-sidebar-merge-requests {
    top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar.right-sidebar-merge-requests {
    top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
  }
}
.right-sidebar a:not(.btn) {
  color: inherit;
}
.right-sidebar a:not(.btn):hover{
  color: var(--gl-text-color-link);
}
.right-sidebar .gl-label .gl-label-link:hover {
  color: inherit;
}
.right-sidebar .btn-link {
  color: inherit;
}
.right-sidebar .gutter-toggle {
  display: flex;
  align-items: center;
  margin-left: 20px;
  padding: 4px;
  border-radius: 4px;
  height: 24px;
}
.right-sidebar .gutter-toggle:hover{
  color: var(--gl-text-color-default);
  background-color: var(--gl-background-color-strong);
}
.right-sidebar .gutter-toggle:hover, .right-sidebar .gutter-toggle:focus-visible {
  text-decoration: none;
}
.right-sidebar.right-sidebar-merge-requests .block,
.right-sidebar.right-sidebar-merge-requests .sidebar-contained-width,
.right-sidebar.right-sidebar-merge-requests .issuable-sidebar-header {
  width: 100%;
}
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .right-sidebar.right-sidebar-merge-requests .block {
    padding: 0.75rem 0 1rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar.right-sidebar-merge-requests .block {
    padding: 0.75rem 0 1rem;
  }
}
.right-sidebar.right-sidebar-merge-requests .block.participants {
  border-bottom: 0;
}
.right-sidebar .block::after,
.right-sidebar .sidebar-contained-width::after,
.right-sidebar .issuable-sidebar-header::after {
  display: block;
  clear: both;
  content: "";
}
.right-sidebar .block,
.right-sidebar .sidebar-contained-width,
.right-sidebar .issuable-sidebar-header {
  padding: 0.75rem 0 1rem;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-color: var(--gl-border-color-subtle);
  width: 250px;
}
.right-sidebar .block:last-child,
.right-sidebar .sidebar-contained-width:last-child,
.right-sidebar .issuable-sidebar-header:last-child {
  border: 0;
}
.right-sidebar .block.assignee .author-link,
.right-sidebar .sidebar-contained-width.assignee .author-link,
.right-sidebar .issuable-sidebar-header.assignee .author-link {
  display: block;
  position: relative;
}
.right-sidebar .block.assignee .author-link:hover .author,
.right-sidebar .sidebar-contained-width.assignee .author-link:hover .author,
.right-sidebar .issuable-sidebar-header.assignee .author-link:hover .author {
  text-decoration: underline;
}
.right-sidebar .block.time-tracking, .right-sidebar .block.participants, .right-sidebar .block.subscriptions, .right-sidebar .block.with-sub-blocks,
.right-sidebar .sidebar-contained-width.time-tracking,
.right-sidebar .sidebar-contained-width.participants,
.right-sidebar .sidebar-contained-width.subscriptions,
.right-sidebar .sidebar-contained-width.with-sub-blocks,
.right-sidebar .issuable-sidebar-header.time-tracking,
.right-sidebar .issuable-sidebar-header.participants,
.right-sidebar .issuable-sidebar-header.subscriptions,
.right-sidebar .issuable-sidebar-header.with-sub-blocks {
  padding-top: 1rem;
}
.right-sidebar .title{
  color: var(--gl-text-color-default);
  line-height: 1.25rem;
}
.right-sidebar .title .avatar {
  margin-left: 0;
}
.right-sidebar .selectbox {
  display: none;
}
.right-sidebar .selectbox.show {
  display: block;
}
.right-sidebar .issuable-sidebar {
  height: 100%;
}
.right-sidebar .issuable-sidebar:not(.is-merge-request) {
  overflow-y: scroll;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .right-sidebar .issuable-sidebar.is-merge-request {
    overflow-y: scroll;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar .issuable-sidebar.is-merge-request {
    overflow-y: scroll;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
  }
}
.right-sidebar.right-sidebar-expanded:not(.right-sidebar-merge-requests) {
  width: 290px;
}
.right-sidebar.right-sidebar-expanded .issuable-sidebar-header {
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.right-sidebar.right-sidebar-expanded .value {
  line-height: 1;
}
.right-sidebar.right-sidebar-expanded .issuable-sidebar {
  padding: 0 20px;
}
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .right-sidebar.right-sidebar-expanded .issuable-sidebar.is-merge-request {
    padding: 0;
  }
  :where(html.with-gl-container-queries) .right-sidebar.right-sidebar-expanded .issuable-sidebar.is-merge-request .issuable-context-form {
    top: calc(2.5rem + 1.5rem + 0.25rem + 1px);
    height: calc(var(--panel-content-inner-height) - calc(2.5rem + 1.5rem + 0.25rem + 1px));
    position: sticky;
    padding: 0 0.5rem;
    margin-bottom: calc(56px * -1);
    overflow-y: auto;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar.right-sidebar-expanded .issuable-sidebar.is-merge-request {
    padding: 0;
  }
  :where(html:not(.with-gl-container-queries)) .right-sidebar.right-sidebar-expanded .issuable-sidebar.is-merge-request .issuable-context-form {
    top: calc(2.5rem + 1.5rem + 0.25rem + 1px);
    height: calc(var(--panel-content-inner-height) - calc(2.5rem + 1.5rem + 0.25rem + 1px));
    position: sticky;
    padding: 0 0.5rem;
    margin-bottom: calc(56px * -1);
    overflow-y: auto;
  }
}
.right-sidebar.right-sidebar-expanded:not(.boards-sidebar):not([data-signed-in]):not([data-always-show-toggle]) .issuable-sidebar-header {
  display: none;
}
.right-sidebar.right-sidebar-expanded .light {
  font-weight: 400;
}
.right-sidebar.right-sidebar-expanded .no-value{
  color: var(--gl-text-color-subtle);
}
.right-sidebar.right-sidebar-expanded .sidebar-collapsed-icon {
  display: none;
}
.right-sidebar.right-sidebar-expanded .gutter-toggle {
  text-align: center;
}
.right-sidebar.right-sidebar-expanded .title .gutter-toggle {
  margin-top: 0;
}
.right-sidebar.right-sidebar-expanded .assignee .user-list .avatar {
  margin: 0;
}
.right-sidebar.right-sidebar-expanded .hide-expanded {
  display: none;
}
.right-sidebar.right-sidebar-collapsed {
  /* Extra small devices (phones, less than 768px) */
  display: none;
  /* Small devices (tablets, 768px and up) */
}
@container content-panels (width >= 576px) {
  :where(html.with-gl-container-queries) .right-sidebar.right-sidebar-collapsed:not(.right-sidebar-merge-requests) {
    display: block;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar.right-sidebar-collapsed:not(.right-sidebar-merge-requests) {
    display: block;
  }
}
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .right-sidebar.right-sidebar-collapsed.right-sidebar-merge-requests {
    display: block;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .right-sidebar.right-sidebar-collapsed.right-sidebar-merge-requests {
    display: block;
  }
}
.right-sidebar.right-sidebar-collapsed {
  width: 62px;
  padding: 0;
}
.right-sidebar.right-sidebar-collapsed .block,
.right-sidebar.right-sidebar-collapsed .sidebar-contained-width,
.right-sidebar.right-sidebar-collapsed .issuable-sidebar-header {
  width: 60px;
  padding: 0;
  border-bottom: 0;
  overflow: hidden;
}
.right-sidebar.right-sidebar-collapsed .block.with-sub-blocks .sub-block:hover, .right-sidebar.right-sidebar-collapsed .block:not(.with-sub-blocks):hover,
.right-sidebar.right-sidebar-collapsed .gutter-toggle.with-sub-blocks .sub-block:hover,
.right-sidebar.right-sidebar-collapsed .gutter-toggle:not(.with-sub-blocks):hover,
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-container.with-sub-blocks .sub-block:hover,
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-container:not(.with-sub-blocks):hover {
  background-color: var(--gl-action-neutral-background-color-hover);
}
.right-sidebar.right-sidebar-collapsed .participants{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.right-sidebar.right-sidebar-collapsed .hide-collapsed {
  display: none;
}
.right-sidebar.right-sidebar-collapsed .gutter-toggle {
  width: 100%;
  height: 60px;
  margin-top: 0;
  margin-left: 0;
  border-bottom-style: solid !important;
  border-bottom-color: var(--gl-border-color-default) !important;
  border-bottom-width: 1px !important;
  border-radius: 0;
}
.right-sidebar.right-sidebar-collapsed a.gutter-toggle {
  display: flex;
  justify-content: center;
  flex-direction: column;
  text-align: center;
}
.right-sidebar.right-sidebar-collapsed .merge-icon {
  height: 12px;
  width: 12px;
  bottom: -5px;
  right: 4px;
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 60px;
  text-align: center;
  color: var(--gl-text-color-subtle);
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon > svg{
  fill: var(--gl-icon-color-subtle);
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon:hover:not(.disabled), .right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon:hover .todo-undone{
  color: var(--gl-text-color-default);
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon:hover:not(.disabled) > svg, .right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon:hover .todo-undone > svg{
  fill: var(--gl-icon-color-default);
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon .todo-undone {
  color: var(--gl-status-info-text-color);
  fill: var(--gl-status-info-icon-color);
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon .author {
  display: none;
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-icon.multiple-users {
  display: flex;
  justify-content: center;
}
.right-sidebar.right-sidebar-collapsed .sidebar-avatar-counter {
  width: 24px;
  height: 24px;
  border-radius: 12px;
}
.right-sidebar.right-sidebar-collapsed .sidebar-avatar-counter ~ .merge-icon {
  bottom: 0;
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-user {
  padding-bottom: 0;
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-user .author-link {
  padding-left: 0;
}
.right-sidebar.right-sidebar-collapsed .sidebar-collapsed-user .author-link .avatar {
  position: static;
  margin: 0;
}
.right-sidebar.right-sidebar-collapsed .issuable-header-btn {
  display: none;
}
.right-sidebar.right-sidebar-collapsed .multiple-users .btn-link {
  padding: 0;
  border: 0;
}
.right-sidebar.right-sidebar-collapsed .multiple-users .btn-link .avatar {
  margin: 0;
}
.right-sidebar.right-sidebar-collapsed .multiple-users .btn-link:first-child {
  position: absolute;
  left: 10px;
  z-index: 1;
}
.right-sidebar.right-sidebar-collapsed .multiple-users .btn-link:last-child {
  position: absolute;
  right: 10px;
}
.right-sidebar.right-sidebar-collapsed .multiple-users .btn-link:last-child:hover {
  text-decoration: none;
}
.right-sidebar.right-sidebar-collapsed .milestone-title span,
.right-sidebar.right-sidebar-collapsed .collapse-truncated-title {
  display: inline-block;
  min-width: 0;
  overflow-x: clip;
  overflow-y: visible;
  text-overflow: ellipsis;
  vertical-align: top;
  white-space: nowrap;
  max-width: 100%;
  display: block;
  margin: 0 4px;
}
.right-sidebar .dropdown-menu-toggle {
  width: 100%;
  padding-top: 6px;
}
.right-sidebar .dropdown-menu {
  width: 100%;
  /*
   * Overwrite hover style for dropdown items, so that they are not blue
   * This should be removed during dev of https://gitlab.com/gitlab-org/gitlab-foss/issues/44040
   */
}
.right-sidebar .dropdown-menu li a:hover, .right-sidebar .dropdown-menu li a:active, .right-sidebar .dropdown-menu li a:focus-visible, .right-sidebar .dropdown-menu li a.is-focused {
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
  color: var(--gl-dropdown-option-text-color-hover);
  outline: 0;
  background-color: transparent;
}

.issuable-show-labels .gl-label {
  margin-bottom: 0.25rem;
  margin-right: 0.25rem;
}
.issuable-show-labels a {
  display: inline-block;
}
.issuable-show-labels a .color-label {
  padding: 4px 0.5rem;
  border-radius: 100px;
  margin-right: 4px;
  margin-bottom: 4px;
}
.issuable-show-labels a:hover .color-label {
  text-decoration: underline;
}
.issuable-show-labels.has-labels {
  font-size: 0;
  margin-bottom: -5px;
}

.reviewer-merge-icon,
.assignee .merge-icon,
.reviewer .merge-icon {
  color: var(--gl-status-warning-icon-color);
  position: absolute;
  bottom: -3px;
  right: -3px;
  filter: drop-shadow(1px 0 0 var(--gl-background-color-default)) drop-shadow(-1px 0 0 var(--gl-background-color-default)) drop-shadow(0 -1px 0 var(--gl-background-color-default)) drop-shadow(0 1px 0 var(--gl-background-color-default));
}

.suggested-reviewer-reason-icon {
  top: 17px;
  left: 18px;
  filter: drop-shadow(1px 0 0 var(--gl-background-color-default)) drop-shadow(-1px 0 0 var(--gl-background-color-default)) drop-shadow(0 -1px 0 var(--gl-background-color-default)) drop-shadow(0 1px 0 var(--gl-background-color-default));
}

.suggested-reviewer-avatar .gl-avatar{
  border-width: 1px;
  border-style: dashed;
  border-color: var(--gl-border-color-strong);
  background-color: transparent;
}

.sidebar-help-wrap .sidebar-help-state {
  margin: 16px -20px -20px;
  padding: 16px 20px;
}
.sidebar-help-wrap .help-state-toggle-enter-active {
  transition: all 0.8s ease;
}
.sidebar-help-wrap .help-state-toggle-leave-active {
  transition: all 0.5s ease;
}
.sidebar-help-wrap .help-state-toggle-enter,
.sidebar-help-wrap .help-state-toggle-leave-active {
  opacity: 0;
}

.time-tracker .sidebar-collapsed-icon > .stopwatch-svg {
  display: inline-block;
}
.time-tracker .sidebar-collapsed-icon svg {
  width: 16px;
  height: 16px;
  fill: var(--gl-icon-color-subtle);
}
.time-tracker .sidebar-collapsed-icon:hover svg{
  fill: var(--gl-icon-color-default);
}
.time-tracker .compare-meter.over_estimate .time-remaining,
.time-tracker .compare-meter.over_estimate .compare-value.spent{
  color: var(--gl-text-color-danger);
}
.time-tracker .compare-display-container {
  font-size: 13px;
}

/* stylelint-disable scss/at-rule-no-unknown */
/**
 * SCSS variables
 */
/**
 * CSS Custom properties
 */
:root {
  --super-sidebar-hr-border-color: var(--gl-color-neutral-100);
}

:root.gl-dark {
  --super-sidebar-hr-border-color: var(--gl-color-neutral-900);
}

/**
 * Skip to
 */
.super-sidebar-skip-to {
  top: calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height)));
  z-index: 601;
}

/**
 * Super sidebar wrapper
 */
.super-sidebar-wrapper{
  position: absolute;
}
@media (min-width: 1200px){
  .super-sidebar-wrapper{
    position: static;
  }
}
.super-sidebar-wrapper{
  width: var(--gl-spacing-scale-0);
  height: var(--gl-spacing-scale-0);
}
@media (min-width: 1200px){
  .super-sidebar-wrapper{
    height: auto;
    width: auto;
    margin-left: var(--gl-spacing-scale-0);
  }
}
.super-sidebar-wrapper{
  min-height: var(--gl-spacing-scale-0);
}
.super-sidebar-wrapper:has(.super-sidebar-toggled-manually) {
  animation: super-sidebar-collapse-clip 0.25s;
}

@keyframes super-sidebar-collapse-clip {
  from, to {
    clip-path: inset(0 0 0 -0.5rem);
  }
}
/**
 * Super sidebar
 */
.super-sidebar {
  display: flex;
  flex-direction: column;
  position: relative;
  top: 0;
  bottom: var(--system-footer-height);
  left: 0;
  height: 100%;
}
@media (min-width: 1200px){
  .super-sidebar{
    margin-left: calc(var(--gl-spacing-scale-3) * -1);
  }
}
.super-sidebar{
  background-color: var(--gl-application-chrome-background-color);
}
@media (min-width: 1200px){
  .super-sidebar{
    background-color: transparent;
  }
}
.super-sidebar {
  transform: translate3d(0, 0, 0);
  z-index: 600;
}
@media not all and (min-width: 1200px){
  @media (forced-colors: active){
    .super-sidebar{
      border-right-style: solid;
      border-right-color: var(--gl-border-color-default);
      border-right-width: 1px;
    }
  }
}
.super-sidebar:not(.super-sidebar-is-icon-only) {
  width: min(80%, 320px);
}
@media (min-width: 1200px) {
  .super-sidebar:not(.super-sidebar-is-icon-only) {
    width: 15rem;
  }
}
.super-sidebar:is(.super-sidebar-is-icon-only) > * .super-sidebar-nav-item:not(.nav-flyout-menu .super-sidebar-nav-item) {
  z-index: 802;
}
.super-sidebar .gl-nav-item.with-mouse-over-flyout {
  color: var(--gl-nav-item-foreground-color-hover);
  background-color: var(--gl-nav-item-background-color-hover);
}
.super-sidebar .gl-nav-item.selected.with-mouse-over-flyout {
  color: var(--gl-nav-item-selected-foreground-color-hover);
  background-color: var(--gl-nav-item-selected-background-color-hover);
}
.super-sidebar .nav-flyout-menu {
  z-index: 800;
}
@media (prefers-reduced-motion) {
  .super-sidebar .nav-flyout-menu {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.super-sidebar .nav-flyout-menu {
  transition: opacity 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.super-sidebar .nav-flyout-menu .gl-nav-item-label {
  width: max-content;
  overflow-wrap: anywhere;
}
@starting-style {
  .super-sidebar .nav-flyout-menu {
    opacity: 0;
  }
}
.super-sidebar.super-sidebar-loading {
  position: static;
  width: 0;
  transform: translate3d(-100%, 0, 0);
  transition: none;
}
@media (min-width: 1200px) {
  .super-sidebar.super-sidebar-loading {
    position: relative;
    left: 0;
    top: 0;
    transform: translate3d(0, 0, 0);
  }
  .super-sidebar.super-sidebar-loading:not(.super-sidebar-is-icon-only) {
    width: 15rem;
  }
}
.super-sidebar.super-sidebar-loading.super-sidebar-is-icon-only {
  width: 2rem;
}
@media (prefers-reduced-motion: no-preference) {
  .super-sidebar{
    transition-property: transform;
    transition-timing-function: ease;
    transition-duration: 200ms;
  }
}
.super-sidebar hr {
  border-color: var(--super-sidebar-hr-border-color);
}
.super-sidebar #trial-status-sidebar-widget:hover {
  text-decoration: none;
  color: var(--gl-color-neutral-0);
}

@media (max-width: 1199.98px) {
  .page-with-super-sidebar:not(.super-sidebar-has-css-transitions-blocked) .super-sidebar {
    position: fixed;
    border-top-right-radius: 1rem;
    border-bottom-right-radius: 1rem;
  }
}
/**
 * Overlay
 */
.super-sidebar-overlay {
  display: none;
}

/**
 * Page with super sidebar
 */
@media (prefers-reduced-motion: no-preference) {
  .page-with-super-sidebar{
    transition-property: padding;
    transition-timing-function: ease;
    transition-duration: 200ms;
  }
}
.page-with-super-sidebar:not(.page-with-super-sidebar-collapsed, .super-sidebar-has-css-transitions-blocked) .super-sidebar-overlay {
  display: block;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: var(--gl-background-color-overlay);
  z-index: 599;
}
@media (min-width: 1200px) {
  .page-with-super-sidebar:not(.page-with-super-sidebar-collapsed, .super-sidebar-has-css-transitions-blocked) .super-sidebar-overlay {
    display: none;
  }
  .page-with-super-sidebar .super-sidebar-toggle {
    display: none;
  }
}

.page-with-super-sidebar-collapsed .super-sidebar{
  margin: var(--gl-spacing-scale-0);
  transform: translate3d(-100%, 0, 0);
}
@media (min-width: 1200px) {
  .page-with-super-sidebar-collapsed {
    padding-left: 0;
  }
  .page-with-super-sidebar-collapsed .super-sidebar-toggle {
    display: block;
  }
}

/**
 * Feature Library modal
 */
.feature-library-modal.gl-modal .modal-dialog {
  align-items: flex-start;
  margin-top: 5vh;
  min-height: 0;
}
.feature-library-modal.gl-modal .modal-dialog .modal-content {
  min-height: auto;
  max-height: 90vh;
}
@media (min-width: 576px) {
  .feature-library-modal.gl-modal .modal-dialog {
    margin-top: 10vh;
  }
  .feature-library-modal.gl-modal .modal-dialog .modal-content {
    max-height: 80vh;
  }
}
.feature-library-modal .feature-library-scroll-area {
  min-height: min(20rem, 40vh);
}
.feature-library-modal .feature-library-scroll-bleed {
  margin-left: -16px;
  margin-right: -16px;
}
.feature-library-modal .feature-library-scroll-inset {
  padding-left: 16px;
  padding-right: 16px;
}
.feature-library-modal.gl-modal .modal-footer {
  padding-top: 0;
  padding-bottom: 0.5rem;
}
.feature-library-modal .feature-library-gemini-button.gl-button.gl-button {
  background-color: var(--gl-background-color-default);
  background-image: linear-gradient(90deg, color-mix(in srgb, var(--gl-color-purple-500) 12%, transparent), color-mix(in srgb, var(--gl-color-blue-500) 12%, transparent));
  border-color: color-mix(in srgb, var(--gl-color-purple-500) 60%, transparent);
}
.feature-library-modal .feature-library-gemini-button.gl-button.gl-button:hover, .feature-library-modal .feature-library-gemini-button.gl-button.gl-button:focus, .feature-library-modal .feature-library-gemini-button.gl-button.gl-button:active {
  background-image: linear-gradient(90deg, color-mix(in srgb, var(--gl-color-purple-500) 24%, transparent), color-mix(in srgb, var(--gl-color-blue-500) 24%, transparent));
}

/**
 * Global search modal
 */
.global-search-modal {
  padding: var(--performance-bar-height) 0.5rem 0;
}
.global-search-modal .modal-content{
  border-radius: 1rem !important;
}
.global-search-modal.gl-modal .modal-dialog {
  align-items: flex-start;
}
@media (min-width: 576px) {
  .global-search-modal {
    padding: var(--performance-bar-height) 1rem 0;
  }
}
.global-search-modal .vertical-align-normalization {
  margin-top: -0.5rem;
  margin-bottom: -0.5rem;
}
.global-search-modal .show-focus-layover:focus-visible .show-focus-layover-hint, .global-search-modal .show-focus-layover:focus-within .show-focus-layover-hint{
  opacity: var(--gl-opacity-10);
}
.global-search-modal .command-palette-px {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
.global-search-modal .gl-search-box-by-type-clear.btn-sm, .global-search-modal .btn-group-sm > .gl-search-box-by-type-clear.btn {
  padding: 0.5rem !important;
}
.global-search-modal .gl-search-box-by-type-input-borderless{
  border-radius: 0.75rem;
}
.global-search-modal .global-search-results {
  max-height: 30rem;
}
.global-search-modal .global-search-results .gl-new-dropdown-item{
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
}
.global-search-modal .global-search-results [id*=gl-disclosure-dropdown-group] {
  padding-left: 0.875rem;
  padding-right: 0.875rem;
}
.global-search-modal .global-search-results .gl-scroll-scrim {
  border-width: 0 !important;
}
.global-search-modal.gl-modal .modal-footer{
  background-color: var(--gl-background-color-strong);
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  padding: 0.875rem;
}
@media (prefers-reduced-motion: no-preference) {
  .global-search-modal {
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  .global-search-modal.show {
    opacity: 1;
    transition-duration: 0.2s;
  }
  .global-search-modal.show .modal-dialog {
    scale: 1;
    transition-duration: 0.2s;
  }
  .global-search-modal:not(.show) {
    opacity: 0;
    transition-duration: 0.1s;
  }
  .global-search-modal:not(.show) .modal-dialog {
    scale: 0.8;
    transition-duration: 0.1s;
  }
  @starting-style {
    .global-search-modal {
      opacity: 0;
    }
  }
  .global-search-modal .modal-dialog {
    transform-origin: top center;
    transform: none !important;
    transition-property: scale;
    transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
  }
  @starting-style {
    .global-search-modal .modal-dialog {
      scale: 0.8;
    }
  }
}

/**
 * Utilities
 */
.transition-opacity-on-hover--context .transition-opacity-on-hover--target{
  transition-property: opacity;
  transition-timing-function: ease;
  transition-duration: 100ms;
  transition-timing-function: linear;
}
.transition-opacity-on-hover--context .transition-opacity-on-hover--target:hover {
  transition-delay: 0.4s;
}
.transition-opacity-on-hover--context:hover .transition-opacity-on-hover--target {
  transition-delay: 0.4s;
}

@media (hover: hover) {
  .super-sidebar-category-toggle .gl-nav-item-chevron {
    transition: opacity 0.1s linear;
    opacity: 0;
  }
}
@media (hover: hover) and (prefers-reduced-motion) {
  .super-sidebar-category-toggle .gl-nav-item-chevron {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
@media (hover: hover) {
  .super-sidebar-category-toggle:hover .gl-nav-item-chevron, .super-sidebar-category-toggle:focus-visible .gl-nav-item-chevron {
    opacity: 1;
  }
}
.show-on-focus-or-hover--context .show-on-focus-or-hover--target {
  opacity: 0;
}
.show-on-focus-or-hover--context .show-on-focus-or-hover--target:hover, .show-on-focus-or-hover--context .show-on-focus-or-hover--target:focus-visible {
  opacity: 1;
}
.show-on-focus-or-hover--context:hover .show-on-focus-or-hover--target, .show-on-focus-or-hover--context:focus-within .show-on-focus-or-hover--target {
  opacity: 1;
}
.show-on-focus-or-hover--context .show-on-focus-or-hover--control:hover + .show-on-focus-or-hover--target, .show-on-focus-or-hover--context .show-on-focus-or-hover--control:focus-visible + .show-on-focus-or-hover--target {
  opacity: 1;
}

.hide-on-focus-or-hover--context .hide-on-focus-or-hover--target {
  opacity: 1;
}
.hide-on-focus-or-hover--context:hover .hide-on-focus-or-hover--target, .hide-on-focus-or-hover--context:focus-within .hide-on-focus-or-hover--target {
  opacity: 0;
}
.hide-on-focus-or-hover--context .hide-on-focus-or-hover--control:hover .hide-on-focus-or-hover--target, .hide-on-focus-or-hover--context .hide-on-focus-or-hover--control:focus-visible .hide-on-focus-or-hover--target {
  opacity: 0;
}

.super-sidebar-mix-blend-mode {
  mix-blend-mode: multiply;
}
.gl-dark .super-sidebar-mix-blend-mode {
  mix-blend-mode: screen;
}

.super-sidebar-org-switcher-dropdown .gl-new-dropdown-panel,
.super-sidebar-mr-menu-dropdown .gl-new-dropdown-panel,
.super-sidebar-new-menu-dropdown .gl-new-dropdown-panel,
.super-sidebar-user-dropdown .gl-new-dropdown-panel,
.super-sidebar-help-center-dropdown .gl-new-dropdown-panel,
.super-sidebar-settings-dropdown .gl-new-dropdown-panel{
  min-width: var(--gl-spacing-scale-28) !important;
  width: var(--gl-spacing-scale-28) !important;
}

.super-sidebar-settings-dropdown .gl-nav-item.selected::before{
  display: none;
}

.custom-gradient-progress .gl-progress {
  background: linear-gradient(90deg, #ffb177 0%, #936fff 100%);
}

@media (prefers-reduced-motion: no-preference) {
  .super-sidebar-animatable .nav-item-link-label,
  .super-sidebar-animatable .menu-section-button-label {
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
    transition-property: opacity, translate;
  }
  @starting-style {
    .super-sidebar-animatable .nav-item-link-label,
    .super-sidebar-animatable .menu-section-button-label {
      opacity: 0;
      translate: -30% 0;
    }
  }
  .super-sidebar-animatable .super-sidebar-context-header {
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
    transition-property: opacity, translate;
  }
  @starting-style {
    .super-sidebar-animatable .super-sidebar-context-header {
      opacity: 0;
      translate: 0 -30%;
    }
  }
  .super-sidebar-animatable .nav-item-link-badge {
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1);
    transition-property: opacity;
  }
  @starting-style {
    .super-sidebar-animatable .nav-item-link-badge {
      opacity: 0;
    }
  }
}
.feature-library-shimmer {
  --super-sidebar-shimmer-base-color: hsla(from var(--gl-color-blue-500) h s l / 32%);
  --super-sidebar-shimmer-peak-color: hsla(from var(--gl-color-blue-500) h s l / 8%);
  --super-sidebar-shimmer-border-color: hsla(from var(--gl-color-blue-500) h s l / 24%);
  position: relative;
}
.feature-library-shimmer .gl-nav-item-slot,
.feature-library-shimmer .gl-nav-item-label {
  position: relative;
  z-index: 1;
}
.feature-library-shimmer::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--gl-border-radius-lg);
  pointer-events: none;
  box-shadow: inset 0 0 0 2px var(--super-sidebar-shimmer-border-color);
}
@media (prefers-reduced-motion: no-preference) {
  .feature-library-shimmer::before {
    background-image: linear-gradient(90deg, var(--super-sidebar-shimmer-base-color), var(--super-sidebar-shimmer-peak-color), var(--super-sidebar-shimmer-base-color));
    background-size: 200% 100%;
    background-position: 50% 0;
    animation: super-sidebar-shimmer 2s linear 4, super-sidebar-shimmer-fade-out 1s ease-out 8s forwards;
  }
}

@keyframes super-sidebar-shimmer {
  from {
    background-position: 200% 0;
  }
  to {
    background-position: -200% 0;
  }
}
@keyframes super-sidebar-shimmer-fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.super-topbar{
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
}
@media (min-width: 992px){
  .super-topbar{
    padding-left: var(--gl-spacing-scale-4);
  }
}
.super-topbar {
  height: var(--top-bar-height);
}
.super-topbar .topbar-search-button-placeholder {
  font-weight: 320;
  line-height: 1.25;
}
.super-topbar .topbar-search-button{
  color: var(--gl-text-color-subtle) !important;
  border-color: var(--gl-color-alpha-dark-24) !important;
}
.super-topbar .topbar-search-button kbd{
  border-color: var(--gl-border-color-strong);
  font-weight: var(--gl-font-weight-semibold);
  color: var(--gl-text-color-subtle);
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.super-topbar .topbar-search-button kbd:where(.gl-dark *){
  border-color: var(--gl-border-color-transparent);
}
@media (forced-colors: active) {
  .super-topbar .topbar-search-button {
    border: 1px solid !important;
  }
}
.super-topbar .topbar-search-button:not(:hover):not(:focus-visible):not(:active):where(.gl-dark *){
  background-color: var(--gl-color-alpha-light-8) !important;
  border-color: var(--gl-color-alpha-light-16) !important;
}
.super-topbar .gl-button.topbar-signup-button{
  background-color: var(--gl-color-neutral-800);
  border-color: var(--gl-color-neutral-800);
}
.super-topbar .gl-button.topbar-signup-button:where(.gl-dark *){
  background-color: var(--gl-color-neutral-100);
  border-color: var(--gl-color-neutral-100);
}
.super-topbar .organization-switcher-button .gl-button-text {
  display: flex;
  align-items: center;
  gap: var(--gl-spacing-scale-2);
}

.table-holder {
  margin: 0;
  overflow: auto;
}

table.table .thead-white th {
  background-color: #fff;
}
.md table:not(.code) .dropdown-menu a, table.table:not(.gl-table) .dropdown-menu a {
  text-decoration: none;
}
.md table:not(.code) .success,
.md table:not(.code) .warning,
.md table:not(.code) .danger,
.md table:not(.code) .info, table.table:not(.gl-table) .success,
table.table:not(.gl-table) .warning,
table.table:not(.gl-table) .danger,
table.table:not(.gl-table) .info {
  color: #fff;
}
.md table:not(.code) .success a:not(.btn),
.md table:not(.code) .warning a:not(.btn),
.md table:not(.code) .danger a:not(.btn),
.md table:not(.code) .info a:not(.btn), table.table:not(.gl-table) .success a:not(.btn),
table.table:not(.gl-table) .warning a:not(.btn),
table.table:not(.gl-table) .danger a:not(.btn),
table.table:not(.gl-table) .info a:not(.btn) {
  text-decoration: underline;
  color: #fff;
}
.md table:not(.code) tr td,
.md table:not(.code) tr th, table.table:not(.gl-table) tr td,
table.table:not(.gl-table) tr th {
  padding: 10px 16px;
  line-height: var(--gl-line-height-20);
  vertical-align: top;
}
.md table:not(.code) thead tr th, table.table:not(.gl-table) thead tr th{
  color: var(--gl-text-color-strong);
  border-bottom: 0;
}
.md table:not(.code) thead tr th.wide, table.table:not(.gl-table) thead tr th.wide {
  width: 55%;
}
.md table:not(.code) .thead-white th, table.table:not(.gl-table) .thead-white th{
  color: var(--gl-text-color-subtle);
  border-top: 0;
}

.top-area + .content-list th {
  border-top: 0;
}

.gl-table-no-top-border th {
  border-top: 0;
}

.md table:not(:has(tbody)) thead tr{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}

.gitlab-tabs{
  background-color: var(--gl-background-color-subtle);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  flex-wrap: nowrap;
}
.gitlab-tabs li {
  width: 50%;
}
.gitlab-tabs li:not(:last-child){
  border-right-style: solid;
  border-right-color: var(--gl-border-color-default);
  border-right-width: 1px;
}
.gitlab-tabs li.active {
  background: #fff;
}
.gitlab-tabs li a {
  width: 100%;
  text-align: center;
}

.gitlab-tab-content{
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-top: 0;
  margin-bottom: 16px;
}
.gitlab-tab-content .tab-pane {
  padding: 16px;
}

/**
 * Apply Markup (Markdown/AsciiDoc) typography
 *
 */
.md {
  position: relative;
  z-index: 1;
  color: var(--gl-text-color-default);
  word-wrap: break-word;
}
.md [dir=auto] {
  text-align: initial;
}
.md *:first-child{
  margin-top: var(--gl-spacing-scale-0);
}
.md > :last-child{
  margin-bottom: var(--gl-spacing-scale-0);
}
.md p{
  color: var(--gl-text-color-default);
  margin: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-5);
}
.md p > code {
  font-weight: inherit;
  overflow-wrap: break-word;
  white-space: break-spaces;
}
.md .media-container {
  display: inline-flex;
  flex-direction: column;
  margin-bottom: var(--gl-spacing-scale-2);
}
.md .media-container video {
  max-width: 100%;
  height: auto;
}
.md .media-container.iframe-container {
  display: flex;
  align-items: flex-start;
}
.md img {
  max-width: 100%;
  vertical-align: baseline;
}
.md img[width][height] {
  object-fit: contain;
  object-position: top;
  height: auto;
}
.md img.lazy {
  min-width: 200px;
  min-height: 100px;
  background-color: var(--gl-background-color-disabled);
}
.md {
  /* stylelint-disable gitlab/no-js-class */
}
.md img.js-lazy-loaded,
.md img.emoji {
  /* stylelint-enable gitlab/no-js-class */
  min-width: inherit;
  min-height: inherit;
  background-color: inherit;
}
.md img.md-img-checkerboard {
  background-color: var(--gl-background-color-default);
  background-image: linear-gradient(45deg, var(--gl-background-color-strong) 25%, transparent 25%, transparent 75%, var(--gl-background-color-strong) 75%, var(--gl-background-color-strong) 100%), linear-gradient(45deg, var(--gl-background-color-strong) 25%, transparent 25%, transparent 75%, var(--gl-background-color-strong) 75%, var(--gl-background-color-strong) 100%);
  background-size: 10px 10px;
  background-position: 0 0, 5px 5px;
}
.md details{
  margin-bottom: var(--gl-spacing-scale-5);
}
.md details > *:not(summary){
  margin-left: var(--gl-spacing-scale-5);
}
.md details:not(:has(summary)):not([open]){
  font-weight: var(--gl-font-weight-bold);
}
.md details[open] summary{
  margin-bottom: var(--gl-spacing-scale-5);
}
.md details summary{
  font-weight: var(--gl-font-weight-bold);
}
.md summary > *{
  display: inline-block;
  margin-bottom: var(--gl-spacing-scale-0);
}
.md summary > p, .md summary > .markdown-code-block {
  max-width: calc(100% - 1rem);
}
.md code{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
  white-space: pre-wrap;
  word-wrap: break-word;
  overflow-wrap: break-word;
  word-break: keep-all;
}
.md mark {
  background-color: var(--orange-100);
  box-shadow: 0 0 0 0.125rem var(--orange-100);
  color: var(--gl-text-color-default);
  padding: 0;
  position: relative;
  z-index: -1;
}
.md td:has(mark), .md th:has(mark) {
  isolation: isolate;
}
.md h1{
  font-weight: var(--gl-heading-1-fixed-font-weight);
  margin-top: var(--gl-heading-1-fixed-margin-top);
  font-size: var(--gl-heading-1-fixed-font-size);
  letter-spacing: var(--gl-heading-1-fixed-letter-spacing);
  line-height: var(--gl-heading-1-fixed-line-height);
  margin-bottom: var(--gl-heading-1-fixed-margin-bottom);
  color: var(--gl-heading-1-fixed-color);
  margin-top: var(--gl-spacing-scale-7);
}
.md h2:not(:where(.crud-header) h2){
  font-weight: var(--gl-heading-2-fixed-font-weight);
  margin-top: var(--gl-heading-2-fixed-margin-top);
  font-size: var(--gl-heading-2-fixed-font-size);
  letter-spacing: var(--gl-heading-2-fixed-letter-spacing);
  line-height: var(--gl-heading-2-fixed-line-height);
  margin-bottom: var(--gl-heading-2-fixed-margin-bottom);
  color: var(--gl-heading-2-fixed-color);
  margin-top: var(--gl-spacing-scale-6);
}
.md h3{
  font-weight: var(--gl-heading-3-fixed-font-weight);
  margin-top: var(--gl-heading-3-fixed-margin-top);
  font-size: var(--gl-heading-3-fixed-font-size);
  letter-spacing: var(--gl-heading-3-fixed-letter-spacing);
  line-height: var(--gl-heading-3-fixed-line-height);
  margin-bottom: var(--gl-heading-3-fixed-margin-bottom);
  color: var(--gl-heading-3-fixed-color);
  margin-top: var(--gl-spacing-scale-6);
}
.md h4{
  font-weight: var(--gl-heading-4-fixed-font-weight);
  margin-top: var(--gl-heading-4-fixed-margin-top);
  font-size: var(--gl-heading-4-fixed-font-size);
  letter-spacing: var(--gl-heading-4-fixed-letter-spacing);
  line-height: var(--gl-heading-4-fixed-line-height);
  margin-bottom: var(--gl-heading-4-fixed-margin-bottom);
  color: var(--gl-heading-4-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.md h5{
  font-weight: var(--gl-heading-5-fixed-font-weight);
  margin-top: var(--gl-heading-5-fixed-margin-top);
  font-size: var(--gl-heading-5-fixed-font-size);
  letter-spacing: var(--gl-heading-5-fixed-letter-spacing);
  line-height: var(--gl-heading-5-fixed-line-height);
  margin-bottom: var(--gl-heading-5-fixed-margin-bottom);
  color: var(--gl-heading-5-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.md h6{
  font-weight: var(--gl-heading-6-fixed-font-weight);
  margin-top: var(--gl-heading-6-fixed-margin-top);
  font-size: var(--gl-heading-6-fixed-font-size);
  letter-spacing: var(--gl-heading-6-fixed-letter-spacing);
  line-height: var(--gl-heading-6-fixed-line-height);
  margin-bottom: var(--gl-heading-6-fixed-margin-bottom);
  color: var(--gl-heading-6-fixed-color);
  margin-top: var(--gl-spacing-scale-5);
}
.md blockquote,
.md .blockquote{
  font-size: inherit;
  color: var(--gl-text-color-subtle);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-5);
  margin-top: var(--gl-spacing-scale-3);
  margin-bottom: var(--gl-spacing-scale-3);
  margin-left: var(--gl-spacing-scale-0);
  margin-right: var(--gl-spacing-scale-0);
  border-left-style: solid;
  border-left-color: var(--gl-border-color-default);
  border-left-width: 4px;
  border-color: var(--gl-border-color-strong);
}
.md blockquote:dir(rtl),
.md .blockquote:dir(rtl){
  border-left-width: 0px;
  border-right-style: solid;
  border-right-color: var(--gl-border-color-default);
  border-right-width: 4px;
}
.md blockquote p,
.md .blockquote p{
  color: inherit;
  line-height: 1.5;
}
.md blockquote p:last-child,
.md .blockquote p:last-child {
  margin: 0;
}
.md blockquote > ul,
.md .blockquote > ul {
  list-style-type: disc;
}
.md blockquote > ul ul,
.md .blockquote > ul ul {
  list-style-type: circle;
}
.md blockquote > ul ul ul,
.md .blockquote > ul ul ul {
  list-style-type: square;
}
.md blockquote > ul:last-child, .md blockquote > ol:last-child,
.md .blockquote > ul:last-child,
.md .blockquote > ol:last-child{
  margin-bottom: var(--gl-spacing-scale-0);
}
.md hr{
  border-color: var(--gl-border-color-default);
  margin: 10px 0;
}
@keyframes gl-table-shadow {
  0%, 95% {
    box-shadow: inset -16px 0 14px -14px var(--gl-shadow-color-default);
  }
  100% {
    box-shadow: inset 0 0 0 0 var(--gl-shadow-color-default);
  }
}
@keyframes gl-table-shadow-overlay-x {
  0%, 95% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes gl-table-shadow-overlay-y {
  0%, 95% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.md .gl-table-shadow-overlay {
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  border: 1px solid var(--gl-border-color-default);
  border-radius: 0.25rem;
  overflow: hidden;
  timeline-scope: --gl-table-scroll-x, --gl-table-scroll-y;
}
.md .gl-table-shadow-overlay table:not(.code):dir(ltr) > thead > tr > th:first-child,
.md .gl-table-shadow-overlay table:not(.code):dir(ltr) > tbody > tr > td:first-child,
.md .gl-table-shadow-overlay table:not(.code):dir(ltr) > tbody > tr > th:first-child {
  border-left-width: 0;
}
.md .gl-table-shadow-overlay table:not(.code):dir(ltr) > thead > tr > th:last-child,
.md .gl-table-shadow-overlay table:not(.code):dir(ltr) > tbody > tr > td:last-child,
.md .gl-table-shadow-overlay table:not(.code):dir(ltr) > tbody > tr > th:last-child {
  border-right-width: 0;
}
.md .gl-table-shadow-overlay table:not(.code):dir(rtl) > thead > tr > th:first-child,
.md .gl-table-shadow-overlay table:not(.code):dir(rtl) > tbody > tr > td:first-child,
.md .gl-table-shadow-overlay table:not(.code):dir(rtl) > tbody > tr > th:first-child {
  border-right-width: 0;
}
.md .gl-table-shadow-overlay table:not(.code):dir(rtl) > thead > tr > th:last-child,
.md .gl-table-shadow-overlay table:not(.code):dir(rtl) > tbody > tr > td:last-child,
.md .gl-table-shadow-overlay table:not(.code):dir(rtl) > tbody > tr > th:last-child {
  border-left-width: 0;
}
.md .gl-table-shadow-overlay table:not(.code) > thead:first-of-type > tr:first-child > th {
  border-top: 0;
}
.md .gl-table-shadow-overlay table:not(.code) > tbody > tr:last-child > td {
  border-bottom: 0;
}
.md .gl-table-shadow-overlay::before, .md .gl-table-shadow-overlay::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 2;
  opacity: 0;
}
.md .gl-table-shadow-overlay::before {
  inset-block: 0 0;
  inset-inline-end: 0;
  width: 16px;
  background: linear-gradient(to left, var(--gl-shadow-color-default), transparent);
  animation: gl-table-shadow-overlay-x cubic-bezier(0.22, 0.61, 0.36, 1);
  animation-timeline: --gl-table-scroll-x;
}
.md .gl-table-shadow-overlay:dir(rtl) {
  margin-left: auto;
}
.md .gl-table-shadow-overlay:dir(rtl)::before {
  background: linear-gradient(to right, var(--gl-shadow-color-default), transparent);
}
.md .gl-table-shadow-overlay::after {
  inset-inline: 0 0;
  inset-block-end: 0;
  height: 16px;
  background: linear-gradient(to top, var(--gl-shadow-color-default), transparent);
  animation: gl-table-shadow-overlay-y cubic-bezier(0.22, 0.61, 0.36, 1);
  animation-timeline: --gl-table-scroll-y;
}
.md .gl-table-shadow-overlay > [data-sticky-header] {
  scroll-timeline: --gl-table-scroll-x inline, --gl-table-scroll-y block;
}
.md .gl-table-shadow:not(:has(+ .glql-load-more), :has(+ .glql-load-more) > *) {
  clip-path: inset(0 round 0 0 1px 1px);
}
.md .gl-table-shadow {
  overflow-x: auto;
  overflow-y: hidden;
  animation: gl-table-shadow cubic-bezier(0.22, 0.61, 0.36, 1);
  animation-timeline: scroll(self inline);
  background-color: var(--gl-color-neutral-0);
}
.md .gl-table-shadow > table:not(.code) {
  display: table;
  overflow-x: initial;
  mix-blend-mode: multiply;
  min-width: stretch;
  /* stylelint-disable-next-line value-no-vendor-prefix */
  min-width: -webkit-fill-available;
  /* stylelint-disable-next-line value-no-vendor-prefix */
  min-width: -moz-available;
}
.md table:not(.code){
  color: var(--gl-text-color-default);
  border: 0;
  width: auto;
}
.md table:not(.code):not(.gl-table-shadow > *, [data-sticky-header] > *) {
  display: block;
  margin: 16px 0;
  overflow-x: auto;
}
.md table:not(.code) td,
.md table:not(.code) th{
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
}
.md table:not(.code) tr th{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.md table:not(.code) tr td[align=right] {
  font-variant-numeric: tabular-nums;
}
.md table:not(.code).grid-none > thead > tr > th {
  border-bottom-width: 0;
  border-right-width: 0;
  border-left-width: 0;
}
.md table:not(.code).grid-none > thead > tr > th:first-child {
  border-left-width: 1px;
}
.md table:not(.code).grid-none > thead > tr > th:last-child {
  border-right-width: 1px;
}
.md table:not(.code).grid-none > tbody > tr > td {
  border-width: 0;
}
.md table:not(.code).grid-none > tbody > tr > td:first-child {
  border-left-width: 1px;
}
.md table:not(.code).grid-none > tbody > tr > td:last-child {
  border-right-width: 1px;
}
.md table:not(.code).grid-none > tbody > tr:last-child > td {
  border-bottom-width: 1px;
}
.md table:not(.code).grid-rows > thead > tr > th,
.md table:not(.code).grid-rows > tbody > tr > td {
  border-right-width: 0;
  border-left-width: 0;
}
.md table:not(.code).grid-rows > thead > tr > th:first-child {
  border-left-width: 1px;
}
.md table:not(.code).grid-rows > thead > tr > th:last-child {
  border-right-width: 1px;
}
.md table:not(.code).grid-rows > tbody > tr > td {
  border-left-width: 0;
  border-right-width: 0;
}
.md table:not(.code).grid-rows > tbody > tr > td:first-child {
  border-left-width: 1px;
}
.md table:not(.code).grid-rows > tbody > tr > td:last-child {
  border-right-width: 1px;
}
.md table:not(.code).grid-cols > thead > tr > th {
  border-bottom-width: 0;
}
.md table:not(.code).grid-cols > tbody > tr > td {
  border-top-width: 0;
  border-bottom-width: 0;
}
.md table:not(.code).grid-cols > tbody > tr:last-child > td {
  border-bottom-width: 1px;
}
.md table:not(.code).frame-sides > thead > tr > th {
  border-top-width: 0;
}
.md table:not(.code).frame-sides > tbody > tr:last-child > td {
  border-bottom-width: 0;
}
.md table:not(.code).frame-topbot > thead > tr > th:first-child,
.md table:not(.code).frame-topbot > tbody > tr > td:first-child, .md table:not(.code).frame-ends > thead > tr > th:first-child,
.md table:not(.code).frame-ends > tbody > tr > td:first-child {
  border-left-width: 0;
}
.md table:not(.code).frame-topbot > thead > tr > th:last-child,
.md table:not(.code).frame-topbot > tbody > tr > td:last-child, .md table:not(.code).frame-ends > thead > tr > th:last-child,
.md table:not(.code).frame-ends > tbody > tr > td:last-child {
  border-right-width: 0;
}
.md table:not(.code).frame-none > thead > tr > th {
  border-top-width: 0;
}
.md table:not(.code).frame-none > tbody > tr:last-child > td {
  border-bottom-width: 0;
}
.md table:not(.code).frame-none > thead > tr > th:first-child,
.md table:not(.code).frame-none > tbody > tr > td:first-child {
  border-left-width: 0;
}
.md table:not(.code).frame-none > thead > tr > th:last-child,
.md table:not(.code).frame-none > tbody > tr > td:last-child {
  border-right-width: 0;
}
.md table:not(.code).stripes-all tr, .md table:not(.code).stripes-odd tr:nth-of-type(odd), .md table:not(.code).stripes-even tr:nth-of-type(even), .md table:not(.code).stripes-hover tr:hover{
  background-color: var(--gl-background-color-subtle);
}
.md [data-sticky-header] > table:not(.code) > thead:first-of-type > tr:first-child > th,
.md [data-sticky-header] > table:not(.code) > tbody:first-of-type > tr:first-child > th{
  position: sticky;
  top: var(--gl-spacing-scale-0);
  background-color: var(--gl-background-color-default);
  z-index: var(--gl-zindex-1);
  border-top: 0;
  border-bottom: 0;
  box-shadow: inset 0 -1px 0 var(--gl-border-color-default);
}
.md table:dir(rtl) th {
  text-align: right;
}
.md pre{
  margin-bottom: var(--gl-spacing-scale-5);
  line-height: 1.6em;
  overflow-x: auto;
  border-radius: .25rem;
}
.md pre code {
  white-space: pre;
  word-wrap: normal;
  overflow-wrap: normal;
}
.md pre.plain-readme {
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  font-size: 14px;
}
.md dd {
  margin-left: 16px;
}
.md ul,
.md ol {
  padding: 0;
  margin: var(--gl-spacing-scale-0);
  margin-bottom: var(--gl-spacing-scale-5);
}
.md ul ul,
.md ul ol,
.md ol ul,
.md ol ol{
  margin-bottom: var(--gl-spacing-scale-0);
}
.md ul p ~ ol,
.md ul p ~ ul,
.md ol p ~ ol,
.md ol p ~ ul{
  margin-bottom: var(--gl-spacing-scale-5);
}
.md ul:dir(rtl),
.md ol:dir(rtl) {
  margin: 3px 28px 3px 0 !important;
}
.md > ul {
  list-style-type: disc;
}
.md > ul ul {
  list-style-type: circle;
}
.md > ul ul ul {
  list-style-type: square;
}
.md ul.checklist,
.md ul.none,
.md ol.none,
.md ul.no-bullet,
.md ol.no-bullet,
.md ol.unnumbered,
.md ul.unstyled,
.md ol.unstyled {
  list-style-type: none;
}
.md ul.checklist li,
.md ul.none li,
.md ol.none li,
.md ul.no-bullet li,
.md ol.no-bullet li,
.md ol.unnumbered li,
.md ul.unstyled li,
.md ol.unstyled li {
  margin-left: 0;
}
.md li {
  line-height: 1.6em;
  margin-left: 25px;
  padding-left: 3px;
  /* Normalize the bullet position on webkit. */
  /* stylelint-disable-next-line media-feature-name-no-vendor-prefix */
}
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .md li {
    margin-left: 28px;
    padding-left: 0;
  }
}
.md ul.task-list > li.task-list-item,
.md ol.task-list > li.task-list-item {
  position: relative;
  min-height: 22px;
  padding-inline-start: 32px;
}
.md ul.task-list > li.task-list-item > p > input.task-list-item-checkbox,
.md ul.task-list > li.task-list-item > input.task-list-item-checkbox,
.md ol.task-list > li.task-list-item > p > input.task-list-item-checkbox,
.md ol.task-list > li.task-list-item > input.task-list-item-checkbox {
  position: absolute;
  inset-inline-start: 8px;
  inset-block-start: 3px;
}
.md ul.task-list > li.task-list-item {
  list-style-type: none;
  margin-inline-start: 0 !important;
}
.md ul[data-type=taskList] input[type=checkbox],
.md ul.task-list .task-list-item-checkbox,
.md ol[data-type=taskList] input[type=checkbox],
.md ol.task-list .task-list-item-checkbox {
  all: unset;
  display: block;
  width: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
  cursor: pointer;
  box-sizing: border-box;
  border-radius: .25rem;
}
.md ul[data-type=taskList] input[type=checkbox]:focus-visible,
.md ul.task-list .task-list-item-checkbox:focus-visible,
.md ol[data-type=taskList] input[type=checkbox]:focus-visible,
.md ol.task-list .task-list-item-checkbox:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.md ul[data-type=taskList] input[type=checkbox],
.md ul.task-list .task-list-item-checkbox,
.md ol[data-type=taskList] input[type=checkbox],
.md ol.task-list .task-list-item-checkbox {
  background-color: var(--gl-control-background-color-default);
  border: 1px solid var(--gl-control-border-color-default);
}
.md ul[data-type=taskList] input[type=checkbox]::before,
.md ul.task-list .task-list-item-checkbox::before,
.md ol[data-type=taskList] input[type=checkbox]::before,
.md ol.task-list .task-list-item-checkbox::before {
  content: "";
  margin-top: calc(-0.25rem - 1px);
  margin-left: calc(-0.25rem - 1px);
  position: absolute;
  z-index: var(--gl-zindex-1);
  width: var(--gl-spacing-scale-6);
  height: var(--gl-spacing-scale-6);
  background-color: transparent;
}
.md ul[data-type=taskList] input[type=checkbox]:not(:disabled):hover,
.md ul.task-list .task-list-item-checkbox:not(:disabled):hover,
.md ol[data-type=taskList] input[type=checkbox]:not(:disabled):hover,
.md ol.task-list .task-list-item-checkbox:not(:disabled):hover {
  border-color: var(--gl-control-border-color-hover);
}
.md ul[data-type=taskList] input[type=checkbox]:not(:disabled):focus-visible,
.md ul.task-list .task-list-item-checkbox:not(:disabled):focus-visible,
.md ol[data-type=taskList] input[type=checkbox]:not(:disabled):focus-visible,
.md ol.task-list .task-list-item-checkbox:not(:disabled):focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
  border-color: var(--gl-control-border-color-focus);
}
.md ul[data-type=taskList] input[type=checkbox]:checked,
.md ul.task-list .task-list-item-checkbox:checked,
.md ol[data-type=taskList] input[type=checkbox]:checked,
.md ol.task-list .task-list-item-checkbox:checked {
  background-color: var(--gl-control-background-color-selected-default);
  border-color: var(--gl-control-border-color-selected-default);
}
.md ul[data-type=taskList] input[type=checkbox]:checked::after,
.md ul.task-list .task-list-item-checkbox:checked::after,
.md ol[data-type=taskList] input[type=checkbox]:checked::after,
.md ol.task-list .task-list-item-checkbox:checked::after {
  content: "";
  position: absolute;
  z-index: var(--gl-zindex-2);
  width: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
  margin-top: -1px;
  margin-left: -1px;
  border-radius: .25rem;
  mask: url('data:image/svg+xml,%3Csvg width="10" height="8" viewBox="0 0 10 8" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M0.75 4.76289L3.15312 7.24678L9.25 1.1499" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/%3E%3C/svg%3E%0A') center center no-repeat;
  background-color: var(--gl-control-indicator-color-selected);
}
@media (forced-colors: active) {
  .md ul[data-type=taskList] input[type=checkbox]:checked,
  .md ul.task-list .task-list-item-checkbox:checked,
  .md ol[data-type=taskList] input[type=checkbox]:checked,
  .md ol.task-list .task-list-item-checkbox:checked {
    background-color: LinkText;
    border-color: LinkText;
  }
}
.md ul[data-type=taskList] input[type=checkbox]:not(:disabled):checked:hover,
.md ul.task-list .task-list-item-checkbox:not(:disabled):checked:hover,
.md ol[data-type=taskList] input[type=checkbox]:not(:disabled):checked:hover,
.md ol.task-list .task-list-item-checkbox:not(:disabled):checked:hover {
  background-color: var(--gl-control-background-color-selected-hover);
  border-color: var(--gl-control-border-color-selected-hover);
}
.md ul[data-type=taskList] input[type=checkbox]:not(:disabled):checked:focus-visible,
.md ul.task-list .task-list-item-checkbox:not(:disabled):checked:focus-visible,
.md ol[data-type=taskList] input[type=checkbox]:not(:disabled):checked:focus-visible,
.md ol.task-list .task-list-item-checkbox:not(:disabled):checked:focus-visible {
  background-color: var(--gl-control-background-color-selected-focus);
  border-color: var(--gl-control-border-color-selected-focus);
}
.md ul[data-type=taskList] input[type=checkbox]:disabled,
.md ul.task-list .task-list-item-checkbox:disabled,
.md ol[data-type=taskList] input[type=checkbox]:disabled,
.md ol.task-list .task-list-item-checkbox:disabled {
  background-color: var(--gl-control-background-color-disabled);
  border-color: var(--gl-control-border-color-disabled);
  cursor: not-allowed;
  color: var(--gl-text-color-disabled);
}
.md ul[data-type=taskList] input[type=checkbox]:disabled:checked, .md ul[data-type=taskList] input[type=checkbox][data-indeterminate]:disabled,
.md ul.task-list .task-list-item-checkbox:disabled:checked,
.md ul.task-list .task-list-item-checkbox[data-indeterminate]:disabled,
.md ol[data-type=taskList] input[type=checkbox]:disabled:checked,
.md ol[data-type=taskList] input[type=checkbox][data-indeterminate]:disabled,
.md ol.task-list .task-list-item-checkbox:disabled:checked,
.md ol.task-list .task-list-item-checkbox[data-indeterminate]:disabled {
  background-color: var(--gl-control-background-color-selected-disabled);
  border-color: var(--gl-control-border-color-selected-disabled);
}
.md ul[data-type=taskList] input[type=checkbox]:disabled:checked::after, .md ul[data-type=taskList] input[type=checkbox][data-indeterminate]:disabled::after,
.md ul.task-list .task-list-item-checkbox:disabled:checked::after,
.md ul.task-list .task-list-item-checkbox[data-indeterminate]:disabled::after,
.md ol[data-type=taskList] input[type=checkbox]:disabled:checked::after,
.md ol[data-type=taskList] input[type=checkbox][data-indeterminate]:disabled::after,
.md ol.task-list .task-list-item-checkbox:disabled:checked::after,
.md ol.task-list .task-list-item-checkbox[data-indeterminate]:disabled::after {
  background-color: var(--gl-control-indicator-color-disabled);
}
.md ul[data-type=taskList] input[type=checkbox][data-indeterminate]:disabled::after,
.md ul.task-list .task-list-item-checkbox[data-indeterminate]:disabled::after,
.md ol[data-type=taskList] input[type=checkbox][data-indeterminate]:disabled::after,
.md ol.task-list .task-list-item-checkbox[data-indeterminate]:disabled::after {
  content: "";
  position: absolute;
  z-index: var(--gl-zindex-2);
  width: var(--gl-spacing-scale-5);
  height: var(--gl-spacing-scale-5);
  margin-top: -1px;
  margin-left: -1px;
  border-radius: .25rem;
  mask: url('data:image/svg+xml,%3Csvg width="10" height="2" viewBox="0 0 10 2" fill="none" xmlns="http://www.w3.org/2000/svg"%3E%3Cpath d="M1.75 1H8.25" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/%3E%3C/svg%3E%0A') center center no-repeat;
  background-color: var(--gl-control-indicator-color-disabled);
}
.md li.inapplicable s.inapplicable{
  color: var(--gl-text-color-disabled);
}
.md li.inapplicable > p,
.md li.inapplicable > div {
  text-decoration: line-through;
  color: var(--gl-text-color-disabled);
}
.md li.inapplicable .drag-icon{
  fill: var(--gl-icon-color-default);
}
.md li.inapplicable .gl-label, .md li.inapplicable kbd {
  text-decoration: line-through;
  text-decoration-color: var(--gl-text-color-disabled);
  vertical-align: text-bottom;
}
.md a.gfm-gollum-wiki-page::before {
  margin-right: 4px;
  vertical-align: -2px;
}
.gl-dark .md a.gfm-gollum-wiki-page::before {
  filter: invert(0.8) hue-rotate(180deg);
}
.md a.gfm-gollum-wiki-page::before {
  content: url(/assets/sprite_icons/document-e20dd2c4927a87c676cf2b2735dc59c3ca150c355acb7833155a51c536f83129.svg);
}
.md a.with-attachment-icon::before,
.md a[href*="/uploads/"]::before,
.md a[href*="storage.googleapis.com/google-code-attachments/"]::before {
  margin-right: 4px;
  vertical-align: -2px;
}
.gl-dark .md a.with-attachment-icon::before,
.gl-dark .md a[href*="/uploads/"]::before,
.gl-dark .md a[href*="storage.googleapis.com/google-code-attachments/"]::before {
  filter: invert(0.8) hue-rotate(180deg);
}
.md a.with-attachment-icon::before,
.md a[href*="/uploads/"]::before,
.md a[href*="storage.googleapis.com/google-code-attachments/"]::before {
  content: url(/assets/sprite_icons/paperclip-dfd637e91726c6d7fa3c12cafd23cf02432be09816527844b5c57045b67cc3ca.svg);
}
.md a[href*="/wikis/"].no-attachment-icon::before,
.md a[href*="/uploads/"].no-attachment-icon::before,
.md a[href*="storage.googleapis.com/google-code-attachments/"].no-attachment-icon::before {
  display: none;
}
.md {
  /* Link to current header. */
}
.md h1 a.anchor:not([aria-hidden=true])::after,
.md h2 a.anchor:not([aria-hidden=true])::after,
.md h3 a.anchor:not([aria-hidden=true])::after,
.md h4 a.anchor:not([aria-hidden=true])::after,
.md h5 a.anchor:not([aria-hidden=true])::after,
.md h6 a.anchor:not([aria-hidden=true])::after{
  display: inline-block;
  background-size: cover;
}
.gl-dark .md h1 a.anchor:not([aria-hidden=true])::after,
.gl-dark .md h2 a.anchor:not([aria-hidden=true])::after,
.gl-dark .md h3 a.anchor:not([aria-hidden=true])::after,
.gl-dark .md h4 a.anchor:not([aria-hidden=true])::after,
.gl-dark .md h5 a.anchor:not([aria-hidden=true])::after,
.gl-dark .md h6 a.anchor:not([aria-hidden=true])::after {
  filter: invert(0.8) hue-rotate(180deg);
}
.md h1 a.anchor:not([aria-hidden=true])::after,
.md h2 a.anchor:not([aria-hidden=true])::after,
.md h3 a.anchor:not([aria-hidden=true])::after,
.md h4 a.anchor:not([aria-hidden=true])::after,
.md h5 a.anchor:not([aria-hidden=true])::after,
.md h6 a.anchor:not([aria-hidden=true])::after {
  content: "";
  background-image: url(/assets/icon_anchor-297aa9b0225eff3d6d0da74ce042a0ed5575b92aa66b7109a5e060a795b42e36.svg);
  height: 0.9em;
  width: 0.9em;
  margin-inline-start: 0.2em;
  visibility: hidden;
}
.md h1 a.anchor:is([aria-hidden=true]),
.md h2 a.anchor:is([aria-hidden=true]),
.md h3 a.anchor:is([aria-hidden=true]),
.md h4 a.anchor:is([aria-hidden=true]),
.md h5 a.anchor:is([aria-hidden=true]),
.md h6 a.anchor:is([aria-hidden=true]) {
  margin-left: -20px;
  text-decoration-line: none;
  outline: 2px solid transparent;
  outline-offset: 2px;
  position: absolute;
  width: 20px;
}
.gl-dark .md h1 a.anchor:is([aria-hidden=true])::after,
.gl-dark .md h2 a.anchor:is([aria-hidden=true])::after,
.gl-dark .md h3 a.anchor:is([aria-hidden=true])::after,
.gl-dark .md h4 a.anchor:is([aria-hidden=true])::after,
.gl-dark .md h5 a.anchor:is([aria-hidden=true])::after,
.gl-dark .md h6 a.anchor:is([aria-hidden=true])::after {
  filter: invert(0.8) hue-rotate(180deg);
}
.md h1 a.anchor:is([aria-hidden=true])::after,
.md h2 a.anchor:is([aria-hidden=true])::after,
.md h3 a.anchor:is([aria-hidden=true])::after,
.md h4 a.anchor:is([aria-hidden=true])::after,
.md h5 a.anchor:is([aria-hidden=true])::after,
.md h6 a.anchor:is([aria-hidden=true])::after {
  content: url(/assets/icon_anchor-297aa9b0225eff3d6d0da74ce042a0ed5575b92aa66b7109a5e060a795b42e36.svg);
  visibility: hidden;
}
.md h1:hover > a.anchor::after,
.md h2:hover > a.anchor::after,
.md h3:hover > a.anchor::after,
.md h4:hover > a.anchor::after,
.md h5:hover > a.anchor::after,
.md h6:hover > a.anchor::after {
  visibility: visible;
}
.md h1 > a.anchor:focus-visible::after,
.md h2 > a.anchor:focus-visible::after,
.md h3 > a.anchor:focus-visible::after,
.md h4 > a.anchor:focus-visible::after,
.md h5 > a.anchor:focus-visible::after,
.md h6 > a.anchor:focus-visible::after {
  visibility: visible;
  outline: auto;
}
.md .big {
  font-size: larger;
}
.md figcaption,
.md .small {
  font-size: smaller;
}
.md .underline {
  text-decoration: underline;
}
.md .overline {
  text-decoration: overline;
}
.md .line-through {
  text-decoration: line-through;
}
.md .fa {
  display: inline-block;
  font-style: normal;
  font-size: 14px;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.md .admonitionblock td.icon [class^="fa icon-"] {
  font-size: 2em;
}
.md .admonitionblock td.icon .icon-warning::before {
  content: "⚠";
}
.md .admonitionblock td.icon .icon-important::before {
  content: "❗";
}
.md .admonitionblock td.icon .icon-tip::before {
  content: "💡";
}
.md .admonitionblock td.icon .icon-note::before {
  content: "📌";
}
.md .admonitionblock td.icon .icon-caution::before {
  content: "🔥";
}
.md .admonitionblock, .md .sidebarblock, .md .openblock, .md .exampleblock {
  margin: 16px 0 16px;
}
.md .sidebarblock{
  background-color: var(--gl-background-color-strong);
  padding: 12px 24px;
  border-radius: 0.5rem;
}
.md .sidebarblock p {
  margin: 0;
}
.md .exampleblock > div:nth-of-type(1){
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 3px;
  border-radius: .25rem;
  padding: 12px 24px;
}
.md .exampleblock > div:nth-of-type(1) p {
  margin: 0;
}
.md .fa-square-o::before {
  content: "☐";
}
.md .fa-check-square-o::before {
  content: "☑";
}
.md .admonitionblock td.icon {
  width: 1%;
}
.md .gl-dropdown-item {
  margin: 0;
  padding: 0;
  line-height: 1rem;
}
.md {
  /* AsciiDoc(tor) built-in alignment roles */
}
.md .text-left {
  text-align: left !important;
}
.md .text-right {
  text-align: right !important;
}
.md .text-center {
  text-align: center !important;
}
.md .text-justify {
  text-align: justify !important;
}
.md {
  /* AsciiDoc(tor) table of contents */
}
.md .toc > div{
  font-weight: var(--gl-font-weight-bold);
}
.md .code.language-email {
  font-family: inherit;
  font-size: inherit;
}
.md .code.language-email code {
  white-space: pre-wrap;
  font-family: inherit;
}
.md .code.language-email code .nt,
.md .code.language-email code .o {
  color: inherit;
  font-weight: bold;
}
.md .code.language-email code .na {
  color: inherit;
}
.md .code.language-email code .c {
  color: #646163;
  font-style: italic;
}
.md.md-child-content-text-subtle{
  color: var(--gl-text-color-subtle);
}
.md.md-child-content-text-subtle p,
.md.md-child-content-text-subtle h1,
.md.md-child-content-text-subtle h2,
.md.md-child-content-text-subtle h3,
.md.md-child-content-text-subtle h4,
.md.md-child-content-text-subtle h5,
.md.md-child-content-text-subtle table:not(.code){
  color: var(--gl-text-color-subtle);
}
.md {
  /* Vertically align badges with icons */
  /* stylelint-disable-next-line gitlab/no-has -- scoped to gl-badge element */
}
.md .gl-badge:has(> svg) {
  position: relative;
  bottom: -3px;
}
.md {
  /* Custom classes we explicitly support */
}
.md .glfm-float-left {
  float: left;
}
.md .glfm-float-right {
  float: right;
}
.md .glfm-float-none {
  float: none;
}

/**
 * Links
 *
 */
a:focus-visible {
  outline: 2px solid var(--gl-focus-ring-outer-color);
  outline-offset: 2px;
}

/**
 * Headers
 *
 */
body {
  -webkit-text-shadow: rgba(255, 255, 255, 0.01) 0 0 1px;
}

.page-title {
  margin: 0.75rem 0;
  line-height: 1.3;
}
.page-title.with-button {
  line-height: 34px;
}

.page-title-empty {
  margin: 12px 0;
  line-height: 1.3;
  font-size: 1.25em;
  font-weight: 600;
}

.light-header {
  font-weight: 600;
}

/** CODE **/
pre {
  position: relative;
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
  display: block;
  padding: 8px 12px;
  margin: 0 0 8px;
  font-size: 0.875rem;
  word-break: break-all;
  word-wrap: break-word;
  color: var(--gl-text-color-default);
  background-color: var(--gl-background-color-subtle);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-radius: 2px;
}
.markdown-code-block pre {
  padding: 12px;
}

.monospace{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
}

.weight-normal {
  font-weight: 400;
}

.commit-sha,
.ref-name{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
  font-size: 95%;
}

.git-revision-dropdown .dropdown-content li:not(.dropdown-menu-empty-item) a{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
  font-size: 95%;
  word-break: break-all;
}

/**
 * Textareas intended for GFM
 *
 */
textarea.js-gfm-input{
  font-family: var(--gl-font-family-monospace);
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  font-variant-ligatures: none;
  font-size: 0.875rem;
}

h1 small,
h2 small,
h3 small,
h4 small{
  color: var(--gl-text-color-heading);
}

@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .text-right-md {
    text-align: right;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .text-right-md {
    text-align: right;
  }
}

@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .text-right-lg {
    text-align: right;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .text-right-lg {
    text-align: right;
  }
}

.idiff.deletion {
  background: var(--code-old-inline-diff-background-color, #fac5cd);
}

.idiff.addition {
  background: var(--code-new-inline-diff-background-color, #c7f0d2);
}

/**
 * form text input i.e. search bar, comments, forms, etc.
 */
input::placeholder,
textarea::placeholder {
  color: var(--gl-control-placeholder-color);
}

wbr {
  display: inline-block;
}

:root {
  --code-editor-font: var(--default-mono-font, "GitLab Mono"), JetBrains Mono, Menlo, DejaVu Sans Mono, Liberation Mono, Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospace;
}

/**
 * FOOTNOTES
 */
section.footnotes {
  position: relative;
  padding-top: 1rem;
  margin-top: 2rem;
  font-size: 12px;
}
section.footnotes::before {
  content: "";
  width: 16rem;
  max-width: 100%;
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  position: absolute;
  top: 0;
  left: 0;
}
section.footnotes ol > li {
  margin-inline-start: 1.5rem;
}
section.footnotes ol > li p {
  margin-block-end: 0;
}
section.footnotes .footnote-backref gl-emoji {
  font-family: inherit;
  font-size: 0.875em;
  pointer-events: none;
}

.math-content-inline{
  max-width: 100%;
}

.modal-header .modal-title.math-content-inline {
  margin-right: -1rem;
  padding-right: 1rem;
}

.zen-backdrop.fullscreen {
  background-color: #fff;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1031;
}
.zen-backdrop.fullscreen textarea {
  border: 0;
  box-shadow: none;
  border-radius: 0;
  color: #050408;
  font-size: 20px;
  line-height: 26px;
  padding: 30px;
  display: block;
  outline: none;
  resize: none;
  height: 100vh;
  max-height: calc(100vh - 10px);
  max-width: 900px;
  margin: 0 auto 10px;
}
.zen-backdrop.fullscreen .div-dropzone textarea.note-textarea {
  resize: none !important;
}
.zen-backdrop.fullscreen .zen-control-leave {
  display: block;
}

.zen-mode-fullscreen {
  overflow-y: clip;
}

.zen-control {
  padding: 0;
  color: var(--gl-text-color-subtle);
  background: none;
  border: 0;
}

.zen-control-leave {
  display: none;
  position: absolute;
}

@media (min-width: 576px){
  .zen-control-leave{
    padding: var(--gl-spacing-scale-3) !important;
    font-size: var(--gl-font-size-base) !important;
  }
}

.zen-control-leave{
  line-height: 0 !important;
  right: var(--gl-spacing-scale-3);
  top: var(--gl-spacing-scale-3);
}

.info-well{
  background-color: var(--gl-background-color-subtle);
  color: var(--gl-text-color-default);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-color: var(--gl-border-color-section);
  border-radius: var(--gl-border-radius-lg);
}
.info-well .icon-container {
  display: inline-block;
  margin: 0 0.5rem 0 0.25rem;
}
.info-well .icon-container svg {
  position: relative;
  top: 2px;
  height: 16px;
  width: 16px;
}
.info-well .icon-container.commit-icon svg path{
  fill: var(--gl-icon-color-default);
}
.info-well .branches {
  display: inline;
}
.info-well svg {
  vertical-align: text-top;
}

.page-content-header {
  line-height: 34px;
  padding: 10px 0;
  margin-bottom: 0;
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .page-content-header {
    display: flex;
    align-items: center;
  }
  :where(html.with-gl-container-queries) .page-content-header .header-main-content {
    flex: 1;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .page-content-header {
    display: flex;
    align-items: center;
  }
  :where(html:not(.with-gl-container-queries)) .page-content-header .header-main-content {
    flex: 1;
  }
}
.page-content-header .avatar {
  float: none;
  display: inline-block;
  margin-left: 2px;
  flex-shrink: 0;
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .page-content-header .avatar {
    margin-left: 4px;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .page-content-header .avatar {
    margin-left: 4px;
  }
}
.page-content-header .avatar.s24 {
  margin-top: -2px;
  margin-right: 4px;
}
.page-content-header .commit-committer-link,
.page-content-header .commit-author-link{
  color: var(--gl-text-color-default);
  font-weight: 600;
}
.page-content-header .commit-info.branches {
  margin-left: 8px;
}

.page-heading-actions > .gl-button,
.page-heading-actions > .gl-disclosure-dropdown{
  width: 100%;
}

 .modal-header .modal-title.page-heading-actions > .gl-button, .modal-header .modal-title
.page-heading-actions > .gl-disclosure-dropdown {
  margin-right: -1rem;
  padding-right: 1rem;
}

@media (min-width: 576px){
  .page-heading-actions > .gl-button,
.page-heading-actions > .gl-disclosure-dropdown{
    width: auto;
  }
}

.page-title-holder .page-title {
  margin: 0.75rem 0;
  color: var(--gl-text-color-heading);
}
.page-title-holder .page-title-controls {
  margin-left: auto;
}

.awards {
  display: flex;
  flex-wrap: wrap;
}
.awards .emoji-icon {
  width: 20px;
  height: 20px;
}
.awards .gl-button.selected{
  color: var(--gl-text-color-default) !important;
  background-color: var(--blue-50) !important;
  border-color: var(--blue-500) !important;
  --tw-shadow: 0 0 #0000 !important;
  --tw-shadow-colored: 0 0 #0000 !important;
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow) !important;
  border-width: 2px !important;
}

.emoji-menu {
  display: none;
  position: absolute;
  top: 0;
  margin-top: 3px;
  padding: 16px;
  z-index: 300;
  width: 376px;
  font-size: 14px;
  background-color: var(--gl-dropdown-background-color);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-radius: 0.25rem;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
  pointer-events: none;
  opacity: 0;
  transform: scale(0.2);
  transform-origin: 0 -45px;
  transition: 0.3s cubic-bezier(0.67, 0.06, 0.19, 1.44);
  transition-property: transform, opacity;
}
.emoji-menu.is-rendered {
  display: block;
}
.emoji-menu.is-aligned-right {
  transform-origin: 100% -45px;
}
.emoji-menu.is-visible {
  pointer-events: all;
  opacity: 1;
  transform: scale(1);
}
.emoji-menu .emoji-menu-content {
  height: 300px;
  overflow-y: scroll;
}
.emoji-menu .disabled {
  cursor: default;
  opacity: 0.5;
}
.emoji-menu .disabled:hover {
  transform: none;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .emoji-menu {
    width: 90%;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .emoji-menu {
    width: 90%;
  }
}

.emoji-search {
  background-image: url("data:image/png;base64,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");
  background-repeat: no-repeat;
  background-position: right 5px center;
  background-size: 16px;
}

.emoji-menu-list {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}

.emoji-menu-list-item {
  float: left;
  padding: 3px;
  margin-left: 1px;
  margin-right: 1px;
}

.emoji-menu-btn {
  display: block;
  cursor: pointer;
  width: 30px;
  height: 30px;
  padding: 0;
  background: none;
  border: 0;
  border-radius: 0.25rem;
  transition: transform 0.15s cubic-bezier(0.3, 0, 0.2, 2);
}
.emoji-menu-btn:hover {
  background-color: transparent;
  outline: 0;
  transform: scale(1.3);
}
.emoji-menu-btn:focus-visible, .emoji-menu-btn:active {
  outline: 0;
}
.emoji-menu-btn .emoji-icon {
  display: inline-block;
  position: relative;
  top: 3px;
}
.emoji-menu-btn > gl-emoji {
  line-height: 1.5;
}

.award-menu-holder {
  display: inline-block;
}
.award-menu-holder .tooltip {
  white-space: nowrap;
}

.gl-button.btn.award-control.active .award-control-icon-neutral, .gl-button.btn.award-control:hover .award-control-icon-neutral, .gl-button.btn.award-control:active .award-control-icon-neutral, .gl-button.btn.award-control.is-active .award-control-icon-neutral {
  opacity: 0;
}
.gl-button.btn.award-control.active .award-control-icon-positive, .gl-button.btn.award-control:hover .award-control-icon-positive, .gl-button.btn.award-control:active .award-control-icon-positive, .gl-button.btn.award-control.is-active .award-control-icon-positive {
  opacity: 1;
  transform: scale(1.15);
}
.gl-button.btn.award-control.active, .gl-button.btn.award-control.is-active, .gl-button.btn.award-control:active{
  background-color: var(--blue-50);
  border-color: var(--blue-200);
}
.gl-button.btn.award-control.is-active .award-control-icon-positive {
  opacity: 0;
  transform: scale(1);
}
.gl-button.btn.award-control.is-active .award-control-icon-super-positive {
  opacity: 1;
  transform: scale(1);
}
.gl-button.btn.award-control.btn:focus-visible {
  outline: 0;
}
.gl-button.btn.award-control.is-loading .emoji-icon {
  display: none;
}
.gl-button.btn.award-control .icon,
.gl-button.btn.award-control gl-emoji {
  vertical-align: middle;
  line-height: 0.5em;
}
.gl-button.btn.award-control .award-control-icon-positive,
.gl-button.btn.award-control .award-control-icon-super-positive {
  transition: opacity, transform;
}
@media (prefers-reduced-motion: reduce) {
  .gl-button.btn.award-control .award-control-icon-positive,
  .gl-button.btn.award-control .award-control-icon-super-positive {
    transition: none;
  }
}
.gl-button.btn.award-control .award-control-icon-positive,
.gl-button.btn.award-control .award-control-icon-super-positive {
  opacity: 0;
  position: absolute;
}
.gl-button.btn.award-control .award-control-icon-positive path,
.gl-button.btn.award-control .award-control-icon-super-positive path {
  fill: #bb9c13;
}
.gl-button.btn.award-control .award-control-text {
  vertical-align: middle;
}

.gl-button .award-emoji-block {
  display: contents;
}
.gl-button .award-emoji-block gl-emoji {
  margin-block: -0.1em;
}
.gl-button .award-emoji-block gl-emoji img {
  top: -0.025em;
}

.add-reaction-button {
  position: relative;
}
.add-reaction-button .reaction-control-icon .gl-icon {
  height: 1rem;
  width: 1rem;
}
.add-reaction-button .reaction-control-icon-neutral {
  display: flex;
}
.add-reaction-button .reaction-control-icon-positive,
.add-reaction-button .reaction-control-icon-super-positive {
  display: none;
}
.add-reaction-button:hover .reaction-control-icon-neutral, .add-reaction-button.active .reaction-control-icon-neutral, .add-reaction-button:active .reaction-control-icon-neutral, .add-reaction-button.is-active .reaction-control-icon-neutral {
  display: none;
}
.add-reaction-button:hover .reaction-control-icon-positive {
  display: flex;
}
.add-reaction-button.active .reaction-control-icon-positive, .add-reaction-button:active .reaction-control-icon-positive, .add-reaction-button.is-active .reaction-control-icon-positive {
  display: none;
}
.add-reaction-button.active .reaction-control-icon-super-positive, .add-reaction-button:active .reaction-control-icon-super-positive, .add-reaction-button.is-active .reaction-control-icon-super-positive {
  display: flex;
}
.add-reaction-button.disabled {
  cursor: default;
}
.add-reaction-button.disabled:hover .reaction-control-icon .gl-icon, .add-reaction-button.disabled:focus-visible .reaction-control-icon .gl-icon, .add-reaction-button.disabled:active .reaction-control-icon .gl-icon {
  color: inherit;
  transform: scale(1);
}
.add-reaction-button.disabled:hover .reaction-control-icon-neutral, .add-reaction-button.disabled:focus-visible .reaction-control-icon-neutral, .add-reaction-button.disabled:active .reaction-control-icon-neutral {
  display: flex;
}
.add-reaction-button.disabled:hover .reaction-control-icon-positive,
.add-reaction-button.disabled:hover .reaction-control-icon-super-positive, .add-reaction-button.disabled:focus-visible .reaction-control-icon-positive,
.add-reaction-button.disabled:focus-visible .reaction-control-icon-super-positive, .add-reaction-button.disabled:active .reaction-control-icon-positive,
.add-reaction-button.disabled:active .reaction-control-icon-super-positive {
  display: none;
}

.add-reaction-search input {
  border-top-left-radius: calc(0.5rem - 1px) !important;
  border-top-right-radius: calc(0.5rem - 1px) !important;
}

.design-note.note-form .emoji-picker .gl-new-dropdown-panel {
  left: 0 !important;
}

.appearance-logo-preview,
.appearance-pwa-icon-preview {
  max-width: 400px;
  margin-bottom: 20px;
}

.appearance-light-logo-preview{
  background-color: var(--gl-background-color-subtle);
  max-width: 72px;
  padding: 10px;
  margin-bottom: 10px;
}

.svg-content {
  text-align: center;
  padding: 16px;
}
.svg-content svg,
.svg-content img {
  max-width: 425px;
  width: 100%;
}
.svg-content.svg-80 img,
.svg-content.svg-80 svg {
  max-width: 80px;
}
.svg-content.svg-130 img,
.svg-content.svg-130 svg {
  max-width: 130px;
}
.svg-content.svg-150 img,
.svg-content.svg-150 svg {
  max-width: 150px;
}
.svg-content.svg-225 img,
.svg-content.svg-225 svg {
  max-width: 225px;
}
.svg-content.svg-250 img,
.svg-content.svg-250 svg {
  max-width: 250px;
}
.svg-content.svg-306 img,
.svg-content.svg-306 svg {
  max-width: 306px;
}
.svg-content.svg-394 img,
.svg-content.svg-394 svg {
  max-width: 394px;
}
.svg-content.svg-430 img,
.svg-content.svg-430 svg {
  max-width: 430px;
}

svg {
  fill: currentColor;
}

svg:is([id*=-sm], [id*=-md], [id*=-lg]) {
  fill: none;
}

.square.s8,
svg.s8 {
  width: 8px;
  height: 8px;
}
.square.s10,
svg.s10 {
  width: 10px;
  height: 10px;
}
.square.s12,
svg.s12 {
  width: 12px;
  height: 12px;
}
.square.s14,
svg.s14 {
  width: 14px;
  height: 14px;
}
.square.s16,
svg.s16 {
  width: 16px;
  height: 16px;
}
.square.s18,
svg.s18 {
  width: 18px;
  height: 18px;
}
.square.s24,
svg.s24 {
  width: 24px;
  height: 24px;
}
.square.s32,
svg.s32 {
  width: 32px;
  height: 32px;
}
.square.s48,
svg.s48 {
  width: 48px;
  height: 48px;
}
.square.s72,
svg.s72 {
  width: 72px;
  height: 72px;
}
.square.s12,
svg.s12 {
  vertical-align: -1px;
}
.square.s16,
svg.s16 {
  vertical-align: -3px;
}

.gl-dark .integration-logo[alt="Diffblue Cover"], .gl-dark .integration-logo[alt=Drone], .gl-dark .integration-logo[alt=GitHub], .gl-dark .integration-logo[alt="Mattermost notifications"], .gl-dark .integration-logo[alt="Mattermost slash commands"], .gl-dark .integration-logo[alt=Phorge] {
  filter: invert(1) brightness(2);
}

body.image-lightbox-open {
  overflow: hidden;
}

gl-emoji {
  font-style: normal;
  display: inline-block;
  vertical-align: baseline;
  font-family: "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1.2em;
  line-height: 1;
}
gl-emoji img {
  width: 1em;
  object-fit: scale-down;
  height: 1em;
}

.user-status-emoji {
  margin-left: 4px;
  margin-right: 4px;
}
.user-status-emoji gl-emoji {
  font-size: 1em;
  line-height: 16px;
  vertical-align: baseline;
}

.dashboard-status-emoji{
  font-size: 1.5rem;
  margin-top: var(--gl-spacing-scale-1);
}

.gl-platform-windows .dashboard-status-emoji{
  margin-top: -0.2rem;
  margin-left: calc(var(--gl-spacing-scale-2) * -1);
}

.gl-platform-linux .dashboard-status-emoji{
  font-size: 1.125rem;
  margin-top: calc(var(--gl-spacing-scale-1) * -1);
}

.emoji-picker-category-header {
  position: sticky;
  background: linear-gradient(to bottom, var(--gl-background-color-overlap) 50%, transparent 100%);
}

.emoji-picker-emoji {
  height: 30px;
  width: 11.1111111111%;
  mix-blend-mode: normal !important;
}
.emoji-picker-emoji gl-emoji {
  font-size: 1.2rem !important;
}
.emoji-picker-emoji gl-emoji img {
  top: auto;
  max-width: unset;
}

.emoji-picker .gl-dropdown .dropdown-menu,
.emoji-picker .gl-new-dropdown .gl-new-dropdown-panel {
  width: 354px !important;
}

.emoji-picker .gl-new-dropdown-contents {
  max-height: none !important;
  overflow-y: hidden !important;
}

.emoji-picker-category-tab {
  border-bottom-color: transparent;
}
.emoji-picker-category-tab:hover:not(.emoji-picker-category-active){
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.emoji-picker-category-tab:focus-visible {
  z-index: 2;
}

.emoji-picker-category-active {
  border-bottom-color: #3a383d !important;
}

.emoji-picker .gl-dropdown-contents > :last-child {
  padding-bottom: 0;
  overflow-y: hidden;
}

.ci-status-icon-success svg,
.ci-status-icon-success .gl-icon,
.ci-status-icon-passed svg,
.ci-status-icon-passed .gl-icon{
  fill: var(--gl-icon-color-success);
}

.ci-status-icon-error svg,
.ci-status-icon-error .gl-icon,
.ci-status-icon-failed svg,
.ci-status-icon-failed .gl-icon {
  fill: #de1d4b;
}

.ci-status-icon-pending svg,
.ci-status-icon-pending .gl-icon,
.ci-status-icon-waiting-for-resource svg,
.ci-status-icon-waiting-for-resource .gl-icon,
.ci-status-icon-waiting-for-callback svg,
.ci-status-icon-waiting-for-callback .gl-icon,
.ci-status-icon-failed-with-warnings svg,
.ci-status-icon-failed-with-warnings .gl-icon,
.ci-status-icon-success-with-warnings svg,
.ci-status-icon-success-with-warnings .gl-icon {
  fill: #c74816;
}

.ci-status-icon-running svg,
.ci-status-icon-running .gl-icon {
  fill: #1f73ca;
}

.ci-status-icon-canceled svg,
.ci-status-icon-canceled .gl-icon,
.ci-status-icon-disabled svg,
.ci-status-icon-disabled .gl-icon,
.ci-status-icon-scheduled svg,
.ci-status-icon-scheduled .gl-icon,
.ci-status-icon-manual svg,
.ci-status-icon-manual .gl-icon {
  fill: #28272d;
}

.ci-status-icon-notification svg,
.ci-status-icon-notification .gl-icon,
.ci-status-icon-preparing svg,
.ci-status-icon-preparing .gl-icon,
.ci-status-icon-created svg,
.ci-status-icon-created .gl-icon,
.ci-status-icon-skipped svg,
.ci-status-icon-skipped .gl-icon,
.ci-status-icon-notfound svg,
.ci-status-icon-notfound .gl-icon {
  fill: #747273;
}

a.ci-icon:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.ci-icon {
  border-radius: 20px;
}
.ci-icon .ci-icon-gl-icon-wrapper {
  display: inline-block;
  border-radius: 9999px;
  line-height: 0;
}
.ci-icon .gl-icon {
  width: 20px;
  height: 20px;
  margin: -2px;
}
.ci-icon.ci-icon-variant-success {
  color: var(--ci-icon-success-text-color) !important;
  background-color: var(--ci-icon-success-background-color);
  border: 2px solid var(--ci-icon-success-background-color);
}
.ci-icon.ci-icon-variant-success .ci-icon-gl-icon-wrapper {
  border: 2px solid var(--ci-icon-success-background-color);
  background-color: var(--ci-icon-success-icon-background-color);
  color: var(--ci-icon-success-icon-color);
}
.gl-dark .ci-icon.ci-icon-variant-success .ci-icon-gl-icon-wrapper {
  border-color: transparent;
}
.ci-icon.ci-icon-variant-warning {
  color: var(--ci-icon-warning-text-color) !important;
  background-color: var(--ci-icon-warning-background-color);
  border: 2px solid var(--ci-icon-warning-background-color);
}
.ci-icon.ci-icon-variant-warning .ci-icon-gl-icon-wrapper {
  border: 2px solid var(--ci-icon-warning-background-color);
  background-color: var(--ci-icon-warning-icon-background-color);
  color: var(--ci-icon-warning-icon-color);
}
.gl-dark .ci-icon.ci-icon-variant-warning .ci-icon-gl-icon-wrapper {
  border-color: transparent;
}
.ci-icon.ci-icon-variant-danger {
  color: var(--ci-icon-danger-text-color) !important;
  background-color: var(--ci-icon-danger-background-color);
  border: 2px solid var(--ci-icon-danger-background-color);
}
.ci-icon.ci-icon-variant-danger .ci-icon-gl-icon-wrapper {
  border: 2px solid var(--ci-icon-danger-background-color);
  background-color: var(--ci-icon-danger-icon-background-color);
  color: var(--ci-icon-danger-icon-color);
}
.gl-dark .ci-icon.ci-icon-variant-danger .ci-icon-gl-icon-wrapper {
  border-color: transparent;
}
.ci-icon.ci-icon-variant-info {
  color: var(--ci-icon-info-text-color) !important;
  background-color: var(--ci-icon-info-background-color);
  border: 2px solid var(--ci-icon-info-background-color);
}
.ci-icon.ci-icon-variant-info .ci-icon-gl-icon-wrapper {
  border: 2px solid var(--ci-icon-info-background-color);
  background-color: var(--ci-icon-info-icon-background-color);
  color: var(--ci-icon-info-icon-color);
}
.gl-dark .ci-icon.ci-icon-variant-info .ci-icon-gl-icon-wrapper {
  border-color: transparent;
}
.ci-icon.ci-icon-variant-neutral {
  color: var(--ci-icon-neutral-text-color) !important;
  background-color: var(--ci-icon-neutral-background-color);
  border: 2px solid var(--ci-icon-neutral-background-color);
}
.ci-icon.ci-icon-variant-neutral .ci-icon-gl-icon-wrapper {
  border: 2px solid var(--ci-icon-neutral-background-color);
  background-color: var(--ci-icon-neutral-icon-background-color);
  color: var(--ci-icon-neutral-icon-color);
}
.gl-dark .ci-icon.ci-icon-variant-neutral .ci-icon-gl-icon-wrapper {
  border-color: transparent;
}

.user-avatar-link {
  text-decoration: none;
}

.circle-icon-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

.snippet-file-content {
  border-radius: 3px;
}
.snippet-file-content + .snippet-file-content {
  margin-top: 1rem;
}
.snippet-file-content:last-of-type {
  margin-bottom: 0;
}

.gl-responsive-table-row,
.gl-responsive-table-row-layout {
  width: 100%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-responsive-table-row,
  :where(html.with-gl-container-queries) .gl-responsive-table-row-layout {
    display: flex;
    align-items: center;
  }
  :where(html.with-gl-container-queries) .gl-responsive-table-row > :where(html.with-gl-container-queries) .gl-responsive-table-row:not(:first-child),
  :where(html.with-gl-container-queries) .gl-responsive-table-row > :where(html.with-gl-container-queries) .gl-responsive-table-row-layout:not(:first-child),
  :where(html.with-gl-container-queries) .gl-responsive-table-row-layout > :where(html.with-gl-container-queries) .gl-responsive-table-row:not(:first-child),
  :where(html.with-gl-container-queries) .gl-responsive-table-row-layout > :where(html.with-gl-container-queries) .gl-responsive-table-row-layout:not(:first-child) {
    margin-top: 16px;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row,
  :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row-layout {
    display: flex;
    align-items: center;
  }
  :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row > :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row:not(:first-child),
  :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row > :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row-layout:not(:first-child),
  :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row-layout > :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row:not(:first-child),
  :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row-layout > :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row-layout:not(:first-child) {
    margin-top: 16px;
  }
}

.gl-responsive-table-row {
  margin-top: 10px;
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  color: var(--gl-text-color-subtle);
}
.gl-responsive-table-row.gl-responsive-table-row-clickable:hover{
  background-color: var(--gl-background-color-subtle);
}
.gl-responsive-table-row.gl-responsive-table-row-clickable:hover .underline {
  text-decoration: underline;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-responsive-table-row {
    margin: 0;
    padding: 16px 0;
    border: 0;
  }
  :where(html.with-gl-container-queries) .gl-responsive-table-row:not(:last-child) {
    border-bottom: 1px solid #ecebea;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row {
    margin: 0;
    padding: 16px 0;
    border: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-responsive-table-row:not(:last-child) {
    border-bottom: 1px solid #ecebea;
  }
}

.gl-responsive-table-row-col-span {
  flex-wrap: wrap;
}

.table-section {
  white-space: nowrap;
}
.table-section.section-5 {
  flex: 0 0 5%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-5 {
    max-width: 5%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-5 {
    max-width: 5%;
  }
}
.table-section.section-10 {
  flex: 0 0 10%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-10 {
    max-width: 10%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-10 {
    max-width: 10%;
  }
}
.table-section.section-15 {
  flex: 0 0 15%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-15 {
    max-width: 15%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-15 {
    max-width: 15%;
  }
}
.table-section.section-20 {
  flex: 0 0 20%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-20 {
    max-width: 20%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-20 {
    max-width: 20%;
  }
}
.table-section.section-25 {
  flex: 0 0 25%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-25 {
    max-width: 25%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-25 {
    max-width: 25%;
  }
}
.table-section.section-30 {
  flex: 0 0 30%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-30 {
    max-width: 30%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-30 {
    max-width: 30%;
  }
}
.table-section.section-40 {
  flex: 0 0 40%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-40 {
    max-width: 40%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-40 {
    max-width: 40%;
  }
}
.table-section.section-50 {
  flex: 0 0 50%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-50 {
    max-width: 50%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-50 {
    max-width: 50%;
  }
}
.table-section.section-60 {
  flex: 0 0 60%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-60 {
    max-width: 60%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-60 {
    max-width: 60%;
  }
}
.table-section.section-70 {
  flex: 0 0 70%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-70 {
    max-width: 70%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-70 {
    max-width: 70%;
  }
}
.table-section.section-80 {
  flex: 0 0 80%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-80 {
    max-width: 80%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-80 {
    max-width: 80%;
  }
}
.table-section.section-100 {
  flex: 0 0 100%;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-section.section-100 {
    max-width: 100%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-100 {
    max-width: 100%;
  }
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .table-section {
    display: flex;
    align-self: stretch;
    padding: 10px;
    align-items: center;
    min-height: 62px;
  }
  :where(html.with-gl-container-queries) .table-section:not(:first-child) {
    border-top: 1px solid #ecebea;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section {
    display: flex;
    align-self: stretch;
    padding: 10px;
    align-items: center;
    min-height: 62px;
  }
  :where(html:not(.with-gl-container-queries)) .table-section:not(:first-child) {
    border-top: 1px solid #ecebea;
  }
}
.table-section.section-wrap {
  white-space: normal;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .table-section.section-wrap {
    flex-wrap: wrap;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .table-section.section-wrap {
    flex-wrap: wrap;
  }
}

@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-button-footer {
    text-align: right;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-button-footer {
    text-align: right;
  }
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .table-button-footer {
    display: block;
    align-self: stretch;
    min-height: 0;
    background-color: var(--gl-background-color-strong);
    border-top-style: solid;
    border-top-color: var(--gl-border-color-default);
    border-top-width: 1px;
  }
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons {
    display: flex;
  }
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons .btn {
    border-radius: 3px;
  }
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .btn-group,
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .external-url,
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .btn {
    flex: 1 1 28px;
  }
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .btn-group:not(:first-child),
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .external-url:not(:first-child),
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .btn:not(:first-child) {
    margin-left: 5px;
  }
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .btn-group:not(:last-child),
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .external-url:not(:last-child),
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons > .btn:not(:last-child) {
    margin-right: 5px;
  }
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons .dropdown-new {
    width: 100%;
  }
  :where(html.with-gl-container-queries) .table-button-footer .table-action-buttons .dropdown-menu {
    min-width: initial;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .table-button-footer {
    display: block;
    align-self: stretch;
    min-height: 0;
    background-color: var(--gl-background-color-strong);
    border-top-style: solid;
    border-top-color: var(--gl-border-color-default);
    border-top-width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons {
    display: flex;
  }
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons .btn {
    border-radius: 3px;
  }
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .btn-group,
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .external-url,
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .btn {
    flex: 1 1 28px;
  }
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .btn-group:not(:first-child),
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .external-url:not(:first-child),
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .btn:not(:first-child) {
    margin-left: 5px;
  }
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .btn-group:not(:last-child),
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .external-url:not(:last-child),
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons > .btn:not(:last-child) {
    margin-right: 5px;
  }
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons .dropdown-new {
    width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .table-button-footer .table-action-buttons .dropdown-menu {
    min-width: initial;
  }
}

.table-row-header {
  font-size: 13px;
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .table-row-header {
    display: none;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .table-row-header {
    display: none;
  }
}

.table-mobile-header {
  flex: 0 0 40%;
  max-width: 40%;
  color: var(--gl-text-color-strong);
  text-align: left;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .table-mobile-header {
    display: none;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .table-mobile-header {
    display: none;
  }
}

@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .table-mobile-content {
    flex: 0 0 60%;
    max-width: 60%;
    text-align: right;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .table-mobile-content {
    flex: 0 0 60%;
    max-width: 60%;
    text-align: right;
  }
}

.stacked-progress-bar {
  display: flex;
  height: 16px;
  border-radius: 10px;
  overflow: hidden;
  background-color: #dcdbd9;
}
.stacked-progress-bar .status-unavailable,
.stacked-progress-bar .status-green,
.stacked-progress-bar .status-neutral,
.stacked-progress-bar .status-red {
  height: 100%;
  min-width: 40px;
  padding: 0 5px;
  font-size: 12px;
  font-weight: normal;
  color: #fff;
  line-height: 16px;
}
.stacked-progress-bar .status-unavailable:hover,
.stacked-progress-bar .status-green:hover,
.stacked-progress-bar .status-neutral:hover,
.stacked-progress-bar .status-red:hover {
  cursor: pointer;
}
.stacked-progress-bar .status-unavailable {
  padding: 0 10px;
  color: var(--gl-text-color-subtle);
}
.stacked-progress-bar .status-green {
  background-color: #0d8070;
}
.stacked-progress-bar .status-green:hover {
  background-color: #0c7265;
}
.stacked-progress-bar .status-neutral {
  background-color: #dcdbd9;
  color: #28272d;
}
.stacked-progress-bar .status-neutral:hover {
  background-color: #c1bfbe;
}
.stacked-progress-bar .status-red {
  background-color: #de1d4b;
}
.stacked-progress-bar .status-red:hover {
  background-color: #c52042;
}

.sortable-container .flex-list {
  padding: 5px;
  margin-bottom: 0;
}

.sortable-row .flex-row {
  display: flex;
}
.sortable-row .flex-row.issuable-info-container {
  padding-right: 0;
}
.sortable-row .sortable-link {
  color: #050408;
}

.is-dragging {
  opacity: 1 !important;
}
.is-dragging * {
  -webkit-user-select: none;
  user-select: none;
  cursor: grabbing !important;
}
.is-dragging.no-drop * {
  cursor: no-drop !important;
}

.tree-item.is-dragging,
.linked-item.is-dragging {
  border-top: 0;
}
.tree-item.is-dragging .item-body,
.linked-item.is-dragging .item-body {
  background-color: #fff;
  border: 2px solid #c1bfbe;
}

@container panel (width < 992px) {
  :where(html.with-gl-container-queries) .read-more-container:not(:has(.read-more-content)):not(.is-expanded) {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  :where(html.with-gl-container-queries) .read-more-container:not(:has(.read-more-content)):not(.is-expanded) > * {
    display: inline;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .read-more-container:not(:has(.read-more-content)):not(.is-expanded) {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  :where(html:not(.with-gl-container-queries)) .read-more-container:not(:has(.read-more-content)):not(.is-expanded) > * {
    display: inline;
  }
}
.read-more-container:has(.read-more-content:not(.is-expanded)) {
  position: relative;
  max-height: var(--read-more-height, 281px);
  scroll-padding-top: 1000vh;
  overflow: hidden;
}
.read-more-container .read-more-content--has-scrim:not(.is-expanded)::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: calc(var(--read-more-height, 320px) - 2rem - 39px);
  height: 2rem;
  background: linear-gradient(180deg, transparent, var(--gl-background-color-default));
}

.description-more {
  position: absolute;
  bottom: 0;
  pointer-events: none;
}
.description-more::before {
  content: "";
  display: block;
  height: 3rem;
  width: 100%;
  background: linear-gradient(180deg, transparent 0%, var(--gl-background-color-default) 100%);
}
.description-more .show-all-btn {
  pointer-events: auto;
  background-color: var(--gl-background-color-default);
}
.description-more .show-all-btn::before, .description-more .show-all-btn::after {
  content: "";
  height: 1px;
  flex: 1;
  border-top: 1px solid var(--gl-border-color-subtle);
}

.work-item-description .truncated .gl-table-shadow-overlay::before,
.work-item-description .truncated .gl-table-shadow-overlay::after {
  display: none;
}
.work-item-description .truncated .gl-table-shadow {
  animation: none;
  box-shadow: none;
}

.header-message,
.footer-message {
  padding: 0 15px;
  border: 1px solid transparent;
  border-radius: 0;
  width: 100%;
  text-align: center;
  margin: 0;
  z-index: 1000;
  overflow: hidden;
}
.header-message p,
.footer-message p {
  display: inline-block;
  min-width: 0;
  overflow-x: clip;
  overflow-y: visible;
  text-overflow: ellipsis;
  vertical-align: top;
  white-space: nowrap;
  max-width: 100%;
  margin-top: -1px;
  margin-bottom: 0;
  font-size: 12px;
}

.header-message {
  height: 16px;
  line-height: 16px;
}

.footer-message {
  height: 16px;
  line-height: 16px;
}

.card-header:first-child:last-child {
  border-radius: calc(0.25rem - 1px);
}

.expandable-card.is-collapsed{
  padding-bottom: var(--gl-spacing-scale-0);
}
.expandable-card.is-collapsed .crud-body{
  padding: var(--gl-spacing-scale-0);
  margin: var(--gl-spacing-scale-0);
}

@keyframes source-editor-spinner-rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
[data-editor-loading] {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 0;
}
[data-editor-loading] > * {
  filter: blur(5px);
}
[data-editor-loading]::before {
  content: "";
  transform-origin: 50% 50% calc(32px / 2 + 3px);
  width: 32px;
  height: 32px;
  border-width: 3px;
  border-color: rgba(77, 75, 78, 0.25);
  border-top-color: #4d4b4e;
  border-radius: 50%;
  margin: 0 auto;
  animation-name: source-editor-spinner-rotate;
  animation-duration: 0.6s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  border-style: solid;
  display: inline-flex;
  position: absolute;
  z-index: 1;
}
[data-editor-loading] pre {
  opacity: 0;
}

[id^=source-editor-] {
  height: 500px;
}

.source-editor-preview {
  display: flex;
}
.source-editor-preview .md {
  overflow: scroll;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  width: 100%;
}
.source-editor-preview .gl-source-editor {
  order: -1;
  border-radius: 0 0 0.25rem 0.25rem;
}

.monaco-editor.gl-source-editor.vs-dark .markdown-hover h1,
.monaco-editor.gl-source-editor.vs-dark .markdown-hover h2,
.monaco-editor.gl-source-editor.vs-dark .markdown-hover h3,
.monaco-editor.gl-source-editor.vs-dark .markdown-hover h4,
.monaco-editor.gl-source-editor.vs-dark .markdown-hover h5,
.monaco-editor.gl-source-editor.vs-dark .markdown-hover h6 {
  color: #ecebea;
}
.monaco-editor.gl-source-editor.vs .markdown-hover h1,
.monaco-editor.gl-source-editor.vs .markdown-hover h2,
.monaco-editor.gl-source-editor.vs .markdown-hover h3,
.monaco-editor.gl-source-editor.vs .markdown-hover h4,
.monaco-editor.gl-source-editor.vs .markdown-hover h5,
.monaco-editor.gl-source-editor.vs .markdown-hover h6 {
  color: #28272d;
}
.monaco-editor.gl-source-editor .margin-view-overlays .line-numbers {
  display: flex;
  justify-content: flex-end;
  position: relative;
}
.monaco-editor.gl-source-editor .margin-view-overlays .line-numbers::before {
  visibility: hidden;
  align-self: center;
  background-color: #8a8888;
  margin-right: 0.25rem;
  width: 0.75rem;
  height: 0.75rem;
  mask-image: url(/assets/icons-stacked-91dc04b815ed13993cce0cc332a54006fb25da653d24ee925870fb17dcabab3c.svg#link);
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center;
  content: "";
}
.monaco-editor.gl-source-editor .margin-view-overlays .line-numbers:hover {
  text-decoration: underline;
  cursor: pointer !important;
}
.monaco-editor.gl-source-editor .margin-view-overlays .line-numbers:hover::before {
  visibility: visible;
}
.monaco-editor.gl-source-editor .margin-view-overlays .line-numbers:focus-visible::before {
  visibility: visible;
  outline: auto;
}
.monaco-editor.gl-source-editor .margin-view-overlays .line-numbers .link-anchor {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
}
.monaco-editor.gl-source-editor .inputarea {
  box-shadow: none;
}

.active-line-text {
  background-color: #b34013;
  opacity: 0.3;
}

/**
* Line note button on the side of diffs
*/
.diff-grid-left:hover .add-diff-note,
.diff-grid-right:hover .add-diff-note,
.line_holder .is-over:not(.no-comment-btn) .add-diff-note {
  opacity: 1;
  z-index: 101;
}

.tooltip-wrapper.add-diff-note {
  margin-left: -52px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}

.note-button.add-diff-note{
  background-color: var(--gl-background-color-default);
  color: var(--gl-feedback-info-text-color);
}

.duo-chat-message-container:has(.duo-chat-message.note-button.add-diff-note) .duo-chat-message:not(:has(.error-icon)) {
  background-color: var(--duo-chat-bubble-background-color-default);
}

.duo-chat-message-container:has(.duo-chat-message.note-button.add-diff-note) .duo-chat-message:not(:has(.error-icon)) p {
  color: var(--duo-chat-bubble-foreground-color-default);
}

.note-button.add-diff-note {
  opacity: 0;
  will-change: opacity;
  border-radius: 50%;
  padding: 1px;
  font-size: 12px;
  border: 1px solid var(--gl-feedback-info-icon-color);
  width: 24px;
  height: 24px;
}
.note-button.add-diff-note:hover, .note-button.add-diff-note.inverted{
  color: var(--gl-text-color-default);
  background: var(--gl-feedback-info-icon-color);
  border-color: var(--gl-feedback-info-icon-color);
}
.note-button.add-diff-note:active {
  outline: 0;
}
.note-button.add-diff-note[disabled]{
  background-color: var(--gl-background-color-default);
  color: var(--gl-text-color-disabled);
  border-color: var(--gl-text-color-disabled);
  cursor: not-allowed;
}

.unified-diff-components-diff-note-button::before {
  background-color: var(--gl-feedback-info-icon-color);
  mask-image: url(/assets/icons-stacked-91dc04b815ed13993cce0cc332a54006fb25da653d24ee925870fb17dcabab3c.svg#comment);
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: center;
  content: "";
  width: 12px;
  height: 12px;
}
.unified-diff-components-diff-note-button:hover:not([disabled])::before, .unified-diff-components-diff-note-button.inverted::before{
  background-color: var(--gl-background-color-default);
}

.disabled-comment{
  color: var(--gl-text-color-disabled);
  background-color: var(--gl-background-color-subtle);
  border-radius: var(--gl-border-radius-lg);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
  padding-left: var(--gl-spacing-scale-0);
  padding-right: var(--gl-spacing-scale-0);
}
.disabled-comment a:not(.learn-more){
  color: var(--gl-text-color-link);
}

.files .diff-discussions .note-discussion.timeline-entry {
  padding-left: 0;
}
.files .diff-discussions .note-discussion.timeline-entry ul.notes li.note-wrapper .timeline-content {
  padding: 8px 8px 8px 16px;
}
.files .diff-discussions .note-discussion.timeline-entry ul.notes li.note-wrapper .timeline-avatar {
  margin: 8px 0 0 16px;
}
.files .diff-discussions .note-discussion.timeline-entry ul.notes li.toggle-replies-widget {
  margin-left: 0;
  border-left: 0;
  border-right: 0;
  border-radius: 0 !important;
}
.files .diff-discussions .note-discussion.timeline-entry ul.notes .discussion-reply-holder {
  margin-left: 0;
}
.files .diff-discussions .note-discussion.timeline-entry:last-child {
  border-bottom: 0;
}
.files .diff-discussions .note-discussion.timeline-entry > .timeline-entry-inner {
  padding: 0;
}
.files .diff-discussions .note-discussion.timeline-entry > .timeline-entry-inner > .timeline-content {
  margin-left: 0;
}
.files .diff-discussions .note-discussion.timeline-entry > .timeline-entry-inner > .timeline-icon {
  display: none;
}
.files .diff-discussions .note-discussion.timeline-entry .discussion-body {
  padding-top: 0;
}
.files .diff-discussions .note-discussion.timeline-entry .discussion-body .discussion-wrapper {
  border: 0;
}
.files .diff-comment-form {
  display: block;
}

.discussion-filter-container .dropdown-menu {
  margin-bottom: 4px;
}

.discussion-body .diff-file .file-title {
  cursor: default;
  border-top: 0;
  border-radius: 0;
  margin-left: 2.5rem;
}
.discussion-body .diff-file .file-title:hover{
  background-color: var(--gl-background-color-subtle);
}
.discussion-body .diff-file .line_content {
  white-space: pre-wrap;
}
.discussion-body .diff-file .diff-content {
  margin-left: 2.5rem;
}
.discussion-body .diff-file .diff-content .line_holder td:first-of-type{
  border-left-style: solid;
  border-left-color: var(--gl-border-color-default);
  border-left-width: 1px;
  border-left-color: var(--gl-border-color-section);
}
.discussion-body .diff-file .diff-content .line_holder td:last-of-type{
  border-right-style: solid;
  border-right-color: var(--gl-border-color-default);
  border-right-width: 1px;
  border-right-color: var(--gl-border-color-section);
}
.discussion-body .diff-file .diff-content .discussion-notes {
  margin-left: -2.5rem;
}
.discussion-body .diff-file .diff-content .discussion-notes .notes {
  background-color: transparent;
}
.discussion-body .diff-file .diff-content .discussion-notes .notes-content {
  border: 0;
}
.discussion-body .diff-file .diff-content .discussion-notes .timeline-content {
  border-top: 0 !important;
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.tab-pane.notes .diff-file .notes .system-note {
  margin: 0;
}

.tab-pane.diffs .system-note {
  padding: 0 16px;
  margin-left: 20px;
}
.tab-pane.diffs .notes > .note-discussion li.note.system-note {
  border-bottom: 0;
  padding: 0;
}

.diff-file .diff-grid-left:hover .add-diff-note,
.diff-file .diff-grid-right:hover .add-diff-note,
.diff-file .is-over .add-diff-note {
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
.diff-file .discussion-notes:not(:last-child) {
  margin-bottom: 0;
}
.diff-file .discussion-notes .system-note {
  background-color: transparent;
  padding: 0;
}
.diff-file .notes-content .note-header .note-headline-light {
  display: inline-block;
  position: relative;
}
.diff-file .notes_holder {
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
.diff-file .notes_holder .diff-td,
.diff-file .notes_holder td{
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  border-left: 0;
}
.diff-file .notes_holder .diff-td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner,
.diff-file .notes_holder td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner{
  background-color: var(--gl-background-color-section);
}
.diff-file .notes_holder .diff-td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner:where(.gl-dark *),
.diff-file .notes_holder td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner:where(.gl-dark *){
  border-bottom-color: var(--gl-border-color-section);
}
.diff-file .notes_holder .diff-td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner .toggle-replies-widget,
.diff-file .notes_holder td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner .toggle-replies-widget{
  border-bottom-color: var(--gl-border-color-subtle);
}
.diff-file .notes_holder .diff-td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner .toggle-replies-widget:where(.gl-dark *),
.diff-file .notes_holder td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner .toggle-replies-widget:where(.gl-dark *){
  border-bottom-color: var(--gl-border-color-section);
}
.diff-file .notes_holder .diff-td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner .toggle-replies-widget[aria-expanded=false],
.diff-file .notes_holder td .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner .toggle-replies-widget[aria-expanded=false]{
  border-bottom-width: 0px;
}
.diff-file .notes_holder .diff-td .notes > .discussion-reply-holder:first-child,
.diff-file .notes_holder td .notes > .discussion-reply-holder:first-child {
  padding-top: 12px;
}
.diff-file .notes_holder .diff-td .notes > .discussion-reply-holder:not(:first-child):not(:nth-child(2)),
.diff-file .notes_holder td .notes > .discussion-reply-holder:not(:first-child):not(:nth-child(2)) {
  padding-top: 0;
}
.diff-file .notes_holder .diff-td.notes-content,
.diff-file .notes_holder td.notes-content {
  border-width: 1px 0;
  padding: 0;
  vertical-align: top;
  white-space: normal;
}
.diff-file .notes_holder .diff-td.notes-content.parallel,
.diff-file .notes_holder td.notes-content.parallel {
  border-width: 1px;
}
.diff-file .notes_holder .diff-td.notes-content.parallel.new,
.diff-file .notes_holder td.notes-content.parallel.new {
  border-right-width: 0;
}
.diff-file .notes_holder .diff-td.notes-content.parallel .note-header,
.diff-file .notes_holder td.notes-content.parallel .note-header {
  flex-wrap: wrap;
  align-items: center;
}
.diff-file .notes_holder .diff-td.notes-content .notes,
.diff-file .notes_holder td.notes-content .notes{
  background-color: var(--gl-background-color-subtle);
}
.diff-file .diff-grid-comments:last-child .notes-content {
  border-bottom-width: 0;
  border-bottom-left-radius: calc(0.5rem - 1px);
  border-bottom-right-radius: calc(0.5rem - 1px);
}

.diff-files-holder .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-subtle);
}

.diff-files-holder .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner:where(.gl-dark *){
  border-bottom-color: var(--gl-border-color-section);
}
.diff-files-holder .discussion-notes .timeline-entry:first-of-type > .timeline-entry-inner .timeline-entry:last-child .timeline-entry-inner{
  border-bottom-width: 0px;
}

.diffs .discussion-notes {
  margin-left: 0;
  border-left: 0;
}
.diffs .note-wrapper.system-note {
  border: 0;
  margin-left: 20px;
}
.diffs .discussion-reply-holder {
  border-top: 0;
  border-top-left-radius: var(--gl-border-radius-lg);
  border-top-right-radius: var(--gl-border-radius-lg);
  position: relative;
}
.diffs .discussion-reply-holder .discussion-form {
  width: 100%;
  background-color: var(--gl-background-color-subtle);
  padding: 0;
}
.diffs .discussion-reply-holder .disabled-comment {
  padding: 6px 0;
  width: 100%;
}

.code-commit .notes-content,
.diff-viewer > .image ~ .note-container{
  background-color: var(--gl-background-color-subtle);
  border-bottom-right-radius: var(--gl-border-radius-lg);
  border-bottom-left-radius: var(--gl-border-radius-lg);
}
.code-commit .notes-content li.note-comment,
.diff-viewer > .image ~ .note-container li.note-comment {
  padding: 8px 8px 8px 16px;
}
.code-commit .notes-content li.note-comment .avatar,
.diff-viewer > .image ~ .note-container li.note-comment .avatar {
  margin-right: 0;
}
.code-commit .notes-content li.note-comment .note-body,
.diff-viewer > .image ~ .note-container li.note-comment .note-body {
  padding: 4px 0 8px;
  margin-top: calc(var(--gl-spacing-scale-4) * -1);
  margin-left: 2.5rem;
}

.diff-viewer > .image ~ .note-container form.new-note {
  margin-left: 0;
}

.notes.timeline > .timeline-entry.note-discussion .timeline-content .diff-content ul li:first-of-type .timeline-content {
  margin-left: 0;
  border: 0;
  padding: 0;
}
.notes.timeline > .timeline-entry.note-discussion .timeline-content .diff-content ul li:first-of-type .timeline-entry-inner {
  margin-left: 2.5rem;
  background-color: var(--gl-background-color-subtle);
  border-left-style: solid;
  border-left-color: var(--gl-border-color-default);
  border-left-width: 1px;
  border-left-color: var(--gl-border-color-section);
  border-right-style: solid;
  border-right-color: var(--gl-border-color-default);
  border-right-width: 1px;
  border-right-color: var(--gl-border-color-section);
}
.notes.timeline > .timeline-entry.note-discussion .timeline-content .diff-content ul li:first-of-type .timeline-entry-inner .timeline-content {
  padding: 8px 8px 8px 16px;
  background-color: var(--gl-background-color-section);
}
.notes.timeline > .timeline-entry.note-discussion .timeline-content .diff-content ul li:first-of-type .timeline-entry-inner .timeline-content:not(:last-child){
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-subtle);
}
.notes.timeline > .timeline-entry.note-discussion .timeline-content .diff-content ul li:first-of-type .timeline-entry-inner .timeline-content:not(:last-child):where(.gl-dark *){
  border-bottom-color: var(--gl-border-color-section);
}
.notes.timeline > .timeline-entry.note-discussion .timeline-content .diff-content ul li:first-of-type .timeline-entry-inner .timeline-avatar {
  margin: 8px 0 0 16px;
}
.notes.timeline > .timeline-entry.note-discussion .timeline-content .diff-content ul li:first-of-type .timeline-entry-inner .timeline-discussion-body {
  margin-left: 2rem;
}

.frame.click-to-comment,
.image-diff-overlay .image-diff-overlay-add-comment {
  position: relative;
  cursor: url(/assets/illustrations/image_comment_light_cursor-c587347a929a56f8b4d78d991607598f69daef0bcc58e972cabcb72ed96663d2.svg) 12 12, auto;
  cursor: image-set(url(/assets/illustrations/image_comment_light_cursor-c587347a929a56f8b4d78d991607598f69daef0bcc58e972cabcb72ed96663d2.svg) 1x, url(/assets/illustrations/image_comment_light_cursor@2x-6eb274d388a8bbdbdaeee008afc79ef9dab89fb7d5409cd08739ae08059a3ce4.svg) 2x) 12 12, auto;
}
.frame.click-to-comment .comment-indicator,
.image-diff-overlay .image-diff-overlay-add-comment .comment-indicator {
  position: absolute;
  padding: 0;
  width: 24px;
  height: 24px;
  color: #3f8edd;
  margin-top: -10px;
  margin-left: -11px;
}
.frame.click-to-comment .comment-indicator svg,
.image-diff-overlay .image-diff-overlay-add-comment .comment-indicator svg {
  width: 100%;
  height: 100%;
}
.frame.click-to-comment .comment-indicator:focus-visible,
.image-diff-overlay .image-diff-overlay-add-comment .comment-indicator:focus-visible {
  outline: none;
}

.frame .image-comment-badge,
.frame .comment-indicator {
  transform: translate(-50%, -50%);
}

.image-comment-badge {
  position: absolute;
  width: 24px;
  height: 24px;
  padding: 0;
  background: none;
  border: 0;
}
.image-comment-badge > svg {
  width: 100%;
  height: 100%;
}

.image-diff-avatar-link,
.user-avatar-link {
  position: relative;
}
.image-diff-avatar-link .badge.badge-pill,
.image-diff-avatar-link .image-comment-badge,
.user-avatar-link .badge.badge-pill,
.user-avatar-link .image-comment-badge {
  top: 25px;
  right: 8px;
}

.image-diff-overlay,
.image-diff-overlay-add-comment {
  top: 0;
  left: 0;
}
.image-diff-overlay:active, .image-diff-overlay:focus-visible,
.image-diff-overlay-add-comment:active,
.image-diff-overlay-add-comment:focus-visible {
  outline: 0;
}

.diff-file {
  margin-bottom: 16px;
}
.diff-file .code.md-suggestion-diff {
  border-bottom-left-radius: calc(0.5rem - 1px);
  border-bottom-right-radius: calc(0.5rem - 1px);
}
.diff-file .file-title,
.diff-file .file-title-flex-parent {
  cursor: pointer;
}
@supports (container-type: scroll-state) {
  .diff-file .file-title,
  .diff-file .file-title-flex-parent {
    container-type: scroll-state;
    container-name: file-holder-wrapper;
  }
  @container file-holder-wrapper scroll-state(stuck: top) {
    .diff-file .file-title::before, .diff-file .file-title::after,
    .diff-file .file-title-flex-parent::before,
    .diff-file .file-title-flex-parent::after {
      content: "";
      position: absolute;
      top: var(--gl-spacing-scale-0);
      width: var(--gl-spacing-scale-4);
      height: var(--gl-spacing-scale-4);
      background-color: inherit;
    }
    .diff-file .file-title::before,
    .diff-file .file-title-flex-parent::before{
      left: var(--gl-spacing-scale-0);
    }
    .diff-file .file-title::after,
    .diff-file .file-title-flex-parent::after{
      right: var(--gl-spacing-scale-0);
    }
  }
}
.diff-file .file-title .dropdown-menu,
.diff-file .file-title-flex-parent .dropdown-menu {
  cursor: auto;
}
.diff-file .file-title:has(.gl-new-dropdown-toggle[aria-expanded=true]),
.diff-file .file-title-flex-parent:has(.gl-new-dropdown-toggle[aria-expanded=true]) {
  z-index: 300;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .diff-file .file-title .file-header-content,
  :where(html.with-gl-container-queries) .diff-file .file-title-flex-parent .file-header-content {
    width: 0;
    flex: 1;
  }
  :where(html.with-gl-container-queries) .diff-file .file-title .file-actions,
  :where(html.with-gl-container-queries) .diff-file .file-title-flex-parent .file-actions {
    margin-left: 0.25rem;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title .file-header-content,
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title-flex-parent .file-header-content {
    width: 0;
    flex: 1;
  }
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title .file-actions,
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title-flex-parent .file-actions {
    margin-left: 0.25rem;
  }
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .diff-file .file-title,
  :where(html.with-gl-container-queries) .diff-file .file-title-flex-parent {
    position: sticky;
    top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) + calc(2.5rem + 1.5rem + 0.25rem + 1px) - 1px);
    z-index: 120;
  }
  :where(html.with-gl-container-queries) .diff-file .file-title + .diff-content .md-header-preview,
  :where(html.with-gl-container-queries) .diff-file .file-title-flex-parent + .diff-content .md-header-preview {
    top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) + calc(2.5rem + 1.5rem + 0.25rem + 1px) + 41px - 1px);
  }
  :where(html.with-gl-container-queries) .diff-file .file-title.is-commit, :where(html.with-gl-container-queries) .diff-file .file-title.is-compare, :where(html.with-gl-container-queries) .diff-file .file-title.is-wiki,
  :where(html.with-gl-container-queries) .diff-file .file-title-flex-parent.is-commit,
  :where(html.with-gl-container-queries) .diff-file .file-title-flex-parent.is-compare,
  :where(html.with-gl-container-queries) .diff-file .file-title-flex-parent.is-wiki {
    top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)));
    border-top: 0;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title,
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title-flex-parent {
    position: sticky;
    top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) + calc(2.5rem + 1.5rem + 0.25rem + 1px) - 1px);
    z-index: 120;
  }
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title + .diff-content .md-header-preview,
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title-flex-parent + .diff-content .md-header-preview {
    top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) + calc(2.5rem + 1.5rem + 0.25rem + 1px) + 41px - 1px);
  }
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title.is-commit, :where(html:not(.with-gl-container-queries)) .diff-file .file-title.is-compare, :where(html:not(.with-gl-container-queries)) .diff-file .file-title.is-wiki,
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title-flex-parent.is-commit,
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title-flex-parent.is-compare,
  :where(html:not(.with-gl-container-queries)) .diff-file .file-title-flex-parent.is-wiki {
    top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)));
    border-top: 0;
  }
}
.diff-file .file-title:hover,
.diff-file .file-title-flex-parent:hover{
  background-color: var(--gl-background-color-strong);
}
.diff-file .file-title svg,
.diff-file .file-title-flex-parent svg {
  vertical-align: middle;
  top: -1px;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .diff-file.conflict .file-title, :where(html.with-gl-container-queries) .diff-file.conflict .file-title-flex-parent {
    top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .diff-file.conflict .file-title, :where(html:not(.with-gl-container-queries)) .diff-file.conflict .file-title-flex-parent {
    top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
  }
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .diff-file.conflict .file-title, :where(html.with-gl-container-queries) .diff-file.conflict .file-title-flex-parent {
    top: 0;
  }
}
.diff-file .diff-content{
  background-color: var(--gl-background-color-default);
  color: var(--gl-text-color-default);
}
.diff-file .diff-content .unfold {
  cursor: pointer;
}
.diff-file .diff-content .suppressed-container {
  padding: 11px 16px;
  text-align: center;
}
.diff-file .diff-content .suppressed-container .show-suppressed-diff {
  font-size: 110%;
  font-weight: 600;
}
.diff-file .diff-content .diff-loading-error-block {
  padding: 32px 16px;
  text-align: center;
}
.diff-file .image{
  background-color: var(--gl-background-color-strong);
  text-align: center;
  padding: 16px;
  border-radius: var(--diff-file-image-viewer-border-radius);
}
.diff-file .image:has(> .view) {
  padding-bottom: 32px;
}
.diff-file .image .wrap {
  display: inline-block;
}
.diff-file .image .frame {
  display: inline-block;
  background-color: var(--gl-background-color-default);
  line-height: 0;
}
.diff-file .image .frame img {
  border: 1px solid var(--gl-background-color-default);
  background-color: var(--gl-background-color-default);
  background-image: linear-gradient(45deg, var(--gl-background-color-strong) 25%, transparent 25%, transparent 75%, var(--gl-background-color-strong) 75%, var(--gl-background-color-strong) 100%), linear-gradient(45deg, var(--gl-background-color-strong) 25%, transparent 25%, transparent 75%, var(--gl-background-color-strong) 75%, var(--gl-background-color-strong) 100%);
  background-size: 10px 10px;
  background-position: 0 0, 5px 5px;
  max-width: 100%;
}
.diff-file .image .frame.deleted {
  border: 1px solid var(--gl-status-danger-icon-color);
}
.diff-file .image .frame.added {
  border: 1px solid var(--gl-status-success-icon-color);
}
.diff-file .image .image-info {
  font-size: 12px;
  margin: 5px 0 0;
  color: var(--gl-text-color-subtle);
}
.diff-file .image .view.swipe {
  position: relative;
}
.diff-file .image .view.swipe .swipe-frame {
  display: block;
  margin: auto;
  position: relative;
}
.diff-file .image .view.swipe .swipe-wrap {
  overflow: hidden;
  border-right: 1px solid #a5a3a3;
  position: absolute;
  display: block;
  top: 13px;
  right: 7px;
}
.diff-file .image .view.swipe .swipe-wrap.left-oriented {
  /* only for commit view (different swipe viewer) */
  border-right: 0;
  border-left: 1px solid #a5a3a3;
}
.diff-file .image .view.swipe .frame {
  top: 0;
  right: 0;
}
.diff-file .image .view.swipe .frame.old-diff {
  /* only for commit / compare view */
  position: absolute;
}
.diff-file .image .view.swipe .frame.deleted {
  margin: 0;
  display: block;
  top: 13px;
  right: 7px;
}
.diff-file .image .view.swipe .swipe-bar {
  display: block;
  height: 100%;
  width: 15px;
  z-index: 100;
  position: absolute;
  cursor: pointer;
}
.diff-file .image .view.swipe .swipe-bar:hover .top-handle {
  background-position: -15px 3px;
}
.diff-file .image .view.swipe .swipe-bar:hover .bottom-handle {
  background-position: -15px -11px;
}
.diff-file .image .view.swipe .swipe-bar .top-handle {
  display: block;
  height: 14px;
  width: 15px;
  position: absolute;
  top: 0;
  background: url(/assets/swipemode_sprites-522fecbb380f3edfa9b09006e88a51fbcb5c26d95dba87d2e09a363a863cd4e4.gif) 0 3px no-repeat;
}
.diff-file .image .view.swipe .swipe-bar .bottom-handle {
  display: block;
  height: 14px;
  width: 15px;
  position: absolute;
  bottom: 0;
  background: url(/assets/swipemode_sprites-522fecbb380f3edfa9b09006e88a51fbcb5c26d95dba87d2e09a363a863cd4e4.gif) 0 -11px no-repeat;
}
.diff-file .image .view.onion-skin .onion-skin-frame {
  display: block;
  margin: auto;
  position: relative;
}
.diff-file .image .view.onion-skin .frame.added,
.diff-file .image .view.onion-skin .frame.deleted {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
}
.diff-file .image .view.onion-skin .controls {
  display: block;
  height: 14px;
  width: 300px;
  z-index: 100;
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -150px;
}
.diff-file .image .view.onion-skin .controls .drag-track {
  display: block;
  position: absolute;
  top: 0;
  left: 12px;
  height: 10px;
  width: 276px;
  background: url(/assets/onion_skin_sprites-5c13bf92d3d6bdf19bba75b00fee5b492a43bec51bf78a01ba158b0ad099a48b.gif) -4px -20px repeat-x;
}
.diff-file .image .view.onion-skin .controls .dragger {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  height: 14px;
  width: 14px;
  background: url(/assets/onion_skin_sprites-5c13bf92d3d6bdf19bba75b00fee5b492a43bec51bf78a01ba158b0ad099a48b.gif) 0 -34px repeat-x;
  cursor: pointer;
}
.diff-file .image .view.onion-skin .controls .transparent {
  display: block;
  position: absolute;
  top: 2px;
  right: 0;
  height: 10px;
  width: 10px;
  background: url(/assets/onion_skin_sprites-5c13bf92d3d6bdf19bba75b00fee5b492a43bec51bf78a01ba158b0ad099a48b.gif) -2px 0 no-repeat;
}
.diff-file .image .view.onion-skin .controls .opaque {
  display: block;
  position: absolute;
  top: 2px;
  left: 0;
  height: 10px;
  width: 10px;
  background: url(/assets/onion_skin_sprites-5c13bf92d3d6bdf19bba75b00fee5b492a43bec51bf78a01ba158b0ad099a48b.gif) -2px -10px no-repeat;
}
.diff-file .view-modes {
  padding: 10px;
  text-align: center;
  background-color: var(--gl-background-color-strong);
}
.diff-file .view-modes ul,
.diff-file .view-modes li {
  list-style: none;
  margin: 0;
  padding: 0;
  display: inline-block;
}
.diff-file .view-modes li{
  color: var(--gl-text-color-subtle);
  border-left-style: solid;
  border-left-color: var(--gl-border-color-default);
  border-left-width: 1px;
  padding: 0 12px 0 16px;
  cursor: pointer;
}
.diff-file .view-modes li:first-child {
  border-left: 0;
}
.diff-file .view-modes li:hover {
  text-decoration: underline;
}
.diff-file .view-modes li.active {
  cursor: default;
  color: var(--gl-text-color-default);
}
.diff-file .view-modes li.active:hover {
  text-decoration: none;
}
.diff-file .view-modes li.disabled {
  display: none;
}
.diff-file .diff-file-container .frame.deleted {
  border: 1px solid var(--gl-status-danger-icon-color);
}
.diff-file .diff-file-container .frame.added {
  border: 1px solid var(--gl-status-success-icon-color);
}
.diff-file .diff-file-container .swipe.view .swipe-wrap,
.diff-file .diff-file-container .onion-skin.view .swipe-wrap {
  top: 0;
  left: 0;
}
.diff-file .diff-file-container .swipe.view .frame.deleted,
.diff-file .diff-file-container .onion-skin.view .frame.deleted {
  top: 0;
  right: 0;
}
.diff-file .diff-file-container .swipe.view .swipe-bar,
.diff-file .diff-file-container .onion-skin.view .swipe-bar {
  top: 0;
}
.diff-file .diff-file-container .swipe.view .swipe-bar .top-handle,
.diff-file .diff-file-container .onion-skin.view .swipe-bar .top-handle {
  top: -14px;
  left: -7px;
}
.diff-file .diff-file-container .swipe.view .swipe-bar .bottom-handle,
.diff-file .diff-file-container .onion-skin.view .swipe-bar .bottom-handle {
  bottom: -14px;
  left: -7px;
}
.diff-file .diff-file-container .swipe.view .file-container,
.diff-file .diff-file-container .onion-skin.view .file-container {
  display: inline-block;
}
.diff-file .diff-file-container .swipe.view .file-container .file-content,
.diff-file .diff-file-container .onion-skin.view .file-container .file-content {
  padding: 0;
}
.diff-file .diff-file-container .swipe.view .file-container .file-content img,
.diff-file .diff-file-container .onion-skin.view .file-container .file-content img {
  max-width: none;
}
.diff-file .diff-file-container .onion-skin.view .controls {
  bottom: -25px;
}
.diff-file .discussion-notes .discussion-notes {
  margin-left: 0;
  border-left: 0;
}

.code .diff-grid-row.line_holder.diff-tr .diff-td.commented:not(.hll) {
  --highlight-border-color: #64a7e9;
  background-color: #e8f2fd;
}

.diff-table.code,
table.code {
  width: 100%;
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
  border: 0;
  border-collapse: separate;
  margin: 0;
  padding: 0;
  table-layout: fixed;
  border-radius: 0 0 calc(0.5rem - 1px) calc(0.5rem - 1px);
}
.diff-table.code .diff-td.highlight-top,
table.code .diff-td.highlight-top {
  box-shadow: inset 0 1px var(--highlight-border-color, #64a7e9);
}
.diff-table.code .diff-td.highlight-bottom,
table.code .diff-td.highlight-bottom {
  box-shadow: inset 0 -1px var(--highlight-border-color, #64a7e9);
}
.diff-table.code .diff-td.highlight-top.highlight-bottom,
table.code .diff-td.highlight-top.highlight-bottom {
  box-shadow: inset 0 -1px var(--highlight-border-color, #64a7e9), inset 0 1px var(--highlight-border-color, #64a7e9);
}
.diff-table.code .diff-tr.line_holder .diff-td,
.diff-table.code tr.line_holder td,
table.code .diff-tr.line_holder .diff-td,
table.code tr.line_holder td {
  line-height: 1.6;
  font-size: 90%;
  vertical-align: top;
  word-wrap: break-word;
}
.diff-table.code .diff-tr.line_holder .diff-td span,
.diff-table.code tr.line_holder td span,
table.code .diff-tr.line_holder .diff-td span,
table.code tr.line_holder td span {
  white-space: break-spaces;
}
.diff-table.code .diff-tr.line_holder .diff-td.diff-line-num,
.diff-table.code tr.line_holder td.diff-line-num,
table.code .diff-tr.line_holder .diff-td.diff-line-num,
table.code tr.line_holder td.diff-line-num {
  -webkit-user-select: none;
          user-select: none;
  margin: 0;
  padding: 0 10px 0 5px;
  text-align: right;
  width: 50px;
  position: relative;
  white-space: nowrap;
}
.diff-table.code .diff-tr.line_holder .diff-td.diff-line-num:nth-of-type(2),
.diff-table.code tr.line_holder td.diff-line-num:nth-of-type(2),
table.code .diff-tr.line_holder .diff-td.diff-line-num:nth-of-type(2),
table.code tr.line_holder td.diff-line-num:nth-of-type(2) {
  border-right-width: 1px;
  border-right-style: solid;
}
.diff-table.code .diff-tr.line_holder .diff-td.diff-line-num a,
.diff-table.code tr.line_holder td.diff-line-num a,
table.code .diff-tr.line_holder .diff-td.diff-line-num a,
table.code tr.line_holder td.diff-line-num a {
  transition: none;
  float: left;
  width: 100%;
  height: 100%;
  font-weight: 400;
}
.diff-table.code .diff-tr.line_holder .diff-td.diff-line-num a[disabled],
.diff-table.code tr.line_holder td.diff-line-num a[disabled],
table.code .diff-tr.line_holder .diff-td.diff-line-num a[disabled],
table.code tr.line_holder td.diff-line-num a[disabled] {
  cursor: default;
}
.diff-table.code .diff-tr.line_holder .diff-td.diff-line-num a[disabled]:hover, .diff-table.code .diff-tr.line_holder .diff-td.diff-line-num a[disabled]:active,
.diff-table.code tr.line_holder td.diff-line-num a[disabled]:hover,
.diff-table.code tr.line_holder td.diff-line-num a[disabled]:active,
table.code .diff-tr.line_holder .diff-td.diff-line-num a[disabled]:hover,
table.code .diff-tr.line_holder .diff-td.diff-line-num a[disabled]:active,
table.code tr.line_holder td.diff-line-num a[disabled]:hover,
table.code tr.line_holder td.diff-line-num a[disabled]:active {
  text-decoration: none;
}
.diff-table.code .diff-tr.line_holder .diff-td.diff-line-num:not(.js-unfold-bottom) a,
.diff-table.code tr.line_holder td.diff-line-num:not(.js-unfold-bottom) a,
table.code .diff-tr.line_holder .diff-td.diff-line-num:not(.js-unfold-bottom) a,
table.code tr.line_holder td.diff-line-num:not(.js-unfold-bottom) a {
  position: relative;
}
.diff-table.code .diff-tr.line_holder .diff-td.diff-line-num:not(.js-unfold-bottom) a::before,
.diff-table.code tr.line_holder td.diff-line-num:not(.js-unfold-bottom) a::before,
table.code .diff-tr.line_holder .diff-td.diff-line-num:not(.js-unfold-bottom) a::before,
table.code tr.line_holder td.diff-line-num:not(.js-unfold-bottom) a::before {
  content: attr(data-linenumber);
}
.diff-table.code .diff-tr.line_holder .diff-td.diff-line-num:not(.js-unfold-bottom) a::after,
.diff-table.code tr.line_holder td.diff-line-num:not(.js-unfold-bottom) a::after,
table.code .diff-tr.line_holder .diff-td.diff-line-num:not(.js-unfold-bottom) a::after,
table.code tr.line_holder td.diff-line-num:not(.js-unfold-bottom) a::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: -5px;
  right: -10px;
}
.diff-table.code .diff-tr.line_holder .diff-td.line_content,
.diff-table.code tr.line_holder td.line_content,
table.code .diff-tr.line_holder .diff-td.line_content,
table.code tr.line_holder td.line_content {
  display: block;
  margin: 0;
  padding: 0 1.5em;
  border: 0;
  position: relative;
  white-space: pre-wrap;
}
.diff-table.code .diff-tr.line_holder .diff-td.line_content.parallel,
.diff-table.code tr.line_holder td.line_content.parallel,
table.code .diff-tr.line_holder .diff-td.line_content.parallel,
table.code tr.line_holder td.line_content.parallel {
  display: table-cell;
  width: 46%;
}
.diff-table.code .diff-tr.line_holder .diff-td.line_content.old::before,
.diff-table.code tr.line_holder td.line_content.old::before,
table.code .diff-tr.line_holder .diff-td.line_content.old::before,
table.code tr.line_holder td.line_content.old::before {
  content: "-";
  position: absolute;
  left: 0.5em;
}
.diff-table.code .diff-tr.line_holder .diff-td.line_content.old.with-coverage::before,
.diff-table.code tr.line_holder td.line_content.old.with-coverage::before,
table.code .diff-tr.line_holder .diff-td.line_content.old.with-coverage::before,
table.code tr.line_holder td.line_content.old.with-coverage::before {
  left: 0;
}
.diff-table.code .diff-tr.line_holder .diff-td.line_content.new::before,
.diff-table.code tr.line_holder td.line_content.new::before,
table.code .diff-tr.line_holder .diff-td.line_content.new::before,
table.code tr.line_holder td.line_content.new::before {
  content: "+";
  position: absolute;
  left: 0.5em;
}
.diff-table.code .diff-tr.line_holder .diff-td.line_content.new.with-coverage::before,
.diff-table.code tr.line_holder td.line_content.new.with-coverage::before,
table.code .diff-tr.line_holder .diff-td.line_content.new.with-coverage::before,
table.code tr.line_holder td.line_content.new.with-coverage::before {
  left: 0;
}
.diff-table.code .diff-tr.line_holder .diff-td.line_content img,
.diff-table.code tr.line_holder td.line_content img,
table.code .diff-tr.line_holder .diff-td.line_content img,
table.code tr.line_holder td.line_content img {
  max-width: 100%;
}
.diff-table.code .line_holder:last-of-type .diff-grid-left .diff-td:first-child,
.diff-table.code .line_holder:last-of-type .diff-grid-left td:first-child,
table.code .line_holder:last-of-type .diff-grid-left .diff-td:first-child,
table.code .line_holder:last-of-type .diff-grid-left td:first-child {
  border-bottom-left-radius: calc(0.5rem - 1px);
}
.diff-table.code .line_holder:last-of-type .diff-grid-left .diff-td:first-child .diff-line-expand-button,
.diff-table.code .line_holder:last-of-type .diff-grid-left td:first-child .diff-line-expand-button,
table.code .line_holder:last-of-type .diff-grid-left .diff-td:first-child .diff-line-expand-button,
table.code .line_holder:last-of-type .diff-grid-left td:first-child .diff-line-expand-button {
  border-bottom-left-radius: calc(0.5rem - 1px);
}
.diff-table.code .line_holder:last-of-type .diff-td:last-child:not(.left-side.parallel),
.diff-table.code .line_holder:last-of-type td:last-child:not(.left-side.parallel),
table.code .line_holder:last-of-type .diff-td:last-child:not(.left-side.parallel),
table.code .line_holder:last-of-type td:last-child:not(.left-side.parallel) {
  border-bottom-right-radius: calc(0.5rem - 1px);
}
.diff-table.code .line_holder:last-of-type .diff-grid-left.left-side.parallel .diff-td:last-child,
.diff-table.code .line_holder:last-of-type .diff-grid-left.left-side.parallel td:last-child,
table.code .line_holder:last-of-type .diff-grid-left.left-side.parallel .diff-td:last-child,
table.code .line_holder:last-of-type .diff-grid-left.left-side.parallel td:last-child {
  border-bottom-right-radius: 0;
}
.diff-table.code.left-side-selected .diff-td.line_content.parallel.right-side,
.diff-table.code.left-side-selected td.line_content.parallel.right-side,
table.code.left-side-selected .diff-td.line_content.parallel.right-side,
table.code.left-side-selected td.line_content.parallel.right-side {
  -webkit-user-select: none;
          user-select: none;
}
.diff-table.code.right-side-selected .diff-td.line_content.parallel.left-side,
.diff-table.code.right-side-selected td.line_content.parallel.left-side,
table.code.right-side-selected .diff-td.line_content.parallel.left-side,
table.code.right-side-selected td.line_content.parallel.left-side {
  -webkit-user-select: none;
          user-select: none;
}

.diff-stats {
  align-items: center;
  padding: 0 1rem;
}
.diff-stats .diff-stats-contents {
  display: contents;
}
.diff-stats .diff-stats-group {
  padding: 0 0.25rem;
}
.diff-stats svg.diff-stats-icon {
  vertical-align: text-bottom;
}
.diff-stats.is-compare-versions-header .diff-stats-group {
  padding: 0 0.25rem;
}

.file-content .diff-file {
  margin: 0;
  border: 0;
}

.diff-wrap-lines .line_content {
  font-size: 13px;
  white-space: pre-wrap;
}

.inline-parallel-buttons {
  float: right;
}

.merge-request-details .file-content.image_file img {
  max-height: 50vh;
}

.diff-comments-more-count,
.diff-notes-collapse,
.inline-findings-collapse {
  background-color: #8a8888;
  color: #fff;
  border: 1px solid #ecebea;
  border-radius: 50%;
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 9px;
  line-height: 16px;
  text-align: center;
}

.diff-notes-collapse,
.inline-findings-collapse {
  border: 0;
  border-radius: 50%;
  padding: 0;
  transition: transform 0.1s ease-out;
  z-index: 100;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.26rem;
  height: 1.26rem;
}
.diff-notes-collapse .collapse-icon,
.inline-findings-collapse .collapse-icon {
  height: 50%;
  width: 100%;
}
.diff-notes-collapse svg,
.inline-findings-collapse svg {
  vertical-align: middle;
}
.diff-notes-collapse .collapse-icon,
.diff-notes-collapse path,
.inline-findings-collapse .collapse-icon,
.inline-findings-collapse path {
  fill: #fff;
}
.diff-notes-collapse:focus-visible,
.inline-findings-collapse:focus-visible {
  outline: 0;
}

.note-container{
  background-color: var(--gl-background-color-subtle);
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  border-top-color: var(--gl-border-color-subtle);
}
.note-container .discussion-notes + .discussion-notes::before,
.note-container .diff-file-discussions + .discussion-form::before {
  content: "";
  position: relative;
  display: block;
  width: 100%;
  height: 10px;
  background-color: var(--gl-background-color-subtle);
  background-image: linear-gradient(45deg, transparent, transparent 73%, #c1bfbe 75%, var(--gl-background-color-subtle) 80%), linear-gradient(225deg, transparent, transparent 73%, #c1bfbe 75%, var(--gl-background-color-subtle) 80%), linear-gradient(135deg, transparent, transparent 73%, #c1bfbe 75%, var(--gl-background-color-subtle) 80%), linear-gradient(-45deg, transparent, transparent 73%, #c1bfbe 75%, var(--gl-background-color-subtle) 80%);
  background-position: 5px 5px, 0 5px, 0 5px, 5px 5px;
  background-size: 10px 10px;
  background-repeat: repeat;
}
.note-container .diff-file-discussions + .discussion-form {
  padding: 16px;
}
.note-container .diff-file-discussions + .discussion-form::before {
  width: auto;
  margin-left: -16px;
  margin-right: -16px;
  margin-bottom: 16px;
}
.note-container .notes {
  position: relative;
}
.note-container .diff-notes-collapse,
.note-container .inline-findings-collapse {
  position: absolute;
  left: -12px;
}

.diff-file .note-container > .new-note .discussion-reply-holder,
.note-container .discussion-notes.diff-discussions .discussion-reply-holder {
  padding-top: 12px;
  margin-bottom: -1px;
}

.notes.active .diff-file .note-container > .new-note,
.notes.active .note-container .discussion-notes {
  margin-left: inherit;
  border-left: inherit;
}

.files:not([data-can-create-note]) .frame {
  cursor: auto;
}

.discussion-notes {
  min-height: 35px;
  background-color: transparent;
}
.discussion-notes:first-child {
  min-height: 25px;
}
.discussion-notes .diff-notes-expand {
  display: none;
}
.discussion-notes.collapsed{
  background-color: var(--gl-background-color-default);
}
.discussion-notes.collapsed .diff-notes-expand {
  display: initial;
}
.discussion-notes.collapsed .diff-notes-collapse,
.discussion-notes.collapsed .inline-findings-collapse,
.discussion-notes.collapsed .note,
.discussion-notes.collapsed .discussion-reply-holder {
  display: none;
}
.discussion-notes ul.notes li.toggle-replies-widget,
.discussion-notes ul.notes .discussion-reply-holder {
  margin-left: 2.5rem;
}
.discussion-notes ul.notes li.toggle-replies-widget[aria-expanded=false],
.discussion-notes ul.notes .discussion-reply-holder[aria-expanded=false]{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-section);
}

.discussion-body .image .frame {
  position: relative;
}

.discussion-collapsible {
  margin: 0 16px 16px;
}
.discussion-collapsible .notes{
  border-radius: var(--gl-border-radius-lg);
}

.diff-suggest-popover.popover {
  width: 250px;
  min-width: 250px;
  z-index: 610;
}
.diff-suggest-popover .popover-header {
  display: none;
}

@container panel (width < 992px) {
  :where(html.with-gl-container-queries) .diffs .files {
    flex-direction: column;
  }
  :where(html.with-gl-container-queries) .discussion-collapsible {
    margin: 16px;
    margin-top: 0;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .diffs .files {
    flex-direction: column;
  }
  :where(html:not(.with-gl-container-queries)) .discussion-collapsible {
    margin: 16px;
    margin-top: 0;
  }
}
.diff-files-holder .vue-recycle-scroller__item-view > div:not(.active) {
  position: absolute;
  bottom: 100vh;
}

.diff-grid-row.expansion.match {
  border-top: 1px solid var(--diff-expansion-background-color);
  border-bottom: 1px solid var(--diff-expansion-background-color);
}
.diff-grid-row.expansion.match:first-child {
  border-top: 0;
}
.diff-grid-row.expansion.match:last-child {
  border-bottom: 0;
}

.tooltip.coverage {
  left: -3px !important;
}
.tooltip.no-coverage {
  left: -2px !important;
}

.diff-file.linked-file {
  border-color: var(--blue-200);
}
.diff-file.linked-file .file-title{
  background-color: var(--gl-feedback-info-background-color);
}

.collapsed-file-warning {
  color: var(--diff-warning-text-color);
  background-color: var(--diff-warning-background-color);
}

/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/*
 * Layout
 */
/**
  🚨 Do not use this spacing scale — it is deprecated and being removed. 🚨
  See https://gitlab.com/gitlab-org/gitlab/issues/36857 for more details.

  Instead, if you need a spacing class, add it to app/assets/stylesheets/framework/common.scss,
  using the following values.

    $gl-spacing-scale-0: 0;
    $gl-spacing-scale-1: 2px;
    $gl-spacing-scale-2: 4px;
    $gl-spacing-scale-3: 8px;
    $gl-spacing-scale-4: 12px;
    $gl-spacing-scale-5: 16px;
    $gl-spacing-scale-6: 24px;
    $gl-spacing-scale-7: 32px;
    $gl-spacing-scale-8: 40px;
    $gl-spacing-scale-9: 48px;
    $gl-spacing-scale-10: 56px;
    $gl-spacing-scale-11: 64px;
    $gl-spacing-scale-12: 80px;
    $gl-spacing-scale-13: 96px;

  E.g., a padding top of 96px can be added using:
  .gl-shim-pt-13 {
    padding-top: 96px;
  }

  Please use -shim- so it can be differentiated from the old scale classes.

  These will be replaced when the Gitlab UI utilities are included.
**/
/* Will be moved to @gitlab/ui by https://gitlab.com/gitlab-org/gitlab-services/design.gitlab.com/-/issues/2792 */
/* End gitlab-ui#1709 */
/*
 * Text
 */
/*
 * Lists
 */
/*
 * Code
 */
/*
 * Tooltips
 */
/*
 * Padding
 */
/*
 * Misc
 */
/*
 * Merge requests
 */
/*
 * Calculated heights
 */
/* tanuki logo colors */
/*
 * State colors:
 */
/*
 * Commit Diff Colors
 */
/*
 * The transparent colors are used in Monaco editor. Using full opacity colors
 * would hide other layers (selected text, matching brackets).
 *
 * When the transparent colors get layered on white background, they create their
 * full opacity counterparts:
 *
 *  - white + $line-added-transparent = $line-added
 *  - white + $line-added-transparent + $line-added-dark-transparent = $line-added-dark
 *
 * More details: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41553
 */
/*
 * Fonts
 * The --default-mono-font and --default-regular-font variables give users
 * a way to override our font choices for them.
 */
/*
* Dropdowns
*/
/*
* Sidebar
*/
/*
* Buttons
*/
/*
* Badges
*/
/*
 *  Award emoji
 */
/*
 * Search Box
 */
/*
 *  Notes
 */
/*
* Boards
*/
/*
* Builds
*/
/*
* Commit Page
*/
/*
* Files
*/
/*
* Forms
*/
/*
* Label
*/
/*
* Animation
*/
/*
* Login
*/
/*
* Typography
*/
/*
Pipeline Graph
*/
/*
GitLab Plans
*/
/*
Performance Bar
*/
/*
Image Commenting cursor
*/
/*
Popup
*/
/*
Drawers
*/
/*
Modals
*/
/*
Popovers
*/
/*
Merge requests
*/
/*
Board Swimlanes
*/
/*
Source Editor theme overrides
*/
/**
 Bootstrap 4.2.0 introduced new icons for validating forms.
 Our design system does not use those, so we are disabling them for now:
 - Docs: https://getbootstrap.com/docs/4.3/components/forms/#server-side
 - Issue: https://gitlab.com/gitlab-org/design.gitlab.com/issues/242
 */
/*
 * This file is only for overriding Bootstrap 4 variables.
 * Please add any new variables to variables.scss
 */
/**
 * CSS Custom properties
 */
:root {
  --duo-chat-bubble-foreground-color-default: var(--gl-color-neutral-800);
  --duo-chat-bubble-background-color-default: var(--gl-color-neutral-50);
}

:root.gl-dark {
  --duo-chat-bubble-foreground-color-default: var(--gl-color-neutral-50);
  --duo-chat-bubble-background-color-default: var(--gl-color-neutral-800);
}

:root.ui-neutral {
  --duo-chat-bubble-foreground-color-default: var(--gl-color-blue-800);
  --duo-chat-bubble-background-color-default: var(--gl-color-blue-50);
}

:root.ui-neutral.gl-dark {
  --duo-chat-bubble-foreground-color-default: var(--gl-color-blue-50);
  --duo-chat-bubble-background-color-default: var(--gl-color-blue-800);
}

.duo-chat-layout {
  z-index: 1039;
}

pre.duo-message-pre-block.code-syntax-highlight-theme {
  background-color: var(--code-background, var(--gl-background-color-preformat));
  color: var(--code-text-color, var(--gl-text-color-strong));
}
pre.duo-message-pre-block.code-syntax-highlight-theme code {
  color: inherit;
}

.duo-chat-message a.anchor{
  display: none;
}

.duo-chat-message-container .duo-chat-message:has(.error-icon){
  background-color: var(--gl-background-color-subtle);
}

/**
 * Your messages styles
 */
.duo-chat-message-container:has(.duo-chat-message .gl-avatar){
  justify-content: flex-end;
}
.duo-chat-message-container:has(.duo-chat-message .gl-avatar) .duo-chat-message {
  background-color: var(--duo-chat-bubble-background-color-default);
  border-bottom-left-radius: 1rem;
  border-bottom-right-radius: var(--gl-border-radius-none);
}

.duo-chat-message-container:has(.duo-chat-message.gl-text-feedback-info) .duo-chat-message:not(:has(.error-icon)) {
  background-color: var(--duo-chat-bubble-background-color-default);
}
.duo-chat-message-container:has(.duo-chat-message.gl-text-feedback-info) .duo-chat-message:not(:has(.error-icon)) p {
  color: var(--duo-chat-bubble-foreground-color-default);
}

/**
 * Queued message styles — pending user prompts, matching your message bubbles
 */
.duo-chat-queued-message {
  background-color: var(--duo-chat-bubble-background-color-default);
  color: var(--duo-chat-bubble-foreground-color-default);
}

.crud-header {
  min-height: 2.5rem;
}

.crud-count .gl-badge{
  margin-left: calc(var(--gl-spacing-scale-2) * -1);
  margin-top: calc(var(--gl-spacing-scale-1) * -1);
  margin-bottom: calc(var(--gl-spacing-scale-1) * -1);
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
  color: var(--gl-text-color-subtle);
  background-color: transparent;
}

.crud-body:has(.gl-table) {
  margin: 0;
  padding: 0;
}
.crud-body:has(.gl-table) table.b-table-fixed,
.crud-body:has(.gl-table) table.b-table-stacked-sm,
.crud-body:has(.gl-table) table.b-table-stacked-md,
.crud-body:has(.gl-table) table.b-table-stacked-lg {
  margin-bottom: 0;
}
.crud-body:has(.gl-table) table.b-table-fixed tr:first-of-type th,
.crud-body:has(.gl-table) table.b-table-stacked-sm tr:first-of-type th,
.crud-body:has(.gl-table) table.b-table-stacked-md tr:first-of-type th,
.crud-body:has(.gl-table) table.b-table-stacked-lg tr:first-of-type th {
  border-top-width: 0;
}
.crud-body:has(.gl-table) table.b-table-fixed tr:last-of-type td,
.crud-body:has(.gl-table) table.b-table-stacked-sm tr:last-of-type td,
.crud-body:has(.gl-table) table.b-table-stacked-md tr:last-of-type td,
.crud-body:has(.gl-table) table.b-table-stacked-lg tr:last-of-type td {
  border-bottom-width: 0;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr:first-of-type > td[data-label], :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr:first-of-type > td:first-of-type:last-of-type {
    border-top-width: 0;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr:last-of-type td:not(:last-of-type) {
    border-bottom-width: 1px;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label] {
    border-left: 0;
    border-left-style: none;
    border-right: 0;
    border-right-style: none;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr > [data-label]::before {
    text-align: left;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th {
    border-top-width: 1px;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr::after {
    background-color: #fff;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr:last-child::after {
    display: none;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr:first-of-type > td[data-label], :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr:first-of-type > td:first-of-type:last-of-type {
    border-top-width: 0;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr:last-of-type td:not(:last-of-type) {
    border-bottom-width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr > td[data-label] {
    border-left: 0;
    border-left-style: none;
    border-right: 0;
    border-right-style: none;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr > [data-label]::before {
    text-align: left;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr > th {
    border-top-width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr::after {
    background-color: #fff;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-sm tbody > tr:last-child::after {
    display: none;
  }
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr:first-of-type > td[data-label], :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr:first-of-type > td:first-of-type:last-of-type {
    border-top-width: 0;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr:last-of-type td:not(:last-of-type) {
    border-bottom-width: 1px;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label] {
    border-left: 0;
    border-left-style: none;
    border-right: 0;
    border-right-style: none;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr > [data-label]::before {
    text-align: left;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr > th {
    border-top-width: 1px;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr::after {
    background-color: #fff;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr:last-child::after {
    display: none;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr:first-of-type > td[data-label], :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr:first-of-type > td:first-of-type:last-of-type {
    border-top-width: 0;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr:last-of-type td:not(:last-of-type) {
    border-bottom-width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr > td[data-label] {
    border-left: 0;
    border-left-style: none;
    border-right: 0;
    border-right-style: none;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr > [data-label]::before {
    text-align: left;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr > th {
    border-top-width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr::after {
    background-color: #fff;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-md tbody > tr:last-child::after {
    display: none;
  }
}
@container panel (width < 992px) {
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr:first-of-type > td[data-label], :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr:first-of-type > td:first-of-type:last-of-type {
    border-top-width: 0;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr:last-of-type td:not(:last-of-type) {
    border-bottom-width: 1px;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label] {
    border-left: 0;
    border-left-style: none;
    border-right: 0;
    border-right-style: none;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr > [data-label]::before {
    text-align: left;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th {
    border-top-width: 1px;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr::after {
    background-color: #fff;
  }
  :where(html.with-gl-container-queries) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr:last-child::after {
    display: none;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr:first-of-type > td[data-label], :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr:first-of-type > td:first-of-type:last-of-type {
    border-top-width: 0;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr:last-of-type td:not(:last-of-type) {
    border-bottom-width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr > td[data-label] {
    border-left: 0;
    border-left-style: none;
    border-right: 0;
    border-right-style: none;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr > [data-label]::before {
    text-align: left;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr > th {
    border-top-width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr::after {
    background-color: #fff;
  }
  :where(html:not(.with-gl-container-queries)) .crud-body:has(.gl-table) table.gl-table.b-table.b-table-stacked-lg tbody > tr:last-child::after {
    display: none;
  }
}

.crud-body .gl-table-shadow > table td:first-of-type,
.crud-body .gl-table-shadow > table th:first-of-type{
  border-left-width: 0px;
}
.crud-body .gl-table-shadow > table td:last-of-type,
.crud-body .gl-table-shadow > table th:last-of-type{
  border-right-width: 0px !important;
}
.crud-body .gl-table-shadow > table tr:first-of-type th{
  border-top-width: 0px;
}
.crud-body .gl-table-shadow > table tr:last-of-type td{
  border-bottom-width: 0px;
}
.crud-body .gl-table-shadow > table tr:hover td{
  background-color: var(--gl-background-color-subtle);
}

.crud-body:has(.content-list) {
  margin: 0;
  padding: 0;
}
.crud-body:has(.content-list) .content-list > li{
  margin-left: var(--gl-spacing-scale-2);
  margin-right: var(--gl-spacing-scale-2);
  padding-left: var(--gl-spacing-scale-3);
  padding-right: var(--gl-spacing-scale-3);
}

.crud-pagination {
  margin-top: -1px;
}
.crud-pagination:not(:has(> .gl-pagination, > .crud-pagination-container)) {
  display: none;
}
.crud-pagination .gl-pagination {
  margin-top: 0;
}
.crud-pagination .gl-pagination ul,
.crud-pagination .pagination {
  margin-bottom: 0;
}

.severity-text-critical {
  color: var(--severity-color-critical);
}

.severity-text-high {
  color: var(--severity-color-high);
}

.severity-text-medium {
  color: var(--severity-color-medium);
}

.severity-text-low {
  color: var(--severity-color-low);
}

.severity-text-info {
  color: var(--severity-color-info);
}

.severity-text-unknown {
  color: var(--severity-color-unknown);
}

.severity-bg-critical {
  background-color: var(--severity-color-critical);
}

.severity-bg-high {
  background-color: var(--severity-color-high);
}

.severity-bg-medium {
  background-color: var(--severity-color-medium);
}

.severity-bg-low {
  background-color: var(--severity-color-low);
}

.severity-bg-info {
  background-color: var(--severity-color-info);
}

.severity-bg-unknown {
  background-color: var(--severity-color-unknown);
}

.gl-col-xl,
.gl-col-xl-auto, .gl-col-xl-12, .gl-col-xl-11, .gl-col-xl-10, .gl-col-xl-9, .gl-col-xl-8, .gl-col-xl-7, .gl-col-xl-6, .gl-col-xl-5, .gl-col-xl-4, .gl-col-xl-3, .gl-col-xl-2, .gl-col-xl-1, .gl-col-lg,
.gl-col-lg-auto, .gl-col-lg-12, .gl-col-lg-11, .gl-col-lg-10, .gl-col-lg-9, .gl-col-lg-8, .gl-col-lg-7, .gl-col-lg-6, .gl-col-lg-5, .gl-col-lg-4, .gl-col-lg-3, .gl-col-lg-2, .gl-col-lg-1, .gl-col-md,
.gl-col-md-auto, .gl-col-md-12, .gl-col-md-11, .gl-col-md-10, .gl-col-md-9, .gl-col-md-8, .gl-col-md-7, .gl-col-md-6, .gl-col-md-5, .gl-col-md-4, .gl-col-md-3, .gl-col-md-2, .gl-col-md-1, .gl-col-sm,
.gl-col-sm-auto, .gl-col-sm-12, .gl-col-sm-11, .gl-col-sm-10, .gl-col-sm-9, .gl-col-sm-8, .gl-col-sm-7, .gl-col-sm-6, .gl-col-sm-5, .gl-col-sm-4, .gl-col-sm-3, .gl-col-sm-2, .gl-col-sm-1, .gl-col,
.gl-col-auto, .gl-col-12, .gl-col-11, .gl-col-10, .gl-col-9, .gl-col-8, .gl-col-7, .gl-col-6, .gl-col-5, .gl-col-4, .gl-col-3, .gl-col-2, .gl-col-1, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.gl-row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.gl-no-gutters {
  margin-right: 0;
  margin-left: 0;
}
.gl-no-gutters > .gl-col,
.gl-no-gutters > [class*=gl-col-] {
  padding-right: 0;
  padding-left: 0;
}

.gl-col {
  flex-basis: 0;
  flex-grow: 1;
  max-width: 100%;
}

.gl-row-cols-1 > * {
  flex: 0 0 100%;
  max-width: 100%;
}

.gl-row-cols-2 > * {
  flex: 0 0 50%;
  max-width: 50%;
}

.gl-row-cols-3 > * {
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
}

.gl-row-cols-4 > * {
  flex: 0 0 25%;
  max-width: 25%;
}

.gl-row-cols-5 > * {
  flex: 0 0 20%;
  max-width: 20%;
}

.gl-row-cols-6 > * {
  flex: 0 0 16.6666666667%;
  max-width: 16.6666666667%;
}

.gl-col-auto {
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.gl-col-1 {
  flex: 0 0 8.33333333%;
  max-width: 8.33333333%;
}

.gl-col-2 {
  flex: 0 0 16.66666667%;
  max-width: 16.66666667%;
}

.gl-col-3 {
  flex: 0 0 25%;
  max-width: 25%;
}

.gl-col-4 {
  flex: 0 0 33.33333333%;
  max-width: 33.33333333%;
}

.gl-col-5 {
  flex: 0 0 41.66666667%;
  max-width: 41.66666667%;
}

.gl-col-6 {
  flex: 0 0 50%;
  max-width: 50%;
}

.gl-col-7 {
  flex: 0 0 58.33333333%;
  max-width: 58.33333333%;
}

.gl-col-8 {
  flex: 0 0 66.66666667%;
  max-width: 66.66666667%;
}

.gl-col-9 {
  flex: 0 0 75%;
  max-width: 75%;
}

.gl-col-10 {
  flex: 0 0 83.33333333%;
  max-width: 83.33333333%;
}

.gl-col-11 {
  flex: 0 0 91.66666667%;
  max-width: 91.66666667%;
}

.gl-col-12 {
  flex: 0 0 100%;
  max-width: 100%;
}

.gl-order-first {
  order: -1;
}

.gl-order-last {
  order: 13;
}

.gl-order-0 {
  order: 0;
}

.gl-order-1 {
  order: 1;
}

.gl-order-2 {
  order: 2;
}

.gl-order-3 {
  order: 3;
}

.gl-order-4 {
  order: 4;
}

.gl-order-5 {
  order: 5;
}

.gl-order-6 {
  order: 6;
}

.gl-order-7 {
  order: 7;
}

.gl-order-8 {
  order: 8;
}

.gl-order-9 {
  order: 9;
}

.gl-order-10 {
  order: 10;
}

.gl-order-11 {
  order: 11;
}

.gl-order-12 {
  order: 12;
}

.gl-offset-1 {
  margin-left: 8.33333333%;
}

.gl-offset-2 {
  margin-left: 16.66666667%;
}

.gl-offset-3 {
  margin-left: 25%;
}

.gl-offset-4 {
  margin-left: 33.33333333%;
}

.gl-offset-5 {
  margin-left: 41.66666667%;
}

.gl-offset-6 {
  margin-left: 50%;
}

.gl-offset-7 {
  margin-left: 58.33333333%;
}

.gl-offset-8 {
  margin-left: 66.66666667%;
}

.gl-offset-9 {
  margin-left: 75%;
}

.gl-offset-10 {
  margin-left: 83.33333333%;
}

.gl-offset-11 {
  margin-left: 91.66666667%;
}

@container (width >= 576px) {
  :where(html.with-gl-container-queries) .gl-col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-first {
    order: -1;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-last {
    order: 13;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-0 {
    order: 0;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-1 {
    order: 1;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-2 {
    order: 2;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-3 {
    order: 3;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-4 {
    order: 4;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-5 {
    order: 5;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-6 {
    order: 6;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-7 {
    order: 7;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-8 {
    order: 8;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-9 {
    order: 9;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-10 {
    order: 10;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-11 {
    order: 11;
  }
  :where(html.with-gl-container-queries) .gl-order-sm-12 {
    order: 12;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-0 {
    margin-left: 0;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-1 {
    margin-left: 8.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-2 {
    margin-left: 16.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-3 {
    margin-left: 25%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-4 {
    margin-left: 33.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-5 {
    margin-left: 41.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-6 {
    margin-left: 50%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-7 {
    margin-left: 58.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-8 {
    margin-left: 66.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-9 {
    margin-left: 75%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-10 {
    margin-left: 83.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-sm-11 {
    margin-left: 91.66666667%;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .gl-col-sm {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-sm-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-sm-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-sm-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-sm-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-sm-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-sm-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-sm-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-first {
    order: -1;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-last {
    order: 13;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-0 {
    order: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-1 {
    order: 1;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-2 {
    order: 2;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-3 {
    order: 3;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-4 {
    order: 4;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-5 {
    order: 5;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-6 {
    order: 6;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-7 {
    order: 7;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-8 {
    order: 8;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-9 {
    order: 9;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-10 {
    order: 10;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-11 {
    order: 11;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-sm-12 {
    order: 12;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-0 {
    margin-left: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-1 {
    margin-left: 8.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-2 {
    margin-left: 16.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-3 {
    margin-left: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-4 {
    margin-left: 33.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-5 {
    margin-left: 41.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-6 {
    margin-left: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-7 {
    margin-left: 58.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-8 {
    margin-left: 66.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-9 {
    margin-left: 75%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-10 {
    margin-left: 83.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-sm-11 {
    margin-left: 91.66666667%;
  }
}
@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-order-md-first {
    order: -1;
  }
  :where(html.with-gl-container-queries) .gl-order-md-last {
    order: 13;
  }
  :where(html.with-gl-container-queries) .gl-order-md-0 {
    order: 0;
  }
  :where(html.with-gl-container-queries) .gl-order-md-1 {
    order: 1;
  }
  :where(html.with-gl-container-queries) .gl-order-md-2 {
    order: 2;
  }
  :where(html.with-gl-container-queries) .gl-order-md-3 {
    order: 3;
  }
  :where(html.with-gl-container-queries) .gl-order-md-4 {
    order: 4;
  }
  :where(html.with-gl-container-queries) .gl-order-md-5 {
    order: 5;
  }
  :where(html.with-gl-container-queries) .gl-order-md-6 {
    order: 6;
  }
  :where(html.with-gl-container-queries) .gl-order-md-7 {
    order: 7;
  }
  :where(html.with-gl-container-queries) .gl-order-md-8 {
    order: 8;
  }
  :where(html.with-gl-container-queries) .gl-order-md-9 {
    order: 9;
  }
  :where(html.with-gl-container-queries) .gl-order-md-10 {
    order: 10;
  }
  :where(html.with-gl-container-queries) .gl-order-md-11 {
    order: 11;
  }
  :where(html.with-gl-container-queries) .gl-order-md-12 {
    order: 12;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-0 {
    margin-left: 0;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-1 {
    margin-left: 8.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-2 {
    margin-left: 16.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-3 {
    margin-left: 25%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-4 {
    margin-left: 33.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-5 {
    margin-left: 41.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-6 {
    margin-left: 50%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-7 {
    margin-left: 58.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-8 {
    margin-left: 66.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-9 {
    margin-left: 75%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-10 {
    margin-left: 83.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-md-11 {
    margin-left: 91.66666667%;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-col-md {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-md-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-md-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-md-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-md-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-md-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-md-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-first {
    order: -1;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-last {
    order: 13;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-0 {
    order: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-1 {
    order: 1;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-2 {
    order: 2;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-3 {
    order: 3;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-4 {
    order: 4;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-5 {
    order: 5;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-6 {
    order: 6;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-7 {
    order: 7;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-8 {
    order: 8;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-9 {
    order: 9;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-10 {
    order: 10;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-11 {
    order: 11;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-md-12 {
    order: 12;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-0 {
    margin-left: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-1 {
    margin-left: 8.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-2 {
    margin-left: 16.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-3 {
    margin-left: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-4 {
    margin-left: 33.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-5 {
    margin-left: 41.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-6 {
    margin-left: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-7 {
    margin-left: 58.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-8 {
    margin-left: 66.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-9 {
    margin-left: 75%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-10 {
    margin-left: 83.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-md-11 {
    margin-left: 91.66666667%;
  }
}
@container (width >= 992px) {
  :where(html.with-gl-container-queries) .gl-col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-first {
    order: -1;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-last {
    order: 13;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-0 {
    order: 0;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-1 {
    order: 1;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-2 {
    order: 2;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-3 {
    order: 3;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-4 {
    order: 4;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-5 {
    order: 5;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-6 {
    order: 6;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-7 {
    order: 7;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-8 {
    order: 8;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-9 {
    order: 9;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-10 {
    order: 10;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-11 {
    order: 11;
  }
  :where(html.with-gl-container-queries) .gl-order-lg-12 {
    order: 12;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-0 {
    margin-left: 0;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-1 {
    margin-left: 8.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-2 {
    margin-left: 16.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-3 {
    margin-left: 25%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-4 {
    margin-left: 33.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-5 {
    margin-left: 41.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-6 {
    margin-left: 50%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-7 {
    margin-left: 58.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-8 {
    margin-left: 66.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-9 {
    margin-left: 75%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-10 {
    margin-left: 83.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-lg-11 {
    margin-left: 91.66666667%;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .gl-col-lg {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-lg-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-lg-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-lg-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-lg-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-lg-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-lg-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-lg-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-first {
    order: -1;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-last {
    order: 13;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-0 {
    order: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-1 {
    order: 1;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-2 {
    order: 2;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-3 {
    order: 3;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-4 {
    order: 4;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-5 {
    order: 5;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-6 {
    order: 6;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-7 {
    order: 7;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-8 {
    order: 8;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-9 {
    order: 9;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-10 {
    order: 10;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-11 {
    order: 11;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-lg-12 {
    order: 12;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-0 {
    margin-left: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-1 {
    margin-left: 8.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-2 {
    margin-left: 16.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-3 {
    margin-left: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-4 {
    margin-left: 33.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-5 {
    margin-left: 41.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-6 {
    margin-left: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-7 {
    margin-left: 58.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-8 {
    margin-left: 66.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-9 {
    margin-left: 75%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-10 {
    margin-left: 83.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-lg-11 {
    margin-left: 91.66666667%;
  }
}
@container (width >= 1200px) {
  :where(html.with-gl-container-queries) .gl-col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  :where(html.with-gl-container-queries) .gl-row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-first {
    order: -1;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-last {
    order: 13;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-0 {
    order: 0;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-1 {
    order: 1;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-2 {
    order: 2;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-3 {
    order: 3;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-4 {
    order: 4;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-5 {
    order: 5;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-6 {
    order: 6;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-7 {
    order: 7;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-8 {
    order: 8;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-9 {
    order: 9;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-10 {
    order: 10;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-11 {
    order: 11;
  }
  :where(html.with-gl-container-queries) .gl-order-xl-12 {
    order: 12;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-0 {
    margin-left: 0;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-1 {
    margin-left: 8.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-2 {
    margin-left: 16.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-3 {
    margin-left: 25%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-4 {
    margin-left: 33.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-5 {
    margin-left: 41.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-6 {
    margin-left: 50%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-7 {
    margin-left: 58.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-8 {
    margin-left: 66.66666667%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-9 {
    margin-left: 75%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-10 {
    margin-left: 83.33333333%;
  }
  :where(html.with-gl-container-queries) .gl-offset-xl-11 {
    margin-left: 91.66666667%;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .gl-col-xl {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-xl-1 > * {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-xl-2 > * {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-xl-3 > * {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-xl-4 > * {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-xl-5 > * {
    flex: 0 0 20%;
    max-width: 20%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-row-cols-xl-6 > * {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-1 {
    flex: 0 0 8.33333333%;
    max-width: 8.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-2 {
    flex: 0 0 16.66666667%;
    max-width: 16.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-3 {
    flex: 0 0 25%;
    max-width: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-4 {
    flex: 0 0 33.33333333%;
    max-width: 33.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-5 {
    flex: 0 0 41.66666667%;
    max-width: 41.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-6 {
    flex: 0 0 50%;
    max-width: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-7 {
    flex: 0 0 58.33333333%;
    max-width: 58.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-8 {
    flex: 0 0 66.66666667%;
    max-width: 66.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-9 {
    flex: 0 0 75%;
    max-width: 75%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-10 {
    flex: 0 0 83.33333333%;
    max-width: 83.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-11 {
    flex: 0 0 91.66666667%;
    max-width: 91.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-col-xl-12 {
    flex: 0 0 100%;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-first {
    order: -1;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-last {
    order: 13;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-0 {
    order: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-1 {
    order: 1;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-2 {
    order: 2;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-3 {
    order: 3;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-4 {
    order: 4;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-5 {
    order: 5;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-6 {
    order: 6;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-7 {
    order: 7;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-8 {
    order: 8;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-9 {
    order: 9;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-10 {
    order: 10;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-11 {
    order: 11;
  }
  :where(html:not(.with-gl-container-queries)) .gl-order-xl-12 {
    order: 12;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-0 {
    margin-left: 0;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-1 {
    margin-left: 8.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-2 {
    margin-left: 16.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-3 {
    margin-left: 25%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-4 {
    margin-left: 33.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-5 {
    margin-left: 41.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-6 {
    margin-left: 50%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-7 {
    margin-left: 58.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-8 {
    margin-left: 66.66666667%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-9 {
    margin-left: 75%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-10 {
    margin-left: 83.33333333%;
  }
  :where(html:not(.with-gl-container-queries)) .gl-offset-xl-11 {
    margin-left: 91.66666667%;
  }
}
.suggest-colors {
  padding-top: 3px;
}
.suggest-colors a {
  border-radius: 4px;
  width: 30px;
  height: 30px;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: 10px;
  text-decoration: none;
}
.suggest-colors a:focus-visible, .suggest-colors a:focus-visible:active {
  position: relative;
  z-index: 1;
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.suggest-colors.suggest-colors-dropdown {
  margin-top: 10px;
  margin-bottom: 10px;
}
.suggest-colors.suggest-colors-dropdown a {
  border-radius: 0;
  width: 14.2857142857%;
  margin-right: 0;
  margin-bottom: -5px;
}
.suggest-colors.suggest-colors-dropdown a:first-of-type {
  border-top-left-radius: 0.25rem;
}
.suggest-colors.suggest-colors-dropdown a:nth-of-type(7) {
  border-top-right-radius: 0.25rem;
}
.suggest-colors.suggest-colors-dropdown a:nth-last-child(7) {
  border-bottom-left-radius: 0.25rem;
}
.suggest-colors.suggest-colors-dropdown a:last-of-type {
  border-bottom-right-radius: 0.25rem;
}

.branch-info .commit-icon svg {
  top: 3px;
}

/*
 * Commit message textarea for web editor and
 * custom merge request message
 */
.commit-message-container{
  background-color: var(--gl-background-color-default);
  position: relative;
  font-family: var(--default-mono-font, "GitLab Mono"), "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace;
}
.commit-message-container .max-width-marker {
  width: 72ch;
  color: rgba(0, 0, 0, 0);
  font-family: inherit;
  left: 12px;
  height: 100%;
  border-right: 1px solid rgb(237.5, 237, 236);
  position: absolute;
  z-index: 1;
}
.commit-message-container textarea {
  background-color: rgba(0, 0, 0, 0);
  font-family: inherit;
  padding-left: 12px;
  position: relative;
  z-index: 2;
}

.commit-row-title .str-truncated {
  max-width: 70%;
}

.commit-content {
  padding-right: 10px;
  white-space: normal;
  min-width: 0;
}
.commit-content .commit-title {
  display: flex;
  align-items: center;
}
.commit-content .committer{
  color: var(--gl-text-color-subtle);
}
.commit-content .committer .commit-author-link{
  color: var(--gl-text-color-default);
}
.commit-content .committer.gl-inline-flex {
  gap: 0.5ch;
}
.commit-content .committer .commit-author-link {
  max-width: 19ch;
}

.commit-nav-buttons {
  margin: 0 0.5rem;
}
.commit-nav-buttons a.btn:last-child > svg,
.commit-nav-buttons button:last-child > svg {
  margin-left: 0.25rem;
  margin-right: 0;
}

.commit a,
.generic-commit-status a{
  color: var(--gl-text-color-default);
}
.commit .commit-row-description,
.generic-commit-status .commit-row-description {
  display: none;
  flex: 1;
}
.commit .commit-row-description a,
.generic-commit-status .commit-row-description a {
  color: #2566b5;
}
.commit.inline-commit .commit-row-title,
.generic-commit-status.inline-commit .commit-row-title {
  font-size: 13px;
}

.branch-commit .commit-icon {
  text-align: center;
  display: inline-block;
}
.branch-commit .commit-icon svg {
  height: 14px;
  width: 14px;
  vertical-align: middle;
  fill: var(--gl-icon-color-subtle);
}

.commit .commit-sha,
.generic-commit-status .commit-sha,
.branch-commit .commit-sha{
  color: var(--gl-text-color-link);
}

.signature-badge:hover {
  text-decoration: none;
}
.header-main-content .signature-badge {
  margin-right: 0.25rem;
}

.gpg-popover-certificate-details ul {
  padding-left: 16px;
}
.gpg-popover-certificate-details li.unstyled {
  list-style-type: none;
}

.signature-popover {
  display: flex;
  align-items: center;
  font-weight: 400;
  line-height: 1.5;
}

/**
 * Dashboard events feed
 *
 */
.event-item {
  font-size: 14px;
  padding: 16px 0 16px 2.5rem;
  border-bottom: 1px solid #ecebea;
  color: var(--gl-text-color-subtle);
  position: relative;
  line-height: 20px;
}
.event-item .system-note-image {
  position: absolute;
  left: 0;
}
.event-item .system-note-image svg{
  fill: var(--gl-icon-color-subtle);
}
.event-item .system-note-image-inline svg{
  fill: var(--gl-icon-color-subtle);
}
.event-item .system-note-image.opened-icon svg, .event-item .system-note-image.created-icon svg, .event-item .system-note-image.transferred-icon svg,
.event-item .system-note-image-inline.opened-icon svg,
.event-item .system-note-image-inline.created-icon svg,
.event-item .system-note-image-inline.transferred-icon svg{
  fill: var(--gl-status-success-icon-color);
}
.event-item .system-note-image.closed-icon svg,
.event-item .system-note-image-inline.closed-icon svg{
  fill: var(--gl-status-danger-icon-color);
}
.event-item .system-note-image.accepted-icon svg, .event-item .system-note-image.commented-on-icon svg,
.event-item .system-note-image-inline.accepted-icon svg,
.event-item .system-note-image-inline.commented-on-icon svg{
  fill: var(--gl-status-info-icon-color);
}
.event-item .event-user-info {
  margin-bottom: 4px;
}
.event-item .event-user-info .author-name a{
  color: var(--gl-text-color-default);
  font-weight: 600;
}
.event-item .event-title{
  overflow-wrap: anywhere;
}
.event-item .event-title .event-title-block::first-letter {
  text-transform: capitalize;
}
.event-item .event-body {
  margin-top: 4px;
  color: var(--gl-text-color-default);
}
.event-item .event-body .event-note {
  word-wrap: break-word;
}
.event-item .event-body .event-note .md {
  font-size: 14px;
}
.event-item .event-body .event-note code {
  white-space: pre-wrap;
}
.event-item .event-body .event-note pre {
  border: 0;
  border-radius: 0;
  color: var(--gl-text-color-subtle);
  background-color: var(--gl-background-color-subtle);
  overflow: hidden;
}
.event-item .event-body .event-note .note-image-attach {
  margin-top: 4px;
  margin-left: 0;
  max-width: 200px;
  float: none;
}
.event-item .event-body .event-note p:last-child {
  margin-bottom: 0;
}
.event-item:last-child {
  border: 0;
}
.event-item .event-commits li.commit {
  background: transparent;
  padding: 0;
  border: 0;
}
.event-item .event-commits li.commit .commit-row-title {
  font-size: 14px;
}
.event-item .event-commits li.commits-stat {
  display: block;
  padding: 0 3px 0 0;
}
.event-item .event-commits li.commits-stat:hover {
  background: none;
}
.event-item .event-commits li.commits-stat a{
  color: var(--gl-text-color-link);
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .event-item .event-item-timestamp {
    float: right;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .event-item .event-item-timestamp {
    float: right;
  }
}

.project-activity .event-scope {
  display: none;
}

.project-activity-item:not(:last-of-type) {
  position: relative;
}
.project-activity-item:not(:last-of-type)::before {
  content: "";
  position: absolute;
  width: 2px;
  left: 15px;
  top: 0px;
  height: calc(100% - 0px);
  top: auto;
  background-color: var(--gl-background-color-strong);
}

.dashboard .side .card .card-header .input-group .form-control {
  height: 42px;
}

.groups-list {
  margin: 5px 0;
  padding: 0;
  list-style: none;
}
.groups-list > li::after {
  display: block;
  clear: both;
  content: "";
}
.groups-list > li {
  padding: 10px 0;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-subtle);
  display: block;
  margin: 0;
}
.groups-list > li:last-child {
  border-bottom: 0;
}
.groups-list > li.active{
  background-color: var(--gl-background-color-subtle);
}
.groups-list > li.active a{
  font-weight: var(--gl-font-weight-bold);
}
.groups-list > li.hide {
  display: none;
}
.groups-list > li.light a{
  color: var(--gl-text-color-default);
}

.group-root-path {
  max-width: 40vw;
  overflow: hidden;
  text-overflow: ellipsis;
  word-wrap: nowrap;
}

.group-row .description p {
  margin-bottom: 0;
  color: var(--gl-text-color-subtle);
}

.save-group-loader {
  margin-top: 3rem;
  margin-bottom: 3rem;
  color: var(--gl-text-color-subtle);
}

.issue-token-link[href] {
  color: #2566b5;
}
.issue-token-link:hover, .issue-token-link:focus-visible {
  outline: none;
  text-decoration: none;
}

.issue-token-reference {
  margin-right: 1px;
  background-color: var(--gl-background-color-subtle);
  transition: background 100ms linear, color 100ms linear;
}
.issue-token:hover .issue-token-reference, .issue-token-link:focus-visible > .issue-token-reference{
  background-color: var(--gl-background-color-strong);
  color: #254581;
  text-decoration: none;
}

.issue-token-title{
  background-color: var(--gl-background-color-strong);
  transition: background 100ms linear;
}
.issue-token:hover .issue-token-title, .issue-token-link:focus-visible > .issue-token-title {
  background-color: #dcdbd9;
}

.issue-token-remove-button{
  background-color: var(--gl-background-color-strong);
  transition: background 100ms linear;
}
.issue-token-remove-button:hover, .issue-token-remove-button:focus-visible, .issue-token:hover .issue-token-remove-button, .issue-token-link:focus-visible + .issue-token-remove-button {
  background-color: #dcdbd9;
  outline: none;
}

.issue-realtime-pre-pulse {
  opacity: 0;
}

.issue-realtime-trigger-pulse {
  transition: opacity 200ms linear;
  opacity: 1;
}

ul.related-merge-requests > li gl-emoji {
  font-size: 1em;
}

.merge-request-status.merged {
  color: #1f73ca;
}
.merge-request-status.closed{
  color: var(--gl-text-color-danger);
}
.merge-request-status.open{
  color: var(--gl-text-color-success);
}

.merge-request.closed, .merge-request.merged,
.issue.closed,
.issue.merged{
  background-color: var(--gl-background-color-subtle);
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .detail-page-header .issuable-meta {
    line-height: 18px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .detail-page-header .issuable-meta {
    line-height: 18px;
  }
}
.recaptcha {
  margin-bottom: 30px;
}

.new-branch-col .discussion-filter-container:not(:last-child) {
  margin-right: 0.5rem;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .new-branch-col {
    width: 100%;
  }
  :where(html.with-gl-container-queries) .new-branch-col > div:not(:last-child) {
    margin-bottom: 0.5rem;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .new-branch-col {
    width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .new-branch-col > div:not(:last-child) {
    margin-bottom: 0.5rem;
  }
}

.create-mr-dropdown-wrap .ref::selection {
  color: #8a8888;
}
.create-mr-dropdown-wrap .dropdown .dropdown-menu-toggle {
  min-width: 285px;
}
.create-mr-dropdown-wrap .dropdown .dropdown-select {
  width: 285px;
}
.create-mr-dropdown-wrap .btn-group:not(.hidden) {
  display: flex;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .create-mr-dropdown-wrap .btn-group:not(.hidden) .btn.btn-confirm {
    justify-content: flex-start;
  }
  :where(html.with-gl-container-queries) .create-mr-dropdown-wrap .btn-group:not(.hidden) .btn.btn-confirm.dropdown-toggle {
    flex-grow: 0;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .create-mr-dropdown-wrap .btn-group:not(.hidden) .btn.btn-confirm {
    justify-content: flex-start;
  }
  :where(html:not(.with-gl-container-queries)) .create-mr-dropdown-wrap .btn-group:not(.hidden) .btn.btn-confirm.dropdown-toggle {
    flex-grow: 0;
  }
}
.create-mr-dropdown-wrap .js-create-merge-request {
  flex-grow: 1;
  flex-shrink: 0;
}
.create-mr-dropdown-wrap .create-merge-request-dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  display: none;
  margin-top: 4px;
}

.discussion-reply-holder,
.note-edit-form {
  display: block;
}

@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .emoji-block .row {
    display: flex;
  }
  :where(html.with-gl-container-queries) .emoji-block .row .new-branch-col {
    padding-bottom: 0;
    align-self: flex-end;
  }
  :where(html.with-gl-container-queries) .create-mr-dropdown-wrap .btn-group:not(.hidden) {
    display: inline-flex;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .emoji-block .row {
    display: flex;
  }
  :where(html:not(.with-gl-container-queries)) .emoji-block .row .new-branch-col {
    padding-bottom: 0;
    align-self: flex-end;
  }
  :where(html:not(.with-gl-container-queries)) .create-mr-dropdown-wrap .btn-group:not(.hidden) {
    display: inline-flex;
  }
}
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .new-branch-col {
    text-align: right;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .new-branch-col {
    text-align: right;
  }
}
.issue-sticky-header {
  left: 0;
  right: var(--application-bar-right);
  width: auto;
  top: 0;
}
.right-sidebar-collapsed .issue-sticky-header {
  padding-right: 62px;
}
.right-sidebar-expanded .issue-sticky-header {
  padding-right: 290px;
}

.limit-container-width .issue-sticky-header-text {
  max-width: 1006px;
}

.issue-sticky-header-text {
  padding: 0 var(--container-padding-x);
}

.issuable-header-slide-enter-active,
.issuable-header-slide-leave-active{
  transition-property: all;
  transition-timing-function: ease;
  transition-duration: 200ms;
}

.issuable-header-slide-enter,
.issuable-header-slide-leave-to {
  transform: translateY(-100%);
}

.issuable-sticky-header-visible {
  --issuable-sticky-header-height: 40px;
}

.md-header-preview {
  z-index: 1;
  position: sticky;
  top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) + var(--layout-sticky-header-height, 0px) + var(--issuable-sticky-header-height, 0px) - 2px);
  margin-left: 1px;
  background-color: var(--gl-background-color-default);
}

.detail-page-description .md-header {
  top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
}

.gl-drawer .md-header {
  top: 0;
}

.gl-modal .md-header {
  top: -8px;
}

.work-item-detail:not(:has(.issue-sticky-header)) .md-header {
  top: 0;
}

/**
 * Note Form
 */
.diff-file .new-note,
.discussion .new-note {
  margin: 0;
  border: 0;
}

.new-note .note-form-actions,
.note-edit-form .note-form-actions {
  position: relative;
  margin: 16px 0 0;
}
.new-note img,
.note-edit-form img {
  max-width: 100%;
}

.note-textarea {
  display: block;
  padding: 10px 16px;
  color: var(--gl-text-color-default);
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  border: 0;
}
.note-textarea:focus-visible {
  outline: 0;
}

.gfm-form .note-textarea, .md .ProseMirror {
  overflow-y: auto !important;
  resize: vertical !important;
  max-height: 70vh !important;
}

.note-image-attach {
  margin-left: 45px;
  float: none;
}

.common-note-form .md-area-wrapper{
  background-color: var(--gl-background-color-default);
}
.common-note-form .md-area{
  border-radius: var(--gl-border-radius-lg);
  border: 1px solid var(--gl-control-border-color-default);
  background: var(--gl-control-background-color-default);
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.common-note-form .md-area.is-dropzone-hover {
  border-color: #0d8070;
  box-shadow: 0 0 2px var(--gl-color-alpha-dark-24), 0 0 4px rgba(13, 128, 112, 0.4);
}
.common-note-form .md-area.is-dropzone-hover .comment-toolbar,
.common-note-form .md-area.is-dropzone-hover .nav-links {
  border-color: #0d8070;
}
.common-note-form .md-area:hover, .common-note-form .md-area:focus-within{
  --tw-shadow: var(--gl-shadow-md);
  --tw-shadow-colored: var(--gl-shadow-md);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.common-note-form .md-area:hover {
  border: 1px solid #747273;
}
.common-note-form .md-area:focus-within {
  border: 1px solid #28272d;
}
.common-note-form .md-area .zen-backdrop:not(.fullscreen) textarea {
  width: calc(100% - 4px);
  margin: 2px;
  padding-left: calc(1rem - 2px);
}
.gl-dark .common-note-form .md-area .zen-backdrop:not(.fullscreen) textarea {
  width: calc(100% - 6px);
  margin: 2px 3px;
  padding-left: calc(1rem - 3px);
}
.gl-dark .common-note-form .md-area .zen-backdrop:not(.fullscreen) textarea.note-textarea-rounded-bottom {
  margin-bottom: 3px;
  border-bottom-right-radius: .25rem;
  border-bottom-left-radius: .25rem;
}
.common-note-form .md-area .zen-backdrop:not(.fullscreen) textarea:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.common-note-form .md-area .note-textarea-rounded-bottom {
  border-bottom-left-radius: calc(8px - 3px);
  border-bottom-right-radius: calc(8px - 3px);
}
.common-note-form.is-invalid .md-area {
  border-color: var(--red-500, #de1d4b);
}

.md-header {
  min-height: 32px;
}

.md-header .nav-links {
  display: flex;
  flex-flow: row wrap;
  width: 100%;
}
.md-header .nav-links .gl-float-right {
  margin-left: auto;
}

.md-header .gl-tabs-nav {
  border-bottom: 0;
}

.issuable-note-warning {
  color: #b34013;
  background-color: #fdf0d5;
  border-top-left-radius: var(--gl-border-radius-lg);
  border-top-right-radius: var(--gl-border-radius-lg);
  border-bottom-right-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
  padding: 3px 12px;
  margin: auto;
  align-items: center;
}
.issuable-note-warning a {
  color: #b34013;
  text-decoration: underline;
}
.issuable-note-warning .icon {
  margin-right: 4px;
  vertical-align: text-bottom;
  fill: #b34013;
}
.issuable-note-warning + .md-area{
  border-top-width: 0px;
}
.issuable-note-warning .disabled-comment {
  border: 0;
  border-radius: 100px;
  padding-top: 6px;
  padding-bottom: 6px;
}

.sidebar-item-icon{
  border-radius: .25rem;
  margin: 0 5px 0 0;
  vertical-align: text-bottom;
}
.sidebar-item-icon.is-active {
  fill: #b34013;
}
.sidebar-collapsed-icon .sidebar-item-icon {
  margin: 0;
}
.sidebar-item-value .sidebar-item-icon{
  fill: var(--gl-icon-color-subtle);
}

.sidebar-item-warning-message {
  line-height: 1.5;
  padding: 16px;
}
.sidebar-item-warning-message .text{
  color: var(--gl-text-color-default);
}
.sidebar-item-warning-message .sidebar-item-warning-message-actions {
  display: flex;
}
.sidebar-item-warning-message .sidebar-item-warning-message-actions .btn {
  flex-grow: 1;
}

.discussion-form{
  background-color: var(--gl-background-color-default);
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .discussion-form .user-avatar-link {
    display: none;
  }
  :where(html.with-gl-container-queries) .discussion-form .note-edit-form {
    margin-left: 0;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .discussion-form .user-avatar-link {
    display: none;
  }
  :where(html:not(.with-gl-container-queries)) .discussion-form .note-edit-form {
    margin-left: 0;
  }
}

table .discussion-form-container {
  padding: 16px;
}

.discussion-notes .disabled-comment{
  padding: var(--gl-spacing-scale-0);
}

@container (width < 768px) {
  :where(html.with-gl-container-queries) .notes.notes-form > li.timeline-entry {
    padding: 0;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .notes.notes-form > li.timeline-entry {
    padding: 0;
  }
}
@container (width < 992px) {
  :where(html.with-gl-container-queries) .notes-content.parallel .notes.notes-form > li.timeline-entry {
    padding: 0;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .notes-content.parallel .notes.notes-form > li.timeline-entry {
    padding: 0;
  }
}
@container (width < 768px) {
  :where(html.with-gl-container-queries) .notes.notes-form > li.timeline-entry .timeline-content {
    margin: 0;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .notes.notes-form > li.timeline-entry .timeline-content {
    margin: 0;
  }
}
@container (width < 992px) {
  :where(html.with-gl-container-queries) .notes-content.parallel .notes.notes-form > li.timeline-entry .timeline-content {
    margin: 0;
  }
}
@media (width < 992px) {
  :where(html:not(.with-gl-container-queries)) .notes-content.parallel .notes.notes-form > li.timeline-entry .timeline-content {
    margin: 0;
  }
}
.notes.notes-form > li.timeline-entry .timeline-entry-inner {
  border: 0;
}

.snippets.note-edit-form {
  display: none;
}

.note-edit-form {
  font-size: 14px;
}
.note-edit-form .md-area-wrapper{
  background-color: var(--gl-background-color-subtle);
}

.js-note-attachment-delete {
  display: none;
}

.error-alert > .alert {
  margin-top: 5px;
  margin-bottom: 5px;
}
.error-alert > .alert.alert-dismissable .close {
  color: #fff;
  opacity: 0.85;
  font-weight: 400;
}
.error-alert > .alert.alert-dismissable .close:hover {
  opacity: 1;
}

.discussion-body .notes .timeline-entry:first-of-type + .discussion-reply-holder {
  padding-top: 16px !important;
}

.discussion-body .discussion-reply-holder,
.diff-file .discussion-reply-holder,
.commit-diff .discussion-reply-holder {
  padding: 0 16px 12px 16px;
  border-top-left-radius: var(--gl-border-radius-none);
  border-top-right-radius: var(--gl-border-radius-none);
  border-bottom-right-radius: var(--gl-border-radius-lg);
  border-bottom-left-radius: var(--gl-border-radius-lg);
}
.discussion-body .discussion-reply-holder + .new-note,
.diff-file .discussion-reply-holder + .new-note,
.commit-diff .discussion-reply-holder + .new-note{
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  border-top-color: var(--gl-border-color-subtle);
}
.discussion-body .discussion-reply-holder.internal-note, .discussion-body .discussion-reply-holder.internal-note.is-replying,
.diff-file .discussion-reply-holder.internal-note,
.diff-file .discussion-reply-holder.internal-note.is-replying,
.commit-diff .discussion-reply-holder.internal-note,
.commit-diff .discussion-reply-holder.internal-note.is-replying {
  padding-top: 12px !important;
}
.discussion-body .discussion-reply-holder .user-avatar-link img,
.diff-file .discussion-reply-holder .user-avatar-link img,
.commit-diff .discussion-reply-holder .user-avatar-link img {
  margin-top: -3px;
}

.code-commit .discussion-notes .notes .note-comment:first-child{
  background-color: var(--gl-background-color-default);
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-subtle);
}
.gl-dark .code-commit .discussion-notes .notes .note-comment:first-child{
  background-color: var(--gl-background-color-strong);
  border-bottom-color: var(--gl-border-color-default);
}

.code-commit .discussion-notes .notes .note-comment:first-child + .discussion-reply-holder,
.code-commit .discussion-notes .notes .note-comment:first-child + .discussion-reply-holder + .discussion-reply-holder {
  margin-top: 16px;
}

.code-commit .discussion-reply-holder,
.diff-td > .content > .discussion-reply-holder {
  padding-top: 12px;
  background-color: var(--gl-background-color-subtle);
  border-bottom-right-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
}

@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .discussion-with-resolve-btn {
    display: flex;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .discussion-with-resolve-btn {
    display: flex;
  }
}
.discussion-with-resolve-btn .discussion-actions {
  display: table;
}
.discussion-with-resolve-btn .discussion-actions .btn-group {
  display: table-cell;
}
.discussion-with-resolve-btn .discussion-actions .btn-group:first-child {
  padding-right: 0;
}
.discussion-with-resolve-btn .discussion-actions .btn-group:first-child:not(:last-child) > div {
  border-right: 0;
}

.discussion-reply-holder .reply-placeholder-text-field{
  background-color: var(--gl-background-color-default);
  border-radius: .25rem;
  width: 100%;
  resize: none;
  padding: 8px 12px;
  line-height: 1;
  border: 1px solid #c1bfbe;
  overflow: hidden;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .discussion-reply-holder .reply-placeholder-text-field {
    margin-bottom: 8px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .discussion-reply-holder .reply-placeholder-text-field {
    margin-bottom: 8px;
  }
}
.discussion-reply-holder .reply-placeholder-text-field:hover {
  border: 1px solid #747273;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .discussion-reply-holder .reply-placeholder-input-field {
    margin-bottom: 8px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .discussion-reply-holder .reply-placeholder-input-field {
    margin-bottom: 8px;
  }
}

.comment-toolbar{
  color: var(--gl-text-color-subtle);
}

.toolbar-button {
  padding: 0;
  background: none;
  border: 0;
  font-size: 14px;
  line-height: 16px;
}
.toolbar-button:hover, .toolbar-button:focus-visible{
  color: var(--gl-text-color-link);
  outline: 0;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .toolbar-button {
    float: left;
    margin-right: 16px;
  }
  :where(html.with-gl-container-queries) .toolbar-button:last-child {
    float: right;
    margin-right: 0;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .toolbar-button {
    float: left;
    margin-right: 16px;
  }
  :where(html:not(.with-gl-container-queries)) .toolbar-button:last-child {
    float: right;
    margin-right: 0;
  }
}

.toolbar-text {
  font-size: 14px;
  line-height: 2rem;
}

.note-form-actions{
  color: var(--gl-text-color-default);
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .note-form-actions .btn {
    float: none;
    width: 100%;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .note-form-actions .btn {
    float: none;
    width: 100%;
  }
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .comment-type-dropdown {
    display: flex;
    width: 100%;
    margin-bottom: 10px;
  }
  :where(html.with-gl-container-queries) .comment-type-dropdown .dropdown-toggle {
    flex-grow: 0;
    flex-shrink: 1;
    width: auto;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .comment-type-dropdown {
    display: flex;
    width: 100%;
    margin-bottom: 10px;
  }
  :where(html:not(.with-gl-container-queries)) .comment-type-dropdown .dropdown-toggle {
    flex-grow: 0;
    flex-shrink: 1;
    width: auto;
  }
}

.uploading-container {
  float: right;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .uploading-container {
    float: left;
    margin-top: 5px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .uploading-container {
    float: left;
    margin-top: 5px;
  }
}
.uploading-container button {
  font-size: 0.75rem !important;
}

.uploading-error-icon,
.uploading-error-message{
  color: var(--gl-text-color-danger);
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .uploading-error-message::after {
    content: "\a";
    white-space: pre;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .uploading-error-message::after {
    content: "\a";
    white-space: pre;
  }
}

.uploading-progress {
  margin-right: 5px;
}

.markdown-selector{
  color: var(--gl-text-color-link);
}

.comment-warning-wrapper {
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

.text-file .notes-content{
  border-bottom-right-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
}

.immersive .gfm-form .note-textarea:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}
.immersive .gfm-form .note-textarea {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: var(--immersive-editor-text-width);
  resize: none !important;
  height: auto;
  max-height: none !important;
}

/**
 * !! NOTE: Do not add more code in this file:
 *
 * https://gitlab.com/gitlab-org/gitlab/-/issues/267602
 *
 * For new pipeline CSS please consider:
 *
 * For pipelines tables and lists:
 * - `app/assets/stylesheets/page_bundles/pipelines.scss`
 *
 * For individual pipelines and mini-pipelines:
 * - `app/assets/stylesheets/page_bundles/pipeline.scss`
 *
**/
.ci-table .avatar {
  margin-left: 0;
  float: none;
}
.ci-table .branch-commit .ref-name {
  font-weight: 600;
  max-width: 100px;
  overflow: hidden;
  display: inline-block;
  white-space: nowrap;
  vertical-align: middle;
  text-overflow: ellipsis;
}
.ci-table .branch-commit svg {
  height: 14px;
  width: 14px;
  vertical-align: middle;
  fill: var(--gl-icon-color-subtle);
}
.ci-table .branch-commit .sprite {
  width: 12px;
  height: 12px;
  fill: var(--gl-icon-color-default);
}
.ci-table .branch-commit .commit-sha {
  color: #2566b5;
}
.ci-table .branch-commit .badge {
  margin-right: 4px;
}
.ci-table .duration,
.ci-table .finished-at{
  color: var(--gl-text-color-subtle);
  margin: 0;
  white-space: nowrap;
}
.ci-table .build-link a{
  color: var(--gl-text-color-default);
}

.visibility-level-setting .option-disabled-reason {
  display: none;
}
.visibility-level-setting .disabled svg {
  opacity: 0.5;
}
.visibility-level-setting .disabled .option-description {
  display: none;
}
.visibility-level-setting .disabled .option-disabled-reason {
  display: block;
}

.saml-settings.info-well .form-control[readonly] {
  background: var(--white, #fff);
}

.doorkeeper-authorize {
  max-width: 31.25rem;
}

.settings-section::after {
  content: "";
  display: block;
  padding-bottom: 2rem;
}

.settings-section,
.settings-section-no-bottom ~ .settings-section {
  padding-top: 0;
}

.flash-container + .settings-section{
  padding-top: var(--gl-spacing-scale-1);
}

.settings-section:not(.settings-section-no-bottom) ~ .settings-section{
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  padding-top: var(--gl-spacing-scale-6);
}

.settings-section-no-bottom::after {
  padding-bottom: 0 !important;
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .settings-section-no-bottom::after{
    padding-bottom: var(--gl-spacing-scale-5);
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .settings-section-no-bottom::after{
    padding-bottom: var(--gl-spacing-scale-5);
  }
}

.settings-sticky-header {
  z-index: 98;
  position: sticky;
  top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
  min-height: 3rem;
  background-color: var(--gl-background-color-default);
  padding-top: var(--gl-spacing-scale-3);
  padding-bottom: var(--gl-spacing-scale-3);
}
.settings-sticky-header::before {
  content: "";
  z-index: -1;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 1px);
  background-color: var(--gl-background-color-default);
}
.settings-sticky-header::after {
  content: "";
  z-index: -2;
  display: block;
  position: sticky;
  top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) + 2.5rem);
  left: 0;
  margin-top: -2px;
  width: 100%;
  height: 1px;
  box-shadow: 0 0.5rem 0 var(--gl-border-color-default);
}

.settings-sticky-footer {
  z-index: 99;
  position: sticky;
  bottom: 0;
  min-height: 2.5rem;
  background-color: var(--gl-background-color-default);
  padding-top: var(--gl-spacing-scale-3);
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
}

.settings-sticky-header:first-of-type:last-of-type {
  position: static;
}

.avatar,
.avatar-container {
  float: left;
  margin-right: 8px;
  border-radius: 50%;
}
.avatar.s16,
.avatar-container.s16 {
  width: 16px;
  height: 16px;
  margin-right: 8px;
}
.avatar.s20,
.avatar-container.s20 {
  width: 20px;
  height: 20px;
  margin-right: 8px;
}
.avatar.s24,
.avatar-container.s24 {
  width: 24px;
  height: 24px;
  margin-right: 8px;
}
.avatar.s26,
.avatar-container.s26 {
  width: 26px;
  height: 26px;
  margin-right: 8px;
}
.avatar.s32,
.avatar-container.s32 {
  width: 32px;
  height: 32px;
  margin-right: 8px;
}
.avatar.s40,
.avatar-container.s40 {
  width: 40px;
  height: 40px;
  margin-right: 8px;
}
.avatar.s48,
.avatar-container.s48 {
  width: 48px;
  height: 48px;
  margin-right: 16px;
}
.avatar.s60,
.avatar-container.s60 {
  width: 60px;
  height: 60px;
  margin-right: 16px;
}
.avatar.s64,
.avatar-container.s64 {
  width: 64px;
  height: 64px;
  margin-right: 16px;
}
.avatar.s90,
.avatar-container.s90 {
  width: 90px;
  height: 90px;
  margin-right: 16px;
}
.avatar.s96,
.avatar-container.s96 {
  width: 96px;
  height: 96px;
  margin-right: 16px;
}
.avatar.s100,
.avatar-container.s100 {
  width: 100px;
  height: 100px;
  margin-right: 16px;
}
.avatar.s160,
.avatar-container.s160 {
  width: 160px;
  height: 160px;
  margin-right: 16px;
}

.avatar {
  transition-property: none;
  width: 32px;
  height: 32px;
  padding: 0;
  background: var(--gl-background-color-subtle);
  overflow: hidden;
  box-shadow: inset 0 0 0 1px var(--gl-avatar-border-color-default);
}
.avatar.avatar-inline {
  float: none;
  display: inline-block;
  margin-left: 2px;
  flex-shrink: 0;
}
.avatar.avatar-inline.s16, .avatar.avatar-inline.s24 {
  margin-right: 4px;
}
.avatar.center {
  font-size: 14px;
  line-height: 1.8em;
  text-align: center;
}
.avatar.avatar-tile {
  border-radius: 0;
  border: 0;
}

.identicon {
  text-align: center;
  vertical-align: top;
  color: var(--gl-text-color-strong);
  background-color: var(--gl-avatar-fallback-background-color-neutral);
}
.identicon.s16 {
  font-size: 10px;
  line-height: 16px;
}
.identicon.s24 {
  font-size: 12px;
  line-height: 24px;
}
.identicon.s26 {
  font-size: 20px;
  line-height: 1.33;
}
.identicon.s32 {
  font-size: 14px;
  line-height: 32px;
}
.identicon.s40 {
  font-size: 16px;
  line-height: 38px;
}
.identicon.s48 {
  font-size: 20px;
  line-height: 48px;
}
.identicon.s60 {
  font-size: 32px;
  line-height: 60px;
}
.identicon.s64 {
  font-size: 28px;
  line-height: 64px;
}
.identicon.s90 {
  font-size: 36px;
  line-height: 90px;
}
.identicon.s96 {
  font-size: 36px;
  line-height: 94px;
}
.identicon.s100 {
  font-size: 36px;
  line-height: 98px;
}
.identicon.s160 {
  font-size: 96px;
  line-height: 158px;
}
.identicon.bg1 {
  color: var(--gl-avatar-fallback-text-color-red);
  background-color: var(--gl-avatar-fallback-background-color-red);
}
.identicon.bg2 {
  color: var(--gl-avatar-fallback-text-color-purple);
  background-color: var(--gl-avatar-fallback-background-color-purple);
}
.identicon.bg3 {
  color: var(--gl-avatar-fallback-text-color-purple);
  background-color: var(--gl-avatar-fallback-background-color-purple);
}
.identicon.bg4 {
  color: var(--gl-avatar-fallback-text-color-blue);
  background-color: var(--gl-avatar-fallback-background-color-blue);
}
.identicon.bg5 {
  color: var(--gl-avatar-fallback-text-color-green);
  background-color: var(--gl-avatar-fallback-background-color-green);
}
.identicon.bg6 {
  color: var(--gl-avatar-fallback-text-color-orange);
  background-color: var(--gl-avatar-fallback-background-color-orange);
}
.identicon.bg7 {
  color: var(--gl-avatar-fallback-text-color-neutral);
  background-color: var(--gl-avatar-fallback-background-color-neutral);
}

.avatar-container {
  overflow: hidden;
  display: flex;
}
.avatar-container a {
  width: 100%;
  height: 100%;
  display: flex;
  text-decoration: none;
}
.avatar-container .avatar {
  border-radius: 0;
  border: 0;
  height: auto;
  width: 100%;
  margin: 0;
  align-self: center;
}
.avatar-container.s40 {
  min-width: 40px;
  min-height: 40px;
}
.avatar-container.s64 {
  min-width: 64px;
  min-height: 64px;
}

.rect-avatar {
  border-radius: 2px;
}
.rect-avatar.s16 {
  border-radius: 2px;
}
.rect-avatar.s16 .avatar {
  border-radius: 2px;
}
.rect-avatar.s20 {
  border-radius: 2px;
}
.rect-avatar.s20 .avatar {
  border-radius: 2px;
}
.rect-avatar.s24 {
  border-radius: 0.25rem;
}
.rect-avatar.s24 .avatar {
  border-radius: 0.25rem;
}
.rect-avatar.s26 {
  border-radius: 0.25rem;
}
.rect-avatar.s26 .avatar {
  border-radius: 0.25rem;
}
.rect-avatar.s32 {
  border-radius: 0.25rem;
}
.rect-avatar.s32 .avatar {
  border-radius: 0.25rem;
}
.rect-avatar.s40 {
  border-radius: 0.25rem;
}
.rect-avatar.s40 .avatar {
  border-radius: 0.25rem;
}
.rect-avatar.s48 {
  border-radius: 8px;
}
.rect-avatar.s48 .avatar {
  border-radius: 8px;
}
.rect-avatar.s60 {
  border-radius: 8px;
}
.rect-avatar.s60 .avatar {
  border-radius: 8px;
}
.rect-avatar.s64 {
  border-radius: 8px;
}
.rect-avatar.s64 .avatar {
  border-radius: 8px;
}
.rect-avatar.s90 {
  border-radius: 8px;
}
.rect-avatar.s90 .avatar {
  border-radius: 8px;
}
.rect-avatar.s96 {
  border-radius: 8px;
}
.rect-avatar.s96 .avatar {
  border-radius: 8px;
}
.rect-avatar.s100 {
  border-radius: 8px;
}
.rect-avatar.s100 .avatar {
  border-radius: 8px;
}
.rect-avatar.s160 {
  border-radius: 8px;
}
.rect-avatar.s160 .avatar {
  border-radius: 8px;
}

.avatar-counter {
  background-color: #8a8888;
  color: #fff;
  border: 1px solid #ecebea;
  border-radius: 1em;
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 9px;
  line-height: 16px;
  text-align: center;
}

.user-popover.user-popover-cannot-merge .popover-header{
  color: var(--gl-feedback-warning-text-color);
  background-color: var(--gl-feedback-warning-background-color);
}
.user-popover.user-popover-recommendation .popover-header{
  color: var(--gl-feedback-info-text-color);
}
.duo-chat-message-container:has(.duo-chat-message.user-popover.user-popover-recommendation .popover-header) .duo-chat-message:not(:has(.error-icon)) {
  background-color: var(--duo-chat-bubble-background-color-default);
}
.duo-chat-message-container:has(.duo-chat-message.user-popover.user-popover-recommendation .popover-header) .duo-chat-message:not(:has(.error-icon)) p {
  color: var(--duo-chat-bubble-foreground-color-default);
}
.user-popover.user-popover-recommendation .popover-header{
  background-color: var(--gl-feedback-info-background-color);
}
.user-popover.user-popover-recommendation-busy .popover-header{
  background-color: var(--gl-background-color-subtle);
}

.action-card {
  position: relative;
  display: block;
  padding: 1rem;
  border-radius: 0.25rem;
  background-color: var(--gl-background-color-default);
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
}
.action-card .action-card-title {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-weight: 600;
  text-wrap: balance;
}
.action-card .action-card-title:is(.gl-link):not(:hover){
  color: var(--gl-text-color-default);
}
.action-card .action-card-title:is(.gl-link) {
  transition: color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.action-card .action-card-title:is(.gl-link)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.action-card .action-card-arrow {
  opacity: 0;
  translate: -0.25rem;
  transition: opacity 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), translate 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.action-card .action-card-text {
  margin-bottom: 0;
  margin-top: 0.25rem;
  text-wrap: balance;
}
.action-card .action-card-controls:not(:empty) {
  margin-top: 0.75rem;
}

.action-card-title:hover .action-card-arrow {
  opacity: 1;
  translate: 0;
}

@media (prefers-reduced-motion: reduce) {
  .action-card-title, .action-card-arrow {
    transition-duration: 0.01ms !important;
  }
}
@container dashboard-panel-body (height < 188px) {
  .dashboard-panel-body .analytics-panel-state-with-action .analytics-panel-state-description{
    display: none;
  }
}
@container dashboard-panel-body (height < 148px) {
  .dashboard-panel-body .analytics-panel-state{
    height: auto;
    align-items: flex-start;
    justify-content: flex-start;
    padding: var(--gl-spacing-scale-0);
    text-align: left;
  }
  .dashboard-panel-body .analytics-panel-state-icon{
    margin-left: var(--gl-spacing-scale-0);
    margin-right: var(--gl-spacing-scale-0);
    margin-bottom: var(--gl-spacing-scale-0);
    margin-right: var(--gl-spacing-scale-2);
    display: inline-block;
    vertical-align: middle;
  }
  .dashboard-panel-body .analytics-panel-state-title{
    font-size: var(--gl-font-size-lg);
    font-weight: var(--gl-font-weight-bold);
    line-height: 1rem;
  }
  .dashboard-panel-body .analytics-panel-state-action{
    margin-top: var(--gl-spacing-scale-3);
    align-self: flex-start;
  }
}
@container dashboard-panel-body (height < 48px) {
  .dashboard-panel-body .analytics-panel-state-description{
    display: none;
  }
}
.ProseMirror {
  width: calc(100% - 4px);
  padding-top: 0.75rem;
  padding-left: calc(1rem - 2px);
  padding-right: 1rem;
  margin: 2px;
  min-height: 140px;
  max-height: 55vh;
  position: static;
  overflow-y: auto;
  transition: box-shadow ease-in-out 0.15s;
}
.gl-dark .ProseMirror {
  width: calc(100% - 6px);
  padding-left: calc(1rem - 3px);
}
.ProseMirror ::selection{
  background-color: var(--blue-100);
}
.ProseMirror gl-emoji {
  -webkit-user-select: text;
          user-select: text;
}
.ProseMirror:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.ProseMirror .content-editor-selection,
.ProseMirror .ProseMirror-selectednode{
  background-color: var(--blue-100);
}
.ProseMirror .content-editor-selection.gfm-project_member:not(.current-user), .ProseMirror .content-editor-selection .gfm-project_member:not(.current-user),
.ProseMirror .ProseMirror-selectednode.gfm-project_member:not(.current-user),
.ProseMirror .ProseMirror-selectednode .gfm-project_member:not(.current-user){
  background-color: var(--blue-200);
}
.ProseMirror .content-editor-selection.gfm-project_member,
.ProseMirror .ProseMirror-selectednode.gfm-project_member {
  box-shadow: 0 0 0 2px var(--blue-100, #c8e0f9);
}
.ProseMirror hr.ProseMirror-selectednode {
  box-shadow: 0 0 0 2px var(--blue-100, #c8e0f9);
}
.ProseMirror .selectedCell .content-editor-selection,
.ProseMirror .selectedCell .ProseMirror-selectednode{
  background-color: transparent;
}
.ProseMirror pre > code {
  background-color: transparent;
}
.ProseMirror th[align] *, .ProseMirror td[align] * {
  text-align: inherit;
}
.ProseMirror td > [data-node-view-content] > [data-node-view-wrapper]:only-child :first-child,
.ProseMirror th > [data-node-view-content] > [data-node-view-wrapper]:only-child :first-child {
  margin-bottom: 0 !important;
}
.ProseMirror li :first-child,
.ProseMirror dd :first-child,
.ProseMirror dt :first-child,
.ProseMirror summary :first-child {
  margin-bottom: 0 !important;
}
.ProseMirror img.ProseMirror-selectednode,
.ProseMirror audio.ProseMirror-selectednode,
.ProseMirror .ProseMirror-selectednode audio,
.ProseMirror video.ProseMirror-selectednode,
.ProseMirror .ProseMirror-selectednode video {
  outline: 3px solid #9dc8f2;
  outline-offset: -3px;
}
.ProseMirror .ProseMirror-selectednode .iframe-embed,
.ProseMirror .content-editor-selection .iframe-embed {
  outline: 3px solid #9dc8f2;
}
.ProseMirror .selectedCell::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(157, 200, 242, 0.25);
  pointer-events: none;
}
.ProseMirror .image-resize-container {
  position: relative;
}
.ProseMirror .image-resize {
  display: inline-block;
  position: absolute;
  width: 8px;
  height: 8px;
  background: #9dc8f2;
  outline: 1px solid #fff;
}
.ProseMirror .image-resize::before {
  content: "";
  position: absolute;
  width: 24px;
  height: 24px;
  top: -8px;
  left: -8px;
}
.ProseMirror .image-resize-nw {
  top: -4px;
  left: -4px;
  cursor: nw-resize;
}
.ProseMirror .image-resize-ne {
  top: -4px;
  right: -4px;
  cursor: ne-resize;
}
.ProseMirror .image-resize-sw {
  bottom: -4px;
  left: -4px;
  cursor: sw-resize;
}
.ProseMirror .image-resize-se {
  bottom: -4px;
  right: -4px;
  cursor: se-resize;
}
.ProseMirror img.ProseMirror-selectednode {
  outline: 2px solid #9dc8f2;
  outline-offset: -2px;
}
.ProseMirror img,
.ProseMirror iframe {
  max-width: 100%;
  vertical-align: bottom;
}
.ProseMirror > ul {
  list-style-type: disc;
}
.ProseMirror > ul ul {
  list-style-type: circle;
}
.ProseMirror > ul ul ul {
  list-style-type: square;
}
.ProseMirror ul[data-type=taskList] {
  list-style: none;
  padding: 0;
}
.ProseMirror ul[data-type=taskList] ul,
.ProseMirror ul[data-type=taskList] ol,
.ProseMirror ul[data-type=taskList] p {
  margin-bottom: 0;
}
.ProseMirror ul[data-type=taskList] > li {
  display: flex;
  margin: 0;
}
.ProseMirror ul[data-type=taskList] > li > label,
.ProseMirror ul[data-type=taskList] > li > div {
  display: inline-block;
  vertical-align: top;
}
.ProseMirror ul[data-type=taskList] > li > label {
  padding: 0.125rem 0.5rem 0 0;
  margin: 0;
}
.ProseMirror ul[data-type=taskList] > li[data-inapplicable] * {
  text-decoration: line-through;
  color: var(--gl-text-color-disabled);
}
.ProseMirror ol[data-type=taskList] ul,
.ProseMirror ol[data-type=taskList] ol,
.ProseMirror ol[data-type=taskList] p {
  margin-bottom: 0;
}
.ProseMirror ol[data-type=taskList] > li {
  position: relative;
  padding-inline-start: 32px;
}
.ProseMirror ol[data-type=taskList] > li > label,
.ProseMirror ol[data-type=taskList] > li > div {
  display: inline-block;
  vertical-align: top;
}
.ProseMirror ol[data-type=taskList] > li > label {
  position: absolute;
  inset-inline-start: 8px;
  inset-block-start: 3px;
}
.ProseMirror ol[data-type=taskList] > li[data-inapplicable] * {
  text-decoration: line-through;
  color: var(--gl-text-color-disabled);
}
.ProseMirror .suggestion-added,
.ProseMirror .suggestion-deleted,
.ProseMirror .suggestion-added-input {
  white-space: pre-wrap;
}
.ProseMirror .suggestion-added > code,
.ProseMirror .suggestion-deleted > code,
.ProseMirror .suggestion-added-input > code {
  font-size: 13px;
  white-space: pre-wrap;
  padding: 0;
  display: flex;
}
.ProseMirror .suggestion-added-input{
  border-width: 1px;
  border-color: var(--gl-border-color-section);
}
.ProseMirror .suggestion-added-input > code {
  display: block;
  margin-left: 120px;
  background-color: transparent !important;
}
.ProseMirror .suggestion-added,
.ProseMirror .suggestion-deleted {
  width: 100%;
}
.ProseMirror .suggestion-added > code,
.ProseMirror .suggestion-deleted > code {
  border-left: 100px solid transparent;
  padding-left: 20px;
  border-radius: 0;
  background-color: var(--diff-addition-color) !important;
}
.ProseMirror .suggestion-added > code::before,
.ProseMirror .suggestion-deleted > code::before {
  content: attr(data-line-number);
  position: absolute;
  width: 100px;
  margin-left: -120px;
  text-align: right;
  padding-right: 10px;
  padding-left: 10px;
}
.ProseMirror .suggestion-added > code::after,
.ProseMirror .suggestion-deleted > code::after {
  content: "+";
  position: absolute;
  margin-left: -20px;
  width: 20px;
  text-align: center;
}
.ProseMirror .suggestion-added > code {
  color: rgba(255, 255, 255, 0);
}
.ProseMirror .suggestion-deleted {
  cursor: not-allowed;
  border-radius: var(--gl-border-radius-none);
}
.ProseMirror .suggestion-deleted > code {
  background-color: var(--diff-deletion-color) !important;
}
.ProseMirror .suggestion-deleted > code::before {
  padding-right: 60px;
}
.ProseMirror .suggestion-deleted > code::after {
  content: "-";
}
.ProseMirror .content-editor-code-block .hljs-addition {
  background-color: var(--diff-addition-color);
}
.ProseMirror .content-editor-code-block .hljs-deletion {
  background-color: var(--diff-deletion-color);
}
.ProseMirror .dl-content {
  width: 100%;
}
.ProseMirror .dl-content > li {
  list-style-type: none;
  margin-left: 1rem;
}
.ProseMirror .dl-content > li.dl-term {
  margin: 0;
  font-weight: 600;
}
.ProseMirror .details-toggle-icon {
  cursor: pointer;
  z-index: 1;
}
.ProseMirror .details-toggle-icon::before {
  content: "▶";
  display: inline-block;
  width: 0.75rem;
}
.ProseMirror .details-toggle-icon.is-open::before {
  content: "▼";
}
.ProseMirror .details-content {
  width: calc(100% - 0.75rem);
}
.ProseMirror .details-content > li {
  list-style-type: none;
  margin-left: 0.25rem;
}
.ProseMirror .details-content > :not(:first-child) {
  display: none;
}
.ProseMirror .details-content.is-open > :not(:first-child) {
  display: inherit;
}
.ProseMirror .gl-new-dropdown-inner li {
  margin-left: 0 !important;
}
.ProseMirror .gl-new-dropdown-inner li.gl-new-dropdown-item {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
.ProseMirror .markdown-alert > *:last-child *:only-child{
  margin-bottom: var(--gl-spacing-scale-0);
}

.md > .ProseMirror {
  margin: 2px;
}
.gl-dark .md > .ProseMirror {
  margin: 2px 3px;
}

.table-creator-grid-item {
  min-height: 1rem !important;
  min-width: 1rem !important;
}
.table-creator-grid-item.active {
  border-color: var(--gl-feedback-info-text-color) !important;
  background-color: var(--gl-feedback-info-background-color) !important;
  border-width: 2px;
}
.table-creator-grid-item:focus-visible {
  box-shadow: none !important;
}

.content-editor-switcher {
  min-height: 32px;
}

.content-editor-color-chip::after {
  content: " ";
  display: inline-block;
  align-items: center;
  width: 11px;
  height: 11px;
  border-radius: 3px;
  margin-left: 4px;
  margin-top: -2px;
  border-width: 1px;
  border-style: solid;
  border-color: var(--gl-color-alpha-dark-24);
  background-color: var(--gl-color-chip-color);
}

.content-editor-placeholder{
  border-radius: .25rem;
  border-width: 1px;
  border-style: dashed;
  border-color: var(--gl-border-color-default);
  padding-left: var(--gl-spacing-scale-2);
  padding-right: var(--gl-spacing-scale-2);
}
.content-editor-placeholder.content-editor-placeholder-selected{
  border-style: solid;
  border-color: var(--gl-focus-ring-outer-color);
}

.content-editor-comment::before {
  content: "\3c !--";
}
.content-editor-comment::after {
  content: "-->";
}

.content-editor-table-dropdown .gl-new-dropdown-panel {
  min-width: auto;
}

.content-editor-suggestions-dropdown .content-editor-suggestions-panel {
  width: max-content;
  max-width: min(28.5rem, 100vw - 2rem);
}
.content-editor-suggestions-dropdown .focused .content-editor-suggestions-item-content {
  box-shadow: inset 0 0 0 2px var(--gl-focus-ring-outer-color), inset 0 0 0 3px var(--gl-focus-ring-inner-color), inset 0 0 0 1px var(--gl-focus-ring-inner-color);
  outline: none;
}
@media (forced-colors: active) {
  .content-editor-suggestions-dropdown .focused .content-editor-suggestions-item-content {
    outline: 2px solid LinkText;
  }
}
.content-editor-suggestions-dropdown .focused .content-editor-suggestions-item-content {
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
}

.bubble-menu-form {
  min-width: 320px;
}

.ProseMirror p:has(mark) {
  position: relative;
  z-index: 0;
}

.immersive .rte-text-box > *, .immersive .placeholder {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: var(--immersive-editor-text-width, 768px);
}
.immersive .rte-text-box:focus-visible {
  background: inherit;
  box-shadow: none;
}
.immersive .md-area, .immersive .md-area:hover {
  border: 0 !important;
  box-shadow: none !important;
}
.immersive .rte-text-box {
  position: relative;
  max-height: none !important;
  resize: none !important;
}

.iframe-drag-placeholder {
  border: 2px solid #9dc8f2;
  border-radius: 0.25rem;
  background: #8a8888;
  position: absolute;
  top: -9999px;
}

.collaboration-cursor-caret{
  pointer-events: none;
  position: relative;
  overflow-wrap: normal;
  word-break: normal;
  margin-left: -1px;
  margin-right: -1px;
  border-left: 1px solid;
  border-right: 1px solid;
}

.collaboration-cursor-label{
  position: absolute;
  -webkit-user-select: none;
          user-select: none;
  white-space: nowrap;
  padding-left: var(--gl-spacing-scale-1);
  padding-right: var(--gl-spacing-scale-1);
  font-size: var(--gl-font-size-sm);
  font-weight: var(--gl-font-weight-bold);
  font-style: normal;
  color: var(--white);
  top: -1.4em;
  left: -1px;
  border-radius: 0.25rem 0.25rem 0.25rem 0;
  line-height: 1.4;
}

.grid-stack-item .dashboard-panel-body {
  container-name: dashboard-panel-body;
  container-type: size;
}

.deployment-instance {
  width: 16px;
  height: 16px;
  margin: 1px;
  border: 1px solid;
  border-radius: 2px;
  position: relative;
}

.deployment-instance-succeeded {
  background-color: #0c7265;
  border-color: #075048;
}
.deployment-instance-succeeded.link:hover {
  background-color: #075048;
  border-color: #002c26;
}

.deployment-instance-running {
  background-color: #35b597;
  border-color: #0c7265;
}
.deployment-instance-running.link:hover {
  background-color: #0d8070;
  border-color: #075048;
}

.deployment-instance-failed {
  background-color: #c52042;
  border-color: #891c2f;
}
.deployment-instance-failed::before {
  content: "";
  border: 1px solid #fff;
  background: #fff;
  transform: rotate(45deg);
  position: absolute;
  border-radius: 1px;
  top: -2px;
  bottom: -2px;
}
.deployment-instance-failed.link:hover {
  background-color: #891c2f;
  border-color: #48151d;
}

.deployment-instance-pending {
  background-color: #c1bfbe;
  border-color: #747273;
}
.deployment-instance-pending.link:hover {
  background-color: #a5a3a3;
  border-color: #28272d;
}

.deployment-instance-unknown {
  background-color: #fff;
  border-color: #747273;
}
.deployment-instance-unknown.link:hover {
  background-color: #fff;
  border-color: #28272d;
}

.deployment-instance.deployment-instance-canary::after {
  width: 7px;
  height: 7px;
  border: 1px solid #fff;
  background-color: #fb8017;
  border-radius: 50%;
  content: "";
  z-index: 1;
}

.deployment-instance-canary-icon {
  background-color: transparent;
  border: 0;
}
.deployment-instance-canary-icon::after {
  width: 16px !important;
  height: 16px !important;
}

.detail-page-header {
  padding-top: 0.75rem;
  color: var(--gl-text-color-default);
  line-height: 34px;
  display: flex;
}
.detail-page-header .author-link {
  white-space: nowrap;
}
@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .detail-page-header {
    display: block;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .detail-page-header {
    display: block;
  }
}

.detail-page-header a{
  color: var(--gl-text-color-default);
}

.detail-page-header a.link,
.detail-page-header .title a {
  color: var(--gl-text-color-link);
}

.detail-page-header-body {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1 1;
  min-width: 0;
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .detail-page-header-body {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .detail-page-header-body {
    padding-left: 0;
    padding-right: 0;
  }
}

.detail-page-header-actions {
  flex: 0 0 auto;
}

.detail-page-description .title {
  margin: 0 0 0.75rem;
  color: var(--gl-text-color-heading);
  padding: 0 0 0.3em;
}
.detail-page-description .description::after {
  display: block;
  clear: both;
  content: "";
}
.detail-page-description .description {
  margin-top: 6px;
}
.detail-page-description .description + .edited-text {
  display: inline-block;
  margin-top: 0.75rem;
}
.detail-page-description .author-link{
  color: var(--gl-text-color-default);
}

.focus-carousel {
  container-type: inline-size;
}

.focus-carousel-item-title {
  font-size: clamp(1.75rem, 7cqi, 2.5rem);
  font-weight: var(--gl-font-weight-bold);
  line-height: 1.05;
  letter-spacing: -0.025em;
  overflow-wrap: anywhere;
}

.focus-carousel-rail-title {
  font-size: 1.5rem;
  font-weight: var(--gl-font-weight-bold);
  line-height: 1.15;
  letter-spacing: -0.01em;
  color: var(--gl-text-color-subtle);
  opacity: 0.75;
  transition: opacity 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
@media (prefers-reduced-motion) {
  .focus-carousel-rail-title {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.focus-carousel-rail-title {
  /* stylelint-disable-next-line gitlab/no-gl-class -- mode class, not utility */
}
.gl-dark .focus-carousel-rail-title {
  opacity: 0.65;
}
@media (forced-colors: active) {
  .focus-carousel-rail-title {
    opacity: 1;
  }
}

.focus-carousel-rail-row:hover,
.focus-carousel-rail-row:focus-visible {
  border-color: var(--gl-border-color-default);
}
.focus-carousel-rail-row:hover .focus-carousel-rail-title,
.focus-carousel-rail-row:focus-visible .focus-carousel-rail-title {
  opacity: 0.9;
}

.focus-carousel:focus-visible {
  outline: none;
}
@media (forced-colors: active) {
  .focus-carousel:focus-visible {
    outline: 2px solid transparent;
  }
}
.focus-carousel:focus-visible .focus-carousel-stage{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

@media (prefers-reduced-motion) {
  .multiple-choice-selector-item {
    transition-duration: 0.01ms !important;
    transition-delay: 0ms !important;
  }
}
.multiple-choice-selector-item {
  transition: background-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), border-color 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), box-shadow 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}
.multiple-choice-selector-item:not(:last-child){
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.multiple-choice-selector-item:first-child{
  border-top-left-radius: .25rem;
  border-top-right-radius: .25rem;
}
.multiple-choice-selector-item:last-child{
  border-bottom-right-radius: .25rem;
  border-bottom-left-radius: .25rem;
}
.multiple-choice-selector-item.multiple-choice-selector-item .gl-form-checkbox.gl-form-checkbox label, .multiple-choice-selector-item.multiple-choice-selector-item .gl-form-radio.gl-form-radio label {
  width: 100%;
  margin-bottom: 0;
}
.multiple-choice-selector-item:has(input:checked) {
  border: 1px solid var(--gl-control-border-color-selected-default);
  box-shadow: 0 -1px 0 0 var(--gl-control-border-color-selected-default), inset -1px 0 0 0 var(--gl-control-border-color-selected-default), inset 0 -1px 0 0 var(--gl-control-border-color-selected-default), inset 1px 0 0 0 var(--gl-control-border-color-selected-default);
  background-color: var(--gl-background-color-subtle);
  border-radius: .25rem;
}
.multiple-choice-selector-item:has(input:checked) + .multiple-choice-selector-item:has(input:checked){
  border-top-left-radius: var(--gl-border-radius-none);
  border-top-right-radius: var(--gl-border-radius-none);
}
.multiple-choice-selector-item:has(input:checked):has(+ .multiple-choice-selector-item input:checked){
  border-bottom-right-radius: var(--gl-border-radius-none);
  border-bottom-left-radius: var(--gl-border-radius-none);
}
.multiple-choice-selector-item:not(:last-child):has(input:checked) {
  margin: -1px -1px 0;
}
.multiple-choice-selector-item:last-child:has(input:checked) {
  margin: -1px;
}
.multiple-choice-selector-item .custom-control {
  min-height: auto;
}

.multiple-choice-selector-click-area{
  position: absolute;
  top: calc(var(--gl-spacing-scale-5) * -1);
  left: calc(var(--gl-spacing-scale-7) * -1);
  width: 100%;
}

 .modal-header .modal-title.multiple-choice-selector-click-area {
  margin-right: -1rem;
  padding-right: 1rem;
}

.multiple-choice-selector-click-area{
  height: 100%;
  padding: var(--gl-spacing-scale-5);
  padding-left: var(--gl-spacing-scale-7);
  box-sizing: content-box;
  z-index: calc(var(--gl-zindex-1) * -1);
}

.ref-selector .dropdown-menu.show {
  overflow: hidden;
  width: 20rem;
}
.ref-selector .dropdown-menu.show,
.ref-selector .dropdown-menu.show .gl-dropdown-inner {
  max-height: 445px;
}

.related-items-list {
  padding: 4px;
  border-bottom-left-radius: 3px;
  border-bottom-right-radius: 3px;
}
.related-items-list,
.related-items-list .list-item:last-child {
  margin-bottom: 0;
}

.item-body {
  position: relative;
  line-height: 16px;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}
.item-body:hover, .item-body:focus-within {
  background-color: var(--gl-background-color-subtle);
  border-color: var(--gl-border-color-subtle);
}
.item-body .issue-token-state-icon,
.item-body .item-milestone .icon,
.item-body .item-weight .board-card-info-icon {
  min-width: 16px;
  cursor: help;
}
.item-body .issue-token-state-icon:focus-visible,
.item-body .item-milestone .icon:focus-visible,
.item-body .item-weight .board-card-info-icon:focus-visible{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
.item-body .item-title {
  flex-basis: 100%;
}
.item-body .item-title .sortable-link {
  color: var(--gl-text-color-strong);
  font-weight: 500;
}
.item-body .item-path-id .path-id-text,
.item-body .item-milestone .milestone-title,
.item-body .item-due-date,
.item-body .item-weight .board-card-info-text{
  color: var(--gl-text-color-subtle);
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}

.item-meta {
  flex-basis: 100%;
  font-size: 14px;
  color: var(--gl-text-color-subtle);
}
.item-meta .item-due-date.board-card-info,
.item-meta .board-card-weight.board-card-info {
  margin-right: 0;
}
.item-meta .item-milestone,
.item-meta .item-weight {
  cursor: help;
}
.item-meta .item-milestone {
  text-decoration: none;
  max-width: 120px;
}
.item-meta .item-weight {
  max-width: 48px;
}

.item-assignees .user-avatar-link {
  margin-right: -4px;
}
.item-assignees .user-avatar-link:nth-of-type(1) {
  z-index: 2;
}
.item-assignees .user-avatar-link:nth-of-type(2) {
  z-index: 1;
}
.item-assignees .user-avatar-link:last-child {
  margin-right: 0;
}
.item-assignees .avatar {
  height: 16px;
  width: 16px;
  margin-right: 0;
  vertical-align: bottom;
}
.item-assignees .avatar-counter {
  height: 16px;
  border: 1px solid transparent;
  background-color: #8a8888;
  font-weight: 600;
  padding: 0 4px;
  line-height: 16px;
}

.item-path-id {
  font-size: 12px;
  white-space: nowrap;
}
.item-path-id .path-id-text {
  font-weight: 600;
  max-width: 160px;
}

.mr-ci-status {
  line-height: 0;
}
.mr-ci-status a:focus-visible {
  border-radius: 9999px;
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .btn-sm.dropdown-toggle-split, :where(html.with-gl-container-queries) .btn-group-sm > .dropdown-toggle-split.btn {
    max-width: 40px;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .btn-sm.dropdown-toggle-split, :where(html:not(.with-gl-container-queries)) .btn-group-sm > .dropdown-toggle-split.btn {
    max-width: 40px;
  }
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .sortable-link {
    max-width: 90%;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .sortable-link {
    max-width: 90%;
  }
}
/* Small devices (landscape phones, 768px and up) */
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .item-body .item-title {
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .sortable-link {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    max-width: 100%;
  }
  :where(html.with-gl-container-queries) .item-body .item-contents {
    min-width: 0;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .item-body .item-title {
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .sortable-link {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    max-width: 100%;
  }
  :where(html:not(.with-gl-container-queries)) .item-body .item-contents {
    min-width: 0;
  }
}
/* Medium devices (desktops, 992px and up) */
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .item-body .item-meta .item-path-id {
    font-size: inherit;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .item-body .item-meta .item-path-id {
    font-size: inherit;
  }
}
/* Large devices (large desktops, 1200px and up) */
@container panel (width >= 1200px) {
  :where(html.with-gl-container-queries) .item-body .item-title {
    width: auto;
    flex-basis: auto;
    flex-shrink: 1;
    font-weight: 400;
  }
  :where(html.with-gl-container-queries) .item-contents {
    overflow: hidden;
  }
  :where(html.with-gl-container-queries) .item-assignees .avatar {
    height: 24px;
    width: 24px;
  }
  :where(html.with-gl-container-queries) .item-assignees .avatar-counter {
    height: 24px;
    min-width: 24px;
    line-height: 24px;
    border-radius: 24px;
  }
  :where(html.with-gl-container-queries) .sortable-link {
    line-height: 1.3;
  }
}
@media (width >= 1200px) {
  :where(html:not(.with-gl-container-queries)) .item-body .item-title {
    width: auto;
    flex-basis: auto;
    flex-shrink: 1;
    font-weight: 400;
  }
  :where(html:not(.with-gl-container-queries)) .item-contents {
    overflow: hidden;
  }
  :where(html:not(.with-gl-container-queries)) .item-assignees .avatar {
    height: 24px;
    width: 24px;
  }
  :where(html:not(.with-gl-container-queries)) .item-assignees .avatar-counter {
    height: 24px;
    min-width: 24px;
    line-height: 24px;
    border-radius: 24px;
  }
  :where(html:not(.with-gl-container-queries)) .sortable-link {
    line-height: 1.3;
  }
}
.incident-severity .icon-critical,
.incident-management-list .icon-critical,
.alert-management-details .icon-critical {
  color: var(--severity-color-critical);
}
.incident-severity .icon-high,
.incident-management-list .icon-high,
.alert-management-details .icon-high {
  color: var(--severity-color-high);
}
.incident-severity .icon-medium,
.incident-management-list .icon-medium,
.alert-management-details .icon-medium {
  color: var(--severity-color-medium);
}
.incident-severity .icon-low,
.incident-management-list .icon-low,
.alert-management-details .icon-low {
  color: var(--severity-color-low);
}
.incident-severity .icon-info,
.incident-management-list .icon-info,
.alert-management-details .icon-info {
  color: var(--severity-color-info);
}
.incident-severity .icon-unknown,
.incident-management-list .icon-unknown,
.alert-management-details .icon-unknown {
  color: var(--severity-color-unknown);
}

.shortcut-help-body {
  height: 80vh;
  overflow-y: scroll;
}

.shortcut-help-container {
  column-count: 1;
}
@media (min-width: 768px) {
  .shortcut-help-container {
    column-count: 2;
  }
}
.shortcut-help-container {
  column-gap: 1rem;
}

.shortcut-help-mapping {
  overflow: hidden;
  break-inside: avoid;
}
.shortcut-help-mapping kbd {
  margin: 0.1rem 0;
  line-height: unset;
  font-size: unset;
}

.shortcut-help-mapping-title {
  margin-left: 40%;
}

.upload-dropzone-border {
  background-image: url("data:image/svg+xml, %3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='0.25rem' ry='0.25rem' stroke='%238A8888' stroke-width='2' stroke-dasharray='6%2c4' stroke-dashoffset='0' stroke-linecap='butt' /%3e %3c/svg%3e");
}

.upload-dropzone-border-error {
  background-image: url("data:image/svg+xml, %3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='0.25rem' ry='0.25rem' stroke='%23F15168' stroke-width='2' stroke-dasharray='6%2c4' stroke-dashoffset='0' stroke-linecap='butt' /%3e %3c/svg%3e");
}

.upload-dropzone-card{
  transition-property: background,border;
  transition-timing-function: ease;
  transition-duration: 200ms;
  color: var(--gl-text-color-default);
  border-width: 0px;
  border-radius: .25rem;
}
.upload-dropzone-card:hover, .upload-dropzone-card:focus-visible, .upload-dropzone-card:focus-within, .upload-dropzone-card:active {
  outline: none;
  background-image: url("data:image/svg+xml, %3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='0.25rem' ry='0.25rem' stroke='%231F73CA' stroke-width='4' stroke-dasharray='6%2c4' stroke-dashoffset='0' stroke-linecap='butt' /%3e %3c/svg%3e");
  color: var(--gl-text-color-default);
}
.upload-dropzone-card:focus-visible, .upload-dropzone-card:focus-within, .upload-dropzone-card:active{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}

.upload-dropzone-overlay,
.design-upload-dropzone-overlay {
  top: 0;
  left: 0;
  pointer-events: none;
  opacity: 1;
  border: 0;
}

.upload-dropzone-overlay{
  background-color: var(--gl-feedback-info-background-color);
  background-image: url("data:image/svg+xml, %3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='0.25rem' ry='0.25rem' stroke='%231F73CA' stroke-width='4' stroke-dasharray='6%2c4' stroke-dashoffset='0' stroke-linecap='butt' /%3e %3c/svg%3e");
}

.design-upload-dropzone-overlay {
  background-color: color-mix(in srgb, var(--gl-color-blue-500) 24%, transparent);
  background-image: url("data:image/svg+xml, %3csvg width='100%25' height='100%25' xmlns='http://www.w3.org/2000/svg'%3e%3crect width='100%25' height='100%25' fill='none' rx='0.25rem' ry='0.25rem' stroke='%231F73CA' stroke-width='4' stroke-dasharray='6%2c4' stroke-dashoffset='0' stroke-linecap='butt' /%3e %3c/svg%3e");
  border-radius: 0.25rem;
}

.upload-dropzone-fade-enter-active,
.upload-dropzone-fade-leave-active{
  transition-property: opacity;
  transition-timing-function: ease;
  transition-duration: 100ms;
  transition-timing-function: linear;
}

.upload-dropzone-fade-enter,
.upload-dropzone-fade-leave-to {
  opacity: 0;
}

.whats-new-drawer {
  box-shadow: none;
}
@media (min-width: 768px) {
  .whats-new-drawer {
    width: 500px;
  }
}
.whats-new-drawer {
  /* stylelint-disable gitlab/no-gl-class */
}
.whats-new-drawer .gl-infinite-scroll-legend {
  display: none;
}
.whats-new-drawer .gl-tabs {
  overflow-y: auto;
}
.whats-new-drawer .gl-tabs-nav {
  flex-wrap: nowrap;
  overflow-x: scroll;
  align-items: stretch;
}
.whats-new-drawer .gl-tabs-nav .nav-item {
  flex-shrink: 0;
}
.whats-new-drawer .gl-tabs-nav .nav-item a {
  height: 100%;
  line-height: 1.5;
}
.whats-new-drawer .gl-spinner-container {
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.whats-new-drawer {
  /* stylelint-enable gitlab/no-gl-class */
}

h4.whats-new-release-heading:not(:first-of-type){
  margin-top: var(--gl-spacing-scale-6);
}

.whats-new-modal-backdrop {
  z-index: 699;
}

@media (min-width: 768px) {
  .whats-new-article-drawer {
    width: 500px;
  }
}

/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/*
 * Layout
 */
/**
  🚨 Do not use this spacing scale — it is deprecated and being removed. 🚨
  See https://gitlab.com/gitlab-org/gitlab/issues/36857 for more details.

  Instead, if you need a spacing class, add it to app/assets/stylesheets/framework/common.scss,
  using the following values.

    $gl-spacing-scale-0: 0;
    $gl-spacing-scale-1: 2px;
    $gl-spacing-scale-2: 4px;
    $gl-spacing-scale-3: 8px;
    $gl-spacing-scale-4: 12px;
    $gl-spacing-scale-5: 16px;
    $gl-spacing-scale-6: 24px;
    $gl-spacing-scale-7: 32px;
    $gl-spacing-scale-8: 40px;
    $gl-spacing-scale-9: 48px;
    $gl-spacing-scale-10: 56px;
    $gl-spacing-scale-11: 64px;
    $gl-spacing-scale-12: 80px;
    $gl-spacing-scale-13: 96px;

  E.g., a padding top of 96px can be added using:
  .gl-shim-pt-13 {
    padding-top: 96px;
  }

  Please use -shim- so it can be differentiated from the old scale classes.

  These will be replaced when the Gitlab UI utilities are included.
**/
/* Will be moved to @gitlab/ui by https://gitlab.com/gitlab-org/gitlab-services/design.gitlab.com/-/issues/2792 */
/* End gitlab-ui#1709 */
/*
 * Text
 */
/*
 * Lists
 */
/*
 * Code
 */
/*
 * Tooltips
 */
/*
 * Padding
 */
/*
 * Misc
 */
/*
 * Merge requests
 */
/*
 * Calculated heights
 */
/* tanuki logo colors */
/*
 * State colors:
 */
/*
 * Commit Diff Colors
 */
/*
 * The transparent colors are used in Monaco editor. Using full opacity colors
 * would hide other layers (selected text, matching brackets).
 *
 * When the transparent colors get layered on white background, they create their
 * full opacity counterparts:
 *
 *  - white + $line-added-transparent = $line-added
 *  - white + $line-added-transparent + $line-added-dark-transparent = $line-added-dark
 *
 * More details: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41553
 */
/*
 * Fonts
 * The --default-mono-font and --default-regular-font variables give users
 * a way to override our font choices for them.
 */
/*
* Dropdowns
*/
/*
* Sidebar
*/
/*
* Buttons
*/
/*
* Badges
*/
/*
 *  Award emoji
 */
/*
 * Search Box
 */
/*
 *  Notes
 */
/*
* Boards
*/
/*
* Builds
*/
/*
* Commit Page
*/
/*
* Files
*/
/*
* Forms
*/
/*
* Label
*/
/*
* Animation
*/
/*
* Login
*/
/*
* Typography
*/
/*
Pipeline Graph
*/
/*
GitLab Plans
*/
/*
Performance Bar
*/
/*
Image Commenting cursor
*/
/*
Popup
*/
/*
Drawers
*/
/*
Modals
*/
/*
Popovers
*/
/*
Merge requests
*/
/*
Board Swimlanes
*/
/*
Source Editor theme overrides
*/
/**
 Bootstrap 4.2.0 introduced new icons for validating forms.
 Our design system does not use those, so we are disabling them for now:
 - Docs: https://getbootstrap.com/docs/4.3/components/forms/#server-side
 - Issue: https://gitlab.com/gitlab-org/design.gitlab.com/issues/242
 */
/*
 * This file is only for overriding Bootstrap 4 variables.
 * Please add any new variables to variables.scss
 */
.code-flow-content {
  height: calc(100vh - 2.5rem - 3rem - var(--broadcast-message-height, 0px) - 46px - 35px - 56px - 51px);
}

.code-flow-content-modal {
  height: var(--modal-content-height);
}

.code-flow-content-card {
  max-height: 70vh;
}

.gl-scroll-scrim > .top-scrim-wrapper,
.gl-scroll-scrim > .bottom-scrim-wrapper {
  height: 2.25rem;
  opacity: 0;
  position: sticky;
  z-index: 1;
  display: block;
  left: 0;
  right: 0;
  pointer-events: none;
  transition: opacity 0.1s;
}
.gl-scroll-scrim > .top-scrim-wrapper .top-scrim,
.gl-scroll-scrim > .top-scrim-wrapper .bottom-scrim,
.gl-scroll-scrim > .bottom-scrim-wrapper .top-scrim,
.gl-scroll-scrim > .bottom-scrim-wrapper .bottom-scrim {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.gl-scroll-scrim > .top-scrim-wrapper {
  top: 0;
  margin-bottom: -2.25rem;
}
.gl-scroll-scrim > .top-scrim-wrapper .top-scrim {
  background: linear-gradient(180deg, var(--gl-color-alpha-dark-8) 0%, rgba(255, 255, 255, 0) 100%);
}
.gl-dark .gl-scroll-scrim > .top-scrim-wrapper .top-scrim {
  background: linear-gradient(180deg, var(--gl-color-alpha-dark-24) 0%, rgba(255, 255, 255, 0) 100%);
}
.gl-scroll-scrim > .bottom-scrim-wrapper {
  bottom: 0;
  margin-top: -2.25rem;
}
.gl-scroll-scrim > .bottom-scrim-wrapper .bottom-scrim {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--gl-color-alpha-dark-8));
}
.gl-dark .gl-scroll-scrim > .bottom-scrim-wrapper .bottom-scrim {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--gl-color-alpha-dark-24));
}
.gl-scroll-scrim.top-scrim-visible > .top-scrim-wrapper, .gl-scroll-scrim.bottom-scrim-visible > .bottom-scrim-wrapper {
  opacity: 1;
}

/* stylelint-disable gitlab/no-gl-class */
.gl-base-layout-sticky-header{
  position: fixed;
  top: var(--gl-spacing-scale-0);
  left: var(--gl-spacing-scale-0);
  width: 100%;
}
 .modal-header .modal-title.gl-base-layout-sticky-header {
  margin-right: -1rem;
  padding-right: 1rem;
}
.gl-base-layout-sticky-header{
  padding-bottom: var(--gl-spacing-scale-3);
  background-color: var(--gl-background-color-default);
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  visibility: hidden;
  opacity: var(--gl-opacity-0);
  z-index: 98;
  transform: translateY(-100%);
  transition: visibility 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), opacity 0.2s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.2s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.gl-base-layout-sticky-header-no-animation {
  transition-duration: 0s;
}

.gl-base-layout-sticky-header-inner{
  padding-left: var(--container-padding-x);
  padding-right: var(--container-padding-x);
}

.gl-base-layout.gl-base-layout-header-is-stuck .gl-base-layout-sticky-header{
  visibility: visible;
  opacity: var(--gl-opacity-10);
  --tw-translate-y: var(--gl-spacing-scale-0);
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.gl-base-layout-alerts{
  display: flex;
  flex-direction: column;
  gap: var(--gl-spacing-scale-3);
  margin-bottom: var(--gl-spacing-scale-5);
}

.gl-base-layout-loading-icon{
  margin: var(--gl-spacing-scale-5);
}

/* stylelint-disable gitlab/no-gl-class */
.gl-detail-layout-container {
  --gl-detail-layout-gap: 2rem;
  display: grid;
  gap: var(--gl-detail-layout-gap);
}

.gl-detail-layout-content,
.gl-detail-layout-sidebar,
.gl-detail-layout-activity,
.gl-detail-layout-widgets {
  min-width: 0;
}
.gl-detail-layout-content > div:first-child,
.gl-detail-layout-content > section:first-child,
.gl-detail-layout-sidebar > div:first-child,
.gl-detail-layout-sidebar > section:first-child,
.gl-detail-layout-activity > div:first-child,
.gl-detail-layout-activity > section:first-child,
.gl-detail-layout-widgets > div:first-child,
.gl-detail-layout-widgets > section:first-child {
  margin-top: 0 !important;
}

.gl-detail-layout-container-has-sidebar {
  grid-template-columns: minmax(0, 1fr);
}
@container (width >= 768px) {
  :where(html.with-gl-container-queries) .gl-detail-layout-container-has-sidebar {
    grid-template-columns: minmax(67%, 1fr) minmax(13rem, 18.125rem);
    grid-template-rows: auto auto 1fr;
    grid-template-areas: "content sidebar" "widgets sidebar" "activity sidebar";
  }
  :where(html.with-gl-container-queries) .gl-detail-layout-container-has-sidebar > .gl-detail-layout-content {
    grid-area: content;
  }
  :where(html.with-gl-container-queries) .gl-detail-layout-container-has-sidebar > .gl-detail-layout-sidebar {
    grid-area: sidebar;
    position: sticky;
    top: var(--detail-layout-sidebar-top, var(--layout-sticky-header-height, 0));
    align-self: start;
    min-height: 0;
    max-height: var(--detail-layout-sidebar-height, calc(var(--panel-content-inner-height, calc(100vh - calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) - var(--system-footer-height))) - var(--detail-layout-sidebar-space, 0px)));
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    outline: none;
    padding-left: var(--gl-spacing-scale-3);
    padding-right: var(--gl-spacing-scale-3);
    padding-top: var(--gl-spacing-scale-4);
    padding-bottom: var(--gl-spacing-scale-4);
    margin-top: calc(var(--gl-spacing-scale-4) * -1);
  }
  :where(html.with-gl-container-queries) .gl-detail-layout-container-has-sidebar > .gl-detail-layout-widgets {
    grid-area: widgets;
  }
  :where(html.with-gl-container-queries) .gl-detail-layout-container-has-sidebar > .gl-detail-layout-activity {
    grid-area: activity;
  }
  :where(html.with-gl-container-queries) .gl-detail-layout-container-has-sidebar:not(:has(> .gl-detail-layout-activity)) {
    grid-template-rows: auto 1fr;
    grid-template-areas: "content sidebar" "widgets sidebar";
  }
  :where(html.with-gl-container-queries) .gl-detail-layout-container-has-sidebar:not(:has(> .gl-detail-layout-widgets)) {
    grid-template-rows: auto 1fr;
    grid-template-areas: "content sidebar" "activity sidebar";
  }
  :where(html.with-gl-container-queries) .gl-detail-layout-container-has-sidebar:not(:has(> .gl-detail-layout-widgets)):not(:has(> .gl-detail-layout-activity)) {
    grid-template-rows: 1fr;
    grid-template-areas: "content sidebar";
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .gl-detail-layout-container-has-sidebar {
    grid-template-columns: minmax(67%, 1fr) minmax(13rem, 18.125rem);
    grid-template-rows: auto auto 1fr;
    grid-template-areas: "content sidebar" "widgets sidebar" "activity sidebar";
  }
  :where(html:not(.with-gl-container-queries)) .gl-detail-layout-container-has-sidebar > .gl-detail-layout-content {
    grid-area: content;
  }
  :where(html:not(.with-gl-container-queries)) .gl-detail-layout-container-has-sidebar > .gl-detail-layout-sidebar {
    grid-area: sidebar;
    position: sticky;
    top: var(--detail-layout-sidebar-top, var(--layout-sticky-header-height, 0));
    align-self: start;
    min-height: 0;
    max-height: var(--detail-layout-sidebar-height, calc(var(--panel-content-inner-height, calc(100vh - calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) - var(--system-footer-height))) - var(--detail-layout-sidebar-space, 0px)));
    overflow-y: auto;
    overflow-x: hidden;
    overscroll-behavior: contain;
    outline: none;
    padding-left: var(--gl-spacing-scale-3);
    padding-right: var(--gl-spacing-scale-3);
    padding-top: var(--gl-spacing-scale-4);
    padding-bottom: var(--gl-spacing-scale-4);
    margin-top: calc(var(--gl-spacing-scale-4) * -1);
  }
  :where(html:not(.with-gl-container-queries)) .gl-detail-layout-container-has-sidebar > .gl-detail-layout-widgets {
    grid-area: widgets;
  }
  :where(html:not(.with-gl-container-queries)) .gl-detail-layout-container-has-sidebar > .gl-detail-layout-activity {
    grid-area: activity;
  }
  :where(html:not(.with-gl-container-queries)) .gl-detail-layout-container-has-sidebar:not(:has(> .gl-detail-layout-activity)) {
    grid-template-rows: auto 1fr;
    grid-template-areas: "content sidebar" "widgets sidebar";
  }
  :where(html:not(.with-gl-container-queries)) .gl-detail-layout-container-has-sidebar:not(:has(> .gl-detail-layout-widgets)) {
    grid-template-rows: auto 1fr;
    grid-template-areas: "content sidebar" "activity sidebar";
  }
  :where(html:not(.with-gl-container-queries)) .gl-detail-layout-container-has-sidebar:not(:has(> .gl-detail-layout-widgets)):not(:has(> .gl-detail-layout-activity)) {
    grid-template-rows: 1fr;
    grid-template-areas: "content sidebar";
  }
}

.panel-top-offset-panel-header-height {
  top: 2.25rem;
}

.paneled-view{
  position: relative;
  overflow: clip;
  background-color: var(--gl-background-color-default);
  padding: var(--gl-spacing-scale-0);
}

.paneled-view,
.paneled-view-portal{
  display: flex;
  flex: 1 1 0%;
  flex-direction: column;
  height: 100%;
}

.paneled-view-portal{
  container-type: inline-size;
  container-name: panel;
  z-index: 252;
  position: absolute;
  right: var(--gl-spacing-scale-0);
  width: 100%;
}

 .modal-header .modal-title.paneled-view-portal {
  margin-right: -1rem;
  padding-right: 1rem;
}

.paneled-view-portal{
  background-color: var(--gl-background-color-default);
  border-top-left-radius: var(--gl-border-radius-xl);
  border-bottom-left-radius: var(--gl-border-radius-xl);
  --tw-shadow: var(--gl-shadow-lg);
  --tw-shadow-colored: var(--gl-shadow-lg);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  overflow: clip;
}

@media (min-width: 576px){
  .paneled-view-portal{
    width: 80%;
  }
}

@container content-panels (min-width: 1200px){
  .paneled-view-portal{
    position: relative;
    width: 50%;
    background-color: transparent;
    border-top-left-radius: var(--gl-border-radius-none);
    border-bottom-left-radius: var(--gl-border-radius-none);
    --tw-shadow: 0 0 #0000;
    --tw-shadow-colored: 0 0 #0000;
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  }
}
.paneled-view-portal:empty{
  display: none;
}
.paneled-view-portal:not(:has(> .vue-portal-target)){
  display: none;
}
.paneled-view-portal > .vue-portal-target {
  flex: 1;
  min-height: 0;
}

.panels-container{
  background-color: var(--gl-background-color-default);
  border-radius: var(--gl-border-radius-xl);
  overflow: clip;
  border-width: 1px;
  border-style: solid;
  border-color: var(--gl-border-color-transparent);
}

.panels-container:where(.gl-dark *){
  border-color: var(--gl-border-color-subtle);
}

.panels-container{
  --tw-shadow: var(--gl-shadow-sm);
  --tw-shadow-colored: var(--gl-shadow-sm);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}

@media (min-width: 992px){
  .panels-container:has(+ .ai-related-panels > .ai-panel-wrapper > .ai-panel){
    border-top-right-radius: var(--gl-border-radius-none);
    border-bottom-right-radius: var(--gl-border-radius-none);
    border-right-width: 0px;
  }
}

@media (min-width: 576px){
  .paneled-view-portal{
    border-left-style: solid;
    border-left-color: var(--gl-border-color-default);
    border-left-width: 1px;
  }
}

.ai-panel{
  border-radius: var(--gl-border-radius-xl);
  --tw-shadow: var(--gl-shadow-sm);
  --tw-shadow-colored: var(--gl-shadow-sm);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  border-width: 1px;
  border-style: solid;
  border-color: var(--gl-border-color-transparent);
}

.ai-panel:where(.gl-dark *){
  border-color: var(--gl-border-color-default);
}

@media (min-width: 992px){
  .ai-panel:where(.gl-dark *){
    border-color: var(--gl-border-color-subtle);
  }
  .ai-panel{
    border-left-color: var(--gl-border-color-default);
    border-top-left-radius: var(--gl-border-radius-none);
    border-bottom-left-radius: var(--gl-border-radius-none);
    clip-path: inset(-0.5rem -0.5rem -0.5rem 0);
  }
}

@keyframes session-pill-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.4;
  }
}
.panel-header-inner{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: var(--gl-spacing-scale-3);
  background-color: var(--gl-background-color-default);
  padding-top: var(--gl-spacing-scale-2);
  padding-left: var(--container-padding-x);
  padding-right: 0.4375rem;
  border-top-left-radius: var(--gl-border-radius-lg);
  border-top-right-radius: var(--gl-border-radius-lg);
  z-index: 99;
  min-height: 2.25rem;
}
.panel-header-inner .gl-button.button-ellipsis-horizontal.btn-sm, .panel-header-inner .btn-group-sm > .gl-button.button-ellipsis-horizontal.btn{
  padding-left: var(--gl-spacing-scale-0);
  padding-right: var(--gl-spacing-scale-0);
  min-height: 1.5rem;
  min-width: 1.5rem;
}

.panel-header-inner-text{
  display: inline-flex;
}

.commit-content .committer.panel-header-inner-text {
  gap: 0.5ch;
}

.panel-header-inner-text{
  min-width: var(--gl-spacing-scale-0);
  gap: var(--gl-spacing-scale-3);
  font-size: var(--gl-font-size-sm);
  font-weight: var(--gl-font-weight-bold);
}

.panel-header-inner-actions{
  margin-left: auto;
  display: flex;
  gap: var(--gl-spacing-scale-3);
  align-items: center;
}

.panel-header-controls{
  display: flex;
  border-style: solid;
  border-color: var(--gl-border-color-default);
  border-width: 1px;
  line-height: 0;
  margin-left: var(--gl-spacing-scale-2);
  border-radius: calc(var(--gl-border-radius-lg) + 1px);
}

.panel-header-inner-actions-portal-target {
  display: none;
}
.panel-header-inner-actions-portal-target:has(> .vue-portal-target) {
  display: block;
}
.panel-header-inner-actions-portal-target > .vue-portal-target{
  display: flex;
  gap: var(--gl-spacing-scale-3);
  align-items: center;
}

.panel-content{
  display: flex;
  flex-direction: column;
  flex: 1 1 0%;
  min-height: var(--gl-spacing-scale-0);
  contain: layout;
  padding-bottom: var(--gl-spacing-scale-3);
}

.static-panel--headerless .panel-content{
  margin-top: var(--gl-spacing-scale-3);
}
.static-panel--headerless .panel-content .panel-content-inner::before{
  display: none;
}

.panel-content-inner{
  flex: 1 1 0%;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-gutter: stable;
  container-type: scroll-state;
}
.panel-content-inner:focus{
  outline: 2px solid transparent;
  outline-offset: 2px;
}

.panel-content-inner::before {
  content: "";
  flex-shrink: 0;
  display: block;
  position: sticky;
  top: var(--gl-spacing-scale-0);
  left: var(--gl-spacing-scale-0);
  width: 100%;
}

 .modal-header .modal-title.panel-content-inner::before {
  margin-right: -1rem;
  padding-right: 1rem;
}

.panel-content-inner::before{
  height: var(--gl-spacing-scale-2);
  margin-bottom: calc(var(--gl-spacing-scale-2) * -1);
  background-color: var(--gl-background-color-default);
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
  border-bottom-color: var(--gl-border-color-subtle);
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}
@container scroll-state(scrollable: top) {
  .panel-content-inner::before {
    opacity: 1;
    z-index: 2;
  }
}

.panel-content-inner > .container-fluid, .panel-content-inner > .container-sm, .panel-content-inner > .container-md, .panel-content-inner > .container-lg, .panel-content-inner > .container-xl{
  padding-left: var(--container-padding-x);
  padding-right: var(--container-padding-x);
}

.panel-footer{
  background-color: var(--gl-background-color-default);
  padding-left: var(--container-padding-x);
  padding-right: var(--gl-spacing-scale-3);
  padding-top: var(--gl-spacing-scale-3);
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
}
@media (forced-colors: active) {
  .panel-footer {
    border-top: 1px solid;
  }
}

.panel-header .panel-header-inner.without-breadcrumbs {
  display: none;
  /* stylelint-disable-next-line gitlab/no-gl-class, gitlab/no-has -- scoped to a specific panel-header-inner element */
}
.panel-header .panel-header-inner.without-breadcrumbs:has(> :is(.gl-badge, .gl-button), .panel-header-inner-actions :is(.gl-badge, .gl-button)) {
  display: flex;
  justify-content: end;
}

.paneled-view.ai-panel{
  flex-grow: 1;
}

@media not all and (min-width: 992px){
  .paneled-view.ai-panel{
    position: fixed;
    --tw-shadow: var(--gl-shadow-lg);
    --tw-shadow-colored: var(--gl-shadow-lg);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  }
}

.paneled-view.ai-panel{
  left: var(--gl-spacing-scale-3);
  margin-top: calc(var(--gl-spacing-scale-2) * -1);
  top: calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height)));
  width: calc(100% - var(--gl-spacing-scale-3) * 2);
  height: calc(100% - calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) - var(--ai-navigation-rail-size) + var(--gl-spacing-scale-2) * 2);
  z-index: 999;
}
.paneled-view.ai-panel .panel-header-inner {
  z-index: 1000;
}
@media (min-width: 576px) {
  .paneled-view.ai-panel{
    left: var(--gl-spacing-scale-5);
    width: calc(100% - var(--gl-spacing-scale-5) * 2);
  }
}
@media (min-width: 992px) {
  .paneled-view.ai-panel{
    top: var(--gl-spacing-scale-0);
    left: var(--gl-spacing-scale-0);
    margin: var(--gl-spacing-scale-0);
    width: var(--ai-panel-width);
    height: 100%;
    z-index: auto;
  }
}

.ai-panel-content-inner {
  scrollbar-gutter: auto;
}

/* stylelint-disable-next-line gitlab/no-gl-class -- scoped to a specific panel-content use */
.page-with-panels .gl-drawer {
  width: min(100% - var(--gl-spacing-scale-6), 400px);
}

.atwho-view {
  overflow-y: auto;
  overflow-x: hidden;
  min-width: 15.5rem;
  max-width: 28.5rem;
  border-color: var(--gl-dropdown-border-color);
  background-color: var(--gl-dropdown-background-color);
  color: var(--gl-text-color-default);
  border-radius: 0.5rem;
  --tw-shadow: var(--gl-shadow-md);
  --tw-shadow-colored: var(--gl-shadow-md);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
}
.atwho-view small {
  font-size: 0.75rem;
  color: var(--gl-text-color-subtle);
}
.atwho-view small.description {
  display: block;
  width: auto;
  margin-top: 0.25rem;
}
.atwho-view .avatar-inline {
  margin-bottom: 0;
}
.atwho-view .has-warning .description {
  color: #28272d;
  background-color: #fdf0d5;
}
.atwho-view .cur .avatar {
  transition-property: none !important;
  transform: none !important;
  animation: none !important;
  border: 1px solid #fff;
}
.atwho-view .atwho-view-ul {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  max-height: 19.5rem;
}
.atwho-view .atwho-view-ul li {
  border: 0;
  padding: 6px;
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  border-radius: 0.125rem;
  line-height: 1rem;
}
.atwho-view .atwho-view-ul li.cur{
  box-shadow: 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
  color: var(--gl-dropdown-option-text-color-hover);
  background-color: var(--gl-dropdown-option-background-color-unselected-hover);
}
.atwho-view .atwho-view-ul li.cur small {
  color: inherit;
}
.atwho-view .atwho-view-ul li.cur.has-warning{
  color: var(--gl-text-color-warning);
}
.atwho-view .atwho-view-ul li div.avatar {
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
.atwho-view .atwho-view-ul li strong{
  color: var(--gl-text-color-strong);
}
.atwho-view .atwho-view-ul li gl-emoji {
  margin-right: 0.25rem;
  vertical-align: text-top;
}
.atwho-view .atwho-view-ul li gl-emoji img {
  margin-block: -0.1em;
  top: 0.05em;
}
.atwho-view .atwho-view-ul li .dropdown-label-box {
  position: relative;
  top: -1px;
  margin-right: 0.25rem;
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .atwho-view ul li {
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .atwho-view ul li {
    overflow: hidden;
    text-overflow: ellipsis;
  }
}
[v-cloak=true] {
  display: none !important;
}

/*
 Entry point for EE specific CSS
 */
.duo-chat-resizable {
  position: fixed !important;
}

.duo-chat-container .duo-chat-drawer {
  z-index: 1040;
}
@container panel (width >= 768px) {
  :where(html.with-gl-container-queries) .duo-chat-container .duo-chat-drawer {
    width: 400px;
  }
}
@media (width >= 768px) {
  :where(html:not(.with-gl-container-queries)) .duo-chat-container .duo-chat-drawer {
    width: 400px;
  }
}

.duo-chat-callout-popover {
  width: 384px;
  z-index: 600;
}
.duo-chat-callout-popover.bs-popover-bottom .arrow::after, .duo-chat-callout-popover.bs-popover-auto[x-placement^=bottom] .arrow::after {
  border-bottom-color: #c4bae2;
  top: 1px;
}

.duo-chat-message pre {
  position: initial;
}
.duo-chat-message pre.scrim-bottom::after, .duo-chat-message pre.scrim-top::before {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0), var(--code-background));
}

/**
* Start: These styles only affect Duo Chat Classic (Non-Agentic)
*/
.duo-chat.web-only .duo-chat-input {
  position: relative;
  overflow: visible;
}
.duo-chat.web-only .duo-chat-input::after{
  padding: var(--gl-spacing-scale-2);
}

.duo-chat.web-only .duo-chat-input-wrap {
  min-height: 80px;
  max-height: 240px;
  overflow: hidden;
}
.duo-chat.web-only .duo-chat-input-wrap.duo-chat-input-wrap-fixed {
  min-height: 84px;
  max-height: 84px;
}
.duo-chat.web-only .duo-chat-input-wrap .duo-chat-textarea {
  flex: 1;
  resize: none;
}
.duo-chat.web-only .duo-chat-input-wrap::after {
  content: attr(data-value) " ";
  visibility: hidden;
  padding: var(--gl-spacing-scale-4);
  font-family: var(--gl-font-family-regular);
  padding-right: 40px;
  word-break: break-word;
}

/**
* End
*/
.agentic-chat-input {
  background: var(--gl-control-background-color-default);
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-default);
}
.agentic-chat-input:focus-within {
  box-shadow: inset 0 0 0 1px var(--gl-control-border-color-focus), 0 0 0 1px var(--gl-focus-ring-inner-color), 0 0 0 3px var(--gl-focus-ring-outer-color);
  outline: none;
}
@media (forced-colors: active) {
  .agentic-chat-input:focus-within {
    outline: 2px solid LinkText;
  }
}

.agentic-chat-textarea {
  min-height: 80px;
}
.agentic-chat-textarea.agentic-chat-textarea-padded {
  min-height: calc(80px + var(--gl-spacing-scale-4) - 0.5rem);
}

.panel-content-inner.duo-chat-scroll-scrims::before, .panel-content-inner.duo-chat-scroll-scrims::after {
  content: "";
  position: sticky;
  left: 0;
  display: block;
  flex-shrink: 0;
  width: 100%;
  height: 2rem;
  border: 0;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
}
.panel-content-inner.duo-chat-scroll-scrims::before {
  top: 0;
  margin-bottom: -2rem;
  background: linear-gradient(to bottom, var(--gl-background-color-default), transparent);
}
@container scroll-state(scrollable: top) {
  .panel-content-inner.duo-chat-scroll-scrims::before {
    opacity: 1;
    z-index: 2;
  }
}
.panel-content-inner.duo-chat-scroll-scrims::after {
  bottom: 0;
  margin-top: -2rem;
  background: linear-gradient(to top, var(--gl-background-color-default), transparent);
}
@container scroll-state(scrollable: bottom) {
  .panel-content-inner.duo-chat-scroll-scrims::after {
    opacity: 1;
    z-index: 2;
  }
}

.duo-chat.web-only .duo-chat-message pre code {
  color: inherit !important;
  background-color: transparent !important;
}

.audit-log-table .gl-table th {
  line-height: 1rem;
}

.gl-banner .rounded-bottom-right-9 {
  border-bottom-right-radius: 3rem;
}

.draft-note .note-header-info {
  padding: 0.25rem 0.5rem;
}
.draft-note .timeline-content {
  background-color: var(--timeline-entry-draft-note-background-color) !important;
  padding: 0.25rem 0.5rem;
  margin-left: 2.5rem;
  border-radius: var(--gl-border-radius-lg);
}

.draft-note-referenced-commands p {
  margin: 0;
}

.diff-content .draft-note .timeline-content,
.card .draft-note .timeline-content {
  margin-left: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.diff-content .draft-note:last-of-type .timeline-content,
.card .draft-note:last-of-type .timeline-content{
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}

.files .draft-note {
  margin: 0 -1px;
}
.files .draft-note .timeline-entry-inner {
  border: 1px solid #e95f21 !important;
}
.files .draft-note .timeline-content {
  border-radius: 0;
}
.files .draft-note .timeline-avatar {
  margin: 0.5rem 0 0 1rem;
}

.generic-report-container {
  display: grid;
  grid-template-columns: 1fr;
}
@container panel (min-width: 768px) {
  .generic-report-container {
    grid-template-columns: max-content minmax(0, 1fr);
  }
}

.generic-report-row {
  display: contents;
}
.generic-report-row:last-child .generic-report-column {
  border-bottom-width: 0;
}

.generic-report-column {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  overflow-x: auto;
}
.generic-report-column:first-child {
  padding-top: 1rem;
}
.generic-report-column:last-child {
  padding-bottom: 1rem;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
@container panel (min-width: 768px) {
  .generic-report-column {
    padding-top: 1rem;
    padding-bottom: 1rem;
    border-bottom-style: solid;
    border-bottom-color: var(--gl-border-color-default);
    border-bottom-width: 1px;
  }
  .generic-report-column:first-child {
    max-width: 15rem;
  }
}

.generic-report-list {
  margin-bottom: 0 !important;
  padding-left: 0;
}
.generic-report-list li {
  margin-left: 0;
  margin-bottom: 0.25rem;
  list-style-type: none;
}
.generic-report-list li:last-child {
  margin-bottom: 0;
}
.generic-report-list.generic-report-list-nested li {
  margin-left: 1rem;
  list-style-type: disc;
}

.generic-report-named-list {
  display: grid;
  grid-template-columns: max-content auto;
  margin: 0 !important;
}
.generic-report-named-list > .generic-report-named-list-item {
  display: contents;
}

.generic-report-named-list-item {
  list-style-type: none;
  margin: 0 !important;
}
.generic-report-named-list-item .generic-report-named-list-label,
.generic-report-named-list-item .generic-report-named-list-value {
  margin: 0;
  display: flex;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}
.generic-report-named-list-item:first-child > .generic-report-named-list-label,
.generic-report-named-list-item:first-child > .generic-report-named-list-value {
  padding-top: 0;
}
.generic-report-named-list-item:last-child > .generic-report-named-list-label,
.generic-report-named-list-item:last-child > .generic-report-named-list-value {
  padding-bottom: 0;
  border-bottom-width: 0;
}

.security-policies-alert {
  top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
  z-index: 1;
}

.security-policies-popover-content-height {
  height: 12rem;
}

.security-policies-textarea-min-height {
  min-height: 200px;
}

.security-policies-license-modal-min-height {
  min-height: 700px;
}

.security-policies-variables-modal-min-height {
  min-height: 500px;
}

.security-policies-approver-max-width {
  max-width: 330px;
}

.security-policies-exceptions-modal-height {
  min-height: 380px;
}

.security-policies-bg-subtle{
  background-color: var(--gl-background-color-subtle);
}

.security-policies {
  grid-template-areas: "content sidebar";
  grid-template-columns: 1fr 350px;
  grid-template-rows: auto 1fr;
  grid-gap: 1rem;
}
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .security-policies {
    grid-gap: 0 2rem;
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .security-policies {
    grid-gap: 0 2rem;
  }
}

.security-policies-split-view {
  grid-template-areas: "content sidebar";
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto 1fr;
}
@container panel (width >= 992px) {
  :where(html.with-gl-container-queries) .security-policies-split-view .security-policies-rule-section {
    width: var(--rule-section-width, 100%);
  }
  :where(html.with-gl-container-queries) .security-policies-split-view .security-policies-sidebar {
    width: var(--yaml-section-width, 100%);
  }
}
@media (width >= 992px) {
  :where(html:not(.with-gl-container-queries)) .security-policies-split-view .security-policies-rule-section {
    width: var(--rule-section-width, 100%);
  }
  :where(html:not(.with-gl-container-queries)) .security-policies-split-view .security-policies-sidebar {
    width: var(--yaml-section-width, 100%);
  }
}

.security-policies-actions {
  grid-area: content;
  grid-row: auto;
}

.security-policies-actions-sidebar {
  grid-area: sidebar;
  grid-row: auto;
}

.security-policies-sidebar {
  grid-area: sidebar;
  grid-row: 1/span 2;
}

.security-policies-drag-handle {
  width: 16px !important;
}

.security-policies-drag-handle:hover{
  background-color: var(--gl-background-color-strong);
}

.security-policies-drag-handle.is-dragging{
  background-color: var(--gl-background-color-strong);
}

.security-policies-drag-thumbnail {
  height: 40px !important;
  width: 16px !important;
}

.security-dashboard-filters {
  position: sticky;
  top: calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height));
  z-index: 1;
}

.vulnerability-list-graphql {
  --sticky-container-height: 0;
}

.vulnerability-list {
  isolation: isolate;
}
@container panel (width >= 576px) {
  :where(html.with-gl-container-queries) .vulnerability-list .checkbox {
    padding-left: 0.75rem;
    padding-right: 0;
    width: 1px;
  }
  :where(html.with-gl-container-queries) .vulnerability-list .checkbox + td,
  :where(html.with-gl-container-queries) .vulnerability-list .checkbox + th {
    padding-left: 0.75rem;
  }
  :where(html.with-gl-container-queries) .vulnerability-list .detected {
    width: 9%;
  }
  :where(html.with-gl-container-queries) .vulnerability-list .status {
    width: 10%;
  }
  :where(html.with-gl-container-queries) .vulnerability-list .severity {
    width: 9%;
  }
  :where(html.with-gl-container-queries) .vulnerability-list .description {
    max-width: 0;
  }
  :where(html.with-gl-container-queries) .vulnerability-list .identifier {
    width: 16%;
  }
  :where(html.with-gl-container-queries) .vulnerability-list .scanner {
    width: 10%;
  }
  :where(html.with-gl-container-queries) .vulnerability-list .activity {
    width: 5%;
  }
}
@media (width >= 576px) {
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .checkbox {
    padding-left: 0.75rem;
    padding-right: 0;
    width: 1px;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .checkbox + td,
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .checkbox + th {
    padding-left: 0.75rem;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .detected {
    width: 9%;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .status {
    width: 10%;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .severity {
    width: 9%;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .description {
    max-width: 0;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .identifier {
    width: 16%;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .scanner {
    width: 10%;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-list .activity {
    width: 5%;
  }
}
.vulnerability-list thead {
  position: sticky !important;
  z-index: 2;
  top: calc(calc(calc(var(--header-height) + calc(var(--system-header-height) + var(--performance-bar-height))) + var(--top-bar-height)) + var(--sticky-container-height));
  box-shadow: inset 0 -1px var(--gl-border-color-default);
}
.vulnerability-list thead th {
  border-top: 0;
}

/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/*
 * Layout
 */
/**
  🚨 Do not use this spacing scale — it is deprecated and being removed. 🚨
  See https://gitlab.com/gitlab-org/gitlab/issues/36857 for more details.

  Instead, if you need a spacing class, add it to app/assets/stylesheets/framework/common.scss,
  using the following values.

    $gl-spacing-scale-0: 0;
    $gl-spacing-scale-1: 2px;
    $gl-spacing-scale-2: 4px;
    $gl-spacing-scale-3: 8px;
    $gl-spacing-scale-4: 12px;
    $gl-spacing-scale-5: 16px;
    $gl-spacing-scale-6: 24px;
    $gl-spacing-scale-7: 32px;
    $gl-spacing-scale-8: 40px;
    $gl-spacing-scale-9: 48px;
    $gl-spacing-scale-10: 56px;
    $gl-spacing-scale-11: 64px;
    $gl-spacing-scale-12: 80px;
    $gl-spacing-scale-13: 96px;

  E.g., a padding top of 96px can be added using:
  .gl-shim-pt-13 {
    padding-top: 96px;
  }

  Please use -shim- so it can be differentiated from the old scale classes.

  These will be replaced when the Gitlab UI utilities are included.
**/
/* Will be moved to @gitlab/ui by https://gitlab.com/gitlab-org/gitlab-services/design.gitlab.com/-/issues/2792 */
/* End gitlab-ui#1709 */
/*
 * Text
 */
/*
 * Lists
 */
/*
 * Code
 */
/*
 * Tooltips
 */
/*
 * Padding
 */
/*
 * Misc
 */
/*
 * Merge requests
 */
/*
 * Calculated heights
 */
/* tanuki logo colors */
/*
 * State colors:
 */
/*
 * Commit Diff Colors
 */
/*
 * The transparent colors are used in Monaco editor. Using full opacity colors
 * would hide other layers (selected text, matching brackets).
 *
 * When the transparent colors get layered on white background, they create their
 * full opacity counterparts:
 *
 *  - white + $line-added-transparent = $line-added
 *  - white + $line-added-transparent + $line-added-dark-transparent = $line-added-dark
 *
 * More details: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41553
 */
/*
 * Fonts
 * The --default-mono-font and --default-regular-font variables give users
 * a way to override our font choices for them.
 */
/*
* Dropdowns
*/
/*
* Sidebar
*/
/*
* Buttons
*/
/*
* Badges
*/
/*
 *  Award emoji
 */
/*
 * Search Box
 */
/*
 *  Notes
 */
/*
* Boards
*/
/*
* Builds
*/
/*
* Commit Page
*/
/*
* Files
*/
/*
* Forms
*/
/*
* Label
*/
/*
* Animation
*/
/*
* Login
*/
/*
* Typography
*/
/*
Pipeline Graph
*/
/*
GitLab Plans
*/
/*
Performance Bar
*/
/*
Image Commenting cursor
*/
/*
Popup
*/
/*
Drawers
*/
/*
Modals
*/
/*
Popovers
*/
/*
Merge requests
*/
/*
Board Swimlanes
*/
/*
Source Editor theme overrides
*/
/**
 Bootstrap 4.2.0 introduced new icons for validating forms.
 Our design system does not use those, so we are disabling them for now:
 - Docs: https://getbootstrap.com/docs/4.3/components/forms/#server-side
 - Issue: https://gitlab.com/gitlab-org/design.gitlab.com/issues/242
 */
.diff-grid.with-inline-findings .diff-grid-right {
  grid-template-columns: 50px 8px 20px 1fr;
}
.diff-grid.with-inline-findings.inline-diff-view .diff-grid-left {
  grid-template-columns: 50px 50px 8px 20px 1fr;
}
.diff-grid.with-inline-findings .more-count {
  background-color: #8a8888;
  color: #fff;
  border: 1px solid #ecebea;
  border-radius: 50%;
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 9px;
  line-height: 16px;
  text-align: center;
  width: 16px;
  height: 16px;
}
.diff-grid.with-inline-findings .inline-findings-transition-container .inline-findings-severity-icon:nth-child(1) {
  z-index: 99;
  transform: translateX(10px);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .inline-findings-severity-icon:nth-child(2) {
  z-index: 98;
  transform: translateX(20px);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .inline-findings-severity-icon:nth-child(3) {
  z-index: 97;
  transform: translateX(30px);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .inline-findings-severity-icon:nth-child(4) {
  z-index: 96;
  transform: translateX(40px);
}
.diff-grid.with-inline-findings .more-count,
.diff-grid.with-inline-findings .inline-findings-severity-icon {
  filter: drop-shadow(0 1px 0.5px #fff) drop-shadow(1px 0 0.5px #fff) drop-shadow(0 -1px 0.5px #fff) drop-shadow(-1px 0 0.5px #fff);
}
.diff-grid.with-inline-findings .more-count-copy-dropdown {
  line-height: 0.11;
}
.diff-grid.with-inline-findings .inline-findings-transition-container .more-count-enter.more-count,
.diff-grid.with-inline-findings .inline-findings-transition-container .more-count-leave-to.more-count {
  opacity: 0;
  transform: translateX(0);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .more-count-enter-to.more-count,
.diff-grid.with-inline-findings .inline-findings-transition-container .more-count-leave.more-count {
  transform: translateX(30px);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-enter-to.inline-findings-severity-icon:nth-child(1),
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-leave.inline-findings-severity-icon:nth-child(1) {
  transform: translateX(10px);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-enter-to.inline-findings-severity-icon:nth-child(2),
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-leave.inline-findings-severity-icon:nth-child(2) {
  transform: translateX(20px);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-enter-to.inline-findings-severity-icon:nth-child(3),
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-leave.inline-findings-severity-icon:nth-child(3) {
  transform: translateX(30px);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-enter-to.inline-findings-severity-icon:nth-child(4),
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-leave.inline-findings-severity-icon:nth-child(4) {
  transform: translateX(40px);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .more-count {
  transform: translateX(30px);
  z-index: 3;
  transition: opacity 0.1s, transform 0.2s;
}
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-enter.inline-findings-severity-icon,
.diff-grid.with-inline-findings .inline-findings-transition-container .icons-leave-to.inline-findings-severity-icon {
  opacity: 0;
  transform: translateX(0);
}
.diff-grid.with-inline-findings .inline-findings-transition-container .inline-findings-severity-icon {
  transition: opacity 0.1s, transform 0.2s;
}

.findings-drawer .drawer-heading-severity {
  text-transform: capitalize;
}
.findings-drawer .findings-drawer-nav-button {
  top: -1px;
}

.findings-dropdown {
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
.findings-dropdown .findings-dropdown-truncate {
  max-width: 19rem;
}
.findings-dropdown .gl-truncate-end {
  white-space: nowrap !important;
}

.findings-dropdown-width {
  width: 23rem;
}

.plan-badge {
  margin-right: 15px;
}
.plan-badge svg {
  position: relative;
  top: 3px;
  height: 16px;
  width: 16px;
}
.plan-badge[data-plan=gold] {
  color: rgb(135.8024691358, 110.6790123457, 29.1975308642);
}
.plan-badge[data-plan=gold] svg g {
  fill: #d4af37;
}
.plan-badge[data-plan=ultimate] {
  color: rgb(135.8024691358, 110.6790123457, 29.1975308642);
}
.plan-badge[data-plan=ultimate] svg g {
  fill: #d4af37;
}
.plan-badge[data-plan=silver] {
  color: rgb(92.6597938144, 110.3092783505, 121.3402061856);
}
.plan-badge[data-plan=silver] svg g {
  fill: #91a1ab;
}
.plan-badge[data-plan=premium] {
  color: rgb(92.6597938144, 110.3092783505, 121.3402061856);
}
.plan-badge[data-plan=premium] svg g {
  fill: #91a1ab;
}
.plan-badge[data-plan=bronze] {
  color: rgb(123, 76.2, 30);
}
.plan-badge[data-plan=bronze] svg g {
  fill: #cd7f32;
}
.plan-badge:not([data-plan]) svg g {
  fill: #646163;
}

.plan-badge-vue[data-plan=gold] {
  color: #d4af37;
}
.plan-badge-vue[data-plan=ultimate] {
  color: #d4af37;
}
.plan-badge-vue[data-plan=silver] {
  color: #91a1ab;
}
.plan-badge-vue[data-plan=premium] {
  color: #91a1ab;
}
.plan-badge-vue[data-plan=bronze] {
  color: #cd7f32;
}

.invite-modal-content {
  grid-row: 1;
  grid-column: 1;
  min-width: 0;
}

.invite-modal-transition-enter-active,
.invite-modal-transition-leave-active {
  transition-property: max-height, opacity;
  transition-timing-function: ease-in-out;
  transition-property: all;
  transition-timing-function: ease;
  transition-duration: 400ms;
  overflow: hidden;
}

.invite-modal-transition-enter,
.invite-modal-transition-leave-to {
  max-height: 0;
  opacity: 0;
}

.invite-modal-transition-enter-to,
.invite-modal-transition-leave {
  max-height: 37.5rem;
}

.block.weight .gl-field-error {
  margin-top: 8px;
  margin-left: -6px;
  display: flex;
  align-items: center;
}

.health-status {
  line-height: 16px;
}
.health-status .gl-label-text {
  font-weight: 600;
  font-size: 0.75rem;
}

.issuable-assignees a:not(.btn) {
  color: inherit;
}

.labels-select-wrapper.is-embedded .labels-select-dropdown-button {
  background-color: #fff;
  font-family: var(--default-regular-font, "GitLab Sans"), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 14px;
  line-height: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  height: auto;
  text-align: left;
  border-style: none;
  --tw-shadow: inset 0 0 0 1px var(--gray-200, #bfbfc3);
  --tw-shadow-colored: inset 0 0 0 1px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  border-radius: .25rem;
  white-space: nowrap;
}
.labels-select-wrapper.is-embedded .labels-select-dropdown-button .gl-button-text {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.labels-select-wrapper.is-embedded .labels-select-dropdown-button .gl-icon {
  margin: 0;
}
.labels-select-wrapper.is-embedded .labels-select-wrapper.is-embedded {
  left: 0;
  --tw-shadow: 0 2px 4px 0 #0000001a;
  --tw-shadow-colored: 0 2px 4px 0 var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  width: 300px !important;
  min-height: none;
  max-height: none;
}
.labels-select-wrapper.is-embedded .labels-select-wrapper.is-embedded a:not(.btn) {
  color: inherit;
}
.labels-select-wrapper.is-embedded .dropdown-title {
  padding-top: 0.25rem !important;
  padding-bottom: 0.75rem !important;
}
.labels-select-wrapper.is-embedded .dropdown-footer .list-unstyled {
  margin: 0;
}

.cve-id-request .help-button,
.cve-id-request .close-help-button {
  cursor: pointer;
}
.cve-id-request .help-state-toggle-enter-active {
  transition: all 0.8s ease;
}
.cve-id-request .help-state-toggle-leave-active {
  transition: all 0.5s ease;
}
.cve-id-request .help-state-toggle-enter,
.cve-id-request .help-state-toggle-leave-active {
  opacity: 0;
}
.cve-id-request .cve-id-request-help-state {
  background: #fff;
  margin: 16px -20px -20px;
  padding: 16px 20px;
  border-top-style: solid;
  border-top-color: var(--gl-border-color-default);
  border-top-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: var(--gl-border-color-default);
  border-bottom-width: 1px;
}

.ai-summary-card h2 {
  margin-top: 0;
}

.compliance-report-table .view-details{
  background-color: var(--gl-background-color-subtle);
}
.compliance-report-table .view-details div {
  width: 100% !important;
  padding: 0 !important;
}
.compliance-report-table tr:hover .view-details {
  background-color: transparent;
}

.vulnerability-counts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(7rem, 1fr));
  grid-gap: 2rem;
}

@container panel (width < 576px) {
  :where(html.with-gl-container-queries) .vulnerability-status-checkbox .custom-control-label {
    padding-left: 0 !important;
  }
}
@media (width < 576px) {
  :where(html:not(.with-gl-container-queries)) .vulnerability-status-checkbox .custom-control-label {
    padding-left: 0 !important;
  }
}
@container panel (width < 768px) {
  :where(html.with-gl-container-queries) .vulnerability-report-footer-mobile {
    text-align: left !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  :where(html.with-gl-container-queries) .vulnerability-report-footer-mobile .gl-new-dropdown {
    position: relative;
    top: auto;
    right: auto;
  }
}
@media (width < 768px) {
  :where(html:not(.with-gl-container-queries)) .vulnerability-report-footer-mobile {
    text-align: left !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  :where(html:not(.with-gl-container-queries)) .vulnerability-report-footer-mobile .gl-new-dropdown {
    position: relative;
    top: auto;
    right: auto;
  }
}

#blank-project-pane .gl-new-dropdown-custom-toggle {
  width: 100%;
}

/*
 This is a noop-file. In JH:
 jh/app/assets/stylesheets/_jh/application_jh.scss
 will take precedence over it and import more styles
 */
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/*
 * Layout
 */
/**
  🚨 Do not use this spacing scale — it is deprecated and being removed. 🚨
  See https://gitlab.com/gitlab-org/gitlab/issues/36857 for more details.

  Instead, if you need a spacing class, add it to app/assets/stylesheets/framework/common.scss,
  using the following values.

    $gl-spacing-scale-0: 0;
    $gl-spacing-scale-1: 2px;
    $gl-spacing-scale-2: 4px;
    $gl-spacing-scale-3: 8px;
    $gl-spacing-scale-4: 12px;
    $gl-spacing-scale-5: 16px;
    $gl-spacing-scale-6: 24px;
    $gl-spacing-scale-7: 32px;
    $gl-spacing-scale-8: 40px;
    $gl-spacing-scale-9: 48px;
    $gl-spacing-scale-10: 56px;
    $gl-spacing-scale-11: 64px;
    $gl-spacing-scale-12: 80px;
    $gl-spacing-scale-13: 96px;

  E.g., a padding top of 96px can be added using:
  .gl-shim-pt-13 {
    padding-top: 96px;
  }

  Please use -shim- so it can be differentiated from the old scale classes.

  These will be replaced when the Gitlab UI utilities are included.
**/
/* Will be moved to @gitlab/ui by https://gitlab.com/gitlab-org/gitlab-services/design.gitlab.com/-/issues/2792 */
/* End gitlab-ui#1709 */
/*
 * Text
 */
/*
 * Lists
 */
/*
 * Code
 */
/*
 * Tooltips
 */
/*
 * Padding
 */
/*
 * Misc
 */
/*
 * Merge requests
 */
/*
 * Calculated heights
 */
/* tanuki logo colors */
/*
 * State colors:
 */
/*
 * Commit Diff Colors
 */
/*
 * The transparent colors are used in Monaco editor. Using full opacity colors
 * would hide other layers (selected text, matching brackets).
 *
 * When the transparent colors get layered on white background, they create their
 * full opacity counterparts:
 *
 *  - white + $line-added-transparent = $line-added
 *  - white + $line-added-transparent + $line-added-dark-transparent = $line-added-dark
 *
 * More details: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/41553
 */
/*
 * Fonts
 * The --default-mono-font and --default-regular-font variables give users
 * a way to override our font choices for them.
 */
/*
* Dropdowns
*/
/*
* Sidebar
*/
/*
* Buttons
*/
/*
* Badges
*/
/*
 *  Award emoji
 */
/*
 * Search Box
 */
/*
 *  Notes
 */
/*
* Boards
*/
/*
* Builds
*/
/*
* Commit Page
*/
/*
* Files
*/
/*
* Forms
*/
/*
* Label
*/
/*
* Animation
*/
/*
* Login
*/
/*
* Typography
*/
/*
Pipeline Graph
*/
/*
GitLab Plans
*/
/*
Performance Bar
*/
/*
Image Commenting cursor
*/
/*
Popup
*/
/*
Drawers
*/
/*
Modals
*/
/*
Popovers
*/
/*
Merge requests
*/
/*
Board Swimlanes
*/
/*
Source Editor theme overrides
*/
/**
 Bootstrap 4.2.0 introduced new icons for validating forms.
 Our design system does not use those, so we are disabling them for now:
 - Docs: https://getbootstrap.com/docs/4.3/components/forms/#server-side
 - Issue: https://gitlab.com/gitlab-org/design.gitlab.com/issues/242
 */
/*
 * This file is only for overriding Bootstrap 4 variables.
 * Please add any new variables to variables.scss
 */
/*
* SASS preserves units in arithmetic operations. For example:
* 12em * 0 = 0em. This function return the unit of a numeric value.
*
* For more examples, see: https://codepen.io/paulgv/pen/XWrqMgQ
*/
/* stylelint-disable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-enable @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/* stylelint-disable-next-line @gitlab/no-gl-deprecated-design-tokens */
/**
* Declares a property with a fluid value that decreases or
* rises depending on the viewport’s size. The property type
* should be numeric.
*
* Values are expected in rem units.
* Fluid range: between 48rem (768px) – 75rem (1200px).
*
* @param $property Property name, i.e. line-height, font-size, width, height, etc.
* @param $min Property value lower bound.
* @param $max Property value upper bound.
*/
/**
* Helper function for :focus
*
* @param $size is deprecated and should not be used anymore
*/
/**
* Helper function for @media of at least the minimum
* breakpoint width.
*
* @param $name Breakpoint name, such as `sm` or `md`.
*/
/**
* Helper function for @media of at most the maximum
* breakpoint width.
*
* Note: Before using, consider using a mobile-first
* approach, and define @media for larger breakpoints
* using `gl-media-breakpoint-up` while using this rule as
* the starting point instead.
*
* @param $name Breakpoint, such as `sm` or `md`. `xs` is not valid
*/
/**
* Helper function to resolve font-size value from $gl-font-sizes and
* $gl-font-sizes-fixed maps.
*
* @param $size Number font-size scale
* @param $fixed Boolean toggle default and fixed font size scales
*/
@media print {
  .md h1,
  .md h2,
  .md h3,
  .md h4,
  .md h5,
  .md h6 {
    margin-top: 17px;
  }
  .md h1 {
    font-size: 30px;
  }
  .md h2 {
    font-size: 22px;
  }
  .md h3 {
    font-size: 18px;
    font-weight: 600;
  }
  .md {
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }
  .md [data-sticky-header] > table:not(.code) > thead:first-of-type > tr:first-child > th,
  .md [data-sticky-header] > table:not(.code) > tbody:first-of-type > tr:first-child > th {
    border-top: 1px solid var(--gl-border-color-default);
    border-bottom: 1px solid var(--gl-border-color-default);
    box-shadow: none;
  }
  .md blockquote::before {
    position: absolute;
    top: 0;
    left: -4px;
    content: " ";
    height: 100%;
    width: 4px;
    background-color: #dcdbd9;
  }
  .md blockquote {
    position: relative;
    font-size: inherit;
    color: var(--gl-text-color-subtle);
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    padding-left: 1.5rem;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    margin-right: 0;
    --tw-shadow: inset 4px 0 0 0 var(--gray-100, #dcdcde);
    --tw-shadow-colored: inset 4px 0 0 0 var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
    margin-left: 4px;
    border: 0 !important;
  }
  .panels-container {
    overflow: visible !important;
  }
  /* stylelint-disable gitlab/no-js-class */
  .super-topbar,
  nav,
  .super-sidebar,
  .super-sidebar-overlay,
  .tree-ref-holder,
  .tree-holder .breadcrumb,
  .nav,
  .btn,
  ul.notes-form,
  .issuable-gutter-toggle,
  .gutter-toggle,
  .edit-link,
  .note-action-button,
  .right-sidebar,
  .flash-container,
  .panel-header,
  copy-code,
  #js-peek {
    display: none !important;
  }
  /* stylelint-enable gitlab/no-js-class */
  pre {
    page-break-before: avoid;
    page-break-inside: auto;
  }
  .page-gutter {
    padding-top: 0;
    padding-left: 0;
  }
  .right-sidebar {
    top: 0;
  }
  a[href]::after {
    content: none !important;
  }
  .with-performance-bar .layout-page, .content-wrapper {
    padding-top: 0;
  }
  .panels-container .panel-content-inner,
  .panels-container .vue-portal-target .work-item-detail-panel-content {
    height: auto !important;
    overflow: visible !important;
  }
  .panel-content {
    height: auto !important;
    overflow: visible !important;
    contain: none !important;
  }
  .paneled-view {
    overflow: visible !important;
  }
  .page-with-panels .layout-page {
    height: auto !important;
  }
  /* stylelint-disable gitlab/no-js-class */
  .js-file-title,
  .js-signature-container,
  .js-fork-suggestion-label {
    display: none !important;
  }
  /* stylelint-enable gitlab/no-js-class */
  .navigation-root {
    display: block !important;
  }
  /* stylelint-disable gitlab/no-js-class */
  #js-file-browser,
  .file-tree-browser,
  .info-well {
    display: none !important;
  }
  /* stylelint-enable gitlab/no-js-class */
  #tree-holder {
    width: 100% !important;
    padding: 0 !important;
  }
  /* stylelint-disable gitlab/no-js-class */
  .tree-ref-container,
  .js-repo-breadcrumbs,
  [data-testid=repository-heading] {
    display: none !important;
  }
  /* stylelint-enable gitlab/no-js-class */
  .file-actions,
  .file-blame-legend {
    display: none !important;
  }
  .file-holder {
    border: 0 !important;
    box-shadow: none !important;
  }
  :root.gl-dark {
    --gl-text-color-default: var(--gl-color-neutral-800);
    --gl-text-color-subtle: var(--gl-color-neutral-600);
    --gl-text-color-strong: var(--gl-color-neutral-950);
    --gl-text-color-heading: var(--gl-color-neutral-950);
    --gl-background-color-default: var(--gl-color-neutral-0);
    --gl-background-color-subtle: var(--gl-color-neutral-10);
    --gl-background-color-strong: var(--gl-color-neutral-50);
    --gl-background-color-section: var(--gl-color-neutral-0);
    --gl-background-color-overlap: var(--gl-color-neutral-0);
  }
  :root.gl-dark .md :not(pre.code) > code {
    background-color: var(--gl-color-neutral-100);
  }
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9hc3NldHMvc3R5bGVzaGVldHMvYXBwbGljYXRpb24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi9hdC5qcy9kaXN0L2Nzcy9qcXVlcnkuYXR3aG8uY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9kcm9wem9uZS9kaXN0L2Jhc2ljLmNzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL3Jvb3Quc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvc2Nzcy9mdW5jdGlvbnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvc2Nzcy92YXJpYWJsZXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay92YXJpYWJsZXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay92YXJpYWJsZXNfb3ZlcnJpZGVzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvbWl4aW5zLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3Njc3MvbWl4aW5zLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fcm9vdC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvdmVuZG9yL19yZnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL192YXJpYWJsZXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL190eXBlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2xpc3RzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3Rva2Vucy9idWlsZC9zY3NzL190b2tlbnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19pbWFnZXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faW1hZ2Uuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX2NvZGUuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19ncmlkLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2dyaWQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYnJlYWtwb2ludHMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL190YWJsZXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9faG92ZXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fZm9ybXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fdHJhbnNpdGlvbi5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19mb3Jtcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19idXR0b25zLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL190cmFuc2l0aW9ucy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX2Ryb3Bkb3duLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2NhcmV0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX25hdi1kaXZpZGVyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9faW5wdXQtZ3JvdXAuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19jdXN0b20tZm9ybXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19uYXYuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19uYXZiYXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19jYXJkLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fYnJlYWRjcnVtYi5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX3BhZ2luYXRpb24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX2JhZGdlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9taXhpbnMvX2JhZGdlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fYWxlcnQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fYWxlcnQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19wcm9ncmVzcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX21lZGlhLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fbGlzdC1ncm91cC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvbWl4aW5zL19saXN0LWdyb3VwLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAvc2Nzcy9fY2xvc2Uuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19tb2RhbC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX3Rvb2x0aXAuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX3BvcG92ZXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL19wcmludC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwLXZ1ZS9zcmMvX3V0aWxpdGllcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy92ZW5kb3IvYm9vdHN0cmFwLXZ1ZS9zcmMvY29tcG9uZW50cy9kcm9wZG93bi9fZHJvcGRvd24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZHJvcGRvd24vX2Ryb3Bkb3duLWZvcm0uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvZHJvcGRvd24vX2Ryb3Bkb3duLXRleHQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvbW9kYWwvX21vZGFsLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL3BvcG92ZXIvX3BvcG92ZXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC12dWUvc3JjL2NvbXBvbmVudHMvdGFibGUvX3RhYmxlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAtdnVlL3NyYy9fdmFyaWFibGVzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3ZlbmRvci9ib290c3RyYXAtdnVlL3NyYy9jb21wb25lbnRzL3Rvb2x0aXAvX3Rvb2x0aXAuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdG9rZW5zL2J1aWxkL2Nzcy90b2tlbnMuY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy90b2tlbnMvYnVpbGQvY3NzL3Rva2Vucy5kYXJrLmNzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvc2Nzcy9ib2R5LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL3Njc3MvdHlwb2dyYXBoeS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvbmV3X2Ryb3Bkb3ducy9kaXNjbG9zdXJlL2Rpc2Nsb3N1cmVfZHJvcGRvd24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2tleXNldF9wYWdpbmF0aW9uL2tleXNldF9wYWdpbmF0aW9uLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS90b2tlbl9zZWxlY3Rvci90b2tlbl9zZWxlY3Rvci5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvY2FyZC9jYXJkLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvc2hhcmVkX2NvbXBvbmVudHMvY2xlYXJfaWNvbl9idXR0b24vY2xlYXJfaWNvbl9idXR0b24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2FjY29yZGlvbi9hY2NvcmRpb25faXRlbS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvYWxlcnQvYWxlcnQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2F0dHJpYnV0ZV9saXN0L2F0dHJpYnV0ZV9saXN0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9hdmF0YXIvYXZhdGFyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9hdmF0YXJfbGFiZWxlZC9hdmF0YXJfbGFiZWxlZC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvYXZhdGFyX2xpbmsvYXZhdGFyX2xpbmsuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2F2YXRhcnNfaW5saW5lL2F2YXRhcnNfaW5saW5lLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9hbmltYXRlZF9pY29uL2FuaW1hdGVkX2ljb24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2JhZGdlL2JhZGdlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9icmVhZGNydW1iL2JyZWFkY3J1bWIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2Jhbm5lci9iYW5uZXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2Jyb2FkY2FzdF9tZXNzYWdlL2Jyb2FkY2FzdF9tZXNzYWdlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL3Bpa2FkYXkvc2Nzcy9waWthZGF5LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9kYXRlcGlja2VyL2RhdGVwaWNrZXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2RhdGVyYW5nZV9waWNrZXIvZGF0ZXJhbmdlX3BpY2tlci5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvZHJhd2VyL2RyYXdlci5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvZHJvcGRvd24vZHJvcGRvd24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2Ryb3Bkb3duL2Ryb3Bkb3duX2RpdmlkZXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2Ryb3Bkb3duL2Ryb3Bkb3duX3NlY3Rpb25faGVhZGVyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9kcm9wZG93bi9kcm9wZG93bl9pdGVtLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9kcm9wZG93bi9kcm9wZG93bl90ZXh0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9maWx0ZXJlZF9zZWFyY2gvZmlsdGVyZWRfc2VhcmNoLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9maWx0ZXJlZF9zZWFyY2gvZmlsdGVyZWRfc2VhcmNoX3N1Z2dlc3Rpb24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2ZpbHRlcmVkX3NlYXJjaC9maWx0ZXJlZF9zZWFyY2hfc3VnZ2VzdGlvbl9saXN0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9maWx0ZXJlZF9zZWFyY2gvZmlsdGVyZWRfc2VhcmNoX3Rlcm0uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2ZpbHRlcmVkX3NlYXJjaC9maWx0ZXJlZF9zZWFyY2hfdG9rZW4uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2ZpbHRlcmVkX3NlYXJjaC9maWx0ZXJlZF9zZWFyY2hfdG9rZW5fc2VnbWVudC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9mb3JtX2RhdGUvZm9ybV9kYXRlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9mb3JtL2Zvcm1faW5wdXQvZm9ybV9pbnB1dC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9mb3JtX2lucHV0X2dyb3VwL2Zvcm1faW5wdXRfZ3JvdXAuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2Zvcm0vZm9ybV9wYXNzd29yZF9pbnB1dC9mb3JtX3Bhc3N3b3JkX2lucHV0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9mb3JtL2Zvcm1fY2hlY2tib3gvZm9ybV9jaGVja2JveC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9mb3JtX2dyb3VwL2Zvcm1fZ3JvdXAuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2Zvcm0vZm9ybV9yYWRpb19ncm91cC9mb3JtX3JhZGlvX2dyb3VwLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9mb3JtL2Zvcm1fc2VsZWN0L2Zvcm1fc2VsZWN0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9mb3JtL2Zvcm1fY29tYm9ib3gvZm9ybV9jb21ib2JveC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvZm9ybS9pbnB1dF9ncm91cF90ZXh0L2lucHV0X2dyb3VwX3RleHQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2ljb24vaWNvbi5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvaW5maW5pdGVfc2Nyb2xsL2luZmluaXRlX3Njcm9sbC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvbGFiZWwvbGFiZWwuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL2xpbmsvbGluay5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvbG9hZGluZ19pY29uL2xvYWRpbmdfaWNvbi5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvbWFya2Rvd24vbWFya2Rvd24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL21vZGFsL21vZGFsLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9uYXZfaXRlbS9uYXZfaXRlbS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvYnV0dG9uL2J1dHRvbi5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvYnV0dG9uX2dyb3VwL2J1dHRvbl9ncm91cC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvcGFnaW5hdGlvbi9wYWdpbmF0aW9uLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9wYXRoL3BhdGguc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL3BvcG92ZXIvcG9wb3Zlci5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvcHJvZ3Jlc3NfYmFyL3Byb2dyZXNzX2Jhci5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2Uvc2VhcmNoX2JveF9ieV90eXBlL3NlYXJjaF9ib3hfYnlfdHlwZS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2Uvc2VhcmNoX2JveF9ieV9jbGljay9zZWFyY2hfYm94X2J5X2NsaWNrLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9za2VsZXRvbl9sb2FkZXIvc2tlbGV0b25fbG9hZGVyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS90YWJzL3RhYnMvdGFicy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvdG9hc3QvdG9hc3Quc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL3RhYmxlL3RhYmxlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS90b2dnbGUvdG9nZ2xlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS90b2tlbi90b2tlbi5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2Jhc2UvdG9vbHRpcC90b29sdGlwLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvY2hhcnRzL2hlYXRtYXAvaGVhdG1hcC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2NoYXJ0cy9sZWdlbmQvbGVnZW5kLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvY2hhcnRzL3Nlcmllc19sYWJlbC9zZXJpZXNfbGFiZWwuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9jaGFydHMvc2luZ2xlX3N0YXQvc2luZ2xlX3N0YXQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9jaGFydHMvc2hhcmVkL3Rvb2x0aXAvdG9vbHRpcC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9jb21wb25lbnRzL2NoYXJ0cy9zaGFyZWQvdG9vbHRpcC90b29sdGlwX2RlZmF1bHRfZm9ybWF0L3Rvb2x0aXBfZGVmYXVsdF9mb3JtYXQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvZ3JpZHN0YWNrL2Rpc3QvZ3JpZHN0YWNrLmNzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy91dGlsaXRpZXMvdHJ1bmNhdGUvdHJ1bmNhdGUuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy91dGlsaXRpZXMvdHJ1bmNhdGVfdGV4dC90cnVuY2F0ZV90ZXh0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9uZXdfZHJvcGRvd25zL2Ryb3Bkb3duLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvYmFzZS9uZXdfZHJvcGRvd25zL2Ryb3Bkb3duX2l0ZW0uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvY29tcG9uZW50cy9iYXNlL25ld19kcm9wZG93bnMvbGlzdGJveC9saXN0Ym94LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvdWkvc3JjL2NvbXBvbmVudHMvcmVnaW9ucy9lbXB0eV9zdGF0ZS9lbXB0eV9zdGF0ZS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL3VpL3NyYy9zY3NzL3RoZW1lcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL25vZGVfbW9kdWxlcy9AZ2l0bGFiL2R1by11aS9zcmMvY29tcG9uZW50cy9jaGF0L2R1b19jaGF0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvZHVvLXVpL3NyYy9jb21wb25lbnRzL2NoYXQvY29tcG9uZW50cy9kdW9fY2hhdF9sb2FkZXIvZHVvX2NoYXRfbG9hZGVyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvZHVvLXVpL3NyYy9jb21wb25lbnRzL2NoYXQvY29tcG9uZW50cy9kdW9fY2hhdF9tZXNzYWdlL2R1b19jaGF0X21lc3NhZ2Uuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi9kdW8tdWkvc3JjL2NvbXBvbmVudHMvY2hhdC9jb21wb25lbnRzL2R1b19jaGF0X21lc3NhZ2UvbWFya2Rvd25fcmVuZGVyZXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi9kdW8tdWkvc3JjL2NvbXBvbmVudHMvdWkvZHVvX3JlY2VudF9jb2xsYXBzaWJsZS9kdW9fcmVjZW50X2NvbGxhcHNpYmxlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvbm9kZV9tb2R1bGVzL0BnaXRsYWIvZHVvLXVpL3NyYy9jb21wb25lbnRzL2FnZW50aWNfY2hhdC9jb21wb25lbnRzL2FnZW50aWNfYmluYXJ5X2ZlZWRiYWNrL2FnZW50aWNfYmluYXJ5X2ZlZWRiYWNrLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXBfbWlncmF0aW9uX3Jlc2V0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXBfbWlncmF0aW9uX2NvbXBvbmVudHMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9sYXlvdXQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9ibG9vbS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2FuaW1hdGlvbnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay92dWVfdHJhbnNpdGlvbnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9ibG9iX2VtYmVkLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvYmxvY2tzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvYnJlYWRjcnVtYnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9idXR0b25zLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvY2FsZW5kYXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9jb21tb24uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9kcm9wZG93bnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9maWxlcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2ZpbHRlcnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9mbGFzaC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2Zvcm1zLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvZ2ZtLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsva2JkLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvaGVhZGVyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvdG9wX2Jhci5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvcGFnZV9idW5kbGVzL19taXhpbnNfYW5kX3ZhcmlhYmxlc19hbmRfZnVuY3Rpb25zLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9oaWdobGlnaHQvY29tbW9uLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvaGlnaGxpZ2h0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvbGlzdHMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9ub2RlX21vZHVsZXMvQGdpdGxhYi91aS9zcmMvdmVuZG9yL2Jvb3RzdHJhcC9zY3NzL21peGlucy9fY2xlYXJmaXguc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9sb2dvLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvbWFya2Rvd25fYXJlYS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL21lZGlhX29iamVjdC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL21vZGFsLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvcGFuZWxzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvcG9wdXAuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9zZWNvbmRhcnlfbmF2aWdhdGlvbl9lbGVtZW50cy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL3NpZGViYXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9zdXBlcl9zaWRlYmFyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvc3VwZXJfdG9wYmFyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvdGFibGVzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvdGFicy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL3R5cG9ncmFwaHkuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay96ZW4uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay93ZWxscy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL3BhZ2VfaGVhZGVyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvcGFnZV90aXRsZS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2F3YXJkcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2ltYWdlcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2Vtb2ppcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2ljb25zLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvc25pcHBldHMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9yZXNwb25zaXZlX3RhYmxlcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL3N0YWNrZWRfcHJvZ3Jlc3NfYmFyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvc29ydGFibGUuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9yZWFkX21vcmUuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9zeXN0ZW1fbWVzc2FnZXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9jYXJkLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvc291cmNlX2VkaXRvci5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvcGFnZV9idW5kbGVzL25vdGVzL19kaWZmX2NvbW1lbnRzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlX2J1bmRsZXMvbm90ZXMvX2ltYWdlX2NvbW1lbnRzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9mcmFtZXdvcmsvZGlmZnMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9kdW9fY2hhdC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2NydWQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9zZXZlcml0eS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvcGFnZXMvY29sb3JzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlcy9jb21taXRzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlcy9ldmVudHMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL3BhZ2VzL2dyb3Vwcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvcGFnZXMvaXNzdWVzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlcy9ub3RlX2Zvcm0uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL3BhZ2VzL3BpcGVsaW5lcy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvcGFnZXMvc2V0dGluZ3Muc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NvbXBvbmVudHMvYXZhdGFyLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL2FjdGlvbl9jYXJkX2NvbXBvbmVudC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9hbmFseXRpY3NfcGFuZWxfc3RhdGUuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NvbXBvbmVudHMvY29udGVudF9lZGl0b3Iuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NvbXBvbmVudHMvZGFzaGJvYXJkX3BhbmVsX2JvZHkuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NvbXBvbmVudHMvZGVwbG95bWVudF9pbnN0YW5jZS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9kZXRhaWxfcGFnZS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9mb2N1c19jYXJvdXNlbC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9tdWx0aXBsZV9jaG9pY2Vfc2VsZWN0b3Iuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NvbXBvbmVudHMvcmVmX3NlbGVjdG9yLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL3JlbGF0ZWRfaXRlbXNfbGlzdC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9zZXZlcml0eS9pY29ucy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9zaG9ydGN1dHNfaGVscC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy91cGxvYWRfZHJvcHpvbmUvdXBsb2FkX2Ryb3B6b25lLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL3doYXRzX25ldy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9jb2RlX2Zsb3cuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NvbXBvbmVudHMvc2Nyb2xsX3NjcmltLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9sYXlvdXRzL2Jhc2VfbGF5b3V0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9sYXlvdXRzL2RldGFpbF9sYXlvdXQuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2xheW91dHMvcGFuZWwuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL3ZlbmRvcnMvYXR3aG8uc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2JlaGF2aW9ycy5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2VlL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvX2VlL2FwcGxpY2F0aW9uX2VlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvZWUvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL2R1b19jaGF0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvZWUvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL2F1ZGl0X2xvZ3MvbG9nc190YWJsZS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2VlL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9iYW5uZXIuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9lZS9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2NvbXBvbmVudHMvYmF0Y2hfY29tbWVudHMvZHJhZnRfbm90ZS5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2VlL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvY29tcG9uZW50cy9nZW5lcmljX3Z1bG5lcmFiaWxpdHlfcmVwb3J0LnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvZWUvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL3NlY3VyaXR5X3BvbGljaWVzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvZWUvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL3Z1bG5lcmFiaWxpdHlfbGlzdC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2VlL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2RpZmZzLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvZWUvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlcy9ncm91cHMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9lZS9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL3BhZ2VzL2lzc3VhYmxlLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvZWUvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlcy9pc3N1YWJsZV9mb3JtLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvZWUvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlcy9pc3N1ZXMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9lZS9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL3BhZ2VzL3NlY3VyaXR5L2NvbXBsaWFuY2VfZGFzaGJvYXJkLnNjc3MiLCJmaWxlOi8vL2dpdGxhYi1nZGsvZ2l0bGFiLWRldmVsb3BtZW50LWtpdC9naXRsYWIvZWUvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlcy9zZWN1cml0eS92dWxuZXJhYmlsaXR5X3JlcG9ydC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2VlL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvcGFnZXMvcmVnaXN0cmF0aW9ucy9ncm91cHMuc2NzcyIsImZpbGU6Ly8vZ2l0bGFiLWdkay9naXRsYWItZGV2ZWxvcG1lbnQta2l0L2dpdGxhYi9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL19qaC9hcHBsaWNhdGlvbl9qaC5zY3NzIiwiZmlsZTovLy9naXRsYWItZ2RrL2dpdGxhYi1kZXZlbG9wbWVudC1raXQvZ2l0bGFiL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvcHJpbnQuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7RUFDSSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsYUFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxZQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtFQUNBLHNDQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtBREVKOztBQ0NBO0VBQ0ksWUFBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0VBQ0EsZ0NBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtF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aEJBO0VBQ0UsY0FBQTtFQUVBLGdCQUFBO0FYMmhCRjs7QVd4aEJBO0VBTUUsWUFBQTtFQUVBLFVBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtBWHFoQkY7O0FXaGhCQTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFVBQUE7RUFDQSxxQkFBQTtFQ3hNSSxpQkFBQTtFRDBNSixvQkFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtBWG1oQkY7O0FXaGhCQTtFQUNFLHdCQUFBO0FYbWhCRjs7QVcvZ0JBOztFQUVFLFlBQUE7QVhraEJGOztBVy9nQkE7RUFLRSxvQkFBQTtFQUNBLHdCQUFBO0FYOGdCRjs7QVd2Z0JBO0VBQ0Usd0JBQUE7QVgwZ0JGOztBV2xnQkE7RUFDRSxhQUFBO0VBQ0EsMEJBQUE7QVhxZ0JGOztBVzlmQTtFQUNFLHFCQUFBO0FYaWdCRjs7QVc5ZkE7RUFDRSxrQkFBQTtFQUNBLGVBQUE7QVhpZ0JGOztBVzlmQTtFQUNFLGFBQUE7QVhpZ0JGOztBVzVmQTtFQUNFLHdCQUFBO0FYK2ZGOztBY3g3QkE7O0VBRUUsc0JEMFM0QjtFQ3hTNUIsZ0JSc0ZvQjtFUXJGcEIsZ0JEMFM0QjtBYmdwQjlCOztBY3Y3QkE7RUZ5S00sb0JBQUE7QVpreEJOOztBYzE3QkE7RUZ3S00sa0JBQUE7QVpzeEJOOztBYzc3QkE7RUZ1S00scUJBQUE7QVoweEJOOztBY2g4QkE7RUZzS00sb0JBQUE7QVo4eEJOOztBY244QkE7RUZxS00scUJBQUE7QVpreUJOOztBY3Q4QkE7RUZvS00sbUJBQUE7QVpzeUJOOztBY3g4QkE7RUZrS00sa0JBQUE7RUVoS0osZ0JENlM0QjtBYjhwQjlCOztBY3Y4QkE7RUY0Sk0sZUFBQTtFRTFKSixnQkRnUzRCO0VDL1I1QixnQkR1UjRCO0FibXJCOUI7O0FjeDhCQTtFRnVKTSxpQkFBQTtFRXJKSixnQkQ0UjRCO0VDM1I1QixnQkRrUjRCO0FieXJCOUI7O0FjejhCQTtFRmtKTSxpQkFBQTtFRWhKSixnQkR3UjRCO0VDdlI1QixnQkQ2UTRCO0FiK3JCOUI7O0FjMThCQTtFRjZJTSxpQkFBQTtFRTNJSixnQkRvUjRCO0VDblI1QixnQkR3UTRCO0FicXNCOUI7O0FjcjhCQTtFQUNFLGtCVGpEVTtFU2tEVixxQlRsRFU7RVNtRFYsU0FBQTtFQUNBLHdDQUFBO0FkdzhCRjs7QWNoOEJBOztFRnNHSSxrQkFBQTtFRW5HRixnQkRnTzRCO0FibXVCOUI7O0FjaDhCQTs7RUFFRSxjRHdRNEI7RUN2UTVCLHlCRCtRNEI7QWJvckI5Qjs7QWMzN0JBO0VDOUVFLGVBQUE7RUFDQSxnQkFBQTtBZjZnQ0Y7O0FjMzdCQTtFQ25GRSxlQUFBO0VBQ0EsZ0JBQUE7QWZraENGOztBYzc3QkE7RUFDRSxxQkFBQTtBZGc4QkY7QWM5N0JFO0VBQ0Usb0JEeVAwQjtBYnVzQjlCOztBY3Q3QkE7RUYrREksY0FBQTtFRTdERix5QkFBQTtBZHk3QkY7O0FjcjdCQTtFQUNFLHFCVDFHVTtFT2tMTixrQkFBQTtBWmkzQk47O0FjcjdCQTtFQUNFLGNBQUE7RUZtREUsa0JBQUE7RUVqREYsY0VFcUI7QWhCczdCdkI7QWN0N0JFO0VBQ0UsYUFBQTtBZHc3Qko7O0FpQjFpQ0E7RUNJRSxlQUFBO0VBR0EsWUFBQTtBbEJ3aUNGOztBaUJ6aUNBO0VBQ0UsZ0JKMC9Ca0M7RUl6L0JsQyxzQkRpR21CO0VDaEduQix5QkFBQTtFRUlFLHNCQUFBO0VEVEYsZUFBQTtFQUdBLFlBQUE7QWxCaWpDRjs7QWlCbmlDQTtFQUVFLHFCQUFBO0FqQnFpQ0Y7O0FpQmxpQ0E7RUFDRSxzQkFBQTtFQUNBLGNBQUE7QWpCcWlDRjs7QWlCbGlDQTtFTGlJSSxjQUFBO0VLL0hGLGNEZ0ZxQjtBaEJxOUJ2Qjs7QW9CNWtDQTtFUnNLSSxjQUFBO0VRcEtGLGNQdUNRO0VPdENSLHFCQUFBO0FwQitrQ0Y7QW9CNWtDRTtFQUNFLGNBQUE7QXBCOGtDSjs7QW9CemtDQTtFQUNFLGNBQUE7RVJ5SkUsY0FBQTtFUXZKRixjSjJHcUI7QWhCaStCdkI7QW9CemtDRTtFUm9KRSxrQkFBQTtFUWxKQSxjQUFBO0VBQ0Esa0JBQUE7QXBCMmtDSjs7QW9CdGtDQTtFQUNFLGlCUGlrQ2tDO0VPaGtDbEMsa0JBQUE7QXBCeWtDRjs7QXFCaG1DRTs7Ozs7O0VDQUEsV0FBQTtFQUNBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0F0QnltQ0Y7O0F1QnJqQ0k7RUYzQ0U7SUFDRSxnQlJrTWU7RWJrNkJyQjtBQUNGO0F1QjNqQ0k7RUYzQ0U7SUFDRSxnQlJrTWU7RWJ1NkJyQjtBQUNGO0F1QmhrQ0k7RUYzQ0U7SUFDRSxnQlJrTWU7RWI0NkJyQjtBQUNGO0F1QnJrQ0k7RUYzQ0U7SUFDRSxpQlJrTWU7RWJpN0JyQjtBQUNGO0FxQnhsQ0U7RUNsQ0EsYUFBQTtFQUNBLGVBQUE7RUFDQSxtQkFBQTtFQUNBLGtCQUFBO0F0QjZuQ0Y7O0FxQnhsQ0U7RUFDRSxlQUFBO0VBQ0EsY0FBQTtBckIybENKO0FxQnpsQ0k7O0VBRUUsZ0JBQUE7RUFDQSxlQUFBO0FyQjJsQ047O0F3QmhwQ0U7Ozs7Ozs7Ozs7O0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBeEI2cENKOztBd0J2b0NNO0VBQ0UsYUFBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0F4QjBvQ1I7O0FzQjltQ0U7RUFDRSxjQUFBO0VBQ0EsZUFBQTtBdEJpbkNKOztBc0JubkNFO0VBQ0UsYUFBQTtFQUNBLGNBQUE7QXRCc25DSjs7QXNCeG5DRTtFQUNFLHdCQUFBO0VBQ0EseUJBQUE7QXRCMm5DSjs7QXNCN25DRTtFQUNFLGFBQUE7RUFDQSxjQUFBO0F0QmdvQ0o7O0FzQmxvQ0U7RUFDRSxhQUFBO0VBQ0EsY0FBQTtBdEJxb0NKOztBc0J2b0NFO0VBQ0Usd0JBQUE7RUFDQSx5QkFBQTtBdEIwb0NKOztBd0I3cENNO0VGQ0osY0FBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0F0QmdxQ0Y7O0F3QjdwQ1U7RUZiUixxQkFBQTtFQUlBLHNCQUFBO0F0QjJxQ0Y7O0F3QmxxQ1U7RUZiUixzQkFBQTtFQUlBLHVCQUFBO0F0QmdyQ0Y7O0F3QnZxQ1U7RUZiUixhQUFBO0VBSUEsY0FBQTtBdEJxckNGOztBd0I1cUNVO0VGYlIsc0JBQUE7RUFJQSx1QkFBQTtBdEIwckNGOztBd0JqckNVO0VGYlIsc0JBQUE7RUFJQSx1QkFBQTtBdEIrckNGOztBd0J0ckNVO0VGYlIsYUFBQTtFQUlBLGNBQUE7QXRCb3NDRjs7QXdCM3JDVTtFRmJSLHNCQUFBO0VBSUEsdUJBQUE7QXRCeXNDRjs7QXdCaHNDVTtFRmJSLHNCQUFBO0VBSUEsdUJBQUE7QXRCOHNDRjs7QXdCcnNDVTtFRmJSLGFBQUE7RUFJQSxjQUFBO0F0Qm10Q0Y7O0F3QjFzQ1U7RUZiUixzQkFBQTtFQUlBLHVCQUFBO0F0Qnd0Q0Y7O0F3Qi9zQ1U7RUZiUixzQkFBQTtFQUlBLHVCQUFBO0F0QjZ0Q0Y7O0F3QnB0Q1U7RUZiUixjQUFBO0VBSUEsZUFBQTtBdEJrdUNGOztBd0JudENNO0VBQXdCLFNBQUE7QXhCdXRDOUI7O0F3QnJ0Q007RUFBdUIsU0FBQTtBeEJ5dEM3Qjs7QXdCdHRDUTtFQUF3QixRQURiO0F4QjJ0Q25COztBd0IxdENRO0VBQXdCLFFBRGI7QXhCK3RDbkI7O0F3Qjl0Q1E7RUFBd0IsUUFEYjtBeEJtdUNuQjs7QXdCbHVDUTtFQUF3QixRQURiO0F4QnV1Q25COztBd0J0dUNRO0VBQXdCLFFBRGI7QXhCMnVDbkI7O0F3QjF1Q1E7RUFBd0IsUUFEYjtBeEIrdUNuQjs7QXdCOXVDUTtFQUF3QixRQURiO0F4Qm12Q25COztBd0JsdkNRO0VBQXdCLFFBRGI7QXhCdXZDbkI7O0F3QnR2Q1E7RUFBd0IsUUFEYjtBeEIydkNuQjs7QXdCMXZDUTtFQUF3QixRQURiO0F4Qit2Q25COztBd0I5dkNRO0VBQXdCLFNBRGI7QXhCbXdDbkI7O0F3Qmx3Q1E7RUFBd0IsU0FEYjtBeEJ1d0NuQjs7QXdCdHdDUTtFQUF3QixTQURiO0F4QjJ3Q25COztBd0Jud0NZO0VGaEJWLHdCQUFBO0F0QnV4Q0Y7O0F3QnZ3Q1k7RUZoQlYseUJBQUE7QXRCMnhDRjs7QXdCM3dDWTtFRmhCVixnQkFBQTtBdEIreENGOztBd0Ivd0NZO0VGaEJWLHlCQUFBO0F0Qm15Q0Y7O0F3Qm54Q1k7RUZoQlYseUJBQUE7QXRCdXlDRjs7QXdCdnhDWTtFRmhCVixnQkFBQTtBdEIyeUNGOztBd0IzeENZO0VGaEJWLHlCQUFBO0F0Qit5Q0Y7O0F3Qi94Q1k7RUZoQlYseUJBQUE7QXRCbXpDRjs7QXdCbnlDWTtFRmhCVixnQkFBQTtBdEJ1ekNGOztBd0J2eUNZO0VGaEJWLHlCQUFBO0F0QjJ6Q0Y7O0F3QjN5Q1k7RUZoQlYseUJBQUE7QXRCK3pDRjs7QXVCenpDSTtFQzVCRTtJQUNFLGFBQUE7SUFDQSxZQUFBO0lBQ0EsZUFBQTtFeEJ5MUNOO0VzQjd6Q0E7SUFDRSxjQUFBO0lBQ0EsZUFBQTtFdEIrekNGO0VzQmowQ0E7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJtMENGO0VzQnIwQ0E7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0QnUwQ0Y7RXNCejBDQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0QjIwQ0Y7RXNCNzBDQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0QiswQ0Y7RXNCajFDQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXRCbTFDRjtFd0J0MkNJO0lGQ0osY0FBQTtJQUNBLFdBQUE7SUFDQSxlQUFBO0V0QncyQ0E7RXdCcjJDUTtJRmJSLHFCQUFBO0lBSUEsc0JBQUE7RXRCazNDQTtFd0J6MkNRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEJzM0NBO0V3QjcyQ1E7SUZiUixhQUFBO0lBSUEsY0FBQTtFdEIwM0NBO0V3QmozQ1E7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0QjgzQ0E7RXdCcjNDUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCazRDQTtFd0J6M0NRO0lGYlIsYUFBQTtJQUlBLGNBQUE7RXRCczRDQTtFd0I3M0NRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEIwNENBO0V3Qmo0Q1E7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0Qjg0Q0E7RXdCcjRDUTtJRmJSLGFBQUE7SUFJQSxjQUFBO0V0Qms1Q0E7RXdCejRDUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCczVDQTtFd0I3NENRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEIwNUNBO0V3Qmo1Q1E7SUZiUixjQUFBO0lBSUEsZUFBQTtFdEI4NUNBO0V3Qi80Q0k7SUFBd0IsU0FBQTtFeEJrNUM1QjtFd0JoNUNJO0lBQXVCLFNBQUE7RXhCbTVDM0I7RXdCaDVDTTtJQUF3QixRQURiO0V4Qm81Q2pCO0V3Qm41Q007SUFBd0IsUUFEYjtFeEJ1NUNqQjtFd0J0NUNNO0lBQXdCLFFBRGI7RXhCMDVDakI7RXdCejVDTTtJQUF3QixRQURiO0V4QjY1Q2pCO0V3QjU1Q007SUFBd0IsUUFEYjtFeEJnNkNqQjtFd0IvNUNNO0lBQXdCLFFBRGI7RXhCbTZDakI7RXdCbDZDTTtJQUF3QixRQURiO0V4QnM2Q2pCO0V3QnI2Q007SUFBd0IsUUFEYjtFeEJ5NkNqQjtFd0J4NkNNO0lBQXdCLFFBRGI7RXhCNDZDakI7RXdCMzZDTTtJQUF3QixRQURiO0V4Qis2Q2pCO0V3Qjk2Q007SUFBd0IsU0FEYjtFeEJrN0NqQjtFd0JqN0NNO0lBQXdCLFNBRGI7RXhCcTdDakI7RXdCcDdDTTtJQUF3QixTQURiO0V4Qnc3Q2pCO0V3Qmg3Q1U7SUZoQlYsY0FBQTtFdEJtOENBO0V3Qm43Q1U7SUZoQlYsd0JBQUE7RXRCczhDQTtFd0J0N0NVO0lGaEJWLHlCQUFBO0V0Qnk4Q0E7RXdCejdDVTtJRmhCVixnQkFBQTtFdEI0OENBO0V3QjU3Q1U7SUZoQlYseUJBQUE7RXRCKzhDQTtFd0IvN0NVO0lGaEJWLHlCQUFBO0V0Qms5Q0E7RXdCbDhDVTtJRmhCVixnQkFBQTtFdEJxOUNBO0V3QnI4Q1U7SUZoQlYseUJBQUE7RXRCdzlDQTtFd0J4OENVO0lGaEJWLHlCQUFBO0V0QjI5Q0E7RXdCMzhDVTtJRmhCVixnQkFBQTtFdEI4OUNBO0V3Qjk4Q1U7SUZoQlYseUJBQUE7RXRCaStDQTtFd0JqOUNVO0lGaEJWLHlCQUFBO0V0Qm8rQ0E7QUFDRjtBdUIvOUNJO0VDNUJFO0lBQ0UsYUFBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0V4QjgvQ047RXNCbCtDQTtJQUNFLGNBQUE7SUFDQSxlQUFBO0V0Qm8rQ0Y7RXNCdCtDQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0QncrQ0Y7RXNCMStDQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXRCNCtDRjtFc0I5K0NBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCZy9DRjtFc0JsL0NBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCby9DRjtFc0J0L0NBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFdEJ3L0NGO0V3QjNnREk7SUZDSixjQUFBO0lBQ0EsV0FBQTtJQUNBLGVBQUE7RXRCNmdEQTtFd0IxZ0RRO0lGYlIscUJBQUE7SUFJQSxzQkFBQTtFdEJ1aERBO0V3QjlnRFE7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0QjJoREE7RXdCbGhEUTtJRmJSLGFBQUE7SUFJQSxjQUFBO0V0QitoREE7RXdCdGhEUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCbWlEQTtFd0IxaERRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ1aURBO0V3QjloRFE7SUZiUixhQUFBO0lBSUEsY0FBQTtFdEIyaURBO0V3QmxpRFE7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0QitpREE7RXdCdGlEUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCbWpEQTtFd0IxaURRO0lGYlIsYUFBQTtJQUlBLGNBQUE7RXRCdWpEQTtFd0I5aURRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEIyakRBO0V3QmxqRFE7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0QitqREE7RXdCdGpEUTtJRmJSLGNBQUE7SUFJQSxlQUFBO0V0Qm1rREE7RXdCcGpESTtJQUF3QixTQUFBO0V4QnVqRDVCO0V3QnJqREk7SUFBdUIsU0FBQTtFeEJ3akQzQjtFd0JyakRNO0lBQXdCLFFBRGI7RXhCeWpEakI7RXdCeGpETTtJQUF3QixRQURiO0V4QjRqRGpCO0V3QjNqRE07SUFBd0IsUUFEYjtFeEIrakRqQjtFd0I5akRNO0lBQXdCLFFBRGI7RXhCa2tEakI7RXdCamtETTtJQUF3QixRQURiO0V4QnFrRGpCO0V3QnBrRE07SUFBd0IsUUFEYjtFeEJ3a0RqQjtFd0J2a0RNO0lBQXdCLFFBRGI7RXhCMmtEakI7RXdCMWtETTtJQUF3QixRQURiO0V4QjhrRGpCO0V3QjdrRE07SUFBd0IsUUFEYjtFeEJpbERqQjtFd0JobERNO0lBQXdCLFFBRGI7RXhCb2xEakI7RXdCbmxETTtJQUF3QixTQURiO0V4QnVsRGpCO0V3QnRsRE07SUFBd0IsU0FEYjtFeEIwbERqQjtFd0J6bERNO0lBQXdCLFNBRGI7RXhCNmxEakI7RXdCcmxEVTtJRmhCVixjQUFBO0V0QndtREE7RXdCeGxEVTtJRmhCVix3QkFBQTtFdEIybURBO0V3QjNsRFU7SUZoQlYseUJBQUE7RXRCOG1EQTtFd0I5bERVO0lGaEJWLGdCQUFBO0V0QmluREE7RXdCam1EVTtJRmhCVix5QkFBQTtFdEJvbkRBO0V3QnBtRFU7SUZoQlYseUJBQUE7RXRCdW5EQTtFd0J2bURVO0lGaEJWLGdCQUFBO0V0QjBuREE7RXdCMW1EVTtJRmhCVix5QkFBQTtFdEI2bkRBO0V3QjdtRFU7SUZoQlYseUJBQUE7RXRCZ29EQTtFd0JobkRVO0lGaEJWLGdCQUFBO0V0Qm1vREE7RXdCbm5EVTtJRmhCVix5QkFBQTtFdEJzb0RBO0V3QnRuRFU7SUZoQlYseUJBQUE7RXRCeW9EQTtBQUNGO0F1QnBvREk7RUM1QkU7SUFDRSxhQUFBO0lBQ0EsWUFBQTtJQUNBLGVBQUE7RXhCbXFETjtFc0J2b0RBO0lBQ0UsY0FBQTtJQUNBLGVBQUE7RXRCeW9ERjtFc0Izb0RBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCNm9ERjtFc0Ivb0RBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFdEJpcERGO0VzQm5wREE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJxcERGO0VzQnZwREE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJ5cERGO0VzQjNwREE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0QjZwREY7RXdCaHJESTtJRkNKLGNBQUE7SUFDQSxXQUFBO0lBQ0EsZUFBQTtFdEJrckRBO0V3Qi9xRFE7SUZiUixxQkFBQTtJQUlBLHNCQUFBO0V0QjRyREE7RXdCbnJEUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCZ3NEQTtFd0J2ckRRO0lGYlIsYUFBQTtJQUlBLGNBQUE7RXRCb3NEQTtFd0IzckRRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ3c0RBO0V3Qi9yRFE7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0QjRzREE7RXdCbnNEUTtJRmJSLGFBQUE7SUFJQSxjQUFBO0V0Qmd0REE7RXdCdnNEUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCb3REQTtFd0Izc0RRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ3dERBO0V3Qi9zRFE7SUZiUixhQUFBO0lBSUEsY0FBQTtFdEI0dERBO0V3Qm50RFE7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0Qmd1REE7RXdCdnREUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCb3VEQTtFd0IzdERRO0lGYlIsY0FBQTtJQUlBLGVBQUE7RXRCd3VEQTtFd0J6dERJO0lBQXdCLFNBQUE7RXhCNHRENUI7RXdCMXRESTtJQUF1QixTQUFBO0V4QjZ0RDNCO0V3QjF0RE07SUFBd0IsUUFEYjtFeEI4dERqQjtFd0I3dERNO0lBQXdCLFFBRGI7RXhCaXVEakI7RXdCaHVETTtJQUF3QixRQURiO0V4Qm91RGpCO0V3Qm51RE07SUFBd0IsUUFEYjtFeEJ1dURqQjtFd0J0dURNO0lBQXdCLFFBRGI7RXhCMHVEakI7RXdCenVETTtJQUF3QixRQURiO0V4QjZ1RGpCO0V3QjV1RE07SUFBd0IsUUFEYjtFeEJndkRqQjtFd0IvdURNO0lBQXdCLFFBRGI7RXhCbXZEakI7RXdCbHZETTtJQUF3QixRQURiO0V4QnN2RGpCO0V3QnJ2RE07SUFBd0IsUUFEYjtFeEJ5dkRqQjtFd0J4dkRNO0lBQXdCLFNBRGI7RXhCNHZEakI7RXdCM3ZETTtJQUF3QixTQURiO0V4Qit2RGpCO0V3Qjl2RE07SUFBd0IsU0FEYjtFeEJrd0RqQjtFd0IxdkRVO0lGaEJWLGNBQUE7RXRCNndEQTtFd0I3dkRVO0lGaEJWLHdCQUFBO0V0Qmd4REE7RXdCaHdEVTtJRmhCVix5QkFBQTtFdEJteERBO0V3Qm53RFU7SUZoQlYsZ0JBQUE7RXRCc3hEQTtFd0J0d0RVO0lGaEJWLHlCQUFBO0V0Qnl4REE7RXdCendEVTtJRmhCVix5QkFBQTtFdEI0eERBO0V3QjV3RFU7SUZoQlYsZ0JBQUE7RXRCK3hEQTtFd0Ivd0RVO0lGaEJWLHlCQUFBO0V0Qmt5REE7RXdCbHhEVTtJRmhCVix5QkFBQTtFdEJxeURBO0V3QnJ4RFU7SUZoQlYsZ0JBQUE7RXRCd3lEQTtFd0J4eERVO0lGaEJWLHlCQUFBO0V0QjJ5REE7RXdCM3hEVTtJRmhCVix5QkFBQTtFdEI4eURBO0FBQ0Y7QXVCenlESTtFQzVCRTtJQUNFLGFBQUE7SUFDQSxZQUFBO0lBQ0EsZUFBQTtFeEJ3MEROO0VzQjV5REE7SUFDRSxjQUFBO0lBQ0EsZUFBQTtFdEI4eURGO0VzQmh6REE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJrekRGO0VzQnB6REE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0QnN6REY7RXNCeHpEQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0QjB6REY7RXNCNXpEQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0Qjh6REY7RXNCaDBEQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXRCazBERjtFd0JyMURJO0lGQ0osY0FBQTtJQUNBLFdBQUE7SUFDQSxlQUFBO0V0QnUxREE7RXdCcDFEUTtJRmJSLHFCQUFBO0lBSUEsc0JBQUE7RXRCaTJEQTtFd0J4MURRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEJxMkRBO0V3QjUxRFE7SUZiUixhQUFBO0lBSUEsY0FBQTtFdEJ5MkRBO0V3QmgyRFE7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0QjYyREE7RXdCcDJEUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCaTNEQTtFd0J4MkRRO0lGYlIsYUFBQTtJQUlBLGNBQUE7RXRCcTNEQTtFd0I1MkRRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ5M0RBO0V3QmgzRFE7SUZiUixzQkFBQTtJQUlBLHVCQUFBO0V0QjYzREE7RXdCcDNEUTtJRmJSLGFBQUE7SUFJQSxjQUFBO0V0Qmk0REE7RXdCeDNEUTtJRmJSLHNCQUFBO0lBSUEsdUJBQUE7RXRCcTREQTtFd0I1M0RRO0lGYlIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ5NERBO0V3Qmg0RFE7SUZiUixjQUFBO0lBSUEsZUFBQTtFdEI2NERBO0V3QjkzREk7SUFBd0IsU0FBQTtFeEJpNEQ1QjtFd0IvM0RJO0lBQXVCLFNBQUE7RXhCazREM0I7RXdCLzNETTtJQUF3QixRQURiO0V4Qm00RGpCO0V3Qmw0RE07SUFBd0IsUUFEYjtFeEJzNERqQjtFd0JyNERNO0lBQXdCLFFBRGI7RXhCeTREakI7RXdCeDRETTtJQUF3QixRQURiO0V4QjQ0RGpCO0V3QjM0RE07SUFBd0IsUUFEYjtFeEIrNERqQjtFd0I5NERNO0lBQXdCLFFBRGI7RXhCazVEakI7RXdCajVETTtJQUF3QixRQURiO0V4QnE1RGpCO0V3QnA1RE07SUFBd0IsUUFEYjtFeEJ3NURqQjtFd0J2NURNO0lBQXdCLFFBRGI7RXhCMjVEakI7RXdCMTVETTtJQUF3QixRQURiO0V4Qjg1RGpCO0V3Qjc1RE07SUFBd0IsU0FEYjtFeEJpNkRqQjtFd0JoNkRNO0lBQXdCLFNBRGI7RXhCbzZEakI7RXdCbjZETTtJQUF3QixTQURiO0V4QnU2RGpCO0V3Qi81RFU7SUZoQlYsY0FBQTtFdEJrN0RBO0V3Qmw2RFU7SUZoQlYsd0JBQUE7RXRCcTdEQTtFd0JyNkRVO0lGaEJWLHlCQUFBO0V0Qnc3REE7RXdCeDZEVTtJRmhCVixnQkFBQTtFdEIyN0RBO0V3QjM2RFU7SUZoQlYseUJBQUE7RXRCODdEQTtFd0I5NkRVO0lGaEJWLHlCQUFBO0V0Qmk4REE7RXdCajdEVTtJRmhCVixnQkFBQTtFdEJvOERBO0V3QnA3RFU7SUZoQlYseUJBQUE7RXRCdThEQTtFd0J2N0RVO0lGaEJWLHlCQUFBO0V0QjA4REE7RXdCMTdEVTtJRmhCVixnQkFBQTtFdEI2OERBO0V3Qjc3RFU7SUZoQlYseUJBQUE7RXRCZzlEQTtFd0JoOERVO0lGaEJWLHlCQUFBO0V0Qm05REE7QUFDRjtBeUJ0Z0VFOztFQUVFLGVaMlYwQjtBYjZxRDlCOztBeUIvL0RBO0VBQ0UseUJBQUE7QXpCa2dFRjtBeUJoZ0VFOztFQUVFLHlCQUFBO0F6QmtnRUo7QXlCOS9ESTs7RUFFRSx3QkFBQTtBekJnZ0VOOztBeUIxL0RFOzs7O0VBSUUsU0FBQTtBekI2L0RKOztBeUJwL0RFO0VBQ0UsbURwQjZQYztBTDB2RGxCOztBMEIzaEVFO0VEZ0RJLGNUOERpQjtFUzdEakIsc0NaNFN3QjtBYm1zRDlCOztBMkJyaUVJOzs7RUFHRSx5Q0YrRCtCO0F6QnkrRHJDO0EyQnBpRU07Ozs7RUFJRSxxQ0Z1RHlFO0F6QisrRGpGOztBMEI1aUVFO0VDa0JNLHlDQUplO0EzQmtpRXZCO0EyQjVoRVE7O0VBRUUseUNBUmE7QTNCc2lFdkI7O0EyQnpqRUk7OztFQUdFLDRDRitEK0I7QXpCNi9EckM7QTJCeGpFTTs7OztFQUlFLHdDRnVEeUU7QXpCbWdFakY7O0EwQmhrRUU7RUNrQk0saURBSmU7QTNCc2pFdkI7QTJCaGpFUTs7RUFFRSxpREFSYTtBM0IwakV2Qjs7QTJCN2tFSTs7O0VBR0UsNkNGK0QrQjtBekJpaEVyQztBMkI1a0VNOzs7O0VBSUUseUNGdUR5RTtBekJ1aEVqRjs7QTBCcGxFRTtFQ2tCTSw4REFKZTtBM0Iwa0V2QjtBMkJwa0VROztFQUVFLDhEQVJhO0EzQjhrRXZCOztBMkJqbUVJOzs7RUFHRSw0Q0YrRCtCO0F6QnFpRXJDO0EyQmhtRU07Ozs7RUFJRSx3Q0Z1RHlFO0F6QjJpRWpGOztBMEJ4bUVFO0VDa0JNLHFFQUplO0EzQjhsRXZCO0EyQnhsRVE7O0VBRUUscUVBUmE7QTNCa21FdkI7O0EyQnJuRUk7OztFQUdFLDZDRitEK0I7QXpCeWpFckM7QTJCcG5FTTs7OztFQUlFLHlDRnVEeUU7QXpCK2pFakY7O0EwQjVuRUU7RUNrQk0scUVBSmU7QTNCa25FdkI7QTJCNW1FUTs7RUFFRSxxRUFSYTtBM0JzbkV2Qjs7QTJCem9FSTs7O0VBR0UsNkNGK0QrQjtBekI2a0VyQztBMkJ4b0VNOzs7O0VBSUUseUNGdUR5RTtBekJtbEVqRjs7QTBCaHBFRTtFQ2tCTSxxRUFKZTtBM0Jzb0V2QjtBMkJob0VROztFQUVFLHFFQVJhO0EzQjBvRXZCOztBMkI3cEVJOzs7RUFHRSw0Q0YrRCtCO0F6QmltRXJDO0EyQjVwRU07Ozs7RUFJRSx3Q0Z1RHlFO0F6QnVtRWpGOztBMEJwcUVFO0VDa0JNLHFFQUplO0EzQjBwRXZCO0EyQnBwRVE7O0VBRUUscUVBUmE7QTNCOHBFdkI7O0EyQmpyRUk7OztFQUdFLDZDRitEK0I7QXpCcW5FckM7QTJCaHJFTTs7OztFQUlFLHlDRnVEeUU7QXpCMm5FakY7O0EwQnhyRUU7RUNrQk0scUVBSmU7QTNCOHFFdkI7QTJCeHFFUTs7RUFFRSxxRUFSYTtBM0JrckV2Qjs7QTJCcnNFSTs7O0VBR0Usc0NkK1Z3QjtBYnkyRDlCOztBMEJ0c0VFO0VDa0JNLGtFQUplO0EzQjRyRXZCO0EyQnRyRVE7O0VBRUUsa0VBUmE7QTNCZ3NFdkI7O0F5QnBvRUk7RUFDRSxXVHlCZTtFU3hCZix5QlRrQ2lCO0VTakNqQiw4RForUndCO0FidzJEOUI7QXlCbG9FSTtFQUNFLGNUMEJpQjtFU3pCakIseUJUb0JpQjtFU25CakIscUJUa0JpQjtBaEJrbkV2Qjs7QXlCL25FQTtFQUNFLFdUU21CO0VTUm5CLHlCVGtCcUI7QWhCZ25FdkI7QXlCaG9FRTs7O0VBR0UsOERaMlEwQjtBYnUzRDlCO0F5Qi9uRUU7RUFDRSxTQUFBO0F6QmlvRUo7QXlCN25FSTtFQUNFLDJDWitQd0I7QWJnNEQ5QjtBMEJ6dUVFO0VEaUhNLFdUYmE7RVNjYiw0Q1p5UHNCO0FiazREOUI7O0FTdmpFRTtFQUVJO0lnQjFESixjQUFBO0lBQ0EsV0FBQTtJQUNBLGdCQUFBO0lBQ0EsaUNBQUE7RXpCb25FQTtFeUJqbkVBO0lBQ0UsU0FBQTtFekJtbkVGO0FBQ0Y7QVN2akVJO0VBRUk7SWdCdEVOLGNBQUE7SUFDQSxXQUFBO0lBQ0EsZ0JBQUE7SUFDQSxpQ0FBQTtFekIrbkVBO0V5QjVuRUE7SUFDRSxTQUFBO0V6QjhuRUY7QUFDRjtBUzlrRUU7RUFFSTtJZ0IxREosY0FBQTtJQUNBLFdBQUE7SUFDQSxnQkFBQTtJQUNBLGlDQUFBO0V6QjBvRUE7RXlCdm9FQTtJQUNFLFNBQUE7RXpCeW9FRjtBQUNGO0FTN2tFSTtFQUVJO0lnQnRFTixjQUFBO0lBQ0EsV0FBQTtJQUNBLGdCQUFBO0lBQ0EsaUNBQUE7RXpCcXBFQTtFeUJscEVBO0lBQ0UsU0FBQTtFekJvcEVGO0FBQ0Y7QVNwbUVFO0VBRUk7SWdCMURKLGNBQUE7SUFDQSxXQUFBO0lBQ0EsZ0JBQUE7SUFDQSxpQ0FBQTtFekJncUVBO0V5QjdwRUE7SUFDRSxTQUFBO0V6QitwRUY7QUFDRjtBU25tRUk7RUFFSTtJZ0J0RU4sY0FBQTtJQUNBLFdBQUE7SUFDQSxnQkFBQTtJQUNBLGlDQUFBO0V6QjJxRUE7RXlCeHFFQTtJQUNFLFNBQUE7RXpCMHFFRjtBQUNGO0FTMW5FRTtFQUVJO0lnQjFESixjQUFBO0lBQ0EsV0FBQTtJQUNBLGdCQUFBO0lBQ0EsaUNBQUE7RXpCc3JFQTtFeUJuckVBO0lBQ0UsU0FBQTtFekJxckVGO0FBQ0Y7QVN6bkVJO0VBRUk7SWdCdEVOLGNBQUE7SUFDQSxXQUFBO0lBQ0EsZ0JBQUE7SUFDQSxpQ0FBQTtFekJpc0VBO0V5QjlyRUE7SUFDRSxTQUFBO0V6QmdzRUY7QUFDRjtBeUJockVFO0VBeEJBLGNBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQ0FBQTtBekIyc0VGO0F5QnhzRUU7RUFDRSxTQUFBO0F6QjBzRUo7O0E0QnAxRUE7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLFl0Qm9VYTtFc0JuVWIseUJBQUE7RWhCNEtJLG1CQUFBO0VnQnpLSixnQmZzUjRCO0VlclI1QixnQmYwUjRCO0VlelI1QixjWjBHcUI7RVl6R3JCLHNCWitGbUI7RVk5Rm5CLDRCQUFBO0VBQ0EseUJBQUE7RVRDRSxzQkFBQTtFVUhFLHdFRFFKO0E1QmsxRUY7QTZCdDFFTTtFRGROO0lDZVEsZ0JBQUE7RTdCeTFFTjtBQUNGO0E0QnAxRUU7RUFDRSw2QkFBQTtFQUNBLFNBQUE7QTVCczFFSjtBOEJ0MkVFO0VBQ0UsY2QyR21CO0VjMUduQixzQmRnR2lCO0VjL0ZqQixrQ2pCd2RvQztFaUJ2ZHBDLFVBQUE7RUFLRSxnRGpCdVh3QjtBYjYrRDlCO0E0QnQxRUU7RUFDRSxjWmtGbUI7RVloRm5CLFVBQUE7QTVCdTFFSjtBNEIvMEVFO0VBRUUseUJaK0RrQjtFWTdEbEIsVUFBQTtBNUIrMEVKOztBNEJ2MEVFOzs7O0VBQ0UsZ0JBQUE7QTVCNjBFSjs7QTRCdjBFRTtFQUNFLGtCQUFBO0VBQ0EsMEJBQUE7QTVCMDBFSjtBNEJ2MEVFO0VBTUUsY1o0Q21CO0VZM0NuQixzQlppQ2lCO0FoQm15RXJCOztBNEIvekVBOztFQUVFLGNBQUE7RUFDQSxXQUFBO0E1QmswRUY7O0E0Qnh6RUE7RUFDRSxpQ0FBQTtFQUNBLG9DQUFBO0VBQ0EsZ0JBQUE7RWhCbUVFLGtCQUFBO0VnQmpFRixnQmZtTTRCO0Fid25FOUI7O0E0Qnh6RUE7RUFDRSwrQkFBQTtFQUNBLGtDQUFBO0VoQjRFSSxrQkFBQTtFZ0IxRUosZ0JmZ0k0QjtBYjJyRTlCOztBNEJ4ekVBO0VBQ0UsZ0NBQUE7RUFDQSxtQ0FBQTtFaEJxRUksbUJBQUE7RWdCbkVKLGdCZjBINEI7QWJpc0U5Qjs7QTRCbHpFQTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtFaEJzREksbUJBQUE7RWdCcERKLGdCZnNLNEI7RWVySzVCLGNaVnFCO0VZV3JCLDZCQUFBO0VBQ0EseUJBQUE7RUFDQSxtQkFBQTtBNUJxekVGO0E0Qm56RUU7RUFFRSxnQkFBQTtFQUNBLGVBQUE7QTVCb3pFSjs7QTRCeHlFQTtFQUNFLGtDZitWc0M7RWU5VnRDLHVCQUFBO0VoQjZCSSxtQkFBQTtFZ0IzQkosZ0Jma0Y0QjtFTTFOMUIscUJBQUE7QW5CbzdFSjs7QTRCeHlFQTtFQUNFLGdDZndWc0M7RWV2VnRDLG9CQUFBO0VoQnFCSSxrQkFBQTtFZ0JuQkosZ0JmeUU0QjtFTXpOMUIscUJBQUE7QW5CNDdFSjs7QTRCdHlFRTtFQUVFLFlBQUE7QTVCd3lFSjs7QTRCcHlFQTtFQUNFLFlBQUE7QTVCdXlFRjs7QTRCL3hFQTtFQUNFLG1CZjZVc0M7QWJxOUR4Qzs7QTRCL3hFQTtFQUNFLGNBQUE7RUFDQSxtQmY4VHNDO0FibytEeEM7O0E0QjF4RUE7RUFDRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7QTVCNnhFRjtBNEIzeEVFOztFQUVFLGtCQUFBO0VBQ0EsaUJBQUE7QTVCNnhFSjs7QTRCcHhFQTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLHFCZm1Tc0M7QWJvL0R4Qzs7QTRCcHhFQTtFQUNFLGtCQUFBO0VBQ0Esa0JmK1JzQztFZTlSdEMscUJBQUE7QTVCdXhFRjtBNEJweEVFO0VBRUUsY1ovR21CO0FoQm80RXZCOztBNEJqeEVBO0VBQ0UsZ0JBQUE7QTVCb3hFRjs7QTRCanhFQTtFQUNFLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EscUJmZ1JzQztBYm9nRXhDO0E0Qmp4RUU7RUFDRSxnQkFBQTtFQUNBLGFBQUE7RUFDQSx1QmYyUW9DO0VlMVFwQyxjQUFBO0E1Qm14RUo7O0E4QmgrRUU7RUFDRSxhQUFBO0VBQ0EsV0FBQTtFQUNBLG1CakI2Y29DO0VEdFZwQyxrQkFBQTtFa0JySEEsY0ZxTnFDO0E1Qjh3RXpDOztBOEJoK0VFO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0Esa0JBQUE7RWxCMEhFLGtCQUFBO0VrQnhIRixnQmpCME8wQjtFaUJ6TzFCLFdBQUE7RUFDQSx5QkFBQTtFWDdDQSxzQkFBQTtBbkJpaEZKO0E4Qi85RUk7RUFFRSxTQUFBO0E5QmcrRU47O0E4QjM5RUk7Ozs7RUFFRSxjQUFBO0E5QmcrRU47O0E4QjlnRkk7RUFvREUscUJGa0xtQztBNUI0eUV6QztBOEJwOUVNO0VBQ0UscUJGdUtpQztFRXRLakMsaURBQUE7QTlCczlFUjs7QThCdGhGSTtFQTJGRSxxQkYySW1DO0E1Qm96RXpDO0E4Qng3RU07RUFDRSxxQkZtSWlDO0VFbElqQyxpREFBQTtBOUIwN0VSOztBOEJuN0VNO0VBQ0UsY0YwSGlDO0E1QjR6RXpDO0E4Qm43RU07OztFQUVFLGNBQUE7QTlCczdFUjs7QThCLzZFTTtFQUNFLGNGNkdpQztBNUJxMEV6QztBOEJoN0VRO0VBQ0UscUJGMEcrQjtBNUJ3MEV6QztBOEI3NkVRO0VBQ0UsK0RBQUE7RUM1Sk4sbUVENkoyQjtBOUIrNkUvQjtBOEIxNkVRO0VBQ0UsaURBQUE7QTlCNDZFVjtBOEJ6NkVRO0VBQ0UscUJGeUYrQjtBNUJrMUV6Qzs7QThCbDZFTTtFQUNFLHFCRitFaUM7QTVCczFFekM7QThCajZFUTtFQUNFLHFCRjBFK0I7RUV6RS9CLGlEQUFBO0E5Qm02RVY7O0E4QnBqRkU7RUFDRSxhQUFBO0VBQ0EsV0FBQTtFQUNBLG1CakI2Y29DO0VEdFZwQyxrQkFBQTtFa0JySEEsY0ZxTnFDO0E1QmsyRXpDOztBOEJwakZFO0VBQ0Usa0JBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0Esa0JBQUE7RWxCMEhFLGtCQUFBO0VrQnhIRixnQmpCME8wQjtFaUJ6TzFCLFdBQUE7RUFDQSx5QkFBQTtFWDdDQSxzQkFBQTtBbkJxbUZKO0E4Qm5qRkk7RUFFRSxTQUFBO0E5Qm9qRk47O0E4Qi9pRkk7Ozs7RUFFRSxjQUFBO0E5Qm9qRk47O0E4QmxtRkk7RUFvREUscUJGa0xtQztBNUJnNEV6QztBOEJ4aUZNO0VBQ0UscUJGdUtpQztFRXRLakMsZ0RBQUE7QTlCMGlGUjs7QThCMW1GSTtFQTJGRSxxQkYySW1DO0E1Qnc0RXpDO0E4QjVnRk07RUFDRSxxQkZtSWlDO0VFbElqQyxnREFBQTtBOUI4Z0ZSOztBOEJ2Z0ZNO0VBQ0UsY0YwSGlDO0E1Qmc1RXpDO0E4QnZnRk07OztFQUVFLGNBQUE7QTlCMGdGUjs7QThCbmdGTTtFQUNFLGNGNkdpQztBNUJ5NUV6QztBOEJwZ0ZRO0VBQ0UscUJGMEcrQjtBNUI0NUV6QztBOEJqZ0ZRO0VBQ0UsOERBQUE7RUM1Sk4sa0VENkoyQjtBOUJtZ0YvQjtBOEI5L0VRO0VBQ0UsZ0RBQUE7QTlCZ2dGVjtBOEI3L0VRO0VBQ0UscUJGeUYrQjtBNUJzNkV6Qzs7QThCdC9FTTtFQUNFLHFCRitFaUM7QTVCMDZFekM7QThCci9FUTtFQUNFLHFCRjBFK0I7RUV6RS9CLGdEQUFBO0E5QnUvRVY7O0E0Qmw2RUE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQkFBQTtBNUJxNkVGO0E0Qmg2RUU7RUFDRSxXQUFBO0E1Qms2RUo7QXVCaG9GSTtFS21PQTtJQUNFLGFBQUE7SUFDQSxtQkFBQTtJQUNBLHVCQUFBO0lBQ0EsZ0JBQUE7RTVCZzZFSjtFNEI1NUVFO0lBQ0UsYUFBQTtJQUNBLGNBQUE7SUFDQSxtQkFBQTtJQUNBLG1CQUFBO0lBQ0EsZ0JBQUE7RTVCODVFSjtFNEIxNUVFO0lBQ0UscUJBQUE7SUFDQSxXQUFBO0lBQ0Esc0JBQUE7RTVCNDVFSjtFNEJ4NUVFO0lBQ0UscUJBQUE7RTVCMDVFSjtFNEJ2NUVFOztJQUVFLFdBQUE7RTVCeTVFSjtFNEJwNUVFO0lBQ0UsYUFBQTtJQUNBLG1CQUFBO0lBQ0EsdUJBQUE7SUFDQSxXQUFBO0lBQ0EsZUFBQTtFNUJzNUVKO0U0QnA1RUU7SUFDRSxrQkFBQTtJQUNBLGNBQUE7SUFDQSxhQUFBO0lBQ0EscUJma0xrQztJZWpMbEMsY0FBQTtFNUJzNUVKO0U0Qm41RUU7SUFDRSxtQkFBQTtJQUNBLHVCQUFBO0U1QnE1RUo7RTRCbjVFRTtJQUNFLGdCQUFBO0U1QnE1RUo7QUFDRjs7QWdDeHVGQTtFQUNFLHFCQUFBO0VBRUEsZ0JuQjJSNEI7RW1CMVI1QixjaEJnSHFCO0VnQi9HckIsa0JBQUE7RUFHQSxzQkFBQTtFQUNBLHlCQUFBO1VBQUEsaUJBQUE7RUFDQSw2QkFBQTtFQUNBLDZCQUFBO0VDd0ZBLHlCQUFBO0VyQjhFSSxlQUFBO0VxQjVFSixpQjFCL0ZnQjtFWVFkLHNCQUFBO0VVSEUscUlHRUo7QWhDMnVGRjtBNkJ6dUZNO0VHZk47SUhnQlEsZ0JBQUE7RTdCNHVGTjtBQUNGO0EwQnZ2RkU7RU1VRSxjaEJvR21CO0VnQm5HbkIscUJBQUE7QWhDZ3ZGSjtBZ0M3dUZFO0VBRUUsVUFBQTtFQUNBLGdEbkJpWDBCO0FiNjNFOUI7QWdDMXVGRTtFQUVFLGFuQnFaMEI7QWJzMUU5QjtBZ0N2dUZFO0VBQ0UsZUFBQTtBaEN5dUZKO0FnQzN0RkE7O0VBRUUsb0JBQUE7QWhDNnRGRjs7QWdDcHRGRTtFQzFEQSxXQUFBO0VGQUUseUJsQnlFVztFb0J2RWIscUJwQnVFYTtBYjJzRmY7QTBCL3dGRTtFT0NFLFdBQUE7RUZOQSx3Q0VEMkQ7RUFTM0QsK0JBVHdIO0FqQzB4RjVIO0FpQzl3RkU7RUFFRSxXQUFBO0VGYkEsd0NFRDJEO0VBZ0IzRCwrQkFoQndIO0VBcUJ0SCxxREFBQTtBakMyd0ZOO0FpQ3R3RkU7RUFFRSxXQUFBO0VBQ0EseUJwQjZDVztFb0I1Q1gscUJwQjRDVztBYjJ0RmY7QWlDaHdGRTtFQUdFLFdBQUE7RUFDQSxtQ0F6Q3FMO0VBNkNyTCxtQ0E3Q2tQO0FqQzB5RnRQO0FpQzN2Rkk7RUFLSSxxREFBQTtBakN5dkZSOztBZ0NsdkZFO0VDMURBLGNBQUE7RUZBRSx5QmxCeUVXO0VvQnZFYixxQnBCdUVhO0FieXVGZjtBMEI3eUZFO0VPQ0UsY0FBQTtFRk5BLG9ERUQyRDtFQVMzRCwwQ0FUd0g7QWpDd3pGNUg7QWlDNXlGRTtFQUVFLGNBQUE7RUZiQSxvREVEMkQ7RUFnQjNELDBDQWhCd0g7RUFxQnRILHdEQUFBO0FqQ3l5Rk47QWlDcHlGRTtFQUVFLGNBQUE7RUFDQSx5QnBCNkNXO0VvQjVDWCxxQnBCNENXO0FieXZGZjtBaUM5eEZFO0VBR0UsY0FBQTtFQUNBLDhDQXpDcUw7RUE2Q3JMLGdEQTdDa1A7QWpDdzBGdFA7QWlDenhGSTtFQUtJLHdEQUFBO0FqQ3V4RlI7O0FnQ2h4RkU7RUMxREEsV0FBQTtFRkFFLHlCbEJ5RVc7RW9CdkViLHFCcEJ1RWE7QWJ1d0ZmO0EwQjMwRkU7RU9DRSxXQUFBO0VGTkEsaUVFRDJEO0VBUzNELDREQVR3SDtBakNzMUY1SDtBaUMxMEZFO0VBRUUsV0FBQTtFRmJBLGlFRUQyRDtFQWdCM0QsNERBaEJ3SDtFQXFCdEgsd0RBQUE7QWpDdTBGTjtBaUNsMEZFO0VBRUUsV0FBQTtFQUNBLHlCcEI2Q1c7RW9CNUNYLHFCcEI0Q1c7QWJ1eEZmO0FpQzV6RkU7RUFHRSxXQUFBO0VBQ0EsZ0VBekNxTDtFQTZDckwsNkRBN0NrUDtBakNzMkZ0UDtBaUN2ekZJO0VBS0ksd0RBQUE7QWpDcXpGUjs7QWdDOXlGRTtFQzFEQSxXQUFBO0VGQUUseUJsQnlFVztFb0J2RWIscUJwQnVFYTtBYnF5RmY7QTBCejJGRTtFT0NFLFdBQUE7RUZOQSxpRUVEMkQ7RUFTM0QsK0RBVHdIO0FqQ28zRjVIO0FpQ3gyRkU7RUFFRSxXQUFBO0VGYkEsaUVFRDJEO0VBZ0IzRCwrREFoQndIO0VBcUJ0SCxxREFBQTtBakNxMkZOO0FpQ2gyRkU7RUFFRSxXQUFBO0VBQ0EseUJwQjZDVztFb0I1Q1gscUJwQjRDVztBYnF6RmY7QWlDMTFGRTtFQUdFLFdBQUE7RUFDQSxtRUF6Q3FMO0VBNkNyTCwrREE3Q2tQO0FqQ280RnRQO0FpQ3IxRkk7RUFLSSxxREFBQTtBakNtMUZSOztBZ0M1MEZFO0VDMURBLFdBQUE7RUZBRSx5QmxCeUVXO0VvQnZFYixxQnBCdUVhO0FibTBGZjtBMEJ2NEZFO0VPQ0UsV0FBQTtFRk5BLG1FRUQyRDtFQVMzRCwrREFUd0g7QWpDazVGNUg7QWlDdDRGRTtFQUVFLFdBQUE7RUZiQSxtRUVEMkQ7RUFnQjNELCtEQWhCd0g7RUFxQnRILHNEQUFBO0FqQ200Rk47QWlDOTNGRTtFQUVFLFdBQUE7RUFDQSx5QnBCNkNXO0VvQjVDWCxxQnBCNENXO0FibTFGZjtBaUN4M0ZFO0VBR0UsV0FBQTtFQUNBLG1FQXpDcUw7RUE2Q3JMLCtEQTdDa1A7QWpDazZGdFA7QWlDbjNGSTtFQUtJLHNEQUFBO0FqQ2kzRlI7O0FnQzEyRkU7RUMxREEsV0FBQTtFRkFFLHlCbEJ5RVc7RW9CdkViLHFCcEJ1RWE7QWJpMkZmO0EwQnI2RkU7RU9DRSxXQUFBO0VGTkEsbUVFRDJEO0VBUzNELCtEQVR3SDtBakNnN0Y1SDtBaUNwNkZFO0VBRUUsV0FBQTtFRmJBLG1FRUQyRDtFQWdCM0QsK0RBaEJ3SDtFQXFCdEgsdURBQUE7QWpDaTZGTjtBaUM1NUZFO0VBRUUsV0FBQTtFQUNBLHlCcEI2Q1c7RW9CNUNYLHFCcEI0Q1c7QWJpM0ZmO0FpQ3Q1RkU7RUFHRSxXQUFBO0VBQ0EsbUVBekNxTDtFQTZDckwsK0RBN0NrUDtBakNnOEZ0UDtBaUNqNUZJO0VBS0ksdURBQUE7QWpDKzRGUjs7QWdDeDRGRTtFQzFEQSxjQUFBO0VGQUUseUJsQnlFVztFb0J2RWIscUJwQnVFYTtBYiszRmY7QTBCbjhGRTtFT0NFLGNBQUE7RUZOQSxxRUVEMkQ7RUFTM0QsaUVBVHdIO0FqQzg4RjVIO0FpQ2w4RkU7RUFFRSxjQUFBO0VGYkEscUVFRDJEO0VBZ0IzRCxpRUFoQndIO0VBcUJ0SCxtREFBQTtBakMrN0ZOO0FpQzE3RkU7RUFFRSxjQUFBO0VBQ0EseUJwQjZDVztFb0I1Q1gscUJwQjRDVztBYis0RmY7QWlDcDdGRTtFQUdFLGNBQUE7RUFDQSxxRUF6Q3FMO0VBNkNyTCxpRUE3Q2tQO0FqQzg5RnRQO0FpQy82Rkk7RUFLSSxtREFBQTtBakM2NkZSOztBZ0N0NkZFO0VDMURBLFdBQUE7RUZBRSx5QmxCeUVXO0VvQnZFYixxQnBCdUVhO0FiNjVGZjtBMEJqK0ZFO0VPQ0UsV0FBQTtFRk5BLGtFRUQyRDtFQVMzRCw4REFUd0g7QWpDNCtGNUg7QWlDaCtGRTtFQUVFLFdBQUE7RUZiQSxrRUVEMkQ7RUFnQjNELDhEQWhCd0g7RUFxQnRILHNEQUFBO0FqQzY5Rk47QWlDeDlGRTtFQUVFLFdBQUE7RUFDQSx5QnBCNkNXO0VvQjVDWCxxQnBCNENXO0FiNjZGZjtBaUNsOUZFO0VBR0UsV0FBQTtFQUNBLGtFQXpDcUw7RUE2Q3JMLDhEQTdDa1A7QWpDNC9GdFA7QWlDNzhGSTtFQUtJLHNEQUFBO0FqQzI4RlI7O0FnQzk3RkU7RUNOQSxjcEJlYTtFb0JkYixxQnBCY2E7QWIwN0ZmO0EwQjkvRkU7RU95REUsV0FMZ0Q7RUFNaEQseUJwQlVXO0VvQlRYLHFCcEJTVztBYis3RmY7QWlDcjhGRTtFQUVFLCtDQUFBO0FqQ3M4Rko7QWlDbjhGRTtFQUVFLGNwQkRXO0VvQkVYLDZCQUFBO0FqQ284Rko7QWlDajhGRTtFQUdFLFdBQUE7RUFDQSx5QnBCVFc7RW9CVVgscUJwQlZXO0FiMjhGZjtBaUMvN0ZJO0VBS0ksK0NBQUE7QWpDNjdGUjs7QWdDdjlGRTtFQ05BLGNwQmVhO0VvQmRiLHFCcEJjYTtBYm05RmY7QTBCdmhHRTtFT3lERSxjQUxnRDtFQU1oRCx5QnBCVVc7RW9CVFgscUJwQlNXO0FidzlGZjtBaUM5OUZFO0VBRUUsaURBQUE7QWpDKzlGSjtBaUM1OUZFO0VBRUUsY3BCRFc7RW9CRVgsNkJBQUE7QWpDNjlGSjtBaUMxOUZFO0VBR0UsY0FBQTtFQUNBLHlCcEJUVztFb0JVWCxxQnBCVlc7QWJvK0ZmO0FpQ3g5Rkk7RUFLSSxpREFBQTtBakNzOUZSOztBZ0NoL0ZFO0VDTkEsY3BCZWE7RW9CZGIscUJwQmNhO0FiNCtGZjtBMEJoakdFO0VPeURFLFdBTGdEO0VBTWhELHlCcEJVVztFb0JUWCxxQnBCU1c7QWJpL0ZmO0FpQ3YvRkU7RUFFRSxnREFBQTtBakN3L0ZKO0FpQ3IvRkU7RUFFRSxjcEJEVztFb0JFWCw2QkFBQTtBakNzL0ZKO0FpQ24vRkU7RUFHRSxXQUFBO0VBQ0EseUJwQlRXO0VvQlVYLHFCcEJWVztBYjYvRmY7QWlDai9GSTtFQUtJLGdEQUFBO0FqQysrRlI7O0FnQ3pnR0U7RUNOQSxjcEJlYTtFb0JkYixxQnBCY2E7QWJxZ0dmO0EwQnprR0U7RU95REUsV0FMZ0Q7RUFNaEQseUJwQlVXO0VvQlRYLHFCcEJTVztBYjBnR2Y7QWlDaGhHRTtFQUVFLGdEQUFBO0FqQ2loR0o7QWlDOWdHRTtFQUVFLGNwQkRXO0VvQkVYLDZCQUFBO0FqQytnR0o7QWlDNWdHRTtFQUdFLFdBQUE7RUFDQSx5QnBCVFc7RW9CVVgscUJwQlZXO0Fic2hHZjtBaUMxZ0dJO0VBS0ksZ0RBQUE7QWpDd2dHUjs7QWdDbGlHRTtFQ05BLGNwQmVhO0VvQmRiLHFCcEJjYTtBYjhoR2Y7QTBCbG1HRTtFT3lERSxXQUxnRDtFQU1oRCx5QnBCVVc7RW9CVFgscUJwQlNXO0FibWlHZjtBaUN6aUdFO0VBRUUsK0NBQUE7QWpDMGlHSjtBaUN2aUdFO0VBRUUsY3BCRFc7RW9CRVgsNkJBQUE7QWpDd2lHSjtBaUNyaUdFO0VBR0UsV0FBQTtFQUNBLHlCcEJUVztFb0JVWCxxQnBCVlc7QWIraUdmO0FpQ25pR0k7RUFLSSwrQ0FBQTtBakNpaUdSOztBZ0MzakdFO0VDTkEsY3BCZWE7RW9CZGIscUJwQmNhO0FidWpHZjtBMEIzbkdFO0VPeURFLFdBTGdEO0VBTWhELHlCcEJVVztFb0JUWCxxQnBCU1c7QWI0akdmO0FpQ2xrR0U7RUFFRSwrQ0FBQTtBakNta0dKO0FpQ2hrR0U7RUFFRSxjcEJEVztFb0JFWCw2QkFBQTtBakNpa0dKO0FpQzlqR0U7RUFHRSxXQUFBO0VBQ0EseUJwQlRXO0VvQlVYLHFCcEJWVztBYndrR2Y7QWlDNWpHSTtFQUtJLCtDQUFBO0FqQzBqR1I7O0FnQ3BsR0U7RUNOQSxjcEJlYTtFb0JkYixxQnBCY2E7QWJnbEdmO0EwQnBwR0U7RU95REUsY0FMZ0Q7RUFNaEQseUJwQlVXO0VvQlRYLHFCcEJTVztBYnFsR2Y7QWlDM2xHRTtFQUVFLGlEQUFBO0FqQzRsR0o7QWlDemxHRTtFQUVFLGNwQkRXO0VvQkVYLDZCQUFBO0FqQzBsR0o7QWlDdmxHRTtFQUdFLGNBQUE7RUFDQSx5QnBCVFc7RW9CVVgscUJwQlZXO0FiaW1HZjtBaUNybEdJO0VBS0ksaURBQUE7QWpDbWxHUjs7QWdDN21HRTtFQ05BLGNwQmVhO0VvQmRiLHFCcEJjYTtBYnltR2Y7QTBCN3FHRTtFT3lERSxXQUxnRDtFQU1oRCx5QnBCVVc7RW9CVFgscUJwQlNXO0FiOG1HZjtBaUNwbkdFO0VBRUUsOENBQUE7QWpDcW5HSjtBaUNsbkdFO0VBRUUsY3BCRFc7RW9CRVgsNkJBQUE7QWpDbW5HSjtBaUNobkdFO0VBR0UsV0FBQTtFQUNBLHlCcEJUVztFb0JVWCxxQnBCVlc7QWIwbkdmO0FpQzltR0k7RUFLSSw4Q0FBQTtBakM0bUdSOztBZ0MzbkdBO0VBQ0UsZ0JuQmlONEI7RW1CaE41QixnQzFCY1c7RTBCYlgscUJuQitGd0M7QWIraEcxQztBMEJ2c0dFO0VNNEVFLGdDMUJXZTtFMEJWZiwwQm5CNkZzQztBYmlpRzFDO0FnQzNuR0U7RUFFRSwwQm5Cd0ZzQztBYm9pRzFDO0FnQ3puR0U7RUFFRSxjaEJxQm1CO0VnQnBCbkIsb0JBQUE7QWhDMG5HSjs7QWdDL21HQTtFQ05FLG9CQUFBO0VyQjhFSSxrQkFBQTtFcUI1RUosZ0JwQmtJNEI7RU16TjFCLHFCQUFBO0FuQml0R0o7O0FnQ2xuR0E7RUNWRSx1QkFBQTtFckI4RUksbUJBQUE7RXFCNUVKLGdCcEJtSTRCO0VNMU4xQixxQkFBQTtBbkJ3dEdKOztBZ0NobkdBO0VBQ0UsY0FBQTtFQUNBLFdBQUE7QWhDbW5HRjtBZ0NobkdFO0VBQ0Usa0JuQjJUMEI7QWJ1ekY5Qjs7QWdDMW1HRTs7O0VBQ0UsV0FBQTtBaEMrbUdKOztBa0MxdkdBO0VMaUJNLGdDS2hCSjtBbEM2dkdGO0E2Qnp1R007RUtyQk47SUxzQlEsZ0JBQUE7RTdCNHVHTjtBQUNGO0FrQ2h3R0U7RUFDRSxVQUFBO0FsQ2t3R0o7O0FrQzd2R0U7RUFDRSxhQUFBO0FsQ2d3R0o7O0FrQzV2R0E7RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxnQkFBQTtFTEFJLDZCS0NKO0FsQyt2R0Y7QTZCNXZHTTtFS1BOO0lMUVEsZ0JBQUE7RTdCK3ZHTjtBQUNGO0FrQ2x3R0U7RUFDRSxRQUFBO0VBQ0EsWUFBQTtFTExFLDRCS01GO0FsQ293R0o7QTZCdHdHTTtFS0RKO0lMRU0sZ0JBQUE7RTdCeXdHTjtBQUNGOztBbUM5eEdBOzs7O0VBSUUsa0JBQUE7QW5DaXlHRjs7QW1DOXhHQTtFQUNFLG1CQUFBO0FuQ2l5R0Y7QW9DOXdHSTtFQUNFLHFCQUFBO0VBQ0Esb0J2Qm1Pd0I7RXVCbE94Qix1QnZCaU93QjtFdUJoT3hCLFdBQUE7RUFoQ0osdUJBQUE7RUFDQSxxQ0FBQTtFQUNBLGdCQUFB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QSw0QkFBQTtBbkIrakhKO0F1Q2prSEU7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7QXZDbWtISjtBdUNqa0hJO0VwQmpCQSwwQkFBQTtFQUNBLDZCQUFBO0FuQnFsSEo7QXVDbmtISTtFcEJMQSx5QkFBQTtFQUNBLDRCQUFBO0FuQjJrSEo7QXVDbmtISTs7OztFcEJ2QkEsMEJBQUE7RUFDQSw2QkFBQTtBbkJnbUhKO0F1Q2prSEk7Ozs7RXBCaENBLDBCQUFBO0VBQ0EsNkJBQUE7QW5CdW1ISjs7QXVDeGpIQTs7RUFFRSxhQUFBO0F2QzJqSEY7QXVDdGpIRTs7RUFDRSxrQkFBQTtFQUNBLFVBQUE7QXZDeWpISjtBdUN2akhJOztFQUNFLFVBQUE7QXZDMGpITjtBdUN0akhFOzs7Ozs7OztFQUlFLGlCQUFBO0F2QzRqSEo7O0F1Q3hqSEE7RUFBdUIsa0JBQUE7QXZDNGpIdkI7O0F1QzNqSEE7RUFBc0IsaUJBQUE7QXZDK2pIdEI7O0F1Q3ZqSEE7RUFDRSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0UzQjhESSxtQkFBQTtFMkI1REosZ0IxQnlLNEI7RTBCeEs1QixnQjFCNks0QjtFMEI1SzVCLGN2QkhxQjtFdUJJckIsa0JBQUE7RUFDQSxtQkFBQTtFQUNBLHlCdkJacUI7RXVCYXJCLHlCQUFBO0VwQjdHRSxzQkFBQTtBbkJ3cUhKO0F1Q3ZqSEU7O0VBRUUsYUFBQTtBdkN5akhKOztBdUMvaUhBOztFQUVFLGdDMUJzV3NDO0FiNHNHeEM7O0F1Qy9pSEE7Ozs7OztFQU1FLG9CQUFBO0UzQjJCSSxrQkFBQTtFMkJ6QkosZ0IxQitFNEI7RU16TjFCLHFCQUFBO0FuQjZySEo7O0F1Qy9pSEE7O0VBRUUsa0MxQm9Wc0M7QWI4dEd4Qzs7QXVDL2lIQTs7Ozs7O0VBTUUsdUJBQUE7RTNCVUksbUJBQUE7RTJCUkosZ0IxQitENEI7RU0xTjFCLHFCQUFBO0FuQjhzSEo7O0F1Qy9pSEE7O0VBRUUsc0JBQUE7QXZDa2pIRjs7QXVDdmlIQTs7Ozs7Ozs7RXBCNUpJLDBCQUFBO0VBQ0EsNkJBQUE7QW5COHNISjs7QXVDeGlIQTs7Ozs7O0VwQnpKSSx5QkFBQTtFQUNBLDRCQUFBO0FuQjBzSEo7O0F3Q3B2SEE7RUFDRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtFQUNBLGlDQUFBO1VBQUEseUJBQUE7QXhDdXZIRjs7QXdDcHZIQTtFQUNFLG9CQUFBO0VBQ0Esa0IzQjRmc0M7QWIydkd4Qzs7QXdDcHZIQTtFQUNFLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxXM0J3ZnNDO0UyQnZmdEMsZUFBQTtFQUNBLFVBQUE7QXhDdXZIRjtBd0NydkhFO0VBQ0UsV3hCZ0ZpQjtFd0IvRWpCLHFCM0I2TjBCO0VrQnZQMUIseUJsQnVQMEI7QWIyaEg5QjtBd0NudkhFO0VBS0ksZ0QzQm1Xd0I7QWI4NEc5QjtBd0M3dUhFO0VBQ0Usa0MzQnlib0M7QWJzekd4QztBd0M1dUhFO0VBQ0UsV3hCNERpQjtFd0IzRGpCLHdDM0JxZjRDO0UyQnBmNUMsb0MzQm9mNEM7QWIwdkdoRDtBd0N2dUhJO0VBQ0UsY3hCMERpQjtBaEIrcUh2QjtBd0N2dUhNO0VBQ0UseUJ4QmdEYztBaEJ5ckh0Qjs7QXdDL3RIQTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFFQSxtQkFBQTtBeENpdUhGO0F3Qzd0SEU7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtFQUNBLFczQjJib0M7RTJCMWJwQyxZM0IwYm9DO0UyQnpicEMsb0JBQUE7RUFDQSxXQUFBO0VBQ0Esc0J4Qm9CaUI7RXdCbkJqQix5QkFBQTtBeEMrdEhKO0F3QzF0SEU7RUFDRSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsY0FBQTtFQUNBLFczQjRhb0M7RTJCM2FwQyxZM0IyYW9DO0UyQjFhcEMsV0FBQTtFQUNBLGlDQUFBO0F4QzR0SEo7O0F3Q2x0SEU7RXJCaEdFLHNCQUFBO0FuQnN6SEo7QXdDanRISTtFQUNFLGtPQUFBO0F4Q210SE47QXdDOXNISTtFQUNFLHFCM0I4SHdCO0VrQnZQMUIseUJsQnVQMEI7QWJtbEg5QjtBd0M3c0hJO0VBQ0UsK0tBQUE7QXhDK3NITjtBd0Mxc0hJO0VUbklBLHdDbEIyaEI0QztBYnF6R2hEO0F3QzFzSEk7RVR0SUEsd0NsQjJoQjRDO0Fid3pHaEQ7O0F3Q2xzSEU7RUFFRSxrQjNCNlo0QztBYnV5R2hEO0F3Q2hzSEk7RUFDRSw4S0FBQTtBeENrc0hOO0F3QzdySEk7RVQ3SkEsd0NsQjJoQjRDO0FiazBHaEQ7O0F3Q3JySEE7RUFDRSxxQkFBQTtBeEN3ckhGO0F3Q3JySEk7RUFDRSxjQUFBO0VBQ0EsYzNCcVkwQztFMkJwWTFDLG1CQUFBO0VBRUEscUIzQm1ZMEM7QWJtekdoRDtBd0NuckhJO0VBQ0Usd0JBQUE7RUFDQSwwQkFBQTtFQUNBLHVCM0I4WDBDO0UyQjdYMUMsd0IzQjZYMEM7RTJCNVgxQyx5QnhCekVpQjtFd0IyRWpCLHFCM0J5WDBDO0VnQjFpQjFDLHlJV2tMQTtBeENvckhOO0E2QmwySE07RVdzS0Y7SVhyS0ksZ0JBQUE7RTdCcTJITjtBQUNGO0F3Q3BySEk7RUFDRSxzQnhCekZlO0V3QjBGZiw4QkFBQTtBeENzckhOO0F3Q2pySEk7RVR4TUEsd0NsQjJoQjRDO0FiaTJHaEQ7O0F3Q3ZxSEE7RUFDRSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxZbEMrR2E7RWtDOUdiLDBDQUFBO0U1QnpDSSxtQkFBQTtFNEI0Q0osZ0IzQmlFNEI7RTJCaEU1QixnQjNCcUU0QjtFMkJwRTVCLGN4QjNHcUI7RXdCNEdyQixzQkFBQTtFQUNBLHVPQUFBO0VBQ0EseUJBQUE7RXJCcE5FLHNCQUFBO0VxQnVORixnQkFBQTtBeEN3cUhGO0F3Q3RxSEU7RUFDRSxrQzNCMlBvQztFMkIxUHBDLFVBQUE7RUFLRSxnRDNCc1c4QjtBYjh6R3BDO0F3Q2pxSEk7RUFNRSxjeEJuSWlCO0V3Qm9JakIsc0J4QjlJZTtBaEI0eUhyQjtBd0MxcEhFO0VBRUUsWUFBQTtFQUNBLHNCM0JrSTBCO0UyQmpJMUIsc0JBQUE7QXhDMnBISjtBd0N4cEhFO0VBQ0UsY3hCbEptQjtFd0JtSm5CLHlCeEJ2Sm1CO0FoQml6SHZCO0F3Q3RwSEU7RUFDRSxhQUFBO0F4Q3dwSEo7QXdDcHBIRTtFQUNFLGtCQUFBO0VBQ0EsMEJBQUE7QXhDc3BISjs7QXdDbHBIQTtFQUNFLGtDM0I2TnNDO0UyQjVOdEMsb0IzQm9INEI7RTJCbkg1Qix1QjNCbUg0QjtFMkJsSDVCLG9CM0JtSDRCO0VEMU54QixtQkFBQTtBWjZ2SE47O0F3Q2xwSEE7RUFDRSxnQzNCc05zQztFMkJyTnRDLG1CM0JpSDRCO0UyQmhINUIsc0IzQmdINEI7RTJCL0c1QixrQjNCZ0g0QjtFRC9OeEIsa0JBQUE7QVpxd0hOOztBd0M3b0hBO0VBQ0Usa0JBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxZbEMyQmE7RWtDMUJiLGdCQUFBO0F4Q2dwSEY7O0F3QzdvSEE7RUFDRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWWxDbUJhO0VrQ2xCYixTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxVQUFBO0F4Q2dwSEY7QXdDOW9IRTtFQUNFLGtDM0J3S29DO0UyQnZLcEMsZ0QzQjRFMEI7QWJva0g5QjtBd0M1b0hFO0VBRUUseUJ4QnZOa0I7QWhCbzJIdEI7QXdDem9ISTtFQUNFLGlCM0I4VGE7QWI2MEduQjtBd0N2b0hFO0VBQ0UsMEJBQUE7QXhDeW9ISjs7QXdDcm9IQTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxPQUFBO0VBQ0EsVUFBQTtFQUNBLFlsQ2RhO0VrQ2ViLHlCQUFBO0VBQ0EsZ0JBQUE7RUFFQSxnQjNCNUQ0QjtFMkI2RDVCLGdCM0J4RDRCO0UyQnlENUIsY3hCeE9xQjtFd0J5T3JCLHNCeEJuUG1CO0V3Qm9QbkIseUJBQUE7RXJCaFZFLHNCQUFBO0FuQnc5SEo7QXdDcG9IRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLGNBQUE7RUFDQSw2QjNCb0lvQztFMkJuSXBDLHlCQUFBO0VBQ0EsZ0IzQnhFMEI7RTJCeUUxQixjeEJ4UG1CO0V3QnlQbkIsaUJBQUE7RVQ1V0EseUJmNkdtQjtFd0JpUW5CLG9CQUFBO0VyQmpXQSxrQ0FBQTtBbkJ3K0hKOztBd0M1bkhBO0VBQ0UsV0FBQTtFQUNBLGNBQUE7RUFDQSxVQUFBO0VBQ0EsNkJBQUE7RUFDQSxnQkFBQTtBeEMrbkhGO0F3QzduSEU7RUFDRSxVQUFBO0F4QytuSEo7QXdDM25ISTtFQUEwQixnRTNCdU9lO0FidTVHN0M7QXdDN25ISTtFQUEwQixnRTNCc09lO0FiMDVHN0M7QXdDL25ISTtFQUEwQixnRTNCcU9lO0FiNjVHN0M7QXdDL25IRTtFQUNFLFNBQUE7QXhDaW9ISjtBd0M5bkhFO0VBQ0UsZ0JBQUE7RUFDQSxXM0JzTnlDO0UyQnJOekMsWTNCcU55QztFMkJwTnpDLG9CQUFBO0VUbFpBLHlCbEJ1UDBCO0UyQjZKMUIsUzNCcU55QztFTTVsQnpDLG1CQUFBO0VVSEUsb0hXNllGO0VYN1lFLDRHVzZZRjtBeEMrbkhKO0E2QnhnSU07RVdnWUo7SVgvWE0sd0JBQUE7SUFBQSxnQkFBQTtFN0IyZ0lOO0FBQ0Y7QXdDbG9ISTtFVHpaQSx3Q2xCOG1CeUM7QWJnN0c3QztBd0Nob0hFO0VBQ0UsVzNCZ01nQztFMkIvTGhDLGMzQmdNZ0M7RTJCL0xoQyxrQkFBQTtFQUNBLGUzQitMZ0M7RTJCOUxoQyx5QnhCclRtQjtFd0JzVG5CLHlCQUFBO0VyQnZaQSxtQkFBQTtBbkIwaElKO0F3QzluSEU7RUFDRSxnQkFBQTtFQUNBLFczQjJMeUM7RTJCMUx6QyxZM0IwTHlDO0VrQnRtQnpDLHlCbEJ1UDBCO0UyQnVMMUIsUzNCMkx5QztFTTVsQnpDLG1CQUFBO0VVSEUsaUhXdWFGO0VYdmFFLDRHV3VhRjtBeEMrbkhKO0E2QmxpSU07RVcyWko7SVgxWk0scUJBQUE7SUFBQSxnQkFBQTtFN0JxaUlOO0FBQ0Y7QXdDbG9ISTtFVG5iQSx3Q2xCOG1CeUM7QWIwOEc3QztBd0Nob0hFO0VBQ0UsVzNCc0tnQztFMkJyS2hDLGMzQnNLZ0M7RTJCcktoQyxrQkFBQTtFQUNBLGUzQnFLZ0M7RTJCcEtoQyx5QnhCL1VtQjtFd0JnVm5CLHlCQUFBO0VyQmpiQSxtQkFBQTtBbkJvaklKO0F3QzluSEU7RUFDRSxnQkFBQTtFQUNBLFczQmlLeUM7RTJCaEt6QyxZM0JnS3lDO0UyQi9KekMsYUFBQTtFQUNBLG9CM0JuRTBCO0UyQm9FMUIsbUIzQnBFMEI7RWtCclkxQix5QmxCdVAwQjtFMkJvTjFCLFMzQjhKeUM7RU01bEJ6QyxtQkFBQTtFVUhFLGdIV29jRjtFWHBjRSw0R1dvY0Y7QXhDK25ISjtBNkIvaklNO0VXcWJKO0lYcGJNLG9CQUFBO0lBQUEsZ0JBQUE7RTdCa2tJTjtBQUNGO0F3Q2xvSEk7RVRoZEEsd0NsQjhtQnlDO0FidStHN0M7QXdDaG9IRTtFQUNFLFczQnlJZ0M7RTJCeEloQyxjM0J5SWdDO0UyQnhJaEMsa0JBQUE7RUFDQSxlM0J3SWdDO0UyQnZJaEMsNkJBQUE7RUFDQSx5QkFBQTtFQUNBLG9CQUFBO0F4Q2tvSEo7QXdDOW5IRTtFQUNFLHlCeEJuWG1CO0VHakduQixtQkFBQTtBbkJxbElKO0F3QzduSEU7RUFDRSxrQkFBQTtFQUNBLHlCeEJ6WG1CO0VHakduQixtQkFBQTtBbkIwbElKO0F3QzNuSEk7RUFDRSx5QnhCN1hpQjtBaEIwL0h2QjtBd0MxbkhJO0VBQ0UsZUFBQTtBeEM0bkhOO0F3Q3puSEk7RUFDRSx5QnhCcllpQjtBaEJnZ0l2QjtBd0N4bkhJO0VBQ0UsZUFBQTtBeEMwbkhOO0F3Q3ZuSEk7RUFDRSx5QnhCN1lpQjtBaEJzZ0l2Qjs7QXdDcG5IQTs7O0VYeGZNLDRHVzJmSjtBeEN1bkhGO0E2QjltSU07RVdvZk47OztJWG5mUSxnQkFBQTtFN0JtbklOO0FBQ0Y7O0F5Q3JvSUE7RUFDRSxhQUFBO0VBQ0EsZUFBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0F6Q3dvSUY7O0F5Q3JvSUE7RUFDRSxjQUFBO0VBQ0Esb0JBQUE7QXpDd29JRjtBMEJ2b0lFO0VlR0UscUJBQUE7QXpDdW9JSjtBeUNub0lFO0VBQ0UsY3pCZ0dtQjtFeUIvRm5CLG9CQUFBO0VBQ0EsZUFBQTtBekNxb0lKOztBeUM3bklB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O0EwQ3YxSUk7RUFvQkkscUJBQUE7RUFDQSwyQkFBQTtBMUNzMElSO0EwQ3AwSVE7RUFDRSxtQkFBQTtBMUNzMElWO0EwQ3AwSVU7RUFDRSxrQkFBQTtBMUNzMElaO0EwQ24wSVU7RUFDRSxxQjdCMmhCd0I7RTZCMWhCeEIsb0I3QjBoQndCO0FiMnlIcEM7QTBDaDBJUTs7Ozs7O0VBQ0UsaUJBQUE7QTFDdTBJVjtBMEN6eklRO0VBQ0UsaUJBQUE7QTFDMnpJVjtBMEN4eklRO0VBQ0Usd0JBQUE7RUFHQSxnQkFBQTtBMUN3eklWO0EwQ3J6SVE7RUFDRSxhQUFBO0ExQ3V6SVY7O0EwQ3p5SUU7RUFDRSx5QjdCbWdCZ0M7QWJ5eUhwQztBMEJyZ0pFO0VnQjROSSx5QjdCZ2dCOEI7QWI0eUhwQztBMEN2eUlJO0VBQ0UseUI3QndmOEI7QWJpekhwQztBMEIzZ0pFO0VnQnFPTSx5QjdCc2Y0QjtBYm16SHBDO0EwQ3R5SU07RUFDRSx5QjdCb2Y0QjtBYm96SHBDO0EwQ3B5SUk7Ozs7RUFJRSx5QjdCMmU4QjtBYjJ6SHBDO0EwQ2x5SUU7RUFDRSx5QjdCb2VnQztFNkJuZWhDLGdDN0J3ZWdDO0FiNHpIcEM7QTBDanlJRTtFQUNFLG1SQUFBO0ExQ215SUo7QTBDaHlJRTtFQUNFLHlCN0IyZGdDO0FidTBIcEM7QTBDanlJSTtFQUNFLHlCN0IyZDhCO0FidzBIcEM7QTBCcGlKRTtFZ0JvUU0seUI3QndkNEI7QWIyMEhwQzs7QTBDM3hJRTtFQUNFLFcxQjdLaUI7QWhCMjhJckI7QTBCM2lKRTtFZ0JnUkksVzFCaExlO0FoQjg4SXJCO0EwQ3p4SUk7RUFDRSwrQjdCNmI4QjtBYjgxSHBDO0EwQmpqSkU7RWdCeVJNLGdDN0IyYjRCO0FiZzJIcEM7QTBDeHhJTTtFQUNFLGdDN0J5YjRCO0FiaTJIcEM7QTBDdHhJSTs7OztFQUlFLFcxQnJNZTtBaEI2OUlyQjtBMENweElFO0VBQ0UsK0I3QnlhZ0M7RTZCeGFoQyxzQzdCNmFnQztBYnkySHBDO0EwQ254SUU7RUFDRSx5UkFBQTtBMUNxeElKO0EwQ2x4SUU7RUFDRSwrQjdC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QSx5QjdCK0ZtQjtFNkI5Rm5CLHFCN0IrRm1CO0FoQjBxSnZCO0E2Q3R3SkU7RUFDRSxVQUFBO0VBQ0EsVWhDK3dCZ0M7RWdDOXdCaEMsZ0RoQ2tYMEI7QWJzNUk5Qjs7QTZDbHdKSTtFQUNFLGNBQUE7RTFCZUYsK0JBQUE7RUFDQSxrQ0FBQTtBbkJ1dkpKO0E2Q2x3Skk7RTFCSkEsZ0NBQUE7RUFDQSxtQ0FBQTtBbkJ5d0pKO0E2Q2p3SkU7RUFDRSxVQUFBO0VBQ0EsVzdCaUVpQjtFNkJoRWpCLHlCaEM4TTBCO0VnQzdNMUIscUJoQzZNMEI7QWJzako5QjtBNkNod0pFO0VBQ0UsYzdCbUVtQjtFNkJsRW5CLG9CQUFBO0VBRUEsWUFBQTtFQUNBLHNCN0J1RGlCO0U2QnREakIscUI3QjJEbUI7QWhCc3NKdkI7O0E4Q3h6SkU7RUFDRSx1QkFBQTtFbENtTEUsa0JBQUE7RWtDakxGLGdCakN1TzBCO0Fib2xKOUI7QThDdHpKTTtFM0J1Q0YsOEJBQUE7RUFDQSxpQ0FBQTtBbkJreEpKO0E4Q3J6Sk07RTNCb0JGLCtCQUFBO0VBQ0Esa0NBQUE7QW5Cb3lKSjs7QThDdDBKRTtFQUNFLHVCQUFBO0VsQ21MRSxtQkFBQTtFa0NqTEYsZ0JqQ3dPMEI7QWJpbUo5QjtBOENwMEpNO0UzQnVDRiw4QkFBQTtFQUNBLGlDQUFBO0FuQmd5Sko7QThDbjBKTTtFM0JvQkYsK0JBQUE7RUFDQSxrQ0FBQTtBbkJrekpKOztBK0NsMUpBO0VBQ0UscUJBQUE7RUFDQSxxQkFBQTtFbkNnS0UsY0FBQTtFbUM5SkYsZ0IxQ21Db0I7RTBDbENwQixjQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtFQUNBLHdCQUFBO0U1Qk9FLHNCQUFBO0VVSEUscUlrQkZKO0EvQ3ExSkY7QTZCLzBKTTtFa0JoQk47SWxCaUJRLGdCQUFBO0U3QmsxSk47QUFDRjtBMEJ6MUpFO0VxQkdJLHFCQUFBO0EvQ3kxSk47O0ErQ3AxSkU7RUFDRSxhQUFBO0EvQ3UxSko7O0ErQ2wxSkE7RUFDRSxrQkFBQTtFQUNBLFNBQUE7QS9DcTFKRjs7QStDOTBKQTtFQUNFLG9CbENzM0JrQztFa0NyM0JsQyxtQmxDcTNCa0M7RU0xNEJoQyxvQkFBQTtBbkJ1MkpKOztBK0N6MEpFO0VDaERBLFdBQUE7RUFDQSx5Qm5DNkVhO0FiZ3pKZjtBMEJoM0pFO0VzQlRJLFdBQUE7RUFDQSxtQ0FBQTtBaEQ0M0pOO0FnRHozSkk7RUFFRSxVQUFBO0VBQ0EsK0NBQUE7QWhEMDNKTjs7QStDdDFKRTtFQ2hEQSxjQUFBO0VBQ0EseUJuQzZFYTtBYjZ6SmY7QTBCNzNKRTtFc0JUSSxjQUFBO0VBQ0EsOENBQUE7QWhEeTRKTjtBZ0R0NEpJO0VBRUUsVUFBQTtFQUNBLGlEQUFBO0FoRHU0Sk47O0ErQ24ySkU7RUNoREEsV0FBQTtFQUNBLHlCbkM2RWE7QWIwMEpmO0EwQjE0SkU7RXNCVEksV0FBQTtFQUNBLGdFQUFBO0FoRHM1Sk47QWdEbjVKSTtFQUVFLFVBQUE7RUFDQSxnREFBQTtBaERvNUpOOztBK0NoM0pFO0VDaERBLFdBQUE7RUFDQSx5Qm5DNkVhO0FidTFKZjtBMEJ2NUpFO0VzQlRJLFdBQUE7RUFDQSxtRUFBQTtBaERtNkpOO0FnRGg2Skk7RUFFRSxVQUFBO0VBQ0EsZ0RBQUE7QWhEaTZKTjs7QStDNzNKRTtFQ2hEQSxXQUFBO0VBQ0EseUJuQzZFYTtBYm8ySmY7QTBCcDZKRTtFc0JUSSxXQUFBO0VBQ0EsbUVBQUE7QWhEZzdKTjtBZ0Q3NkpJO0VBRUUsVUFBQTtFQUNBLCtDQUFBO0FoRDg2Sk47O0ErQzE0SkU7RUNoREEsV0FBQTtFQUNBLHlCbkM2RWE7QWJpM0pmO0EwQmo3SkU7RXNCVEksV0FBQTtFQUNBLG1FQUFBO0FoRDY3Sk47QWdEMTdKSTtFQUVFLFVBQUE7RUFDQSwrQ0FBQTtBaEQyN0pOOztBK0N2NUpFO0VDaERBLGNBQUE7RUFDQSx5Qm5DNkVhO0FiODNKZjtBMEI5N0pFO0VzQlRJLGNBQUE7RUFDQSxxRUFBQTtBaEQwOEpOO0FnRHY4Skk7RUFFRSxVQUFBO0VBQ0EsaURBQUE7QWhEdzhKTjs7QStDcDZKRTtFQ2hEQSxXQUFBO0VBQ0EseUJuQzZFYTtBYjI0SmY7QTBCMzhKRTtFc0JUSSxXQUFBO0VBQ0Esa0VBQUE7QWhEdTlKTjtBZ0RwOUpJO0VBRUUsVUFBQTtFQUNBLDhDQUFBO0FoRHE5Sk47O0FpRC85SkE7RUFDRSxrQkFBQTtFQUNBLHdCQUFBO0VBQ0EsbUJwQzg4QmtDO0VvQzc4QmxDLDZCQUFBO0U5QllFLHNCQUFBO0FuQnU5Sko7O0FpRDk5SkE7RUFFRSxjQUFBO0FqRGcrSkY7O0FpRDU5SkE7RUFDRSxnQjVDd0JvQjtBTHU4SnRCOztBaUR2OUpBO0VBQ0UsbUJBQUE7QWpEMDlKRjtBaUR2OUpFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFVBQUE7RUFDQSx3QkFBQTtFQUNBLGNBQUE7QWpEeTlKSjs7QWlELzhKRTtFQzlDQSw4QkQrQ3FIO0VsQjFDbkgsc0NrQjBDdUI7RUM3Q3pCLHFDRDZDcUU7QWpEbzlKdkU7QWtELy9KRTtFQUNFLHlDQUFBO0FsRGlnS0o7QWtEOS9KRTtFQUNFLHNEQUFBO0FsRGdnS0o7O0FpRDM5SkU7RUM5Q0Esa0NEK0NxSDtFbEIxQ25ILHdDa0IwQ3VCO0VDN0N6Qix3Q0Q2Q3FFO0FqRGcrSnZFO0FrRDNnS0U7RUFDRSxpREFBQTtBbEQ2Z0tKO0FrRDFnS0U7RUFDRSx1REFBQTtBbEQ0Z0tKOztBaUR2K0pFO0VDOUNBLDZCRCtDcUg7RWxCMUNuSCwwQ2tCMEN1QjtFQzdDekIseUNENkNxRTtBakQ0K0p2RTtBa0R2aEtFO0VBQ0UsOERBQUE7QWxEeWhLSjtBa0R0aEtFO0VBQ0Usc0RBQUE7QWxEd2hLSjs7QWlEbi9KRTtFQzlDQSxnQ0QrQ3FIO0VsQjFDbkgsd0NrQjBDdUI7RUM3Q3pCLHdDRDZDcUU7QWpEdy9KdkU7QWtEbmlLRTtFQUNFLHFFQUFBO0FsRHFpS0o7QWtEbGlLRTtFQUNFLHVEQUFBO0FsRG9pS0o7O0FpRC8vSkU7RUM5Q0EsOEJEK0NxSDtFbEIxQ25ILDBDa0IwQ3VCO0VDN0N6Qix5Q0Q2Q3FFO0FqRG9nS3ZFO0FrRC9pS0U7RUFDRSxxRUFBQTtBbERpaktKO0FrRDlpS0U7RUFDRSxzREFBQTtBbERnaktKOztBaUQzZ0tFO0VDOUNBLGdDRCtDcUg7RWxCMUNuSCwwQ2tCMEN1QjtFQzdDekIseUNENkNxRTtBakRnaEt2RTtBa0QzaktFO0VBQ0UscUVBQUE7QWxENmpLSjtBa0QxaktFO0VBQ0UsdURBQUE7QWxENGpLSjs7QWlEdmhLRTtFQzlDQSxnQ0QrQ3FIO0VsQjFDbkgsd0NrQjBDdUI7RUM3Q3pCLHdDRDZDcUU7QWpENGhLdkU7QWtEdmtLRTtFQUNFLHFFQUFBO0FsRHlrS0o7QWtEdGtLRTtFQUNFLHVEQUFBO0FsRHdrS0o7O0FpRG5pS0U7RUM5Q0EsK0JEK0NxSDtFbEIxQ25ILDBDa0IwQ3VCO0VDN0N6Qix5Q0Q2Q3FFO0FqRHdpS3ZFO0FrRG5sS0U7RUFDRSxxRUFBQTtBbERxbEtKO0FrRGxsS0U7RUFDRSxvREFBQTtBbERvbEtKOztBbUQ3bEtFO0VBQ0U7SUFBTywyQkFBQTtFbkRpbUtUO0VtRGhtS0U7SUFBSyx3QkFBQTtFbkRtbUtQO0FBQ0Y7QW1EaG1LQTtFQUNFLGFBQUE7RUFDQSxZdEN1OUJrQztFc0N0OUJsQyxnQkFBQTtFQUNBLGNBQUE7RXZDMktJLGtCQUFBO0V1Q3pLSix5Qm5Dc0dxQjtFR2hHbkIsc0JBQUE7QW5CNmxLSjs7QW1EOWxLQTtFQUNFLGFBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXbkN3Rm1CO0VtQ3ZGbkIsa0JBQUE7RUFDQSxtQkFBQTtFQUNBLHlCdEM0OEJrQztFZ0J0OUI5QiwyQnNCV0o7QW5EaW1LRjtBNkJ4bUtNO0VzQkZOO0l0QkdRLGdCQUFBO0U3QjJtS047QUFDRjs7QW1Ebm1LQTtFcEJhRSxxTUFBQTtFb0JYQSwwQkFBQTtBbkRzbUtGOztBbURsbUtFO0VBQ0Usa0RBQUE7QW5EcW1LSjtBbURsbUtNO0VBSko7SUFLTSxlQUFBO0VuRHFtS047QUFDRjs7QW9EaHBLQTtFQUNFLGFBQUE7RUFDQSx1QkFBQTtBcERtcEtGOztBb0RocEtBO0VBQ0UsT0FBQTtBcERtcEtGOztBcURwcEtBO0VBQ0UsYUFBQTtFQUNBLHNCQUFBO0VBR0EsZUFBQTtFQUNBLGdCQUFBO0VsQ1NFLHNCQUFBO0FuQjZvS0o7O0FxRDVvS0E7RUFDRSxXQUFBO0VBQ0EsY3JDa0dxQjtFcUNqR3JCLG1CQUFBO0FyRCtvS0Y7QTBCdnBLRTtFMkJZRSxVQUFBO0VBQ0EsY3JDNEZtQjtFcUMzRm5CLHFCQUFBO0VBQ0EseUJyQ29GbUI7QWhCMGpLdkI7QXFEM29LRTtFQUNFLGNyQ3VGbUI7RXFDdEZuQix5QnJDZ0ZtQjtBaEI2akt2Qjs7QXFEcG9LQTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLHdCQUFBO0VBR0Esc0JyQzZEbUI7RXFDNURuQixzQ0FBQTtBckRxb0tGO0FxRG5vS0U7RWxDekJFLCtCQUFBO0VBQ0EsZ0NBQUE7QW5CK3BLSjtBcURub0tFO0VsQ2ZFLG1DQUFBO0VBQ0Esa0NBQUE7QW5CcXBLSjtBcURub0tFO0VBRUUsY3JDd0RtQjtFcUN2RG5CLG9CQUFBO0VBQ0Esc0JyQzhDaUI7QWhCc2xLckI7QXFEaG9LRTtFQUNFLFVBQUE7RUFDQSxXckN3Q2lCO0VxQ3ZDakIseUJ4Q3FMMEI7RXdDcEwxQixxQnhDb0wwQjtBYjg4SjlCO0FxRC9uS0U7RUFDRSxtQkFBQTtBckRpb0tKO0FxRC9uS0k7RUFDRSxnQkFBQTtFQUNBLHFCeEM4SndCO0FibStKOUI7O0FxRHRuS0E7RWxDekVJLGdCQUFBO0FuQm1zS0o7QXFEdm5LRTtFQUNFLHFCQUFBO0FyRHluS0o7QXFEdm5LSTtFQUNFLHNCQUFBO0FyRHluS047O0FzRHp0S0U7RUFDRSw4QkQyR3NFO0VDMUd0RSx5Q0QwR3VDO0FyRGtuSzNDO0EwQmx0S0U7RTRCTk0sOEJEc0drRTtFQ3JHbEUseUNBQUE7QXREMnRLUjtBc0R4dEtNO0VBQ0UsV3RDaUdhO0VzQ2hHYix5Q0RnR2tFO0VDL0ZsRSxxQ0QrRmtFO0FyRDJuSzFFOztBc0R2dUtFO0VBQ0Usa0NEMkdzRTtFQzFHdEUsNENEMEd1QztBckRnb0szQztBMEJodUtFO0U0Qk5NLGtDRHNHa0U7RUNyR2xFLGlEQUFBO0F0RHl1S1I7QXNEdHVLTTtFQUNFLFd0Q2lHYTtFc0NoR2IsNkNEZ0drRTtFQy9GbEUseUNEK0ZrRTtBckR5b0sxRTs7QXNEcnZLRTtFQUNFLDZCRDJHc0U7RUMxR3RFLDZDRDBHdUM7QXJEOG9LM0M7QTBCOXVLRTtFNEJOTSw2QkRzR2tFO0VDckdsRSw4REFBQTtBdER1dktSO0FzRHB2S007RUFDRSxXdENpR2E7RXNDaEdiLHdDRGdHa0U7RUMvRmxFLG9DRCtGa0U7QXJEdXBLMUU7O0FzRG53S0U7RUFDRSxnQ0QyR3NFO0VDMUd0RSw0Q0QwR3VDO0FyRDRwSzNDO0EwQjV2S0U7RTRCTk0sZ0NEc0drRTtFQ3JHbEUscUVBQUE7QXREcXdLUjtBc0Rsd0tNO0VBQ0UsV3RDaUdhO0VzQ2hHYiwyQ0RnR2tFO0VDL0ZsRSx1Q0QrRmtFO0FyRHFxSzFFOztBc0RqeEtFO0VBQ0UsOEJEMkdzRTtFQzFHdEUsNkNEMEd1QztBckQwcUszQztBMEIxd0tFO0U0Qk5NLDhCRHNHa0U7RUNyR2xFLHFFQUFBO0F0RG14S1I7QXNEaHhLTTtFQUNFLFd0Q2lHYTtFc0NoR2IseUNEZ0drRTtFQy9GbEUscUNEK0ZrRTtBckRtcksxRTs7QXNEL3hLRTtFQUNFLGdDRDJHc0U7RUMxR3RFLDZDRDBHdUM7QXJEd3JLM0M7QTBCeHhLRTtFNEJOTSxnQ0RzR2tFO0VDckdsRSxxRUFBQTtBdERpeUtSO0FzRDl4S007RUFDRSxXdENpR2E7RXNDaEdiLDJDRGdHa0U7RUMvRmxFLHVDRCtGa0U7QXJEaXNLMUU7O0FzRDd5S0U7RUFDRSxnQ0QyR3NFO0VDMUd0RSw0Q0QwR3VDO0FyRHNzSzNDO0EwQnR5S0U7RTRCTk0sZ0NEc0drRTtFQ3JHbEUscUVBQUE7QXREK3lLUjtBc0Q1eUtNO0VBQ0UsV3RDaUdhO0VzQ2hHYiwyQ0RnR2tFO0VDL0ZsRSx1Q0QrRmtFO0FyRCtzSzFFOztBc0QzektFO0VBQ0UsK0JEMkdzRTtFQzFHdEUsNkNEMEd1QztBckRvdEszQztBMEJwektFO0U0Qk5NLCtCRHNHa0U7RUNyR2xFLHFFQUFBO0F0RDZ6S1I7QXNEMXpLTTtFQUNFLFd0Q2lHYTtFc0No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QUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGtDQUFBO0VBQ0EsaUNBQUE7RUFDQSxrQ0FBQTtFQUNBLGtDQUFBO0VBQ0Esa0NBQUE7RUFDQSxrQ0FBQTtFQUNBLGtDQUFBO0VBQ0Esa0NBQUE7RUFDQSxrQ0FBQTtFQUNBLGtDQUFBO0VBQ0Esa0NBQUE7RUFDQSxrQ0FBQTtFQUNBLGdDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxnQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsbUNBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLGtDQUFBO0VBQ0EsbUNBQUE7RUFDQSxtQ0FBQTtFQUNBLG1DQUFBO0VBQ0EsbUNBQUE7RUFDQSxtQ0FBQTtFQUNBLG1DQUFBO0VBQ0EsbUNBQUE7RUFDQSxtQ0FBQTtFQUNBLG1DQUFBO0VBQ0EsbUNBQUE7RUFDQSw0QkFBQTtFQUNBLDZCQUFBO0VBQ0EsNkJBQUE7RUFDQSw2QkFBQTtFQUNBLDZCQUFBO0VBQ0EsNkJBQUE7RUFDQSw2QkFBQTtFQUNBLDZCQUFBO0VBQ0EsNkJBQUE7RUFDQSw2QkFBQTtFQUNBLDZCQUFBO0VBQ0EsMEJBQUE7RUFDQSw4QkFBQTtFQUNBLDhCQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFB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QTtFQUNBLGtFQUFBLEVBQUEsd0ZBQUE7RUFDQSxnRUFBQSxFQUFBLDhEQUFBO0VBQ0EsaUVBQUEsRUFBQSwrREFBQTtFQUNBLGtFQUFBLEVBQUEscUdBQUE7RUFDQSxpRUFBQSxFQUFBLDRFQUFBO0VBQ0EsNkRBQUEsRUFBQSxpR0FBQTtFQUNBLDREQUFBLEVBQUEsdUVBQUE7RUFDQSwyREFBQSxFQUFBLHVFQUFBO0VBQ0EsNERBQUEsRUFBQSx3RUFBQTtFQUNBLDREQUFBLEVBQUEsK0ZBQUE7RUFDQSwwREFBQSxFQUFBLHFFQUFBO0VBQ0EsMkRBQUEsRUFBQSxzRUFBQTtFQUNBLDREQUFBLEVBQUEsK0ZBQUE7RUFDQSwwREFBQSxFQUFBLHFFQUFBO0VBQ0EsMkRBQUEsRUFBQSxzRUFBQTtFQUNBLHNFQUFBLEVBQUEsOEZBQUE7RUFDQSxxRUFBQSxFQUFBLHFFQUFBO0VBQ0EsZ0VBQUEsRUFBQSwwRkFBQTtFQUNBLGdFQUFBLEVBQUEsZ0VBQUE7RUFDQSw4REFBQSxFQUFBLGdFQUFBO0VBQ0EsK0RBQUEsRUFBQSxpRUFBQTtFQUNBLGdFQUFBLEVBQUEsd0ZBQUE7RUFDQSw4REFBQSxFQUFBLDhEQUFBO0VBQ0EsK0RBQUEsRUFBQSwrREFBQTtFQUNBLGdFQUFBLEVBQUEsd0ZBQUE7RUFDQSw4REFBQSxFQUFBLDhEQUFBO0VBQ0EsK0RBQUEsRUFBQSwrREFBQTtFQUNBLHVFQUFBLEVBQUEsOEZBQUE7RUFDQSxzRUFBQSxFQUFBLHFFQUFBO0VBQ0EsZ0VBQUEsRUFBQSwwRkFBQTtFQUNBLGlFQUFBLEVBQUEsZ0VBQUE7RUFDQSw4REFBQSxFQUFBLGdFQUFBO0VBQ0EsK0RBQUEsRUFBQSxpRUFBQTtFQUNBLGlFQUFBLEVBQUEsd0ZBQUE7RUFDQSwrREFBQSxFQUFBLDhEQUFBO0VBQ0EsZ0VBQUEsRUFBQSwrREFBQTtFQUNBLGlFQUFBLEVBQUEsd0ZBQUE7RUFDQSwrREFBQSxFQUFBLDhEQUFBO0VBQ0EsZ0VBQUEsRUFBQSwrREFBQTtFQUNBLG1FQUFBLEVBQUEsNkZBQUE7RUFDQSxrRUFBQSxFQUFBLG9F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QSxrREFBQTtFQUNBLHlEQUFBO0VBQ0EsK0RBQUE7RUFDQSxxRUFBQTtFQUNBLGtEQUFBO0VBQ0EsaUVBQUE7RUFDQSx1RUFBQTtFQUNBLDBEQUFBO0VBQ0EsaUVBQUE7RUFDQSx1RUFBQTtFQUNBLDBEQUFBO0VBQ0EsaUVBQUE7RUFDQSx1RUFBQTtFQUNBLDBEQUFBO0VBQ0EsaUVBQUE7RUFDQSx1RUFBQTtFQUNBLDBEQUFBO0VBQ0EsaUVBQUE7RUFDQSx1RUFBQTtFQUNBLDBEQUFBO0VBQ0EsaUVBQUE7RUFDQSx1RUFBQTtFQUNBLDBEQUFBO0VBQ0EsaUVBQUE7RUFDQSx1RUFBQTtFQUNBLDBEQUFBO0VBQ0EsaUVBQUE7RUFDQSx1RUFBQTtFQUNBLDBEQUFBO0VBQ0EsdUVBQUE7RUFDQSw2RUFBQTtFQUNBLGdFQUFBO0VBQ0EsdUVBQUE7RUFDQSw2RUFBQTtFQUNBLGdFQUFBO0VBQ0EsdUVBQUE7RUFDQSw2RUFBQTtFQUNBLGdFQUFBO0VBQ0EsdUVBQUE7RUFDQSw2RUFBQTtFQUNBLGdFQUFBO0VBQ0EsdUVBQUE7RUFDQSw2RUFBQTtFQUNBLGdFQUFBO0VBQ0EsdUVBQUE7RUFDQSw2RUFBQTtFQUNBLGdFQUFBO0VBQ0EsdUVBQUE7RUFDQSw2RUFBQTtFQUNBLGdFQUFBO0VBQ0EsdUVBQUE7RUFDQSw2RUFBQTtFQUNBLGdFQUFBO0VBQ0EsK0RBQUE7RUFDQSxxRUFBQTtFQUNBLHdEQUFBO0VBQ0EsK0RBQUE7RUFDQSxxRUFBQTtFQUNBLDJFQUFBO0VBQ0Esd0RBQUE7RUFDQSwrREFBQTtFQUNBLHFFQUFBO0VBQ0EsMkVBQUE7RUFDQSx3REFBQTtFQUNBLCtEQUFBO0VBQ0EscUVBQUE7RUFDQSwyRUFBQTtFQUNBLHdEQUFBO0VBQ0EsK0RBQUE7RUFDQSxxRUFBQTtFQUNBLDJFQUFBO0VBQ0Esd0RBQUE7RUFDQSwrREFBQTtFQUNBLHFFQUFBO0VBQ0EsMkVBQUE7RUFDQSx3REFBQTtFQUNBLCtEQUFBO0VBQ0EscUVBQUE7RUFDQSwyRUFBQTtFQUNBLHdEQUFBO0VBQ0EseUVBQUEsRUFBQSwyRUFBQTtFQUNBLHFGQUFBLEVBQUEsa0VBQUE7RUFDQSx5RkFBQSxFQUFBLG9FQUFBO0VBQ0EsbUZBQUEsRUFBQSwyRUFBQTtFQUNBLHlGQUFBLEVBQUEsb0VBQUE7RUFDQSx5RkFBQSxFQUFBLG9FQUFBO0VBQ0EsdUZBQUEsRUFBQSxtRUFBQTtFQUNBLG1GQUFBLEVBQUEseUVBQUE7RUFDQSxvRUFBQSxFQUFBLDhDQUFBO0VBQ0EseURBQUEsRUFBQSxvQ0FBQTtFQUNBLG9HQUFBLEVBQUEsMEZBQUE7RUFDQSxvR0FBQSxFQUFBLDBGQUFBO0VBQ0Esc0dBQUEsRUFBQSwyRkFBQTtFQUNBLG9HQUFBLEVBQUEsMEZBQUE7RUFDQSw0RkFBQSxFQUFBLHNGQUFBO0VBQ0EsNEZBQUEsRUFBQSxzRkFBQTtFQUNBLDhGQUFBLEVBQUEsdUZBQUE7RUFDQSwyR0FBQSxFQUFBLHdGQUFBO0VBQ0Esb0dBQUEsRUFBQSxxR0FBQTtFQUNBLG9HQUFBLEVBQUEscUdBQUE7RUFDQSw0RkFBQSxFQUFBLGlHQUFBO0VBQ0EsNEZBQUEsRUFBQSxpR0FBQTtFQUNBLDhGQUFBLEVBQUEsa0dBQUE7RUFDQSxrR0FBQSxFQUFBLHVHQUFBO0VBQ0EsMEZBQUEsRUFBQSxtR0FBQTtFQUNBLDBGQUFBLEVBQUEsbUdBQUE7RUFDQSw0RkFBQSxFQUFBLG9HQUFBO0VBQ0EsMkVBQUEsRUFBQSw0REFBQTtFQUNBLDJFQUFBLEVBQUEsNERBQUE7RUFDQSw0RUFBQSxFQUFBLDZEQUFBO0VBQ0Esb0dBQUEsRUFBQSxzRUFBQTtFQUNBLG9HQUFBLEVBQUEsc0VBQUE7RUFDQSxzR0FBQSxFQUFBLHVFQUFBO0VBQ0Esb0dBQUEsRUFBQSxzRUFBQTtFQUNBLDBEQUFBLEVBQUEsNEZBQUE7RUFDQSx5REFBQSxFQUFBLHFGQUFBO0VBQ0Esc0ZBQUEsRUFBQSxnRUFBQTtFQUNBLHNGQUFBLEVBQUEsZ0VBQUE7RUFDQSx3RkFBQSxFQUFBLGlFQUFBO0VBQ0Esc0dBQUEsRUFBQSx5RUFBQTtFQUNBLHVHQUFBLEVBQUEsMEVBQUE7RUFDQSx1R0FBQSxFQUFBLGtGQUFBO0VBQ0EsMkRBQUEsRUFBQSxxREFBQTtFQUNBLGdGQUFBLEVBQUEsK0VBQUE7RUFDQSx3RkFBQSxFQUFBLCtFQUFBO0VBQ0Esd0ZBQUEsRUFBQSwrRUFBQTtFQUNBLHdGQUFBLEVBQUEsK0NBQUE7RUFDQSxxR0FBQSxFQUFBLHFNQUFBO0VBQ0EsOEZBQUEsRUFBQSw2RUFBQTtFQUNBLGlIQUFBLEVBQUEsdUZBQUE7RUFDQSxxR0FBQSxFQUFBLHNGQUFBO0VBQ0EsaUdBQUEsRUFBQSxvRkFBQTtFQUNBLG1HQUFBLEVBQUEscUZBQUE7RUFDQSw0R0FBQSxFQUFBLHlHQUFBO0VBQ0EsMEZBQUEsRUFBQSx5SUFBQTtFQUNBLCtHQUFBLEVBQUEsNEZBQUE7RUFDQSwrR0FBQSxFQUFBLDRGQUFBO0VBQ0EsZ0hBQUEsRUFBQSw2RkFBQTtFQUNBLG1HQUFBLEVBQUEsMEZBQUE7RUFDQSx5R0FBQSxFQUFBLG9FQUFBO0VBQ0EsK0ZBQUEsRUFBQSwrRUFBQTtFQUNBLDZGQUFBLEVBQUEsNEVBQUE7RUFDQSx5REFBQSxFQUFBLG1DQUFBO0VBQ0EsNkZBQUEsRUFBQSxzRUFBQTtFQUNBLHlGQUFBLEVBQUEsa0VBQUE7RUFDQSx5R0FBQSxFQUFBLDRFQUFBO0VBQ0EsaUdBQUEsRUFBQSx3RUFBQTtFQUNBLHlHQUFBLEVBQUEsNEVBQUE7RUFDQSxpR0FBQSxFQUFBLHdFQUFBO0VBQ0EsMkZBQUEsRUFBQSwwR0FBQTtFQUNBLGlHQUFBLEVBQUEsK0dBQUE7RUFDQSw0R0FBQSxFQUFBLHlGQUFBO0VBQ0EsMEZBQUEsRUFBQSxnRkFBQTtFQUNBLG1HQUFBLEVBQUEscU5BQUE7RUFDQSxrSEFBQSxFQUFBLHdGQUFBO0VBQ0EsaUdBQUEsRUFBQSxvRkFBQTtFQUNBLG1HQUFBLEVBQUEsMEZBQUE7RUFDQSwrRkFBQSxFQUFBLCtFQUFBO0VBQ0EsOEZBQUEsRUFBQSx1RUFBQTtFQUNBLDBHQUFBLEVBQUEsNkVBQUE7RUFDQSxrR0FBQSxFQUFBLHlFQUFBO0VBQ0EsMEdBQUEsRUFBQSw2RUFBQTtFQUNBLGtHQUFBLEVBQUEseUVBQUE7RUFDQSxxR0FBQSxFQUFBLDJGQUFBO0VBQ0EsaUdBQUEsRUFBQSxnRkFBQTtBdEVrbk5GOztBdUVuM1BBOztFQUFBO0FBSUE7RUFDRSwrQkFBQTtFQUNBLG9DQUFBO0VBQ0EsNENBQUE7RUFDQSw0Q0FBQTtFQUNBLDRDQUFBO0VBQ0EsNENBQUE7RUFDQSw2Q0FBQTtFQUNBLDZDQUFBO0VBQ0EsNENBQUE7RUFDQSxtREFBQTtFQUNBLG1EQUFBO0VBQ0EsbURBQUE7RUFDQSxtREFBQTtFQUNBLG9EQUFBO0VBQ0Esb0RBQUE7RUFDQSxvREFBQTtFQUNBLG1EQUFBO0VBQ0EsMkJBQUE7RUFDQSw0QkFBQTtFQUNBLDRCQUFBO0VBQ0EsNEJBQUE7RUFDQSw0QkFBQTtFQUNBLDRCQUFBO0VBQ0EsNEJBQUE7RUFDQSw0QkFBQTtFQUNBLDRCQUFBO0VBQ0EsNEJBQUE7RUFDQSw0QkFBQTtFQUNBLDRCQUFBO0VBQ0Esa0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxrQ0FBQTtFQUNBLGlDQUFBO0VBQ0Esa0NBQUE7RUFDQSxrQ0FBQTtFQUNBLGtDQUFBO0VBQ0Esa0NBQUE7RUFDQSxrQ0FBQTtFQUNBLGtDQUFBO0VBQ0Esa0NBQUE7RUFDQSxrQ0FBQTtFQUNBLGtDQUFBO0VBQ0Esa0NBQUE7RUFDQSxnQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsZ0NBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsaUNBQUE7RUFDQSxpQ0FBQTtFQUNBLG1DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxvQ0FBQTtFQUNBLG9DQUFBO0VBQ0Esb0NBQUE7RUFDQSxrQ0FBQTtFQUNBLG1DQUFBO0VBQ0EsbUNBQUE7RUFDQSxtQ0FBQTtFQUNBLG1DQUFBO0VBQ0EsbUNBQUE7RUFDQSxtQ0FBQTtFQUNBLG1DQUFBO0VBQ0EsbUNBQUE7RUFDQSxtQ0FBQTtFQUNBLG1DQUFBO0VBQ0EsNEJBQUE7RUFDQSw2QkFBQTtFQUNBLDZCQUFBO0VBQ0EsNkJBQUE7RUFDQSw2QkFBQTtFQUNBLDZCQUFBO0VBQ0EsNkJBQUE7RUFDQSw2QkFBQTtFQUNBLDZCQUFBO0VBQ0EsNkJBQUE7RUFDQSw2QkFBQTtFQUNBLDBCQUFBO0VBQ0EsOEJBQUE7RUFDQSw4QkFBQTtFQUNBLCtCQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFBO0VBQ0EsK0JBQUE7RUFDQSwrQkFBQTtFQUNBLCtCQUFBO0VBQ0EsZ0NBQUE7RUFDQSw2QkFBQTtFQUNBLDhCQUFBO0VBQ0EsOEJBQUE7RUFDQSw4QkFBQTtFQUNBLDhCQUFBO0VBQ0EsOEJBQUE7RUFDQSw4QkFBQTtFQUNBLDhCQUFBO0VBQ0EsOEJBQUE7RUFDQSw4QkFBQTtFQUNBLDhCQUFBO0VBQ0EsNkJBQUE7RUFDQSw4QkFBQTtFQUNBLDhCQUFBO0VBQ0EsOEJBQUE7RUFDQSw4QkFBQTtFQUNBLDhCQUFBO0VBQ0EsOEJBQUE7RUFDQSw4QkFBQTtFQUNBLDhCQUFBO0VBQ0EsOEJBQUE7RUFDQSw4QkFBQTtFQUNBLDBCQUFBO0VBQ0EsMkJBQUE7RUFDQSwyQkFBQTtFQUNBLDJCQUFBO0VBQ0EsMkJBQUE7RUFDQSwyQkFBQTtFQUNBLDJCQUFBO0VBQ0EsMkJBQUE7RUFDQSwyQkFBQTtFQUNBLDJCQUFBO0VBQ0EsMkJBQUE7RUFDQSx3UUFB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QSxzQ0FBQTtFQUNBLG1EQUFBLEVBQUEsb0ZBQUE7RUFDQSxpREFBQSxFQUFBLDhDQUFBO0VBQ0Esa0RBQUEsRUFBQSxrQ0FBQTtFQUNBLDhDQUFBLEVBQUEsa0NBQUE7RUFDQSxtREFBQSxFQUFBLCtEQUFBO0VBQ0EsK0NBQUEsRUFBQSw0SEFBQTtFQUNBLGtEQUFBLEVBQUEsb0ZBQUE7RUFDQSxxREFBQSxFQUFBLDZCQUFBO0VBQ0EsaURBQUE7RUFDQSwrREFBQTtFQUNBLHlEQUFBO0VBQ0EsaURBQUE7RUFDQSwrREFBQTtFQUNBLHlEQUFBO0VBQ0EsaURBQUE7RUFDQSx5REFBQTtFQUNBLGlEQUFBO0VBQ0EseURBQUE7RUFDQSxpREFBQTtFQUNBLHlEQUFBO0VBQ0EsaURBQUE7RUFDQSx5REFBQTtFQUNBLHlEQUFBO0VBQ0EsaUVBQUE7RUFDQSx5REFBQTtFQUNBLGlFQUFBO0VBQ0EseURBQUE7RUFDQSxpRUFBQTtFQUNBLHlEQUFBO0VBQ0EsaUVBQUE7RUFDQSx5REFBQTtFQUNBLGlFQUFBO0VBQ0EseURBQUE7RUFDQSx1RUFBQTtFQUNBLGlFQUFBO0VBQ0EseURBQUE7RUFDQSx1RUFBQTtFQUNBLGlFQUFBO0VBQ0EseURBQUE7RUFDQSx1RUFBQTtFQUNBLHFFQUFBO0VBQ0EsdUVBQUE7RUFDQSxxRUFBQTtFQUNBLHVFQUFBO0VBQ0EscUVBQUE7RUFDQSx1RUFBQTtFQUNBLHFFQUFBO0VBQ0EsdUVBQUE7RUFDQSxxRUFBQTtFQUNBLHVFQUFBO0VBQ0EscUVBQUE7RUFDQSw2RUFBQTtFQUNBLHVFQUFBO0VBQ0EscUVBQUE7RUFDQSw2RUFBQTtFQUNBLHVFQUFBO0VBQ0EscUVBQUE7RUFDQSw2RUFBQTtFQUNBLHVEQUFBO0VBQ0EscUVBQUE7RUFDQSw2REFBQTtFQUNBLDZEQUFBO0VBQ0EscUVBQUE7RUFDQSwrREFBQTtFQUNBLDZEQUFBO0VBQ0EscUVBQUE7RUFDQSwrREFBQTtFQUNBLDZEQUFBO0VBQ0EsK0RBQUE7RUFDQSw2REFBQTtFQUNBLCtEQUFBO0VBQ0EsNkRBQUE7RUFDQSwrREFBQTtF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SUFDQSxpQ0FBQTtJQUNBLG9FQUFBO0lBQ0E7RUFIQTtBbEY4b1RGOztBUy9oVEk7RXlFL0dGO0lBQUEsZ0NBQUE7SUFDQSxpQ0FBQTtJQUNBLG9FQUFBO0lBQ0E7RUFIQTtBbEZ1cFRGO0FTNWhUTTtFeUUzSEo7SUFBQSxnQ0FBQTtJQUNBLGlDQUFBO0lBQ0Esb0VBQUE7SUFDQTtFQUhBO0FsRitwVEY7O0FTaGpUSTtFeUUvR0Y7SUFBQSxnQ0FBQTtJQUNBLGlDQUFBO0lBQ0Esb0VBQUE7SUFDQTtFQUhBO0FsRndxVEY7QVM3aVRNO0V5RTNISjtJQUFBLGdDQUFBO0lBQ0EsaUNBQUE7SUFDQSxvRUFBQTtJQUNBO0VBSEE7QWxGZ3JURjs7QVNqa1RJO0V5RXhHRjtJQUFBLGdDQUFBO0lBQ0EsaUNBQUE7SUFDQSx3RUFBQTtJQUNBO0VBSEE7QWxGa3JURjtBUzlqVE07RXlFcEhKO0lBQUEsZ0NBQUE7SUFDQSxpQ0FBQTtJQUNBLHdFQUFBO0lBQ0E7RUFIQTtBbEYwclRGOztBU2xsVEk7RXlFeEdGO0lBQUEsZ0NBQUE7SUFDQSxpQ0FBQTtJQUNBLHdFQUFBO0lBQ0E7RUFIQTtBbEZtc1RGO0FTL2tUTTtFeUVwSEo7SUFBQSxnQ0FBQTtJQUNBLGlDQUFBO0lBQ0Esd0VBQUE7SUFDQTtFQUhBO0FsRjJzVEY7O0FTbm1USTtFeUV4R0Y7SUFBQSxnQ0FBQTtJQUNBLGlDQUFBO0lBQ0Esd0VBQUE7SUFDQTtFQUhBO0FsRm90VEY7QVNobVRNO0V5RXBISjtJQUFBLGdDQUFBO0lBQ0EsaUNBQUE7SUFDQSx3RUFBQTtJQUNBO0VBSEE7QWxGNHRURjs7QVNwblRJO0V5RWpHRjtJQUFBLGlDQUFBO0lBQ0Esa0NBQUE7SUFDQSxvRUFBQTtJQUNBO0VBSEE7QWxGOHRURjtBU2puVE07RXlFN0dKO0lBQUEsaUNBQUE7SUFDQSxrQ0FBQTtJQUNBLG9FQUFBO0lBQ0E7RUFIQTtBbEZzdVRGOztBU3JvVEk7RXlFakdGO0lBQUEsaUNBQUE7SUFDQSxrQ0FBQTtJQUNBLG9FQUFBO0lBQ0E7RUFIQTtBbEYrdVRGO0FTbG9UTTtFeUU3R0o7SUFBQSxpQ0FBQTtJQUNBLGtDQUFBO0lBQ0Esb0VBQUE7SUFDQTtFQUhBO0FsRnV2VEY7O0FTdHBUSTtFeUVqR0Y7SUFBQSxpQ0FBQTtJQUNBLGtDQUFBO0lBQ0Esb0VBQUE7SUFDQTtFQUhBO0FsRmd3VEY7QVNucFRNO0V5RTdHSjtJQUFBLGlDQUFBO0lBQ0Esa0NBQUE7SUFDQSxvRUFBQTtJQUNBO0VBSEE7QWxGd3dURjs7QVN2cVRJO0V5RTFGRjtJQUFBLGlDQUFBO0lBQ0Esa0NBQUE7SUFDQSxvRUFBQTtJQUNBO0VBSEE7QWxGMHdURjtBU3BxVE07RXlFdEdKO0lBQUEsaUNBQUE7SUFDQSxrQ0FBQTtJQUNBLG9FQUFBO0lBQ0E7RUFIQTtBbEZreFRGOztBU3hyVEk7RXlFMUZGO0lBQUEsaUNBQUE7SUFDQSxrQ0FBQTtJQUNBLG9FQUFBO0lBQ0E7RUFIQTtBbEYyeFRGO0FTcnJUTTtFeUV0R0o7SUFBQSxpQ0FBQTtJQUNBLGtDQUFBO0lBQ0Esb0VBQUE7SUFDQTtFQUhBO0FsRm15VEY7O0FTenNUSTtFeUUxRkY7SUFBQSxpQ0FBQTtJQUNBLGtDQUFBO0lBQ0Esb0VBQUE7SUFDQTtFQUhBO0FsRjR5VEY7QVN0c1RNO0V5RXRHSjtJQUFBLGlDQUFBO0lBQ0Esa0NBQUE7SUFDQSxvRUFBQTtJQUNBO0VBSEE7QWxGb3pURjs7QWtGdHFUQTtFQUNFLDREQUFBO0FsRnlxVEY7O0FrRnJxVEU7RUFBQSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxtQkFBQTtFQUNBO0FBSkE7O0FBU0E7RUFDRSwrQ0FBQTtFQUNBLGdFQUFBO0FsRnVxVEo7O0FrRnpxVEU7RUFDRSxrREFBQTtFQUNBLG1FQUFBO0FsRjRxVEo7O0FrRjlxVEU7RUFDRSxrREFBQTtFQUNBLG1FQUFBO0FsRmlyVEo7O0FrRm5yVEU7RUFDRSxnREFBQTtFQUNBLGlFQUFBO0FsRnNyVEo7O0FrRnhyVEU7RUFDRSxpREFBQTtFQUNBLGtFQUFBO0FsRjJyVEo7O0FrRjdyVEU7RUFDRSxrREFBQTtFQUNBLG1FQUFBO0FsRmdzVEo7O0FrRmxzVEU7RUFDRSxtREFBQTtFQUNBLG9FQUFBO0FsRnFzVEo7O0FtRnY2VEU7RUFBQTtBQUFBOztBQUFBO0VBQUEsVUFBQTtBQUFBO0FBR0U7RUFBQSxzQ0FBQTtFQUNBLGFBQUE7RUFDQSxzQkFBQTtFQUNBLHVCQUFBO0VBQ0E7QUFKQTtBQUlBO0VBQUE7QUFBQTtBQUNBO0VBQUEsaUJBQUE7RUFDQTtBQURBO0FBS0E7RUFBQSxtQkFBQTtFQUNBLG1CQUFBO0VBQ0E7QUFGQTtBQU1BO0VBQUEsdUNBQUE7RUFDQSxrQ0FBQTtFQUNBO0FBRkE7QUFNQTtFQUFBLGtDQUFBO0VBQ0E7QUFEQTs7QUN6QkY7RUFBQTtBQUFBOztBQUFBO0VBQUEsVUFBQTtBQUFBO0FBR0U7RUFBQSxpQ0FBQTtFQUNBLDBCQUFBO0VBQ0E7QUFGQTtBQU1BO0VBQUE7QUFBQTtBQUVBO0VBQ0Usc0RBQUE7QXBGcThUTjtBb0ZoOFRRO0VBQUE7QUFBQTtBQUlBO0VBQUE7QUFBQTtBQUtOO0VBSUUsMkJBQUE7RUFDQSx3QkFBQTtBcEY0N1RKO0FvRno3VE07RUFBQSxrR0FBQTtFQUFBO0FBQUE7O0FDbkNOO0VBRUUsbUJBQUE7RUFDQSwrQ0FBQTtFQUVBLCtDQUFBO0VBRUEsaURBQUE7RUFFQSxvQkFBQTtBckY4OVRGOztBcUY5OVRFO0VBQUEsVUFBQTtBQUFBOztBQUdGO0VBQ0UsbUJBQUE7QXJGODlURjs7QXFGMzlUQTtFQUNFLG1CQUFBO0FyRjg5VEY7O0FxRjM5VEE7RUFDRSxtQkFBQTtBckY4OVRGOztBcUYxOVRFO0VBQUE7QUFBQTs7QUFBQTtFQUFBLFVBQUE7QUFBQTtBQUdBO0VBQ0UsZ0NBQUE7RUFDQSxnSEFBQTtBckY2OVRKO0FxRnY5VEk7RUFFRSxtR0FBQTtBckZ3OVROO0FxRjc4VEk7RUFBQSwyQkFBQTtFQUNBO0FBREE7O0FBTUY7RUFBQTtBQUFBOztBQUFBO0VBQUEsVUFBQTtBQUFBOztBQUNBO0VBQUEsbUJBQUE7RUFDQSx1QkFBQTtFQUNBLGlDQUFBO0VBQ0EsdUNBQUE7RUFBQSx3Q0FBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSwyREFBQTtFQUNBLDBDQUFBO0VBQ0EsMEJBQUE7RUFDQTtBQVRBO0FBWUU7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQ0E7RUFBQTtBQUFBOztBQ3JFSjtFQUNFLGFBQUE7RUFDQSxxQkFBQTtFQUNBLCtCQUFBO0F0RnVoVUY7QXNGcmhVRTtFQUNFLHNEQUFBO0VBRUEsbUhBQ0U7RUFDRix3QmpGMkwwQjtFaUYxTDFCLDREakZpTWtCO0VpRmhNbEIseUJBQUE7QXRGcWhVSjtBUzN5VEU7RTZFalBBO0k3RWtQRSxzQ0FBQTtJQUNBLGdDQUFBO0lBTUEscUNBQUE7SUFDQSx1Q0FBQTtJQUNBLCtCQUFBO0VUc3lURjtBQUNGOztBc0ZyaFVBOztrQ0FBQTtBQUlBO0VBQ0UsbUNBQUE7QXRGOGhVRjs7QXNGM2hVQTtFQUNFLGtDQUFBO0F0RjhoVUY7O0FzRjNoVUE7RUFDRSxrQ0FBQTtBdEY4aFVGOztBc0YzaFVBO0VBQ0Usb0NBQUE7QXRGOGhVRjs7QXNGM2hVQTtFQUNFLGdDQUFBO0F0RjhoVUY7O0FzRjNoVUE7RUFDRSxnQ0FBQTtBdEY4aFVGOztBc0YzaFVBO0VBQ0UsbUNBQUE7QXRGOGhVRjs7QXNGM2hVQTtFQUNFLGtDQUFBO0F0RjhoVUY7O0FzRjNoVUE7RUFDRSxtQ0FBQTtBdEY4aFVGOztBc0YzaFVBOztrQ0FBQTtBQUlBO0VBQ0UsK0JBQUE7QXRGNmhVRjs7QXNGMWhVQSxhQUFBO0FBRUU7RUFDRSxhQUFBO0F0RjRoVUo7O0FzRnhoVUEsY0FBQTtBQUVFO0VBQ0UsWUFBQTtBdEYwaFVKOztBc0Z0aFVBOztrQ0FBQTtBQUlBO0VBQ0UsK0JBQUE7QXRGd2hVRjs7QXNGcmhVQSxhQUFBO0FBRUU7RUFDRSxhQUFBO0F0RnVoVUo7O0FzRm5oVUEsY0FBQTtBQUVFO0VBQ0UsWUFBQTtBdEZxaFVKOztBc0ZqaFVBOztrQ0FBQTtBQUlBLGFBQUE7QUFFRTs7RUFFRSxvQkFBQTtFQUNBLGFBQUE7RUFDQSxnR0FDRTtBdEZpaFVOO0FzRjdnVUU7RUFDRSxhQUFBO0F0RitnVUo7QXNGNWdVRTtFQUNFLGNBQUE7QXRGOGdVSjs7QXNGMWdVQSxjQUFBO0FBRUU7O0VBRUUsb0JBQUE7RUFDQSxVQUFBO0VBQ0EsK0ZBQ0U7QXRGMmdVTjtBc0Z2Z1VFO0VBQ0UsY0FBQTtBdEZ5Z1VKO0FzRnRnVUU7RUFDRSxlQUFBO0F0RndnVUo7O0FzRnBnVUE7O2tDQUFBO0FBSUEsYUFBQTtBQUVFOztFQUVFLG9CQUFBO0VBQ0EsYUFBQTtFQUNBLGdHQUNFO0F0Rm9nVU47QXNGaGdVRTtFQUNFLGFBQUE7QXRGa2dVSjtBc0YvL1RFO0VBQ0UsY0FBQTtBdEZpZ1VKOztBc0Y3L1RBLGNBQUE7QUFFRTs7RUFFRSxvQkFBQTtFQUNBLFVBQUE7RUFDQSwrRkFDRTtBdEY4L1ROO0FzRjEvVEU7RUFDRSxjQUFBO0F0RjQvVEo7QXNGei9URTtFQUNFLGVBQUE7QXRGMi9USjs7QXNGdi9UQTs7a0NBQUE7QUFJQTs7RUFFRSx5QkFBQTtBdEZ5L1RGOztBc0Z0L1RBLGFBQUE7QUFDQTs7RUFFRSw0Q0FBQTtFQUNBLHNCQUFBO0VBQ0EsbUNBQUE7QXRGeS9URjs7QXNGdC9UQTtFQUNFLHNCQUFBO0F0RnkvVEY7O0FzRnQvVEE7RUFDRSxzQkFBQTtBdEZ5L1RGOztBc0Z0L1RBO0VBQ0U7SUFDRSxvQkFBQTtJQUNBLFFBQUE7RXRGeS9URjtFc0Z0L1RBO0lBRUUsb0JBQUE7SUFDQSxRQUFBO0V0RnUvVEY7RXNGcC9UQTtJQUVFLGdCQUFBO0lBQ0EsVUFBQTtFdEZxL1RGO0VzRmwvVEE7SUFDRSxnQkFBQTtJQUNBLFFBQUE7RXRGby9URjtBQUNGO0FzRmovVEEsY0FBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSxVQUFBO0F0Rm0vVEY7O0FzRmgvVEE7RUFDRSxvQkFBQTtFQUNBLFFBQUE7QXRGbS9URjs7QXNGaC9UQTtFQUNFOztJQUVFLG9CQUFBO0V0Rm0vVEY7QUFDRjtBc0ZoL1RBOztrQ0FBQTtBQUdBO0VBQ0UsbURBQUE7QXRGay9URjs7QXNGLytUQTtFQUNFLHNCQUFBO0F0RmsvVEY7O0FzRi8rVEE7RUFDRSxxQkFBQTtBdEZrL1RGOztBc0YvK1RBO0VBQ0U7SUFDRSxpQkFBQTtFdEZrL1RGO0VzRi8rVEE7SUFDRSxlQUFBO0V0RmkvVEY7RXNGOStUQTtJQUNFLGNBQUE7RXRGZy9URjtBQUNGO0FzRjcrVEE7O2tDQUFBO0FBSUEsYUFBQTtBQUNBO0VBQ0UsMEJBQUE7RUFDQSx1QkFBQTtBdEY4K1RGOztBc0YzK1RBO0VBQ0Usb0JBQUE7QXRGOCtURjs7QXNGMytUQTtFQUNFLDJCQUFBO0VBQ0Esb0JBQUE7QXRGOCtURjs7QXNGMytUQSxjQUFBO0FBQ0E7RUFDRSwyQkFBQTtFQUNBLG9CQUFBO0F0RjgrVEY7O0FzRjMrVEE7RUFDRSwyQkFBQTtFQUNBLG9CQUFBO0F0RjgrVEY7O0FzRjMrVEE7RUFDRSwyQkFBQTtFQUNBLHdCQUFBO0F0RjgrVEY7O0FzRjMrVEE7O2tDQUFBO0FBSUEsYUFBQTtBQUNBO0VBQ0UsZUFBQTtFQUNBLHVEQUFBO0F0RjYrVEY7O0FzRjErVEEsY0FBQTtBQUNBO0VBQ0UsZ0JBQUE7RUFDQSx1REFBQTtBdEY2K1RGOztBc0YxK1RBOztrQ0FBQTtBQUlBO0VBQ0UseUJBQUE7QXRGNCtURjs7QXNGeitUQTtFQUNFLDZCQUFBO0F0RjQrVEY7O0FzRnorVEEsYUFBQTtBQUNBO0VBQ0Usd0RBQUE7RUFDQSxnQkFBQTtBdEY0K1RGOztBc0Z6K1RBO0VBQ0UsUUFBQTtFQUNBLHNCQUFBO0F0RjQrVEY7O0FzRnorVEE7RUFDRSwwQkFBQTtFQUNBLHNCQUFBO0F0RjQrVEY7O0FzRnorVEEsY0FBQTtBQUNBO0VBQ0UsY0FBQTtBdEY0K1RGOztBc0Z6K1RBO0VBQ0UsVUFBQTtBdEY0K1RGOztBc0Z6K1RBO0VBQ0UsMEJBQUE7RUFDQSxvQkFBQTtBdEY0K1RGOztBc0Z6K1RBOztrQ0FBQTtBQUlBO0VBQ0UsaUJBQUE7QXRGMitURjs7QXNGeCtUQSxjQUFBO0FBQ0E7RUFDRSxvQ0FBQTtBdEYyK1RGOztBc0Z4K1RBOztFQUVFLDRCQUFBO0F0RjIrVEY7O0FzRngrVEE7O0VBRUUsWUFBQTtFQUNBLGdCQUFBO0F0RjIrVEY7O0FzRngrVEE7OztFQUdFLFVBQUE7RUFDQSxxQkFBQTtBdEYyK1RGOztBc0Z4K1RBO0VBQ0UsdUJBQUE7QXRGMitURjs7QXNGeCtUQTtFQUNFLHNCQUFBO0F0RjIrVEY7O0FzRngrVEE7RUFDRSx1QkFBQTtBdEYyK1RGOztBc0Z4K1RBO0VBQ0UsZ0JBQUE7QXRGMitURjs7QXNGeCtUQSxhQUFBO0FBQ0E7RUFDRSxhQUFBO0VBQ0EsZ0JBQUE7QXRGMitURjs7QXNGeCtUQTtFQUNFLGNBQUE7RUFDQSxnQkFBQTtBdEYyK1RGOztBc0Z4K1RBOzs7RUFHRSxVQUFBO0VBQ0EscUJBQUE7QXRGMitURjs7QXNGeCtUQTtFQUNFLHVCQUFBO0F0RjIrVEY7O0FzRngrVEE7RUFDRSxzQkFBQTtBdEYyK1RGOztBc0Z4K1RBO0VBQ0UsdUJBQUE7QXRGMitURjs7QXNGeCtUQTtFQUNFLGNBQUE7QXRGMitURjs7QXNGeCtUQTs7a0NBQUE7QUFJQTtFQUNFLCtCQUFBO0F0RjArVEY7O0FzRnYrVEEsYUFBQTtBQUNBO0VBQ0UsbUNBQUE7QXRGMCtURjs7QXNGditUQTtFQUNFO0lBRUUsaUJBQUE7RXRGeStURjtFc0Z0K1RBO0lBQ0Usa0JBQUE7RXRGdytURjtFc0ZyK1RBO0lBQ0Usa0JBQUE7RXRGdStURjtFc0ZwK1RBO0lBRUUsUUFBQTtFdEZxK1RGO0VzRmwrVEE7SUFDRSxVQUFBO0V0Rm8rVEY7RXNGaitUQTtJQUNFLFVBQUE7RXRGbStURjtBQUNGO0FzRmgrVEEsY0FBQTtBQUNBO0VBQ0Usb0NBQUE7QXRGaytURjs7QXNGLzlUQTtFQUNFO0lBRUUsa0JBQUE7RXRGaStURjtFc0Y5OVRBO0lBQ0UsaUJBQUE7RXRGZytURjtFc0Y3OVRBO0lBQ0UsaUJBQUE7RXRGKzlURjtFc0Y1OVRBO0lBRUUsUUFBQTtFdEY2OVRGO0VzRjE5VEE7SUFDRSxVQUFBO0V0RjQ5VEY7RXNGejlUQTtJQUNFLFVBQUE7RXRGMjlURjtBQUNGO0FzRng5VEE7O2tDQUFBO0FBSUEsYUFBQTtBQUNBO0VBQ0UsMkJBQUE7RUFDQSx1QkFBQTtBdEZ5OVRGOztBc0Z0OVRBO0VBQ0UseUJBQUE7RUFDQSx1QkFBQTtFQUNBLGlCQUFBO0F0Rnk5VEY7O0FzRnQ5VEE7RUFDRSwwQkFBQTtFQUNBLG9CQUFBO0F0Rnk5VEY7O0FzRnQ5VEEsY0FBQTtBQUNBO0VBQ0UsMkJBQUE7RUFDQSx1QkFBQTtBdEZ5OVRGOztBc0Z0OVRBO0VBQ0UsMEJBQUE7RUFDQSxvQkFBQTtFQUNBLGNBQUE7QXRGeTlURjs7QXNGdDlUQTtFQUNFLDBCQUFBO0VBQ0EsdUJBQUE7QXRGeTlURjs7QXNGdDlUQTs7a0NBQUE7QUFJQTtFQUNFLDBCQUFBO0F0Rnc5VEY7O0FzRnI5VEEsYUFBQTtBQUNBO0VBQ0UsdUNBQUE7RUFDQSxzQkFBQTtFQUNBLG1DQUFBO0F0Rnc5VEY7O0FzRnI5VEE7RUFDRTtJQUdFLGNBQUE7SUFDQSxvQkFBQTtFdEZzOVRGO0VzRm45VEE7SUFDRSxpQkFBQTtJQUNBLHVCQUFBO0V0RnE5VEY7RXNGbDlUQTtJQUNFLGlCQUFBO0lBQ0Esb0JBQUE7RXRGbzlURjtFc0ZqOVRBO0lBQ0UsZUFBQTtJQUNBLHNCQUFBO0V0Rm05VEY7QUFDRjtBc0ZoOVRBO0VBQ0Usd0NBQUE7RUFDQSxzQkFBQTtFQUNBLG1DQUFBO0F0Rms5VEY7O0FzRi84VEE7RUFDRTtJQUdFLGNBQUE7RXRGZzlURjtFc0Y3OFRBO0lBQ0UsZ0JBQUE7RXRGKzhURjtFc0Y1OFRBO0lBQ0UsZ0JBQUE7RXRGODhURjtFc0YzOFRBO0lBQ0UsZUFBQTtFdEY2OFRGO0FBQ0Y7QXVGbGdWQSx1QkFBQTtBQUdFO0VBQUEsaUNBQUE7RUFDQSx5Q0FBQTtFQUNBLGlCQUFBO0VBRUE7Ozs7O0lBQUE7RUFNQSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7RUFDQSxZdkUwSG1CO0V1RXpIbkIsMEJBQUE7RUFDQTtBQWZBO0E5RThLQTtFOEUvS0Y7STlFZ0xJLHNDQUFBO0lBQ0EsZ0NBQUE7RVRzMlVGO0FBQ0Y7QXVGamdWRTtFQUNFLGVBQUE7QXZGbWdWSjtBdUZoZ1ZFO0VBM0JGO0lBNEJJLGlCQUFBO0V2Rm1nVkY7QUFDRjtBdUZoZ1ZJO0VBQUEsaUNBQUE7RUFDQSxnQ0FBQTtFQUNBLGNBQUE7RUFDQTtBQUhBO0FBTUY7RUFDRSxhQUFBO0VBQ0EsdUJBQUE7RUFDQSxpQnZFZ0dpQjtBaEJrNlVyQjs7QXVGOS9VQTtFQUNFLG1CQUFBO0F2RmlnVkY7O0F1RjkvVUEsYUFBQTtBQXJHRTtFQUNFLGtFQTBHaUI7RUF6R2pCLGlEQXVHTTtBdkZnZ1ZWO0F1RnJtVkk7RUFDRSxpREFxR1M7RUFwR1QsbUJBQUE7QXZGdW1WTjs7QXVGbG1WSTtFQUNFLCtDQWdHVTtFQTlGVixnRUFnR3FCO0VBL0ZyQixzRUFBQTtFQUNBLDBCQUFBO0F2Rm9tVk47QXVGbG1WTTtFQUNFLCtDQTBGYTtBdkYwZ1ZyQjtBdUZobVZJO0VBQ0UsK0NBd0ZVO0VBdkZWLGdFQXlGcUI7QXZGeWdWM0I7QXVGaG1WTTtFQUNFLCtDQXFGYTtBdkY2Z1ZyQjtBdUY5bFZJO0VBRUUsZ0RBaUZXO0VBaEZYLGlFQWtGc0I7QXZGNmdWNUI7QXVGN2xWTTtFQUNFLGdEQThFYztBdkZpaFZ0QjtBdUZ4bFZNO0VBQUEsa0dBQUE7RUFBQTtBQUFBOztBQTdDSjtFQUNFLCtEQTJIaUI7RUExSGpCLDhDQXdITTtBdkZtaFZWO0F1RnpvVkk7RUFDRSw4Q0FzSFM7RUFySFQsbUJBQUE7QXZGMm9WTjs7QXVGdG9WSTtFQUNFLDRDQWlIVTtFQS9HViw2REFpSHFCO0VBaEhyQixtRUFBQTtFQUNBLDBCQUFBO0F2RndvVk47QXVGdG9WTTtFQUNFLDRDQTJHYTtBdkY2aFZyQjtBdUZwb1ZJO0VBQ0UsNENBeUdVO0VBeEdWLDZEQTBHcUI7QXZGNGhWM0I7QXVGcG9WTTtFQUNFLDRDQXNHYTtBdkZnaVZyQjtBdUZsb1ZJO0VBRUUsNkNBa0dXO0VBakdYLDhEQW1Hc0I7QXZGZ2lWNUI7QXVGam9WTTtFQUNFLDZDQStGYztBdkZvaVZ0QjtBdUY1blZNO0VBQUEsa0dBQUE7RUFBQTtBQUFBOztBQTdDSjtFQUNFLGtFQTRJaUI7RUEzSWpCLGlEQXlJTTtBdkZzaVZWO0F1RjdxVkk7RUFDRSxpREF1SVM7RUF0SVQsbUJBQUE7QXZGK3FWTjs7QXVGMXFWSTtFQUNFLCtDQWtJVTtFQWhJVixnRUFrSXFCO0VBaklyQixzRUFBQTtFQUNBLDBCQUFBO0F2RjRxVk47QXVGMXFWTTtFQUNFLCtDQTRIYTtBdkZnalZyQjtBdUZ4cVZJO0VBQ0UsK0NBMEhVO0VBekhWLGdFQTJIcUI7QXZGK2lWM0I7QXVGeHFWTTtFQUNFLCtDQXVIYTtBdkZtalZyQjtBdUZ0cVZJO0VBRUUsZ0RBbUhXO0VBbEhYLGlFQW9Ic0I7QXZGbWpWNUI7QXVGcnFWTTtFQUNFLGdEQWdIYztBdkZ1alZ0QjtBdUZocVZNO0VBQUEsa0dBQUE7RUFBQTtBQUFBOztBQTdDSjtFQUNFLGtFQTZKaUI7RUE1SmpCLGlEQTBKTTtBdkZ5alZWO0F1Rmp0Vkk7RUFDRSxpREF3SlM7RUF2SlQsbUJBQUE7QXZGbXRWTjs7QXVGOXNWSTtFQUNFLCtDQW1KVTtFQWpKVixnRUFtSnFCO0VBbEpyQixzRUFBQTtFQUNBLDBCQUFBO0F2Rmd0Vk47QXVGOXNWTTtFQUNFLCtDQTZJYTtBdkZta1ZyQjtBdUY1c1ZJO0VBQ0UsK0NBMklVO0VBMUlWLGdFQTRJcUI7QXZGa2tWM0I7QXVGNXNWTTtFQUNFLCtDQXdJYTtBdkZza1ZyQjtBdUYxc1ZJO0VBRUUsZ0RBb0lXO0VBbklYLGlFQXFJc0I7QXZGc2tWNUI7QXVGenNWTTtFQUNFLGdEQWlJYztBdkYwa1Z0QjtBdUZwc1ZNO0VBQUEsa0dBQUE7RUFBQTtBQUFBOztBQTdDSjtFQUNFLGlFQThLaUI7RUE3S2pCLGdEQTJLTTtBdkY0a1ZWO0F1RnJ2Vkk7RUFDRSxnREF5S1M7RUF4S1QsbUJBQUE7QXZGdXZWTjs7QXVGbHZWSTtFQUNFLDhDQW9LVTtFQWxLViwrREFvS3FCO0VBbktyQixxRUFBQTtFQUNBLDBCQUFBO0F2Rm92Vk47QXVGbHZWTTtFQUNFLDhDQThKYTtBdkZzbFZyQjtBdUZodlZJO0VBQ0UsOENBNEpVO0VBM0pWLCtEQTZKcUI7QXZGcWxWM0I7QXVGaHZWTTtFQUNFLDhDQXlKYTtBdkZ5bFZyQjtBdUY5dVZJO0VBRUUsK0NBcUpXO0VBcEpYLGdFQXNKc0I7QXZGeWxWNUI7QXVGN3VWTTtFQUNFLCtDQWtKYztBdkY2bFZ0QjtBdUZ4dVZNO0VBQUEsa0dBQUE7RUFBQTtBQUFBOztBQTdDSjtFQUNFLCtEQStMaUI7RUE5TGpCLDhDQTRMTTtBdkYrbFZWO0F1Rnp4Vkk7RUFDRSw4Q0EwTFM7RUF6TFQsbUJBQUE7QXZGMnhWTjs7QXVGdHhWSTtFQUNFLDRDQXFMVTtFQW5MViw2REFxTHFCO0VBcExyQixtRUFBQTtFQUNBLDBCQUFBO0F2Rnd4Vk47QXVGdHhWTTtFQUNFLDRDQStLYTtBdkZ5bVZyQjtBdUZweFZJO0VBQ0UsNENBNktVO0VBNUtWLDZEQThLcUI7QXZGd21WM0I7QXVGcHhWTTtFQUNFLDRDQTBLYTtBdkY0bVZyQjtBdUZseFZJO0VBRUUsNkNBc0tXO0VBcktYLDhEQXVLc0I7QXZGNG1WNUI7QXVGanhWTTtFQUNFLDZDQW1LYztBdkZnblZ0QjtBdUY1d1ZNO0VBQUEsa0dBQUE7RUFBQTtBQUFBOztBQWlLTjtFQUNFLE1BQUE7RUFDQSxzQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsdUNBQUE7RUFBQSx3Q0FBQTtBdkZpblZGOztBdUY1bVZFOztFQUFBLGdEQUFBO0VBQUE7QUFBQTs7QUNyT0E7RUFBQTtBQUFBOztBQUlBO0VBQUEsNkJBQUE7RUFDQSxrQ0FBQTtFQUNBLHVCQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQ0FBQTtFQUNBLGlCQUFBO0VBQ0E7QUFOQTs7QUFNQTtFQUFBLG1CQUFBO0VBQUEsbUJBQUE7QUFBQTs7QUFLQTtFQUFBO0FBQUE7O0FBQUE7RUFBQSxVQUFBO0FBQUE7O0FBQ0E7RUFBQSxtQkFBQTtFQUNBLGlCQUFBO0VBQ0E7QUFGQTtBQUlBO0VBQ0UsMkNBQUE7RUFDQSx1Q0FBQTtFQUFBLHdDQUFBO0VBQ0EsWUFBQTtBeEZ5MVZKO0F3RnIxVkk7RUFBQSxxQkFBQTtFQUNBLDhDQUFBO0VBQ0Esa0NBQUE7RUFDQTtBQUhBO0FBTUU7RUFBQTtBQUFBO0FBTUE7RUFBQSxrR0FBQTtFQUFBO0FBQUE7QUFJSjtFQUNFLGdCQUFBO0F4Rm0xVko7O0F3RjcwVkU7O0VBQUEsbUNBQUE7RUFDQTtBQURBOztBQUtBO0VBQUEsaUNBQUE7RUFDQTtBQURBOztBQUtBO0VBQUE7QUFBQTs7QUFBQTtFQUFBO0FBQUE7O0FBQ0E7RUFBQTtBQUFBOztBQUdGO0VBQ0U7Ozs7OztJQUFBO0F4RncxVkY7QXdGaDFWSTtFQUFBLGNBQUE7RUFDQTtBQURBO0FBSUU7RUFBQSxlQUFBO0VBQUEsZ0JBQUE7RUFBQSx1QkFBQTtFQUFBO0FBQUE7QUFBQTtFQUFBLG1CQUFBO0VBQUEsbUJBQUE7QUFBQTs7QUFNSjtFQUFBLGlCQUFBO0VBQ0E7QUFEQTs7QUN0RkE7RUFBQSwrQ0FBQTtFQUNBLHlEQUFBO0VBQ0E7QUFGQTs7QUFNQTtFQUFBLGNBQUE7RUFDQTtBQURBO0FBR0E7RUFDRSxpQkFBQTtBekY0NlZKO0FTcnZWRTtFQUVJO0lnRnJMRixhQUFBO0V6RjQ2VkY7QUFDRjtBUzl1Vkk7RUFFSTtJZ0ZqTUosYUFBQTtFekZpN1ZGO0FBQ0Y7O0F5Rjc2VkU7RUFBQSxvREFBQTtFQUFBLGtEQUFBO0VBQUEsZ0RBQUE7RUFBQSwwREFBQTtFQUFBLG9EQUFBO0VBQUEsd0NBQUE7RUFDQTtBQURBOztBQUlGO0VBQ0Usa0JBQUE7RUFDQSxXekVzTG1CO0V5RXJMbkIsYXpFcUxtQjtBaEI0dlZyQjs7QXlGNzZWQTtFQUNFLDBEQUFBO0VBQ0EsaURBQUE7QXpGZzdWRjs7QTBGajlWQTs7Ozs7O0VBQUE7QUFXRTtFQUFBLGFBQUE7RUFDQSw4QkFBQTtFQUNBLHVCQUFBO0VBQ0E7QUFIQTtBQUdBO0VBQUE7QUFBQTtBQUNBO0VBQUEscUNBQUE7RUFDQSxxRUFBQTtFQUNBLHlFQUFBO0VBQ0Esc0NBQUE7RUFBQTtBQUhBO0FBS0E7RUFDRSxtRkFBQTtFQUNBLG1GQUFBO0VBQ0EsK0VBQUE7RUFDQSwrRUFBQTtBMUZpOVZKO0EwRjk4VkU7RUFDRSx3RkFBQTtFQUNBLHdGQUFBO0VBQ0Esb0ZBQUE7RUFDQSxvRkFBQTtBMUZnOVZKO0EwRjc4VkU7RUFDRSxpRkFBQTtFQUNBLGlGQUFBO0VBQ0EsNkVBQUE7RUFDQSw2RUFBQTtBMUYrOFZKO0EwRjU4VkU7RUFDRSxzRkFBQTtFQUNBLHNGQUFBO0VBQ0Esa0ZBQUE7RUFDQSxrRkFBQTtBMUY4OFZKO0EwRjM4VkU7RUFDRSxrRkFBQTtFQUNBLGtGQUFBO0VBQ0EsOEVBQUE7RUFDQSw4RUFBQTtBMUY2OFZKO0EwRjE4VkU7RUFDRSx1RkFBQTtFQUNBLHVGQUFBO0VBQ0EsbUZBQUE7RUFDQSxtRkFBQTtBMUY0OFZKO0EwRno4VkU7RUFDRSxnRkFBQTtFQUNBLGdGQUFBO0VBQ0EsNEVBQUE7RUFDQSw0RUFBQTtBMUYyOFZKO0EwRng4VkU7RUFDRSxxRkFBQTtFQUNBLHFGQUFBO0VBQ0EsaUZBQUE7RUFDQSxpRkFBQTtBMUYwOFZKO0EwRnY4VkU7RUFDRSxpRkFBQTtFQUNBLGlGQUFBO0VBQ0EsNkVBQUE7RUFDQSw2RUFBQTtBMUZ5OFZKO0EwRnQ4VkU7RUFDRSxrRkFBQTtFQUNBLGtGQUFBO0VBQ0EsOEVBQUE7RUFDQSw4RUFBQTtBMUZ3OFZKO0EwRnI4VkU7RUFDRSxzREFBQTtFQUNBLHFFQUFBO0VBQ0EsNkNBQUE7QTFGdThWSjtBMEZyOFZJO0VBQ0UsNkNBQUE7QTFGdThWTjtBMEZsOFZJO0VBQUEsbUJBQUE7RUFBQSw0Q0FBQTtFQUFBLGlCQUFBO0VBQ0EsZ0NBQUE7RUFBQSx3Q0FBQTtFQUFBLHVHQUFBO0VBQ0Esb0RBQUE7RUFDQSxtQ0FBQTtFQUNBLHVEQUFBO0VBQ0E7QUFMQTtBQVNBO0VBQUEsYUFBQTtFQUNBO0FBREE7QUFJRTtFQUFBLGNBQUE7RUFDQTtBQURBO0FBS0E7RUFBQTtBQUFBO0FBS0Y7RUFBQSx1Q0FBQTtFQUNBO0FBREE7QUFJRTtFQUFBO0FBQUE7QUFJSjtFQUNFLHFCQUFBO0VBQ0Esd0JBQUE7RUFDQSxhQUFBO0VBQUEsdUJBQUE7RUFBQSxrQkFBQTtBMUYrN1ZKO0EwRjM3Vkk7RUFBQSxnREFBQTtFQUFBLG1EQUFBO0VBQ0Esc0NBQUE7RUFDQTtBQUZBOztBQzNJSjs7O0VBQUE7QUFpQ0E7RUFDSSxhQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsbUNDcENZO0VEcUNaLGlEQ2xDVztFRG1DWCxnREFBQTtFQUNBLG1EQ2xDc0I7RURtQ3RCLDJEQVhhO0EzRjRqV2pCO0EyRi9pV0k7RUFDSSxhQUFBO0EzRmlqV1I7QTJGOWlXSTtFQUNJLGtCQUFBO0VBQ0EsOENBQUE7QTNGZ2pXUjs7QTJGMWlXQTtHQUNJLE9BQUE7QTNGNmlXSjtBMkYzaVdJO0VBRUksWUFBQTtFQUNBLGNBQUE7QTNGNGlXUjtBMkZ6aVdJO0VBQVUsV0FBQTtBM0Y0aVdkOztBMkZ6aVdBO0VBQ0ksV0FBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0EzRjRpV0o7O0EyRnppV0E7RUFDSSxrQkFBQTtFQUNBLGtCQUFBO0EzRjRpV0o7QTJGMWlXSTtFQUNJLGVBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSx3QkFBQTtFQUNBLFVBQUE7QTNGNGlXUjs7QTJGeGlXQTtFQUNJLHFCQUFBO0dBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsaUJBQUE7RUFDQSx3RENsR2E7RURtR2IsbUVDbEdVO0E1RjZvV2Q7O0EyRnhpV0E7O0VBRUksY0FBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtFQUNBLGFBQUE7RUFDQSxTQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsNkJBQUE7RUFDQSxrQ0FBQTtFQUNBLDRCQUFBO0VBQ0Esd0JBQUE7RUFDQSxZQUFBO0dBQ0Esa0JBQUE7R0FDQSxNQUFBO0EzRjJpV0o7QTJGemlXSTs7RUFDSSxVQUFBO0EzRjRpV1I7QTJGemlXSTs7RUFDSSxlQUFBO0VBQ0EsWUFBQTtBM0Y0aVdSOztBMkZ4aVdBOztFQUVJLFdBQUE7RUFDQSwyT0FBQTtHQUNBLE9BQUE7QTNGMmlXSjs7QTJGeGlXQTs7RUFFSSxZQUFBO0VBQ0EsMk9BQUE7R0FDQSxRQUFBO0EzRjJpV0o7O0EyRnhpV0E7RUFDSSxxQkFBQTtHQUNBLGVBQUE7QTNGMmlXSjs7QTJGeGlXQTtFQUNJLFdBQUE7RUFDQSx5QkFBQTtFQUNBLGlCQUFBO0VBQ0EsU0FBQTtBM0YyaVdKO0EyRnppV0k7O0VBRUkscUJBQUE7RUFDQSxVQUFBO0EzRjJpV1I7QTJGeGlXSTtFQUNJLGtDQ2hLTTtFRGlLTixlQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0EzRjBpV1I7QTJGdmlXSTtFQUNJLG1CQUFBO0VBQ0EsWUFBQTtBM0Z5aVdSOztBMkZyaVdBO0VBQ0ksZUFBQTtFQUNBLGNBQUE7RUFFQSxzQkFBQTtFQUNBLGFBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsbUNDdExXO0VEdUxYLGVBQUE7RUFDQSxpQkFBQTtFQUNBLGlCQUFBO0VBQ0EsdUJDekxRO0E1Rml1V1o7QTJGdGlXSTtFQUNJLG1DQ3pMYTtFRDBMYixpQkFBQTtBM0Z3aVdSO0EyRnJpV0k7RUFDSSxvREM3TGdCO0VEOExoQixpQkFBQTtFQUNBLCtEQzlMYTtFRCtMYiwrRUFBQTtFQUNBLGtCQUFBO0EzRnVpV1I7QTJGcGlXSTtFQUVJLG9DQ25NZ0I7RURvTWhCLFlBQUE7QTNGcWlXUjtBMkZsaVdJO0VBQ0ksb0JBQUE7RUFDQSxlQUFBO0EzRm9pV1I7QTJGamlXSTtFQUNJLG1DQ25OYTtFRG9OYix1QkNuTlU7RURvTlYsZ0JBQUE7RUFDQSxrQkFBQTtBM0ZtaVdSO0EyRmhpV0k7RUFDSSxvQkFBQTtFQUNBLGVBQUE7QTNGa2lXUjs7QTJGOWhXQTtFQUNJLGVBQUE7RUFDQSxrQ0MxTlk7QTVGMnZXaEI7O0EyRjloV0E7RUFDSSxtQkFBQTtBM0ZpaVdKOztBMkY5aFdBO0VBQ0ksV0FBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBM0ZpaVdKOztBMkY5aFdBO0VBQ0ksV0FBQTtFQUNBLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBM0ZpaVdKOztBNEZ4d1dFO0VBQUEsaUNBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsUUFBQTtFQUNBLGFBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0Esb0JBQUE7RUFDQSx1Q0FBQTtFQUFBO0FBVEE7QUFZRTtFQUFBO0FBQUE7O0FBS0Y7RUFBQSwwQ0FBQTtFQUNBLGtCQUFBO0VBQ0EscUNBQUE7RUFDQSwrQ0FBQTtFQUNBO0FBSkE7QUFPRTtFQUFBLGdDQUFBO0VBQUEsd0NBQUE7RUFBQTtBQUFBO0FBRUE7RUFIRjtJQUlJLGlCQUFBO0U1RjR3V0o7QUFDRjtBNEZ4d1dJO0VBQUEsaUNBQUE7RUFDQSxzQ0FBQTtFQUNBLHVDQUFBO0VBQUEsd0NBQUE7RUFDQSx5Q0FBQTtFQUNBO0FBSkE7QUFRQTtFQUFBLGlCQUFBO0VBQ0Esd0NBQUE7RUFDQTtBQUZBO0FBT0E7O0VBQUEsc0JBQUE7RUFDQSxnQ0FBQTtFQUNBO0FBRkE7QUFLRTs7RUFBQTtBQUFBO0FBR0Y7RUFWRjs7SUFXSSxtRUFBQTtJQUNBLHlFQUFBO0lBQ0Esc0JBQUE7SUFDQSxhQUFBO0U1RjJ3V0o7RTRGendXSTs7SUFDRTs7O3lGQUFBO0lBSUEseUNBQUE7SUFDQSxXQUFBO0lBQ0Esa0JBQUE7SUFDQSxNQUFBO0lBQ0EsT0FBQTtJQUNBLFdBQUE7SUFDQSxZQUFBO0lBQ0EsbUVBQUE7RTVGNHdXTjtFNEZ6d1dJOztJQUNFLGlFQUFBO0U1RjR3V047RTRGMXdXTTs7SUFDRSxpRUFBQTtFNUY2d1dSO0U0Rnp3V0k7O0lBQ0UsaUVBQUE7RTVGNHdXTjtFNEYxd1dNOztJQUNFLGlFQUFBO0U1RjZ3V1I7RTRGendXSTs7SUFDRSxrRUFBQTtFNUY0d1dOO0U0RjF3V007O0lBQ0Usa0VBQUE7RTVGNndXUjtFNEZ6d1dJOztJQUNFLDREQUFBO0U1RjR3V047QUFDRjtBNEZ6d1dJO0VBNURGOztJQTZESSxpQkFBQTtFNUY2d1dKO0FBQ0Y7QTRGendXSTtFQUNFLGlTQUFBO0E1RjJ3V047QTRGeHdXSTtFQUxGO0lBTUksdVNBQUE7RTVGMndXSjtBQUNGO0E0RnZ3V0k7RUFDRSxnU0FBQTtBNUZ5d1dOO0E0RnR3V0k7RUFMRjtJQU1JLHNTQUFBO0U1Rnl3V0o7QUFDRjtBNEZyd1dJO0VBQUEsc0JBQUE7RUFDQTtBQURBO0FBQ0E7RUFBQTtBQUFBO0FBQ0E7RUFBQSxzQ0FBQTtFQUFBLHlDQUFBO0VBRUEsbUVBQUE7RUFDQSx5RUFBQTtFQUNBO0FBSkE7QUFNQTtFQUNFLGlFQUFBO0VBQ0EsdUVBQUE7RUFDQSxzREFBQTtBNUZ1d1dOO0E0RnB3V0k7RUFmRjtJQWdCSSxpQkFBQTtFNUZ1d1dKO0FBQ0Y7QTRGcHdXRTtFQUNFLE1BQUE7RUFDQSxpQ0FBQTtBNUZzd1dKO0E0Rmx3V0k7RUFBQSx5Q0FBQTtFQUNBLHVDQUFBO0VBQ0E7QUFGQTtBQU1BO0VBQUEsMEJBQUE7RUFDQTtBQURBO0FBSUY7RUFDRSw2Q0FBQTtFQUNBLHNCQUFBO0VBQUEsOEJBQUE7RUFBQSx1R0FBQTtFQUNBLHNDQUFBO0VBQUEseUNBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0NBQUE7RUFDQSxpQ0FBQTtFQUNBLG1DQUFBO0E1RnN3V0o7QTRGdHdXSTtFQUFBO0FBQUE7QUFDQTtFQUFBLGlCQUFBO0VBQ0EsbUJBQUE7RUFDQTtBQUZBO0FBSUE7RUFDRSxnRUFBQTtBNUZtd1dOO0E0Rmh3V0k7RUFqQkY7SUFrQkksaUJBQUE7RTVGbXdXSjtBQUNGO0E0Ri92V0k7RUFBQSx1Q0FBQTtFQUNBO0FBREE7QUFLQTtFQUFBO0FBQUE7QUFFQTtFQUNFLG1FQUFBO0VBQ0Esb0RBQUE7RUFDQSxnQkFBQTtBNUZpd1dOO0E0RjV2V0k7RUFBQSx1Q0FBQTtFQUNBO0FBREE7QUFLQTtFQUFBO0FBQUE7O0FDdE9GO0VBQUEsaUJBQUE7RUFDQTtBQURBOztBQUNBO0VBQUE7QUFBQTs7QUFDQTtFQUFBO0FBQUE7QUFHRTtFQUFBLHVDQUFBO0VBQ0E7QUFEQTtBQUtBO0VBQUEsYUFBQTtFQUNBLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSxvQkFBQTtFQUNBLDhCQUFBO0VBQ0EsaUNBQUE7RUFDQTtBQU5BOztBQ0ZGO0VBQUEsb0RBQUE7RUFDQSxRQUFBO0VBQ0Esd0JBQUE7RUFBQSxnQ0FBQTtFQUFBLDBCQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQTtBQUxBOztBQUtBO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtBQUFBOztBQUNBO0VBQUEsZ0JBQUE7RUFDQSxnQ0FBQTtFQUFBLHdDQUFBO0VBQUEsdUdBQUE7RUFDQTtBQUZBOztBQUVBO0VBQUE7QUFBQTs7QUFDQTtFQUFBLGlCQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0Esc0RBQUE7RUFDQTtBQUpBO0FBT0U7RUFBQSxvREFBQTtFQUNBLE1BQUE7RUFDQTtBQUZBOztBckZzSUE7RUFFSTtJcUZoSUosWUFqQ2M7RTlGbWhYaEI7QUFDRjtBU3oyV007RUFFSTtJcUY1SU4sWUFqQ2M7RTlGd2hYaEI7QUFDRjtBOEZuL1dJOztFQUFBO0FBQUE7O0FyRnlIQTtFQUVJO0lxRnJISixZQTNDZTtFOUZpaVhqQjtBQUNGO0FTeDNXTTtFQUVJO0lxRmpJTixZQTNDZTtFOUZzaVhqQjtBQUNGO0E4RnYvV0k7O0VBQUEsc0NBQUE7RUFBQTtBQUFBO0FBSUE7RUFBQSwwQkFBQTtFQUFBLG1EQUFBO0VBQUEsd0JBQUE7RUFDQSxzQ0FBQTtFQUFBO0FBREE7QUFJRTtFQUFBO0FBQUE7QUFLRjtFQUFBLHVDQUFBO0VBQUE7QUFBQTs7QUFLRjtFQUFBLG9EQUFBO0VBQ0EsdUJBQUE7RUFBQSxnREFBQTtFQUFBLHFCQUFBO0VBQ0E7QUFGQTs7QUFNQTtFQUNFLG1HQXhFdUI7RUF5RXZCLFNBQUE7RUFDQSx1QkFBQTtFQUFBLCtMQUFBO0VBQ0EsV0FBQTtFQUNBLE9BQUE7RUFDQSxrQkFBQTtFQUNBLG9CQUFBO0VBQ0EsV0FBQTtBOUZ1L1dKOztBOEZ2L1dJO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtBQUFBOztBQUNBO0VBQUE7QUFBQTs7QUFJSjtFQUNFLFNBQUE7RUFDQSxnQkFBQTtBOUZxL1dGOztBOEZqL1dFO0VBQUEsMEJBQUE7RUFBQSxtREFBQTtFQUFBO0FBQUE7O0FBSUE7RUFBQSxtQ0FBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtFQUNBO0FBSEE7QUFNRTtFQUFBLGdDQUFBO0VBQ0EsaUNBQUE7RUFDQTtBQUZBOztBQU9GO0VBQUEsc0JBQUE7RUFDQSw2QkFBQTtFQUNBO0FBRkE7O0FBTUE7RUFBQSxZQUFBO0VBSUE7QUFKQTs7QUFPRjtFQUNFLGdCQUFBO0E5RmkvV0Y7O0E4RjcrV0U7RUFDRSxtR0E5SHVCO0VBK0h2QixXQUFBO0VBQ0EsU0FBQTtFQUNBLG9CQUFBO0VBQ0EsV0FBQTtBOUZtL1dKOztBOEZuL1dJO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtBQUFBOztBQUxGO0VBTUUsZUFBQTtFQUNBLGlDQUFBO0VBQ0EseURBQUE7QTlGZy9XSjs7QThGMytXRTtFQUFBLDJDQUFBO0VBQUE7QUFBQTs7QUFLQTs7RUFBQSxzQkFBQTtFQUFBO0FBQUE7O0FBS0E7O0VBQUEsd0JBQUE7RUFBQSxnQ0FBQTtFQUFBO0FBQUE7O0FDcEpFO0VBQUEsaUJBQUE7RUFBQSw2Q0FBQTtFQUNBLHFEQUFBO0VBQ0EscUNBQUE7RUFDQSx3Q0FBQTtFQUNBLGtDQUFBO0VBQ0Esa0NBQUE7RUFBQSx1REFBQTtFQUFBLHVHQUFBO0VBQ0EsK0NBQUE7RUFDQTtBQVBBO0FBVUU7RUFBQTtBQUFBO0FBS0Y7RUFBQTtBQUFBO0FBSUE7RUFBQSxhQUFBO0VBQ0Esc0JBQUE7RUFDQTtBQUZBO0FBS0U7RUFBQTtBQUFBO0FBSUE7RUFBQTtBQUFBO0FBS0Y7RUFBQSxZQUFBO0VBQ0E7QUFEQTtBQUtBO0VBQUEsaUJBQUE7RUFBQSw4Q0FBQTtFQUFBLDBCQUFBO0VBQ0EsYUFBQTtFQUNBO0FBRkE7QUFFQTtFQUFBO0FBQUE7QUFDQTtFQUFBLGtDQUFBO0VBQ0EsdUNBQUE7RUFDQSx1QkFBQTtFQUNBLGlCQUFBO0VBQ0EsaUNBQUE7RUFDQSx3Q0FBQTtFQUNBLHlDQUFBO0VBQ0EsdUNBQUE7RUFBQTtBQVBBO0FBV0E7RUFBQSx3QkFBQTtFQUFBLHFEQUFBO0VBQUE7QUFBQTtBQUlBO0VBQUEscUJBQUE7RUFBQSxrREFBQTtFQUFBLHVCQUFBO0VBQ0Esc0NBQUE7RUFBQTtBQURBO0FBT0U7RUFBQTtBQUFBO0FBS0E7RUFBQTtBQUFBO0FBR0U7RUFBQTtBQUFBO0FBTUY7RUFBQTtBQUFBO0FBRUE7RUFDRSxhQUFBO0EvRnNuWFI7QStGL21YTTtFQUFBLGlCQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxnQ0FBQTtFQUNBLGlDQUFBO0VBQ0EsOEJBQUE7RXRGaEZKLGdTQUFBO0VBQ0Esc0JBQUE7RUFDQSxxQkFBQTtFQUNBO0FzRndFSTtBQVVBO0VBQUEsdUNBQUE7RUFBQTtBQUFBO0FBR0U7RUFBQSx1Q0FBQTtFQUFBO0FBQUE7QUFPRjtFQUFBO0FBQUE7QUFJQTtFQUFBO0FBQUE7QUFBQTtFQUFBLFVBQUE7QUFBQTtBQUtGO0VBQUEsa0JBQUE7RUFDQSxnQkFBQTtFQUNBO0FBRkE7QUFPQTtFQUFBLG9EQUFBO0VBQ0E7QUFEQTtBQU9FO0VBQUEscUNBQUE7RUFDQTtBQURBO0FBSUU7RUFBQSxpQ0FBQTtFQUNBO0FBREE7QUFRRjs7O0VBQUEsc0NBQUE7RUFDQTtBQURBO0FBTUY7RUFBQTtBQUFBO0FBS0E7O0VBQUE7QUFBQTtBQUlBO0VBQ0UscUJBQUE7QS9GaW1YTjtBK0Y1bFhNOztFQUFBO0FBQUE7QUFJQTtFQUFBLHNDQUFBO0VBQUE7QUFBQTtBQUtGO0VBQUEsdUNBQUE7RUFBQTtBQUFBO0FBSUE7RUFBQTtBQUFBO0FBR0U7RUFBQTtBQUFBOztBQzVLTixrREFBQTtBQVJFO0VBQUEsZ0JBQUE7RUFDQSxpQ0FBQTtFQUNBLHFDQUFBO0VBQUEsd0NBQUE7RUFDQSxzQ0FBQTtFQUFBLHVDQUFBO0VBQ0Esa0NBQUE7RUFDQSxxQkFBQTtFQUFBLGtEQUFBO0VBQUE7QUFMQTs7QUFhRixxRUFBQTtBQWJFO0VBQUEsZ0JBQUE7RUFDQSxpQ0FBQTtFQUNBLHFDQUFBO0VBQUEsd0NBQUE7RUFDQSxzQ0FBQTtFQUFBLHVDQUFBO0VBQ0Esa0NBQUE7RUFDQSxxQkFBQTtFQUFBLGtEQUFBO0VBQUE7QUFMQTs7QUNVRixrREFBQTtBQVZFO0VBQUE7QUFBQTtBQUFBO0VBQUE7QUFBQTtBQUNBO0VBQUEsa0NBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUNBQUE7RUFDQSxzQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsdUNBQUE7RUFBQSx3Q0FBQTtFQUNBO0FBTkE7O0FBY0YscUVBQUE7QUFmRTtFQUFBO0FBQUE7QUFBQTtFQUFBO0FBQUE7QUFDQTtFQUFBLGtDQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLHVDQUFBO0VBQ0Esc0NBQUE7RUFBQSx5Q0FBQTtFQUNBLHVDQUFBO0VBQUEsd0NBQUE7RUFDQTtBQU5BOztBQ0RBO0VBQUEsbUJBQUE7RUFDQSw2QkFBQTtFQUNBLGlCQUFBO0VBQ0EsYUFBQTtFQUNBO0FBSkE7O0FBSUE7RUFBQTtBQUFBOztBQUNBO0VBQUEseUNBQUE7RUFDQSxpQkFBQTtFQUNBLHVDQUFBO0VBQUEsd0NBQUE7RUFDQSxzQ0FBQTtFQUFBLHlDQUFBO0VBQ0Esa0JBQUE7RUFDQSwyQ0FBQTtFQUNBLHNCQUFBO0VBQUEsOEJBQUE7RUFBQSx1R0FBQTtFQUNBLG1EQUFBO0VBQ0EsZ0JBQUE7RUFDQTtBQVRBOztBQVNBO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtBQUFBOztBQUNBO0VBQUEsbUJBQUE7RUFNRTtBQU5GO0FBU0k7RUFBQSxjQUFBO0VBQ0E7QUFEQTtBQUtBO0VBQUEsY0FBQTtFQUNBLHVDQUFBO0VBQ0E7QUFGQTtBQU1BO0VBQUEsY0FBQTtFQUNBO0FBREE7QUFLQTtFQUFBO0FBQUE7QUFJQTtFQUFBLGlDQUFBO0VBQ0E7QUFEQTtBQUtBO0VBQUEsb0NBQUE7RUFDQSxZQUFBO0VBQ0EsdUNBQUE7RUFDQSxzQ0FBQTtFQUFBO0FBSEE7QUFRQTtFQUFBO0FBQUE7QUFJQTtFQUFBO0FBQUE7QUFJQTtFQUFBO0FBQUE7QUFHRTtFQUFBO0FBQUE7QUFJQTtFQUFBO0FBQUE7QUFJQTtFQUFBO0FBQUE7QUFJSjtFQUlFLDZFQUFBO0VBQ0EsMEJBQUE7RUFDQSxtREFBQTtBbEcyeVhOO0FrR3Z5WFE7RUFBQTtBQUFBO0FBSUo7RXpGdEJFLGdLQUNFO0VBRUYsYUFBQTtBVDZ6WE47QVM1elhNO0V5RmtCRjtJekZqQkksMkJBQUE7RVQrelhOO0FBQ0Y7O0FrRzc0WEU7RUFBQSxtQkFBQTtFQUNBLDZCQUFBO0VBQ0EsaUJBQUE7RUFDQSxhQUFBO0VBQ0E7QUFKQTs7QUFJQTtFQUFBO0FBQUE7O0FBQ0E7RUFBQSx5Q0FBQTtFQUNBLGlCQUFBO0VBQ0EsdUNBQUE7RUFBQSx3Q0FBQTtFQUNBLHNDQUFBO0VBQUEseUNBQUE7RUFDQSxrQkFBQTtFQUNBLDJDQUFBO0VBQ0Esc0JBQUE7RUFBQSw4QkFBQTtFQUFBLHVHQUFBO0VBQ0EsbURBQUE7RUFDQSxnQkFBQTtFQUNBO0FBVEE7O0FBU0E7RUFBQSxtQkFBQTtFQUFBLG1CQUFBO0FBQUE7O0FBQ0E7RUFBQSxtQkFBQTtFQ2JFLHNDQUFBO0VBQUE7QURhRjs7QUVmQTtFQUFBLGFBQUE7RUFDQSxZQUFBO0VBQ0EscUNBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0Esc0NBQUE7RUFBQSx5Q0FBQTtFQUNBLHVDQUFBO0VBQ0Esd0NBQUE7RUFDQSxrQkFBQTtFQUNBLDhDQUFBO0VBQ0Esa0VBQUE7RUFDQTtBQVhBO0FBY0U7RUFBQSxvREFBQTtFQUFBO0FBQUE7O0FBS0Y7RUFBQSxxREFBQTtFQUFBO0FBQUE7O0FBSUE7RUFBQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQTtBQUZBOztBQUVBO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtBQUFBOztBQUlBO0VBQUEsYUFBQTtFQUNBLHVDQUFBO0VBQUE7QUFEQTtBQUlFO0VBQUE7QUFBQTs7QUFNQTtFQUFBLFlBQUE7RUFDQTtBQURBOztBQUNBO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtBQUFBOztBQUNBO0VBQUE7QUFBQTtBQUdGO0VBQUEsWUFBQTtFQUNBLGtDQUFBO0VBQ0EsdUNBQUE7RUFDQSxpQ0FBQTtFQUNBO0FBSkE7O0FBT0Y7RUFDRSx1REFBQTtFQUNBLG1FQUFBO0FwR2s2WEY7O0FxR3Y5WEU7RUFBQTtBQUFBOztBQUdGO0VBQ0UsNkVBQUE7RUFDQSwwQkFBQTtFQUNBLG1EQUFBO0VBQ0EsOEJBQUE7RUFBQSxtQkFBQTtFNUZpRUksZ0tBQ0U7RUFFRixhQUFBO0FUeTVYTjtBU3g1WE07RTRGekVOO0k1RjBFUSwyQkFBQTtFVDI1WE47QUFDRjs7QXNHdCtYRTtFQUFBLGNBQUE7RUFDQSxZakd5T2tCO0VpR3hPbEIsa0NBQUE7RUFDQSxxREFBQTtFQUNBLDZDQUFBO0VBQ0EseUNBQUE7RUFDQSxnQ0FBQTtFQUFBLHdDQUFBO0VBQUE7QUFOQTs7QUFTRjtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQmpHbU8yQjtBTHV3WDdCO0FzR3IrWEk7OztFQUFBO0FBQUE7QUFJQTtFQUFBLGlEQUFBO0VBQUE7QUFBQTtBQUlBO0VBQUEscUNBQUE7RUFBQTtBQUFBO0FBSUE7RUFBQTtBQUFBOztBQy9CQTtFQUFBO0FBQUE7O0FBS0Y7RUFBQSxrQ0FBQTtFQUNBLDZCQUFBO0VBQ0Esa0JBQUE7RUFDQSw4QkFBQTtFQUFBLG1CQUFBO0VBQ0EsaUNBQUE7RUFDQTtBQUxBOztBQUtBO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtBQUFBOztBQU5GO0VBT0UsZ0JsR2lPa0I7QUx3eVhwQjs7QXVHcmdZRTtFQUFBO0FBQUE7O0FDZkU7RUFBQTtBQUFBO0FBR0Y7RUFBQSxpQ0FBQTtFQUNBO0FBREE7QUFDQTtFQUFBLFVBQUE7QUFBQTtBQUNBO0VBQUEsbUJBQUE7RUFDQTtBQURBO0FBS0k7RUFDRSw2RUFBQTtBeEcwaFlSO0F3R3ZoWU07RUFDRSw2RUFBQTtBeEd5aFlSO0F3R3RoWU07RUFDRSxpRkFBQTtBeEd3aFlSOztBd0dqaFlFO0VBQUE7QUFBQTtBQUdFO0VBQUEsaUNBQUE7RUFDQSxxREFBQTtFQUNBLHdEQUFBO0VBQ0Esc0NBQUE7RUFBQSx5Q0FBQTtFQUNBLHVDQUFBO0VBQUEsd0NBQUE7RUFDQSx1Q0FBQTtFQUNBO0FBTkE7QUFVQTtFQUFBLGlDQUFBO0VBQ0EsdUNBQUE7RUFDQSwyQ0FBQTtFQUNBO0FBSEE7QUFPQTtFQUFBLGlDQUFBO0VBQ0EsK0VBQUE7RUFDQSxzREFBQTtFQUNBO0FBSEE7QUFNRTtFQUFBO0FBQUE7QUFBQTtFQUFBLFVBQUE7QUFBQTs7QUFNSjtFQUFBLGtDQUFBO0VBQ0E7QUFEQTs7QUMzREE7RUFBQTtBQUFBOztBQUFBO0VBQUEsVUFBQTtBQUFBOztBQUNBO0VBQUEsbUJBQUE7RUFDQTtBQURBOztBQUNBO0VBQUEsbUJBQUE7RUFBQSxtQkFBQTtBQUFBOztBQUNBO0VBQUEsaUNBQUE7RUFDQSxtQkFBQTtFQUNBO0FBRkE7QUFLRTtFQUFBO0FBQUE7O0FBS0Y7RUFBQSxrQ0FBQTtFQUNBLFlBQUE7RUFDQSw2QkFBQTtFQUNBLGtCQUFBO0VBQ0EsOEJBQUE7RUFBQSxtQkFBQTtFQUNBO0FBTEE7O0FBU0E7RUFBQSwyQ0FBQTtFQUNBLGtDQUFBO0VBQ0EsWUFBQTtFQUNBLDZCQUFBO0VBQ0Esc0JBQUE7RUFBQSw4QkFBQTtFQUFBLHVHQUFBO0VBQ0E7QUFMQTtBQVNFO0VBQUEsc0JBQUE7RUFBQSw4QkFBQTtFQUFBO0FBQUE7O0FBSUo7RUFDRSx1REFBQTtBekc4a1lGOztBeUcxa1lFO0VBQUE7QUFBQTs7QUN4Q0E7RUFDRSxjQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0ExR3luWUo7O0EyR3puWUE7RUFDRSxZckd5VWE7RXFHdlViLHlCQUFBO0EzRzJuWUY7O0EyR3huWUE7O0VBRUUsa0M5RjRlc0M7RThGMWV0Qyx5QkFBQTtBM0cwbllGOztBMkd2bllBOztFQUVFLGdDOUZzZXNDO0U4RnJldEMseUJBQUE7QTNHMG5ZRjs7QTJHdm5ZQTtFQUVFLHlCM0Y4RnFCO0UyRjdGckIsYTlGOFo0QjtBYjJ0WDlCOztBMkdwbllFO0VBQ0Usa0JBQUE7RUFDQSxjQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQUFBO0EzR3VuWUo7QTJHcm5ZSTs7Ozs7RUFLRSxpQkFBQTtBM0d1bllOO0EyRzltWUk7Ozs7O0VBQ0UsaUJBQUE7QTNHb25ZTjtBMkdobllFO0VBQ0UsVUFBQTtBM0drbllKO0EyRzltWUk7RXhGekJBLDBCQUFBO0VBQ0EsNkJBQUE7QW5CMG9ZSjtBMkc5bVlJO0V4RmZBLHlCQUFBO0VBQ0EsNEJBQUE7QW5CZ29ZSjtBMkc3bVlFO0VBQ0Usa0JBQUE7RUFDQSxzQjNGd0NpQjtFMkZ2Q2pCLDRCQUFBO0VBQ0EseUJBQUE7RUFDQSxZckdtUVc7RXFHaFFULHNCOUZxS3dCO0VnQmxPeEIsd0U4RW1FRjtBM0d3bVlKO0E2QnZxWU07RThFaURKO0k5RWhETSxnQkFBQTtFN0IwcVlOO0FBQ0Y7QTJHem1ZSTtFQUNFLGMzRmlDaUI7RTJGaENqQixzQjNGc0JlO0UyRnJCZixrQzlGOFlrQztFOEY3WWxDLFVBQUE7RUFJRSxnRDlGOFNzQjtBYjB6WDlCO0EyR3BtWUk7RUFFRSx5QjNGV2dCO0FoQjBsWXRCOztBMkdobVlBO0VBQ0UsZ0M5RjZZc0M7RThGNVl0QyxlQUFBO0V4RnpGRSxxQkFBQTtBbkI2cllKOztBMkdobVlBO0VBQ0Usa0M5RnNZc0M7RThGcll0QyxpQkFBQTtFeEYvRkUscUJBQUE7QW5CbXNZSjs7QTJHNWxZSTtFQUVFLHFCOUZ1aEI4QjtBYnVrWHBDO0EyRzVsWU07RUFDRSxxQjlGb2hCNEI7RThGbmhCNUIsaURBQUE7QTNHOGxZUjs7QTJHcGxZUTtFQUNFLDJGQUNFO0EzR3NsWVo7QTJHbGxZUTtFQUNFLDJGQUNFO0EzR21sWVo7QTJHL2tZUTtFQUNFLDJGQUNFO0EzR2dsWVo7QTJHM2tZTTtFQUNFLHlCOUZxZjRCO0U4RnBmNUIsc0JBQUE7QTNHNmtZUjtBMkcza1lRO0VBQ0Usb0VBQUE7RUFDQSxzQkFBQTtBM0c2a1lWO0EyR3prWU07RUFDRSwwQ0FBQTtBM0cya1lSO0EyR3hrWU07RUFDRSx5QjlGdWU0QjtFOEZ0ZTVCLHNCQUFBO0EzRzBrWVI7QTJHeGtZUTtFQUNFLG9FQUFBO0VBQ0Esc0JBQUE7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QUFDRjs7QTJHN3JZRTtFQUNFLGdCdEc0QmtCO0FMb3FZdEI7O0FTdnpZSTtFQUVJO0lrRzRIRSxnQnRHcUJZO0VMeXFZcEI7QUFDRjtBU2p6WU07RUFFSTtJa0dnSEEsZ0J0R3FCWTtFTDhxWXBCO0FBQ0Y7O0FTbDBZSTtFQUVJO0lrRzRIRSxnQnRHcUJZO0VMb3JZcEI7QUFDRjtBUzV6WU07RUFFSTtJa0dnSEEsZ0J0R3FCWTtFTHlyWXBCO0FBQ0Y7O0FTNzBZSTtFQUVJO0lrRzRIRSxnQnRHcUJZO0VMK3JZcEI7QUFDRjtBU3YwWU07RUFFSTtJa0dnSEEsZ0J0R3FCWTtFTG9zWXBCO0FBQ0Y7O0FTeDFZSTtFQUVJO0lrRzRIRSxnQnRHcUJZO0VMMHNZcEI7QUFDRjtBU2wxWU07RUFFSTtJa0dnSEEsZ0J0R3FCWTtFTCtzWXBCO0FBQ0Y7O0EyRzd1WUU7RUFDRSxnQnRHNEJrQjtBTG90WXRCOztBU3YyWUk7RUFFSTtJa0c0SEUsZ0J0R3FCWTtFTHl0WXBCO0FBQ0Y7QVNqMllNO0VBRUk7SWtHZ0hBLGdCdEdxQlk7RUw4dFlwQjtBQUNGOztBU2wzWUk7RUFFSTtJa0c0SEUsZ0J0R3FCWTtFTG91WXBCO0FBQ0Y7QVM1MllNO0VBRUk7SWtHZ0hBLGdCdEdxQlk7RUx5dVlwQjtBQUNGOztBUzczWUk7RUFFSTtJa0c0SEUsZ0J0R3FCWTtFTCt1WXBCO0FBQ0Y7QVN2M1lNO0VBRUk7SWtHZ0hBLGdCdEdxQlk7RUxvdllwQjtBQUNGOztBU3g0WUk7RUFFSTtJa0c0SEUsZ0J0R3FCWTtFTDB2WXBCO0FBQ0Y7QVNsNFlNO0VBRUk7SWtHZ0hBLGdCdEdxQlk7RUwrdllwQjtBQUNGOztBMkc3eFlFO0VBQ0UsZ0J0RzRCa0I7QUxvd1l0Qjs7QVN2NVlJO0VBRUk7SWtHNEhFLGdCdEdxQlk7RUx5d1lwQjtBQUNGO0FTajVZTTtFQUVJO0lrR2dIQSxnQnRHcUJZO0VMOHdZcEI7QUFDRjs7QVNsNllJO0VBRUk7SWtHNEhFLGdCdEdxQlk7RUxveFlwQjtBQUNGO0FTNTVZTTtFQUVJO0lrR2dIQSxnQnRHcUJZO0VMeXhZcEI7QUFDRjs7QVM3NllJO0VBRUk7SWtHNEhFLGdCdEdxQlk7RUwreFlwQjtBQUNGO0FTdjZZTTtFQUVJO0lrR2dIQSxnQnRHcUJZO0VMb3lZcEI7QUFDRjs7QVN4N1lJO0VBRUk7SWtHNEhFLGdCdEdxQlk7RUwweVlwQjtBQUNGO0FTbDdZTTtFQUVJO0lrR2dIQSxnQnRHcUJZO0VMK3lZcEI7QUFDRjs7QTJHNzBZRTtFQUNFLGdCdEc0QmtCO0FMb3pZdEI7O0FTdjhZSTtFQUVJO0lrRzRIRSxnQnRHcUJZO0VMeXpZcEI7QUFDRjtBU2o4WU07RUFFSTtJa0dnSEEsZ0J0R3FCWTtFTDh6WXBCO0FBQ0Y7O0FTbDlZSTtFQUVJO0lrRzRIRSxnQnRHcUJZO0VMbzBZcEI7QUFDRjtBUzU4WU07RUFFSTtJa0dnSEEsZ0J0R3FCWTtFTHkwWXBCO0FBQ0Y7O0FTNzlZSTtFQUVJO0lrRzRIRSxnQnRHcUJZO0VMKzBZcEI7QUFDRjtBU3Y5WU07RUFFSTtJa0dnSEEsZ0J0R3FCWTtFTG8xWXBCO0FBQ0Y7O0FTeCtZSTtFQUVJO0lrRzRIRSxnQnRHcUJZO0VMMDFZcEI7QUFDRjtBU2wrWU07RUFFSTtJa0dnSEEsZ0J0R3FCWTtFTCsxWXBCO0FBQ0Y7O0E0RzlvWkk7OztFQUNFLDBCQUFBO0VBQ0EsNkJBQUE7QTVHbXBaTjtBNEc1b1pJOzs7RUFDRSx5QkFBQTtFQUNBLDRCQUFBO0E1R2dwWk47O0E2Ry9wWkE7RUFDRSxrQkFBQTtFQUNBLFdBQUE7QTdHa3FaRjs7QTZHbHFaRTtFQUFBLG1CQUFBO0VBQUEsbUJBQUE7QUFBQTtBQUtBO0VBQ0UsYUFBQTtBN0crcFpKOztBNkd4cFpFO0VBQUE7QUFBQTs7QUFHRjtFQUNFLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLDJDQUFBO0VBQ0EsMkJBQUE7QTdHNHBaRjs7QThHeHFaRTtFQUFBO0FBQUE7O0FBS0E7O0VBQUE7QUFBQTs7QUFBQTs7RUFBQTtBQUFBOztBQUNBOztFQUFBLGlCQUFBO0VBQ0E7QUFEQTtBQUlFOztFQUFBLGFBQUE7RUFDQTtBQURBO0FBS0E7O0VBQUE7QUFBQTtBQUFBOztFQUFBLFVBQUE7QUFBQTtBQUNBOztFQUFBO0FBQUE7QUF6QkY7O0VBQUEscUNBQUE7RUFDQSxzQ0FBQTtFQUNBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBQ0E7QUFMQTtBQWtDSTs7OztFQUFBLGtHQUFBO0VBQUE7QUFBQTtBQUtGOztFQUFBLHVDQUFBO0VBQ0E7QUFEQTtBQVNBOzs7Ozs7Ozs7O0VBQUEsbUJBQUE7RUFDQTtBQURBO0FBS0E7O0VBQUE7QUFBQTtBQUdFOztFQUFBLGVBQUE7RUFDQSx1Q0FBQTtFQUNBO0FBRkE7QUFJQTs7O0VBRUUsTUFBQTtFQUNBLFdBQUE7QTlHd3JaUjtBOEdyclpNOztFQUNFLDREQUFBO0VBQ0Esb0RBQUE7QTlHd3JaUjtBOEdwclpJOztFQUNFLGtEQUFBO0E5R3VyWk47QThHbnJaTTs7RUFBQSxrR0FBQTtFQUFBLGFBQUE7RUFDQTtBQURBO0FBSUY7O0VBQ0UscUVBQUE7RUFDQSw2REFBQTtBOUd1clpOO0E4R3JyWk07RUFKRjs7SUFLSSwwQkFBQTtJQUNBLHNCQUFBO0U5R3lyWk47QUFDRjtBOEduclpNOzs7Ozs7RUFDRSw2QkFBQTtFQUNBLDREQUFBO0VBQ0Esc0JBQUE7RUFDQSw0QkFBQTtBOUcwclpSO0E4R3RyWkk7O0VBQ0UsNERBQUE7RUFDQSw4UkFBQTtBOUd5clpOO0E4R3RyWkk7O0VBQ0UsNERBQUE7RUFDQSxpUUFBQTtBOUd5clpOO0E4R3RyWkk7O0VBQ0UsNERBQUE7RUFDQSxnTUFBQTtBOUd5clpOO0E4R3ByWk07Ozs7RUFDRSxtRUFBQTtFQUNBLDJEQUFBO0E5R3lyWlI7QThHcnJaSTs7RUFDRSxtRUFBQTtFQUNBLDJEQUFBO0E5R3dyWk47QThHanJaUTtFQURGOzs7Ozs7SUFFSSwwQkFBQTtJQUNBLHNCQUFBO0U5R3lyWlI7QUFDRjtBOEdwclpNOztFQUFBO0FBQUE7QUFJQTs7RUFDRSxxRUFBQTtFQUNBLDZEQUFBO0E5R3VyWlI7QThHcnJaUTtFQUpGOztJQUtJLDBCQUFBO0lBQ0Esc0JBQUE7RTlHeXJaUjtBQUNGO0E4R3RyWk07O0VBQ0UsbUVBQUE7RUFDQSwyREFBQTtBOUd5clpSO0E4R3RyWk07O0VBRUUsbUVBQUE7RUFDQSwyREFBQTtBOUd3clpSO0E4R2xyWlE7RUFIRjs7OztJQUlJLDBCQUFBO0lBQ0Esc0JBQUE7RTlHd3JaUjtBQUNGO0E4R25yWk07O0VBQUE7QUFBQTtBQUdFOztFQUFBLG9CQUFBO0VBQ0EsNERBQUE7RUFDQTtBQUZBO0FBSUE7RUFMRjs7SUFNSSxZQUFBO0U5RzByWlI7QUFDRjtBOEdwclpNOzs7O0VBQ0Usc0VBQUE7RUFDQSw4REFBQTtBOUd5clpSO0E4R3RyWk07Ozs7RUFDRSxzQkFBQTtFQUNBLDREQUFBO0VBRUE7OztHQUFBO0E5RzZyWlI7QThHenJaUTtFQVJGOzs7O0lBU0kseUJBQUE7SUFDQTs7S0FBQTtJQUlBLDBCQUFBO0U5RzhyWlI7QUFDRjtBOEd4clpJOztFQUFBLHFDQUFBO0VBQ0Esd0NBQUE7RUFDQTtBQUZBO0FBRUE7O0VBQUE7QUFBQTtBQUNBOztFQUFBLGlCQUFBO0VBQ0E7QUFEQTs7QUM5TkY7RUFBQTtBQUFBO0FBR0U7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQ0E7RUFBQSx1Q0FBQTtFQUNBLGlCQUFBO0VBQ0Esc0NBQUE7RUFDQSx5Q0FBQTtFQUNBO0FBSkE7QUFPRTtFQUFBLHFDQUFBO0VBQ0E7QUFEQTtBQU9GOztFQUFBO0FBQUE7QUFHRjtFQUNFLHlDQUFBO0EvRzQ1Wko7QStHejVaRTtFQUNFLHlDQUFBO0EvRzI1Wko7QStHcDVaSTs7OztFQUFBO0FBQUE7QUFBQTs7OztFQUFBO0FBQUE7QUFDQTs7OztFQUFBO0FBQUE7QUFJQTtFQUFBO0FBQUE7QUFZRTs7OztFQUFBO0FBQUE7QUFJSjtFQUNFLGdCQUFBO0EvR2k1Wko7O0FnSHg4WkU7RUFBQTtBQUFBOztBQUFBO0VBQUE7QUFBQTs7QUFDQTtFQUFBO0FBQUE7O0FDRkY7Ozs7Ozs7Q0FBQTtBQVNBLGdEQUFBO0FBRUU7RUFBQTtBQUFBO0FBQUE7RUFBQTtBQUFBO0FBQ0E7RUFBQSwwQ0FBQTtFQUNBLDZCQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQ0FBQTtFQUFBLHlDQUFBO0VBQ0EsdUNBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFBQSxnQkFBQTtFQUFBLG1CQUFBO0VBQUEsdUJBQUE7RUFBQSxtQkFBQTtFQUFBO0FBTkE7QUFNQTtFQUFBLGVBQUE7QUFBQTtBQUNBO0VBQUEsNEJBQUE7RUFDQSxrQkFBQTtFQUNBLDhDQUFBO0VBQ0EsZ0JBQUE7RUFDQSw0REFBQTtFQUNBLHNCQUFBO0VBQ0Esa0VBQUE7RUFDQSxtQ0FBQTtFQUNBLHNCQUFBO0VBQ0E7QUFUQTtBQVdBO0VBcEJGO0lBcUJJLGdCQUFBO0lBQ0EsaUJBQUE7RWpIaTlaRjtBQUNGO0FpSC84WkU7RUFDRSxnRUFBQTtBakhpOVpKO0FpSDk4WkU7RXhHMkNFLG1LQUNFO0VBRUYsd0JBQUE7QVRvNlpKO0FTbjZaSTtFd0cvQ0Y7SXhHZ0RJLHNDQUFBO0VUczZaSjtBQUNGO0FpSGo5Wkk7RUFBQSxtQkFBQTtFQUNBLG9DQUFBO0VBQ0EsNkRBQUE7RUFDQTtBQUhBO0FBTUY7RUFDRSxnRUFBQTtBakhtOVpKO0FpSGo5Wkk7RUFDRSxnRUFBQTtBakhtOVpOO0FpSGg5Wkk7RXhHd0JBLG1LQUNFO0VBRUYsd0JBQUE7QVR5N1pKO0FTeDdaSTtFd0c1QkE7SXhHNkJFLHNDQUFBO0VUMjdaSjtBQUNGOztBaUhqOVpBO0VBQ0Usa0JBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7QWpIbzlaRjtBaUhsOVpFO0VBQ0UsV0FBQTtFQUNBLDhDQUFBO0VBQ0EsNmlCQUFBO0VBQ0Esc0JBQUE7RUFDQSw0QkFBQTtFQUNBLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxRQUFBO0VBQ0EsY2pHaUlpQjtFaUdoSWpCLDJCQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QWpIbzlaSjtBaUhsOVpJO0VBZEY7SUFlSSw0QkFBQTtFakhxOVpKO0FBQ0Y7QWlIajlaSTtFQUNFLCtDQUFBO0FqSG05Wk47QWlIajlaTTtFQUhGO0lBSUksMEJBQUE7RWpIbzlaTjtBQUNGOztBaUg5OFpFO0VBQ0UsZTVHMk1rQjtBTHN3WnRCOztBU3o1Wkk7RUFFSTtJd0duREUsZTVHb01ZO0VMMndacEI7QUFDRjtBU241Wk07RUFFSTtJd0cvREEsZTVHb01ZO0VMZ3hacEI7QUFDRjs7QVNwNlpJO0VBRUk7SXdHbkRFLGU1R29NWTtFTHN4WnBCO0FBQ0Y7QVM5NVpNO0VBRUk7SXdHL0RBLGU1R29NWTtFTDJ4WnBCO0FBQ0Y7O0FTLzZaSTtFQUVJO0l3R25ERSxlNUdvTVk7RUxpeVpwQjtBQUNGO0FTejZaTTtFQUVJO0l3Ry9EQSxlNUdvTVk7RUxzeVpwQjtBQUNGOztBUzE3Wkk7RUFFSTtJd0duREUsZTVHb01ZO0VMNHlacEI7QUFDRjtBU3A3Wk07RUFFSTtJd0cvREEsZTVHb01ZO0VMaXpacEI7QUFDRjs7QWlIOS9aRTtFQUNFLGdCNUcyTWtCO0FMc3padEI7O0FTejhaSTtFQUVJO0l3R25ERSxnQjVHb01ZO0VMMnpacEI7QUFDRjtBU244Wk07RUFFSTtJd0cvREEsZ0I1R29NWTtFTGcwWnBCO0FBQ0Y7O0FTcDlaSTtFQUVJO0l3R25ERSxnQjVHb01ZO0VMczBacEI7QUFDRjtBUzk4Wk07RUFFSTtJd0cvREEsZ0I1R29NWTtFTDIwWnBCO0FBQ0Y7O0FTLzlaSTtFQUVJO0l3R25ERSxnQjVHb01ZO0VMaTFacEI7QUFDRjtBU3o5Wk07RUFFSTtJd0cvREEsZ0I1R29NWTtFTHMxWnBCO0FBQ0Y7O0FTMStaSTtFQUVJO0l3R25ERSxnQjVHb01ZO0VMNDFacEI7QUFDRjtBU3ArWk07RUFFSTtJd0cvREEsZ0I1R29NWTtFTGkyWnBCO0FBQ0Y7O0FpSDlpYUU7RUFDRSxnQjVHMk1rQjtBTHMyWnRCOztBU3ovWkk7RUFFSTtJd0duREUsZ0I1R29NWTtFTDIyWnBCO0FBQ0Y7QVNuL1pNO0VBRUk7SXdHL0RBLGdCNUdvTVk7RUxnM1pwQjtBQUNGOztBU3BnYUk7RUFFSTtJd0duREUsZ0I1R29NWTtFTHMzWnBCO0FBQ0Y7QVM5L1pNO0VBRUk7SXdHL0RBLGdCNUdvTVk7RUwyM1pwQjtBQUNGOztBUy9nYUk7RUFFSTtJd0duREUsZ0I1R29NWTtFTGk0WnBCO0FBQ0Y7QVN6Z2FNO0VBRUk7SXdHL0RBLGdCNUdvTVk7RUxzNFpwQjtBQUNGOztBUzFoYUk7RUFFSTtJd0duREUsZ0I1R29NWTtFTDQ0WnBCO0FBQ0Y7QVNwaGFNO0VBRUk7SXdHL0RBLGdCNUdvTVk7RUxpNVpwQjtBQUNGOztBaUg5bGFFO0VBQ0UsZ0I1RzJNa0I7QUxzNVp0Qjs7QVN6aWFJO0VBRUk7SXdHbkRFLGdCNUdvTVk7RUwyNVpwQjtBQUNGO0FTbmlhTTtFQUVJO0l3Ry9EQSxnQjVHb01ZO0VMZzZacEI7QUFDRjs7QVNwamFJO0VBRUk7SXdHbkRFLGdCNUdvTVk7RUxzNlpwQjtBQUNGO0FTOWlhTTtFQUVJO0l3Ry9EQSxnQjVHb01ZO0VMMjZacEI7QUFDRjs7QVMvamFJO0VBRUk7SXdHbkRFLGdCNUdvTVk7RUxpN1pwQjtBQUNGO0FTemphTTtFQUVJO0l3Ry9EQSxnQjVHb01ZO0VMczdacEI7QUFDRjs7QVMxa2FJO0VBRUk7SXdHbkRFLGdCNUdvTVk7RUw0N1pwQjtBQUNGO0FTcGthTTtFQUVJO0l3Ry9EQSxnQjVHb01ZO0VMaThacEI7QUFDRjs7QWlIOW9hRTtFQUNFLGdCNUcyTWtCO0FMczhadEI7O0FTemxhSTtFQUVJO0l3R25ERSxnQjVHb01ZO0VMMjhacEI7QUFDRjtBU25sYU07RUFFSTtJd0cvREEsZ0I1R29NWTtFTGc5WnBCO0FBQ0Y7O0FTcG1hSTtFQUVJO0l3R25ERSxnQjVHb01ZO0VMczlacEI7QUFDRjtBUzlsYU07RUFFSTtJd0cvREEsZ0I1R29NWTtFTDI5WnBCO0FBQ0Y7O0FTL21hSTtFQUVJO0l3R25ERSxnQjVHb01ZO0VMaStacEI7QUFDRjtBU3ptYU07RUFFSTtJd0cvREEsZ0I1R29NWTtFTHMrWnBCO0FBQ0Y7O0FTMW5hSTtFQUVJO0l3R25ERSxnQjVHb01ZO0VMNCtacEI7QUFDRjtBU3BuYU07RUFFSTtJd0cvREEsZ0I1R29NWTtFTGkvWnBCO0FBQ0Y7O0FpSC9xYUEsK0NBQUE7QUNwSEU7RUFDRSxtQjdHaVB5QjtFNkdo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Q0EsNkJBQUE7RUFDQTtBQUZBOztBQUdBO0VBQUEsZ0tBQUE7RUFBQTtBQUFBOztBQUpGO0VBS0UsMEJBQUE7QXhLa3hsQkY7O0F3Sy93bEJBOzs7Ozs7RUFBQTtBQU9BO0U1Q2hERSxnRTRDa0RVO0U1Q2pEViwyRTRDa0RxQjtFNUNqRHJCLG1FNENrRGlCO0F4S2l4bEJuQjtBNEhqMGxCRTtFQUNFLHVFNEMrQ2U7RTVDOUNmLHdIQUNFO0E1SGswbEJOO0E0SDl6bEJFO0VBQ0UsOEQ0Q3lDYztFNUN4Q2QseUU0Q3lDeUI7RTVDeEN6QixpRTRDeUNxQjtBeEt1eGxCekI7QTRIN3psQkU7RUFDRSw4RDRDc0NjO0U1Q3JDZCx5RTRDc0N5QjtFNUNyQ3pCLGlFNENzQ3FCO0F4S3l4bEJ6QjtBNEg1emxCRTtFQUVFLCtENENrQ2U7RTVDakNmLDBFNENrQzBCO0U1Q2pDMUIsa0U0Q2tDc0I7QXhLMnhsQjFCO0E0SHp6bEJNO0VBQUEsa0dBQUE7RUFBQTtBQUFBO0E0Q2lDSjtFNUNoRUEsK0Q0Q2tFWTtFNUNqRVosMEU0Q2tFdUI7RTVDakV2QixrRTRDa0VtQjtBeEs0eGxCckI7QTRINTFsQkU7RUFDRSxzRTRDK0RpQjtFNUM5RGpCLHdIQUNFO0E1SDYxbEJOO0E0SHoxbEJFO0VBQ0UsNkQ0Q3lEZ0I7RTVDeERoQix3RTRDeUQyQjtFNUN4RDNCLGdFNEN5RHVCO0F4S2t5bEIzQjtBNEh4MWxCRTtFQUNFLDZENENzRGdCO0U1Q3JEaEIsd0U0Q3NEMkI7RTVDckQzQixnRTRDc0R1QjtBeEtveWxCM0I7QTRIdjFsQkU7RUFFRSw4RDRDa0RpQjtFNUNqRGpCLHlFNENrRDRCO0U1Q2pENUIsaUU0Q2tEd0I7QXhLc3lsQjVCO0E0SHAxbEJNO0VBQUEsa0dBQUE7RUFBQTtBQUFBOztBNENxREo7O0VBcEdBLDZDQUFBO0VBQ0EsbUJuSzJIYTtFbUsxSGIsZ0JuS3VDc0I7RW1LdEN0QixpQkFBQTtBeEsyNGxCRjtBd0t6NGxCRTs7O0VBRUUseUJ4SjBHa0I7QWhCa3lsQnRCO0F3SzV5bEJJOztFQUNFLGFBQUE7QXhLK3ls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QUNBLG1CQUFBO0ExTTJpMEJOO0EwTXhpMEJJO0VBQ0UsVUFBQTtFQUNBLG1CQUFBO0ExTTBpMEJOO0EwTXJpMEJJO0VBQ0UsVUFBQTtBMU11aTBCTjtBME1saTBCSTtFQUNFLGFBQUE7QTFNb2kwQk47QTBNaGkwQkU7O0VBRUUsc0JBQUE7RUFDQSxrQkFBQTtBMU1raTBCSjtBME0vaDBCRTs7RTdLeEtJLDhCNkswS0Y7QTFNaWkwQko7QTZCdnMwQk07RTZLb0tKOztJN0tuS00sZ0JBQUE7RTdCMnMwQk47QUFDRjtBME16aTBCRTs7RUFHRSxVQUFBO0VBQ0Esa0JBQUE7QTFNMGkwQko7QTBNeGkwQkk7O0VBQ0UsYXBNb0cyQjtBTnU4ekJqQztBME12aTBCRTtFQUNFLHNCQUFBO0ExTXlpMEJKOztBME0vaDBCQTtFQUNFLGlCQUFBO0ExTWtpMEJGO0EwTWhpMEJFO0VBQ0Usb0JBQUE7QTFNa2kwQko7QTBNaGkwQkk7RUFDRSxhQUFBO0ExTWtpMEJOOztBME03aDBCQTtFQUNFLGtCQUFBO0ExTWdpMEJGO0EwTXpoMEJJO0VBQ0UsWXJNTWM7RXFNTGQsV3JNS2M7QUxzaDBCcEI7QTBNdmgwQkU7RUFDRSxhQUFBO0ExTXloMEJKO0EwTXRoMEJFOztFQUVFLGFBQUE7QTFNd2gwQko7QTBNamgwQkk7RUFDRSxhQUFBO0ExTW1oMEJOO0EwTTlnMEJJO0VBQ0UsYUFBQTtBMU1naDBCTjtBME16ZzBCSTtFQUNFLGFBQUE7QTFNMmcwQk47QTBNeGcwQkk7RUFDRSxhQUFBO0ExTTBnMEJOO0EwTXRnMEJFO0VBQ0UsZUFBQTtBMU13ZzBCSjtBME1uZzBCTTtFQUNFLGNBQUE7RUFDQSxtQkFBQTtBMU1xZzBCUjtBME1sZzBCTTtFQUNFLGFBQUE7QTFNb2cwQlI7QTBNamcwQk07Ozs7RUFFRSxhQUFBO0ExTXFnMEJSOztBME01L3pCRTtFQUNFLHFEQUFBO0VBQ0Esc0RBQUE7QTFNKy96Qko7O0EwTTMvekJBO0VBQ0Usa0JBQUE7QTFNOC96QkY7O0EyTTV5MEJBOztFQUVFLGdCQUFBO0VBQ0EsbUJBQUE7QTNNK3kwQkY7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LGNBQUE7RS9Nb3MxQk47QUFDRjtBU3BsMUJNO0VBRUk7SXNNbkhGLGNBQUE7RS9NeXMxQk47QUFDRjtBK005czFCSTtFQUNFLGFBQUE7QS9NZ3QxQk47QVN4bTFCSTtFQUVJO0lzTXZHQSxjQUFBO0UvTWl0MUJOO0FBQ0Y7QVNqbTFCTTtFQUVJO0lzTW5IRixjQUFBO0UvTXN0MUJOO0FBQ0Y7QStNM3QxQkk7RUFDRSxhQUFBO0EvTTZ0MUJOO0FTcm4xQkk7RUFFSTtJc012R0EsY0FBQTtFL004dDFCTjtBQUNGO0FTOW0xQk07RUFFSTtJc01uSEYsY0FBQTtFL01tdTFCTjtBQUNGO0ErTXh1MUJJO0VBQ0UsYUFBQTtBL00wdTFCTjtBU2xvMUJJO0VBRUk7SXNNdkdBLGNBQUE7RS9NMnUxQk47QUFDRjtBUzNuMUJNO0VBRUk7SXNNbkhGLGNBQUE7RS9NZ3YxQk47QUFDRjtBK01ydjFCSTtFQUNFLGFBQUE7QS9NdXYxQk47QVMvbzFCSTtFQUVJO0lzTXZHQSxjQUFBO0UvTXd2MUJOO0FBQ0Y7QVN4bzFCTTtFQUVJO0lzTW5IRixjQUFBO0UvTTZ2MUJOO0FBQ0Y7QStNbHcxQkk7RUFDRSxhQUFBO0EvTW93MUJOO0FTNXAxQkk7RUFFSTtJc012R0EsY0FBQTtFL01xdzFCTjtBQUNGO0FTcnAxQk07RUFFSTtJc01uSEYsY0FBQTtFL00wdzFCTjtBQUNGO0ErTS93MUJJO0VBQ0UsYUFBQTtBL01peDFCTjtBU3pxMUJJO0VBRUk7SXNNdkdBLGNBQUE7RS9Na3gxQk47QUFDRjtBU2xxMUJNO0VBRUk7SXNNbkhGLGNBQUE7RS9NdXgxQk47QUFDRjtBK001eDFCSTtFQUNFLGFBQUE7QS9NOHgxQk47QVN0cjFCSTtFQUVJO0lzTXZHQSxjQUFBO0UvTSt4MUJOO0FBQ0Y7QVMvcTFCTTtFQUVJO0lzTW5IRixjQUFBO0UvTW95MUJOO0FBQ0Y7QStNenkxQkk7RUFDRSxhQUFBO0EvTTJ5MUJOO0FTbnMxQkk7RUFFSTtJc012R0EsY0FBQTtFL000eTFCTjtBQUNGO0FTNXIxQk07RUFFSTtJc01uSEYsY0FBQTtFL01pejFC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QVJveDVCbkI7O0FRNXc1Qlc7RWNuZFQsd0JBQUE7QXRCbXU2QkY7O0FRaHg1Qlc7RWNuZFQseUJBQUE7QXRCdXU2QkY7O0FRcHg1Qlc7RWNuZFQsZ0JBQUE7QXRCMnU2QkY7O0FReHg1Qlc7RWNuZFQseUJBQUE7QXRCK3U2QkY7O0FRNXg1Qlc7RWNuZFQseUJBQUE7QXRCbXY2QkY7O0FRaHk1Qlc7RWNuZFQsZ0JBQUE7QXRCdXY2QkY7O0FRcHk1Qlc7RWNuZFQseUJBQUE7QXRCMnY2QkY7O0FReHk1Qlc7RWNuZFQseUJBQUE7QXRCK3Y2QkY7O0FRNXk1Qlc7RWNuZFQsZ0JBQUE7QXRCbXc2QkY7O0FRaHo1Qlc7RWNuZFQseUJBQUE7QXRCdXc2QkY7O0FRcHo1Qlc7RWNuZFQseUJBQUE7QXRCMnc2QkY7O0FTcHE2Qkk7RURzVUU7SUFDRSxhQUFBO0lBQ0EsWUFBQTtJQUNBLGVBQUE7RVJrMjVCTjtFc0J6dzZCQTtJQUNFLGNBQUE7SUFDQSxlQUFBO0V0QjJ3NkJGO0VzQjd3NkJBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCK3c2QkY7RXNCang2QkE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0Qm14NkJGO0VzQnJ4NkJBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCdXg2QkY7RXNCeng2QkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEIyeDZCRjtFc0I3eDZCQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXRCK3g2QkY7RVEvMjVCSTtJY2xjSixjQUFBO0lBQ0EsV0FBQTtJQUNBLGVBQUE7RXRCb3o2QkE7RVE5MjVCUTtJY2hkUixxQkFBQTtJQUlBLHNCQUFBO0V0Qjh6NkJBO0VRbDM1QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJrMDZCQTtFUXQzNUJRO0ljaGRSLGFBQUE7SUFJQSxjQUFBO0V0QnMwNkJBO0VRMTM1QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEIwMDZCQTtFUTkzNUJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCODA2QkE7RVFsNDVCUTtJY2hkUixhQUFBO0lBSUEsY0FBQTtFdEJrMTZCQTtFUXQ0NUJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCczE2QkE7RVExNDVCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QjAxNkJBO0VROTQ1QlE7SWNoZFIsYUFBQTtJQUlBLGNBQUE7RXRCODE2QkE7RVFsNTVCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QmsyNkJBO0VRdDU1QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJzMjZCQTtFUTE1NUJRO0ljaGRSLGNBQUE7SUFJQSxlQUFBO0V0QjAyNkJBO0VReDU1Qkc7SUFBMkIsU0FBQTtFUjI1NUI5QjtFUXo1NUJHO0lBQTBCLFNBQUE7RVI0NTVCN0I7RVF6NTVCSztJQUEyQixRQURmO0VSNjU1QmpCO0VRNTU1Qks7SUFBMkIsUUFEZjtFUmc2NUJqQjtFUS81NUJLO0lBQTJCLFFBRGY7RVJtNjVCakI7RVFsNjVCSztJQUEyQixRQURmO0VSczY1QmpCO0VRcjY1Qks7SUFBMkIsUUFEZjtFUnk2NUJqQjtFUXg2NUJLO0lBQTJCLFFBRGY7RVI0NjVCakI7RVEzNjVCSztJQUEyQixRQURmO0VSKzY1QmpCO0VROTY1Qks7SUFBMkIsUUFEZjtFUms3NUJqQjtFUWo3NUJLO0lBQTJCLFFBRGY7RVJxNzVCakI7RVFwNzVCSztJQUEyQixRQURmO0VSdzc1QmpCO0VRdjc1Qks7SUFBMkIsU0FEZjtFUjI3NUJqQjtFUTE3NUJLO0lBQTJCLFNBRGY7RVI4NzVCakI7RVE3NzVCSztJQUEyQixTQURmO0VSaTg1QmpCO0VRejc1QlM7SWNuZFQsY0FBQTtFdEIrNDZCQTtFUTU3NUJTO0ljbmRULHdCQUFBO0V0Qms1NkJBO0VRLzc1QlM7SWNuZFQseUJBQUE7RXRCcTU2QkE7RVFsODVCUztJY25kVCxnQkFBQTtFdEJ3NTZCQTtFUXI4NUJTO0ljbmRULHlCQUFBO0V0QjI1NkJBO0VReDg1QlM7SWNuZFQseUJBQUE7RXRCODU2QkE7RVEzODVCUztJY25kVCxnQkFBQTtFdEJpNjZCQTtFUTk4NUJTO0ljbmRULHlCQUFBO0V0Qm82NkJBO0VRajk1QlM7SWNuZFQseUJBQUE7RXRCdTY2QkE7RVFwOTVCUztJY25kVCxnQkFBQTtFdEIwNjZCQTtFUXY5NUJTO0ljbmRULHlCQUFBO0V0QjY2NkJBO0VRMTk1QlM7SWNuZFQseUJBQUE7RXRCZzc2QkE7QUFDRjtBUzl6NkJNO0VEMFRBO0lBQ0UsYUFBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0VSdWc2Qk47RXNCOTY2QkE7SUFDRSxjQUFBO0lBQ0EsZUFBQTtFdEJnNzZCRjtFc0JsNzZCQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0Qm83NkJGO0VzQnQ3NkJBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFdEJ3NzZCRjtFc0IxNzZCQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0QjQ3NkJGO0VzQjk3NkJBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCZzg2QkY7RXNCbDg2QkE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0Qm84NkJGO0VRcGg2Qkk7SWNsY0osY0FBQTtJQUNBLFdBQUE7SUFDQSxlQUFBO0V0Qnk5NkJBO0VRbmg2QlE7SWNoZFIscUJBQUE7SUFJQSxzQkFBQTtFdEJtKzZCQTtFUXZoNkJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCdSs2QkE7RVEzaDZCUTtJY2hkUixhQUFBO0lBSUEsY0FBQTtFdEIyKzZCQTtFUS9oNkJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCKys2QkE7RVFuaTZCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0Qm0vNkJBO0VRdmk2QlE7SWNoZFIsYUFBQTtJQUlBLGNBQUE7RXRCdS82QkE7RVEzaTZCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QjIvNkJBO0VRL2k2QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEIrLzZCQTtFUW5qNkJRO0ljaGRSLGFBQUE7SUFJQSxjQUFBO0V0Qm1nN0JBO0VRdmo2QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ1ZzdCQTtFUTNqNkJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCMmc3QkE7RVEvajZCUTtJY2hkUixjQUFBO0lBSUEsZUFBQTtFdEIrZzdCQTtFUTdqNkJHO0lBQTJCLFNBQUE7RVJnazZCOUI7RVE5ajZCRztJQUEwQixTQUFBO0VSaWs2QjdCO0VROWo2Qks7SUFBMkIsUUFEZjtFUmtrNkJqQjtFUWprNkJLO0lBQTJCLFFBRGY7RVJxazZCakI7RVFwazZCSztJQUEyQixRQURmO0VSd2s2QmpCO0VRdms2Qks7SUFBMkIsUUFEZjtFUjJrNkJqQjtFUTFrNkJLO0lBQTJCLFFBRGY7RVI4azZCakI7RVE3azZCSztJQUEyQixRQURmO0VSaWw2QmpCO0VRaGw2Qks7SUFBMkIsUUFEZjtFUm9sNkJqQjtFUW5sNkJLO0lBQTJCLFFBRGY7RVJ1bDZCakI7RVF0bDZCSztJQUEyQixRQURmO0VSMGw2QmpCO0VRemw2Qks7SUFBMkIsUUFEZjtFUjZsNkJqQjtFUTVsNkJLO0lBQTJCLFNBRGY7RVJnbTZCakI7RVEvbDZCSztJQUEyQixTQURmO0VSbW02QmpCO0VRbG02Qks7SUFBMkIsU0FEZjtFUnNtNkJqQjtFUTlsNkJTO0ljbmRULGNBQUE7RXRCb2o3QkE7RVFqbTZCUztJY25kVCx3QkFBQTtFdEJ1ajdCQTtFUXBtNkJTO0ljbmRULHlCQUFBO0V0QjBqN0JBO0VRdm02QlM7SWNuZFQsZ0JBQUE7RXRCNmo3QkE7RVExbTZCUztJY25kVCx5QkFBQTtFdEJnazdCQTtFUTdtNkJTO0ljbmRULHlCQUFBO0V0Qm1rN0JBO0VRaG42QlM7SWNuZFQsZ0JBQUE7RXRCc2s3QkE7RVFubjZCUztJY25kVCx5QkFBQTtFdEJ5azdCQTtFUXRuNkJTO0ljbmRULHlCQUFBO0V0QjRrN0JBO0VRem42QlM7SWNuZFQsZ0JBQUE7RXRCK2s3QkE7RVE1bjZCUztJY25kVCx5QkFBQTtFdEJrbDdCQTtFUS9uNkJTO0ljbmRULHlCQUFBO0V0QnFsN0JBO0FBQ0Y7QVMvKzZCSTtFRHNVRTtJQUNFLGFBQUE7SUFDQSxZQUFBO0lBQ0EsZUFBQTtFUjRxNkJOO0VzQm5sN0JBO0lBQ0UsY0FBQTtJQUNBLGVBQUE7RXRCcWw3QkY7RXNCdmw3QkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJ5bDdCRjtFc0IzbDdCQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXRCNmw3QkY7RXNCL2w3QkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJpbTdCRjtFc0JubTdCQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0QnFtN0JGO0VzQnZtN0JBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFdEJ5bTdCRjtFUXpyNkJJO0ljbGNKLGNBQUE7SUFDQSxXQUFBO0lBQ0EsZUFBQTtFdEI4bjdCQTtFUXhyNkJRO0ljaGRSLHFCQUFBO0lBSUEsc0JBQUE7RXRCd283QkE7RVE1cjZCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QjRvN0JBO0VRaHM2QlE7SWNoZFIsYUFBQTtJQUlBLGNBQUE7RXRCZ3A3QkE7RVFwczZCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0Qm9wN0JBO0VReHM2QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ3cDdCQTtFUTVzNkJRO0ljaGRSLGFBQUE7SUFJQSxjQUFBO0V0QjRwN0JBO0VRaHQ2QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJncTdCQTtFUXB0NkJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCb3E3QkE7RVF4dDZCUTtJY2hkUixhQUFBO0lBSUEsY0FBQTtFdEJ3cTdCQTtFUTV0NkJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCNHE3QkE7RVFodTZCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QmdyN0JBO0VRcHU2QlE7SWNoZFIsY0FBQTtJQUlBLGVBQUE7RXRCb3I3QkE7RVFsdTZCRztJQUEyQixTQUFBO0VScXU2QjlCO0VRbnU2Qkc7SUFBMEIsU0FBQTtFUnN1NkI3QjtFUW51NkJLO0lBQTJCLFFBRGY7RVJ1dTZCakI7RVF0dTZCSztJQUEyQixRQURmO0VSMHU2QmpCO0VRenU2Qks7SUFBMkIsUUFEZjtFUjZ1NkJqQjtFUTV1NkJLO0lBQTJCLFFBRGY7RVJndjZCakI7RVEvdTZCSztJQUEyQixRQURmO0VSbXY2QmpCO0VRbHY2Qks7SUFBMkIsUUFEZjtFUnN2NkJqQjtFUXJ2NkJLO0lBQTJCLFFBRGY7RVJ5djZCakI7RVF4djZCSztJQUEyQixRQURmO0VSNHY2QmpCO0VRM3Y2Qks7SUFBMkIsUUFEZjtFUit2NkJqQjtFUTl2NkJLO0lBQTJCLFFBRGY7RVJrdzZCakI7RVFqdzZCSztJQUEyQixTQURmO0VScXc2QmpCO0VRcHc2Qks7SUFBMkIsU0FEZjtFUnd3NkJqQjtFUXZ3NkJLO0lBQTJCLFNBRGY7RVIydzZCakI7RVFudzZCUztJY25kVCxjQUFBO0V0Qnl0N0JBO0VRdHc2QlM7SWNuZFQsd0JBQUE7RXRCNHQ3QkE7RVF6dzZCUztJY25kVCx5QkFBQTtFdEIrdDdCQTtFUTV3NkJTO0ljbmRULGdCQUFBO0V0Qmt1N0JBO0VRL3c2QlM7SWNuZFQseUJBQUE7RXRCcXU3QkE7RVFseDZCUztJY25kVCx5QkFBQTtFdEJ3dTdCQTtFUXJ4NkJTO0ljbmRULGdCQUFBO0V0QjJ1N0JBO0VReHg2QlM7SWNuZFQseUJBQUE7RXRCOHU3QkE7RVEzeDZCUztJY25kVCx5QkFBQTtFdEJpdjdCQTtFUTl4NkJTO0ljbmRULGdCQUFBO0V0Qm92N0JBO0VRank2QlM7SWNuZFQseUJBQUE7RXRCdXY3QkE7RVFweTZCUztJY25kVCx5QkFBQTtFdEIwdjdCQTtBQUNGO0FTeG83Qk07RUQwVEE7SUFDRSxhQUFBO0lBQ0EsWUFBQTtJQUNBLGVBQUE7RVJpMTZCTjtFc0J4djdCQTtJQUNFLGNBQUE7SUFDQSxlQUFBO0V0QjB2N0JGO0VzQjV2N0JBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCOHY3QkY7RXNCaHc3QkE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0Qmt3N0JGO0VzQnB3N0JBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCc3c3QkY7RXNCeHc3QkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEIwdzdCRjtFc0I1dzdCQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXRCOHc3QkY7RVE5MTZCSTtJY2xjSixjQUFBO0lBQ0EsV0FBQTtJQUNBLGVBQUE7RXRCbXk3QkE7RVE3MTZCUTtJY2hkUixxQkFBQTtJQUlBLHNCQUFBO0V0QjZ5N0JBO0VRajI2QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJpejdCQTtFUXIyNkJRO0ljaGRSLGFBQUE7SUFJQSxjQUFBO0V0QnF6N0JBO0VRejI2QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ5ejdCQTtFUTcyNkJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCNno3QkE7RVFqMzZCUTtJY2hkUixhQUFBO0lBSUEsY0FBQTtFdEJpMDdCQTtFUXIzNkJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCcTA3QkE7RVF6MzZCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QnkwN0JBO0VRNzM2QlE7SWNoZFIsYUFBQTtJQUlBLGNBQUE7RXRCNjA3QkE7RVFqNDZCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QmkxN0JBO0VRcjQ2QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJxMTdCQTtFUXo0NkJRO0ljaGRSLGNBQUE7SUFJQSxlQUFBO0V0QnkxN0JBO0VRdjQ2Qkc7SUFBMkIsU0FBQTtFUjA0NkI5QjtFUXg0NkJHO0lBQTBCLFNBQUE7RVIyNDZCN0I7RVF4NDZCSztJQUEyQixRQURmO0VSNDQ2QmpCO0VRMzQ2Qks7SUFBMkIsUUFEZjtFUis0NkJqQjtFUTk0NkJLO0lBQTJCLFFBRGY7RVJrNTZCakI7RVFqNTZCSztJQUEyQixRQURmO0VScTU2QmpCO0VRcDU2Qks7SUFBMkIsUUFEZjtFUnc1NkJqQjtFUXY1NkJLO0lBQTJCLFFBRGY7RVIyNTZCakI7RVExNTZCSztJQUEyQixRQURmO0VSODU2QmpCO0VRNzU2Qks7SUFBMkIsUUFEZjtFUmk2NkJqQjtFUWg2NkJLO0lBQTJCLFFBRGY7RVJvNjZCakI7RVFuNjZCSztJQUEyQixRQURmO0VSdTY2QmpCO0VRdDY2Qks7SUFBMkIsU0FEZjtFUjA2NkJqQjtFUXo2NkJLO0lBQTJCLFNBRGY7RVI2NjZCakI7RVE1NjZCSztJQUEyQixTQURmO0VSZzc2QmpCO0VReDY2QlM7SWNuZFQsY0FBQTtFdEI4MzdCQTtFUTM2NkJTO0ljbmRULHdCQUFBO0V0Qmk0N0JBO0VROTY2QlM7SWNuZFQseUJBQUE7RXRCbzQ3QkE7RVFqNzZCUztJY25kVCxnQkFBQTtFdEJ1NDdCQTtFUXA3NkJTO0ljbmRULHlCQUFBO0V0QjA0N0JBO0VRdjc2QlM7SWNuZFQseUJBQUE7RXRCNjQ3QkE7RVExNzZCUztJY25kVCxnQkFBQTtFdEJnNTdCQTtFUTc3NkJTO0ljbmRULHlCQUFBO0V0Qm01N0JBO0VRaDg2QlM7SWNuZFQseUJBQUE7RXRCczU3QkE7RVFuODZCUztJY25kVCxnQkFBQTtFdEJ5NTdCQTtFUXQ4NkJTO0ljbmRULHlCQUFBO0V0QjQ1N0JBO0VRejg2QlM7SWNuZFQseUJBQUE7RXRCKzU3QkE7QUFDRjtBU3p6N0JJO0VEc1VFO0lBQ0UsYUFBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0VScy82Qk47RXNCNzU3QkE7SUFDRSxjQUFBO0lBQ0EsZUFBQTtFdEIrNTdCRjtFc0JqNjdCQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0Qm02N0JGO0VzQnI2N0JBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFdEJ1NjdCRjtFc0J6NjdCQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0QjI2N0JGO0VzQjc2N0JBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCKzY3QkY7RXNCajc3QkE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0Qm03N0JGO0VRbmc3Qkk7SWNsY0osY0FBQTtJQUNBLFdBQUE7SUFDQSxlQUFBO0V0Qnc4N0JBO0VRbGc3QlE7SWNoZFIscUJBQUE7SUFJQSxzQkFBQTtFdEJrOTdCQTtFUXRnN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCczk3QkE7RVExZzdCUTtJY2hkUixhQUFBO0lBSUEsY0FBQTtFdEIwOTdCQTtFUTlnN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCODk3QkE7RVFsaDdCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QmsrN0JBO0VRdGg3QlE7SWNoZFIsYUFBQTtJQUlBLGNBQUE7RXRCcys3QkE7RVExaDdCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QjArN0JBO0VROWg3QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEI4KzdCQTtFUWxpN0JRO0ljaGRSLGFBQUE7SUFJQSxjQUFBO0V0QmsvN0JBO0VRdGk3QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJzLzdCQTtFUTFpN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCMC83QkE7RVE5aTdCUTtJY2hkUixjQUFBO0lBSUEsZUFBQTtFdEI4LzdCQTtFUTVpN0JHO0lBQTJCLFNBQUE7RVIraTdCOUI7RVE3aTdCRztJQUEwQixTQUFBO0VSZ2o3QjdCO0VRN2k3Qks7SUFBMkIsUUFEZjtFUmlqN0JqQjtFUWhqN0JLO0lBQTJCLFFBRGY7RVJvajdCakI7RVFuajdCSztJQUEyQixRQURmO0VSdWo3QmpCO0VRdGo3Qks7SUFBMkIsUUFEZjtFUjBqN0JqQjtFUXpqN0JLO0lBQTJCLFFBRGY7RVI2ajdCakI7RVE1ajdCSztJQUEyQixRQURmO0VSZ2s3QmpCO0VRL2o3Qks7SUFBMkIsUUFEZjtFUm1rN0JqQjtFUWxrN0JLO0lBQTJCLFFBRGY7RVJzazdCakI7RVFyazdCSztJQUEyQixRQURmO0VSeWs3QmpCO0VReGs3Qks7SUFBMkIsUUFEZjtFUjRrN0JqQjtFUTNrN0JLO0lBQTJCLFNBRGY7RVIrazdCakI7RVE5azdCSztJQUEyQixTQURmO0VSa2w3QmpCO0VRamw3Qks7SUFBMkIsU0FEZjtFUnFsN0JqQjtFUTdrN0JTO0ljbmRULGNBQUE7RXRCbWk4QkE7RVFobDdCUztJY25kVCx3QkFBQTtFdEJzaThCQTtFUW5sN0JTO0ljbmRULHlCQUFBO0V0QnlpOEJBO0VRdGw3QlM7SWNuZFQsZ0JBQUE7RXRCNGk4QkE7RVF6bDdCUztJY25kVCx5QkFBQTtFdEIraThCQTtFUTVsN0JTO0ljbmRULHlCQUFBO0V0QmtqOEJBO0VRL2w3QlM7SWNuZFQsZ0JBQUE7RXRCcWo4QkE7RVFsbTdCUztJY25kVCx5QkFBQTtFdEJ3ajhCQTtFUXJtN0JTO0ljbmRULHlCQUFBO0V0QjJqOEJBO0VReG03QlM7SWNuZFQsZ0JBQUE7RXRCOGo4QkE7RVEzbTdCUztJY25kVCx5QkFBQTtFdEJpazhCQTtFUTltN0JTO0ljbmRULHlCQUFBO0V0Qm9rOEJBO0FBQ0Y7QVNsOTdCTTtFRDBUQTtJQUNFLGFBQUE7SUFDQSxZQUFBO0lBQ0EsZUFBQTtFUjJwN0JOO0VzQmxrOEJBO0lBQ0UsY0FBQTtJQUNBLGVBQUE7RXRCb2s4QkY7RXNCdGs4QkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJ3azhCRjtFc0IxazhCQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXRCNGs4QkY7RXNCOWs4QkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJnbDhCRjtFc0JsbDhCQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0Qm9sOEJGO0VzQnRsOEJBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFdEJ3bDhCRjtFUXhxN0JJO0ljbGNKLGNBQUE7SUFDQSxXQUFBO0lBQ0EsZUFBQTtFdEI2bThCQTtFUXZxN0JRO0ljaGRSLHFCQUFBO0lBSUEsc0JBQUE7RXRCdW44QkE7RVEzcTdCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QjJuOEJBO0VRL3E3QlE7SWNoZFIsYUFBQTtJQUlBLGNBQUE7RXRCK244QkE7RVFucjdCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0Qm1vOEJBO0VRdnI3QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ1bzhCQTtFUTNyN0JRO0ljaGRSLGFBQUE7SUFJQSxjQUFBO0V0QjJvOEJBO0VRL3I3QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEIrbzhCQTtFUW5zN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCbXA4QkE7RVF2czdCUTtJY2hkUixhQUFBO0lBSUEsY0FBQTtFdEJ1cDhCQTtFUTNzN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCMnA4QkE7RVEvczdCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QitwOEJBO0VRbnQ3QlE7SWNoZFIsY0FBQTtJQUlBLGVBQUE7RXRCbXE4QkE7RVFqdDdCRztJQUEyQixTQUFBO0VSb3Q3QjlCO0VRbHQ3Qkc7SUFBMEIsU0FBQTtFUnF0N0I3QjtFUWx0N0JLO0lBQTJCLFFBRGY7RVJzdDdCakI7RVFydDdCSztJQUEyQixRQURmO0VSeXQ3QmpCO0VReHQ3Qks7SUFBMkIsUUFEZjtFUjR0N0JqQjtFUTN0N0JLO0lBQTJCLFFBRGY7RVIrdDdCakI7RVE5dDdCSztJQUEyQixRQURmO0VSa3U3QmpCO0VRanU3Qks7SUFBMkIsUUFEZjtFUnF1N0JqQjtFUXB1N0JLO0lBQTJCLFFBRGY7RVJ3dTdCakI7RVF2dTdCSztJQUEyQixRQURmO0VSMnU3QmpCO0VRMXU3Qks7SUFBMkIsUUFEZjtFUjh1N0JqQjtFUTd1N0JLO0lBQTJCLFFBRGY7RVJpdjdCakI7RVFodjdCSztJQUEyQixTQURmO0VSb3Y3QmpCO0VRbnY3Qks7SUFBMkIsU0FEZjtFUnV2N0JqQjtFUXR2N0JLO0lBQTJCLFNBRGY7RVIwdjdCakI7RVFsdjdCUztJY25kVCxjQUFBO0V0QndzOEJBO0VRcnY3QlM7SWNuZFQsd0JBQUE7RXRCMnM4QkE7RVF4djdCUztJY25kVCx5QkFBQTtFdEI4czhCQTtFUTN2N0JTO0ljbmRULGdCQUFBO0V0Qml0OEJBO0VROXY3QlM7SWNuZFQseUJBQUE7RXRCb3Q4QkE7RVFqdzdCUztJY25kVCx5QkFBQTtFdEJ1dDhCQTtFUXB3N0JTO0ljbmRULGdCQUFBO0V0QjB0OEJBO0VRdnc3QlM7SWNuZFQseUJBQUE7RXRCNnQ4QkE7RVExdzdCUztJY25kVCx5QkFBQTtFdEJndThCQTtFUTd3N0JTO0ljbmRULGdCQUFBO0V0Qm11OEJBO0VRaHg3QlM7SWNuZFQseUJBQUE7RXRCc3U4QkE7RVFueDdCUztJY25kVCx5QkFBQTtFdEJ5dThCQTtBQUNGO0FTbm84Qkk7RURzVUU7SUFDRSxhQUFBO0lBQ0EsWUFBQTtJQUNBLGVBQUE7RVJnMDdCTjtFc0J2dThCQTtJQUNFLGNBQUE7SUFDQSxlQUFBO0V0Qnl1OEJGO0VzQjN1OEJBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCNnU4QkY7RXNCL3U4QkE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0Qml2OEJGO0VzQm52OEJBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCcXY4QkY7RXNCdnY4QkE7SUFDRSxhQUFBO0lBQ0EsY0FBQTtFdEJ5djhCRjtFc0IzdjhCQTtJQUNFLHdCQUFBO0lBQ0EseUJBQUE7RXRCNnY4QkY7RVE3MDdCSTtJY2xjSixjQUFBO0lBQ0EsV0FBQTtJQUNBLGVBQUE7RXRCa3g4QkE7RVE1MDdCUTtJY2hkUixxQkFBQTtJQUlBLHNCQUFBO0V0QjR4OEJBO0VRaDE3QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJneThCQTtFUXAxN0JRO0ljaGRSLGFBQUE7SUFJQSxjQUFBO0V0Qm95OEJBO0VReDE3QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJ3eThCQTtFUTUxN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCNHk4QkE7RVFoMjdCUTtJY2hkUixhQUFBO0lBSUEsY0FBQTtFdEJnejhCQTtFUXAyN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCb3o4QkE7RVF4MjdCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0Qnd6OEJBO0VRNTI3QlE7SWNoZFIsYUFBQTtJQUlBLGNBQUE7RXRCNHo4QkE7RVFoMzdCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0QmcwOEJBO0VRcDM3QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJvMDhCQTtFUXgzN0JRO0ljaGRSLGNBQUE7SUFJQSxlQUFBO0V0QncwOEJBO0VRdDM3Qkc7SUFBMkIsU0FBQTtFUnkzN0I5QjtFUXYzN0JHO0lBQTBCLFNBQUE7RVIwMzdCN0I7RVF2MzdCSztJQUEyQixRQURmO0VSMjM3QmpCO0VRMTM3Qks7SUFBMkIsUUFEZjtFUjgzN0JqQjtFUTczN0JLO0lBQTJCLFFBRGY7RVJpNDdCakI7RVFoNDdCSztJQUEyQixRQURmO0VSbzQ3QmpCO0VRbjQ3Qks7SUFBMkIsUUFEZjtFUnU0N0JqQjtFUXQ0N0JLO0lBQTJCLFFBRGY7RVIwNDdCakI7RVF6NDdCSztJQUEyQixRQURmO0VSNjQ3QmpCO0VRNTQ3Qks7SUFBMkIsUUFEZjtFUmc1N0JqQjtFUS80N0JLO0lBQTJCLFFBRGY7RVJtNTdCakI7RVFsNTdCSztJQUEyQixRQURmO0VSczU3QmpCO0VRcjU3Qks7SUFBMkIsU0FEZjtFUnk1N0JqQjtFUXg1N0JLO0lBQTJCLFNBRGY7RVI0NTdCakI7RVEzNTdCSztJQUEyQixTQURmO0VSKzU3QmpCO0VRdjU3QlM7SWNuZFQsY0FBQTtFdEI2MjhCQTtFUTE1N0JTO0ljbmRULHdCQUFBO0V0QmczOEJBO0VRNzU3QlM7SWNuZFQseUJBQUE7RXRCbTM4QkE7RVFoNjdCUztJY25kVCxnQkFBQTtFdEJzMzhCQTtFUW42N0JTO0ljbmRULHlCQUFBO0V0QnkzOEJBO0VRdDY3QlM7SWNuZFQseUJBQUE7RXRCNDM4QkE7RVF6NjdCUztJY25kVCxnQkFBQTtFdEIrMzhCQTtFUTU2N0JTO0ljbmRULHlCQUFBO0V0Qms0OEJBO0VRLzY3QlM7SWNuZFQseUJBQUE7RXRCcTQ4QkE7RVFsNzdCUztJY25kVCxnQkFBQTtFdEJ3NDhCQTtFUXI3N0JTO0ljbmRULHlCQUFBO0V0QjI0OEJBO0VReDc3QlM7SWNuZFQseUJBQUE7RXRCODQ4QkE7QUFDRjtBUzV4OEJNO0VEMFRBO0lBQ0UsYUFBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0VScSs3Qk47RXNCNTQ4QkE7SUFDRSxjQUFBO0lBQ0EsZUFBQTtFdEI4NDhCRjtFc0JoNThCQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0Qms1OEJGO0VzQnA1OEJBO0lBQ0Usd0JBQUE7SUFDQSx5QkFBQTtFdEJzNThCRjtFc0J4NThCQTtJQUNFLGFBQUE7SUFDQSxjQUFBO0V0QjA1OEJGO0VzQjU1OEJBO0lBQ0UsYUFBQTtJQUNBLGNBQUE7RXRCODU4QkY7RXNCaDY4QkE7SUFDRSx3QkFBQTtJQUNBLHlCQUFBO0V0Qms2OEJGO0VRbC83Qkk7SWNsY0osY0FBQTtJQUNBLFdBQUE7SUFDQSxlQUFBO0V0QnU3OEJBO0VRai83QlE7SWNoZFIscUJBQUE7SUFJQSxzQkFBQTtFdEJpODhCQTtFUXIvN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCcTg4QkE7RVF6LzdCUTtJY2hkUixhQUFBO0lBSUEsY0FBQTtFdEJ5ODhCQTtFUTcvN0JRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCNjg4QkE7RVFqZzhCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0Qmk5OEJBO0VRcmc4QlE7SWNoZFIsYUFBQTtJQUlBLGNBQUE7RXRCcTk4QkE7RVF6ZzhCUTtJY2hkUixzQkFBQTtJQUlBLHVCQUFBO0V0Qnk5OEJBO0VRN2c4QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEI2OThCQTtFUWpoOEJRO0ljaGRSLGFBQUE7SUFJQSxjQUFBO0V0QmkrOEJBO0VRcmg4QlE7SWNoZFIsc0JBQUE7SUFJQSx1QkFBQTtFdEJxKzhCQTtFUXpoOEJRO0ljaGRSLHNCQUFBO0lBSUEsdUJBQUE7RXRCeSs4QkE7RVE3aDhCUTtJY2hkUixjQUFBO0lBSUEsZUFBQTtFdEI2KzhCQTtFUTNoOEJHO0lBQTJCLFNBQUE7RVI4aDhCOUI7RVE1aDhCRztJQUEwQixTQUFBO0VSK2g4QjdCO0VRNWg4Qks7SUFBMkIsUUFEZjtFUmdpOEJqQjtFUS9oOEJLO0lBQTJCLFFBRGY7RVJtaThCakI7RVFsaThCSztJQUEyQixRQURmO0VSc2k4QmpCO0VRcmk4Qks7SUFBMkIsUUFEZjtFUnlpOEJqQjtFUXhpOEJLO0lBQTJCLFFBRGY7RVI0aThCakI7RVEzaThCSztJQUEyQixRQURmO0VSK2k4QmpCO0VROWk4Qks7SUFBMkIsUUFEZjtFUmtqOEJqQjtFUWpqOEJLO0lBQTJCLFFBRGY7RVJxajhCakI7RVFwajhCSztJQUEyQixRQURmO0VSd2o4QmpCO0VRdmo4Qks7SUFBMkIsUUFEZjtFUjJqOEJqQjtFUTFqOEJLO0lBQTJCLFNBRGY7RVI4ajhCakI7RVE3ajhCSztJQUEyQixTQURmO0VSaWs4QmpCO0VRaGs4Qks7SUFBMkIsU0FEZjtFUm9rOEJqQjtFUTVq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OztBbU81dS9CQTtFQUNFLGdCQUFBO0FuTyt1L0JGOztBb09yeC9CQTs7RUFFRSxXQUFBO0VBQ0EsaUI5TnVEYTtFOE50RGIsa0JBQUE7QXBPd3gvQkY7QW9PcngvQkk7O0U1TitPRixXNE45T3lCO0U1TitPekIsWTROL095QjtFNU5nUHpCLGlCNE5oUHFDO0FwTzB4L0J2QztBb08zeC9CSTs7RTVOK09GLFc0TjlPeUI7RTVOK096QixZNE4vT3lCO0U1TmdQekIsaUI0TmhQcUM7QXBPZ3kvQnZDO0FvT2p5L0JJOztFNU4rT0YsVzROOU95QjtFNU4rT3pCLFk0Ti9PeUI7RTVOZ1B6QixpQjROaFBxQztBcE9zeS9CdkM7QW9PdnkvQkk7O0U1TitPRixXNE45T3lCO0U1TitPekIsWTROL095QjtFNU5nUHpCLGlCNE5oUHFDO0FwTzR5L0J2QztBb083eS9CSTs7RTVOK09GLFc0TjlPeUI7RTVOK096QixZNE4vT3lCO0U1TmdQekIsaUI0TmhQcUM7QXBPa3ovQnZDO0FvT256L0JJOztFNU4rT0YsVzROOU95QjtFNU4rT3pCLFk0Ti9PeUI7RTVOZ1B6QixpQjROaFBxQztBcE93ei9CdkM7QW9PenovQkk7O0U1TitPRixXNE45T3lCO0U1TitPekIsWTROL095QjtFNU5nUHpCLGtCNE5oUHFDO0FwTzh6L0J2QztBb08vei9CSTs7RTVOK09GLFc0TjlPeUI7RTVOK096QixZNE4vT3lCO0U1TmdQekIsa0I0TmhQcUM7QXBPbzAvQnZDO0FvT3IwL0JJOztFNU4rT0YsVzROOU95QjtFNU4rT3pCLFk0Ti9PeUI7RTVOZ1B6QixrQjROaFBxQztBcE8wMC9CdkM7QW9PMzAvQkk7O0U1TitPRixXNE45T3lCO0U1TitPekIsWTROL095QjtFNU5nUHpCLGtCNE5oUHFDO0FwT2cxL0J2QztBb09qMS9CSTs7RTVOK09GLFc0TjlPeUI7RTVOK096QixZNE4vT3lCO0U1TmdQekIsa0I0TmhQcUM7QXBPczEvQnZDO0FvT3YxL0JJOztFNU4rT0YsWTROOU95QjtFNU4rT3pCLGE0Ti9PeUI7RTVOZ1B6QixrQjROaFBxQztBcE80MS9C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LGlDQUFBO0VBQ0EsdUNBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0VBR0EsV0FBQTtFQUNBLFVBQUE7RUFDQSx3Q0FBQTtFQUNBO0FBYkE7O0FDamhCRjtFQUNFLG9DQUFBO0VBQ0Esb0JBQUE7QXhPMnJoQ0Y7O0F5Ty9yaENBO0VBQ0UsV25PK0hXO0VtTzlIWCxZbk84SFc7RW1PN0hYLFdBQUE7RUFDQSxpQkFBQTtFQUNBLGtCbk93Sm9CO0VtT3ZKcEIsa0JBQUE7QXpPa3NoQ0Y7O0F5Ty9yaENBO0VBQ0UseUJ6TmlHbUI7RXlOaEduQixxQnpOa0dtQjtBaEJnbWhDckI7QXlPaHNoQ0U7RUFDRSx5QnpOK0ZpQjtFeU45RmpCLHFCek5nR2lCO0FoQmttaENyQjs7QXlPOXJoQ0E7RUFDRSx5QnpOb0ZtQjtFeU5uRm5CLHFCek5zRm1CO0FoQjJtaENyQjtBeU8vcmhDRTtFQUNFLHlCek5rRmlCO0V5TmpGakIscUJ6Tm9GaUI7QWhCNm1oQ3JCOztBeU83cmhDQTtFQUNFLHlCek40SGlCO0V5TjNIakIscUJ6TjZIaUI7QWhCbWtoQ25CO0F5TzlyaENFO0VBQ0UsV0FBQTtFQUNBLHNCQUFBO0VBQ0EsZ0J6TjRFaUI7RXlOM0VqQix3QkFBQTtFQUNBLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtBek9nc2hDSjtBeU83cmhDRTtFQUNFLHlCek4rR2U7RXlOOUdmLHFCek5nSGU7QWhCK2toQ25COztBeU8zcmhDQTtFQUNFLHlCek5pRXFCO0V5TmhFckIscUJ6Tm1FcUI7QWhCMm5oQ3ZCO0F5TzVyaENFO0VBQ0UseUJ6TjhEbUI7RXlON0RuQixxQnpObUVtQjtBaEIybmhDdkI7O0F5TzFyaENBO0VBQ0Usc0J6Tm1EbUI7RXlObERuQixxQnpOeURxQjtBaEJvb2hDdkI7QXlPM3JoQ0U7RUFDRSxzQnpOK0NpQjtFeU45Q2pCLHFCek55RG1CO0FoQm9vaEN2Qjs7QXlPeHJoQ0U7RUFDRSxVQUFBO0VBQ0EsV0FBQTtFQUNBLHNCQUFBO0VBQ0EseUJ6TnNEa0I7RXlOckRsQixrQkFBQTtFQUNB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S2lCO0V3Ty9KakIsdUJ4TytKaUI7RXdPOUpqQixtQm5Qa015QjtBTDJ5akM3QjtBd1AzK2pDSTtFQUNFLFNBQUE7RUFDQSxZbFB3RVM7RWtQdEVULG1CeE93SmU7RXdPdkpmLHNCeE91SmU7RXdPdEpmLG1CeE91SmU7RXdPdEpmLG9CeE9zSmU7RXdPckpmLHVCeE9tSmU7RXdPbEpmLGlCeE80SGM7QWhCZzNqQ3BCO0F3UHorakNRO0VBQUEsa0dBQUE7RUFBQSxhQUFBO0VBQ0EsaURBQUE7RUFDQTtBQUZBO0FBSUE7RUFDRSxjQUFBO0F4UDQrakNWO0F3UHgrakNVO0VBQUE7QUFBQTtBQUlKO0VBQ0Usb0JBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0F4UHkrakNSO0F3UHIrakNRO0VBQUE7QUFBQTtBQUdGO0VBQ0UscUJ4T3dIYTtFd092SGIsd0JBQUE7QXhQdStqQ1I7QXdQcitqQ1E7RUFDRSxvQkFBQTtFQUNBLFdBQUE7QXhQdStqQ1Y7QXdQbitqQ007RUFDRSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxxQnhPNEdhO0FoQnkzakNyQjs7QVN0NGpDRTtFK094RkE7SUFDRSxnQkFBQTtJQUNBLHVCQUFBO0V4UGsrakNGO0FBQ0Y7QVNqNGpDSTtFK09wR0Y7SUFDRSxnQkFBQTtJQUNBLHVCQUFBO0V4UHcrakNGO0FBQ0Y7QXlQcGxrQ0E7RUFDRSx3QkFBQTtBelBzbGtDRjs7QTBQeGxrQ0E7O0VBQUE7QUNBQTtFQUdFLDBCQUFBO0EzUDRsa0NGOztBMlB6bGtDQTtFQUNFLGFwUGVnQjtBUDZra0NsQjtBU3A4akNJO0VBRUk7SWtQdkpKLFk3SlZjO0U5RnVta0NoQjtBQUNGO0FTNzdqQ007RUFFSTtJa1BuS04sWTdKVmM7RTlGNG1rQ2hCO0FBQ0Y7O0EyUDdsa0NBO0VBQ0UsWXJQZ0VvQjtFcVAvRHBCLFlwUEttQjtBUDJsa0NyQjtBMlA1bGtDTTtFQUNFLDRCQVRjO0VBVWQsUUFBQTtBM1A4bGtDUjs7QTJQeGxrQ0E7RUFFRSxpQkFBQTtBM1AwbGtDRjtBMlB2bGtDRTtFQUNFLGdGQUFBO0EzUHlsa0NK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Q0UseURBQUE7QW5RaTBsQ0o7QW1RaDBsQ0k7RUFBUSxhN1AwV087QU55OWtDbkI7QW1RaDBsQ0U7RUFDRSx5REFBQTtBblFrMGxDSjtBbVFqMGxDSTtFQUFRLGE3UHFXTztBTis5a0NuQjtBbVFqMGxDRTtFQUNFLHlEQUFBO0FuUW0wbENKO0FtUWwwbENJO0VBQVEsYTdQaVdNO0FObytrQ2xCO0FtUWwwbENFO0VBQ0UseURBQUE7QW5RbzBsQ0o7QW1RbjBsQ0k7RUFBUSxhN1A0Vk07QU4wK2tDbEI7QW1RbjBsQ0U7RUFDRSx5QkFBQTtBblFxMGxDSjtBbVFwMGxDSTtFQUFRLGE3UHdWSztBTisra0NqQjtBbVFuMGxDSTtFQUFRLGFuUGtGVztBaEJvdmxDdkI7O0FtUWowbENFO0VBQ0UsYzdQNFVlO0FOdy9rQ25CO0FtUWowbENFO0VBQ0UsYzdQd1VlO0FOMi9rQ25CO0FtUWgwbENFO0VBQ0UsYzdQcVVjO0FONi9rQ2xCO0FtUS96bENFO0VBQ0UsYzdQaVVjO0FOZ2dsQ2xCO0FtUTl6bENFO0VBQ0UsYzdQOFRhO0FOa2dsQ2pCOztBbVE1emxDQTtFQUNFLFdBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtBblEremxDRjs7QW1ReHpsQ0E7O0VBRUUsd0NBQUE7RUFDQSx1Q0FBQTtFQUVBLHdCQUFBO0VBQUEsZ0NBQUE7RUFDQSwwQkFBQTtFQUVBLGdCQUFBO0FuUXl6bENGOztBbVF0emxDQTs7RUFFRSxhQUFBO0VBQ0EsVUFBQTtBblF5emxDRjs7QW1RdHpsQ0E7O0VBRUUsbUJBQUE7QW5ReXpsQ0Y7O0FvUW41bENJO0VBQ0UsZTlQMEhTO0U4UHpIVCxpQkFBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtBcFFzNWxDTjs7QW9RajVsQ0E7RUFDRSxpQjlQOEplO0FOc3ZsQ2pCO0FvUWo1bENFO0VBQ0UsZ0I5UCtFa0I7RThQOUVsQixrQkFBQTtBcFFtNWxDSjs7QW9ROTRsQ0U7RUFDRSxjQUFBO0FwUWk1bENKOztBcVF4NmxDRTtFQUNFLHNCclA4R2lCO0VxUDdHakIsMFAvUGtQVztFK1BqUFgsZS9Qd0ZXO0Ur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O0UyUTl2bUNBO0lBQ0Usd0JBQUE7RTNRZ3dtQ0Y7RTJRN3ZtQ0E7SUFDRSxjQUFBO0UzUSt2bUNGO0UyUTV2bUNBOztJQUVFLHVCQUFBO0lBQ0EsNEJBQUE7RTNROHZtQ0Y7RTJRM3ZtQ0E7SUFDRSx1QkFBQTtJQUNBLDRCQUFBO0lBQ0Esd0JBQUE7RTNRNnZtQ0Y7RTJRMXZtQ0E7SUFDRSw0QkFBQTtFM1E0dm1DRjtFMlF6dm1DQTtJQUNFLHVCQUFBO0UzUTJ2bUNGO0UyUXh2bUNBLHlDQUFBO0VBQ0E7OztJQUdFLHdCQUFBO0UzUTB2bUNGO0UyUXh2bUNBLHdDQUFBO0VBVUE7SUFDRSx5QkFBQTtFM1Fpdm1DRjtFMlExdW1DQSx5Q0FBQTtFQUNBOzs7SUFHRSx3QkFBQTtFM1E0dW1DRjtFMlExdW1DQSx3Q0FBQTtFQUVBO0lBQ0Usc0JBQUE7SUFDQSxxQkFBQTtFM1EydW1DRjtFMlFwdW1DQSx5Q0FBQTtFQUNBOzs7SUFHRSx3QkFBQTtFM1FzdW1DRjtFMlFwdW1DQSx3Q0FBQTtFQUVBOztJQUVFLHdCQUFBO0UzUXF1bUNGO0UyUS90bUNBO0lBQ0Usb0JBQUE7SUFDQSwyQkFBQTtFM1FpdW1DRjtFMlF0dG1DQTtJQUNFLG9EQUFBO0lBQ0EsbURBQUE7SUFDQSxtREFBQTtJQUNBLG9EQUFBO0lBR0Esd0RBQUE7SUFDQSx3REFBQTtJQUNBLHdEQUFBO0lBQ0Esd0RBQUE7SUFDQSx3REFBQTtFM1FzdG1DRjtFMlFsdG1DRTtJQUNFLDZDQUFBO0UzUW90bUNKO0FBQ0YiLCJmaWxlIjoiYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hcHBsaWNhdGlvbi5zY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLmF0d2hvLXZpZXcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogMThweDtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIGNvbG9yOiBibGFjaztcbiAgYm9yZGVyOiAxcHggc29saWQgI0RERDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgbWluLXdpZHRoOiAxMjBweDtcbiAgei1pbmRleDogMTExMTAgIWltcG9ydGFudDtcbn1cblxuLmF0d2hvLXZpZXcgLmF0d2hvLWhlYWRlciB7XG4gIHBhZGRpbmc6IDVweDtcbiAgbWFyZ2luOiA1cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNlYWVmZjE7XG4gIGNvbG9yOiAjNmY4MDkyO1xuICBmb250LXNpemU6IDExcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYXR3aG8tdmlldyAuYXR3aG8taGVhZGVyIC5zbWFsbCB7XG4gIGNvbG9yOiAjNmY4MDkyO1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctdG9wOiAycHg7XG4gIG1hcmdpbi1yaWdodDogLTVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uYXR3aG8tdmlldyAuYXR3aG8taGVhZGVyOmhvdmVyIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4uYXR3aG8tdmlldyAuY3VyIHtcbiAgYmFja2dyb3VuZDogIzMzNjZGRjtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYXR3aG8tdmlldyAuY3VyIHNtYWxsIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuXG4uYXR3aG8tdmlldyBzdHJvbmcge1xuICBjb2xvcjogIzMzNjZGRjtcbn1cblxuLmF0d2hvLXZpZXcgLmN1ciBzdHJvbmcge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQ6IGJvbGQ7XG59XG5cbi5hdHdoby12aWV3IHVsIHtcbiAgLyogd2lkdGg6IDEwMHB4OyAqL1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IGF1dG87XG4gIG1heC1oZWlnaHQ6IDIwMHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uYXR3aG8tdmlldyB1bCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA1cHggMTBweDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLyogYm9yZGVyLXRvcDogMXB4IHNvbGlkICNDOEM4Qzg7ICovXG59XG5cbi5hdHdoby12aWV3IHNtYWxsIHtcbiAgZm9udC1zaXplOiBzbWFsbGVyO1xuICBjb2xvcjogIzc3NztcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLypcbiAqIFRoZSBNSVQgTGljZW5zZVxuICogQ29weXJpZ2h0IChjKSAyMDEyIE1hdGlhcyBNZW5vIDxtQHRpYXMubWU+XG4gKi9cbi5kcm9wem9uZSwgLmRyb3B6b25lICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4uZHJvcHpvbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5kcm9wem9uZSAuZHotcHJldmlldyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTIwcHg7XG4gIG1hcmdpbjogMC41ZW07XG59XG5cbi5kcm9wem9uZSAuZHotcHJldmlldyAuZHotcHJvZ3Jlc3Mge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xufVxuXG4uZHJvcHpvbmUgLmR6LXByZXZpZXcgLmR6LXByb2dyZXNzIC5kei11cGxvYWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMDtcbiAgYmFja2dyb3VuZDogZ3JlZW47XG59XG5cbi5kcm9wem9uZSAuZHotcHJldmlldyAuZHotZXJyb3ItbWVzc2FnZSB7XG4gIGNvbG9yOiByZWQ7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kcm9wem9uZSAuZHotcHJldmlldy5kei1lcnJvciAuZHotZXJyb3ItbWVzc2FnZSwgLmRyb3B6b25lIC5kei1wcmV2aWV3LmR6LWVycm9yIC5kei1lcnJvci1tYXJrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kcm9wem9uZSAuZHotcHJldmlldy5kei1zdWNjZXNzIC5kei1zdWNjZXNzLW1hcmsge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmRyb3B6b25lIC5kei1wcmV2aWV3IC5kei1lcnJvci1tYXJrLCAuZHJvcHpvbmUgLmR6LXByZXZpZXcgLmR6LXN1Y2Nlc3MtbWFyayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbGVmdDogMzBweDtcbiAgdG9wOiAzMHB4O1xuICB3aWR0aDogNTRweDtcbiAgaGVpZ2h0OiA1OHB4O1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMjdweDtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgZ2l0bGFiL25vLWdsLWNsYXNzICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBsZW5ndGgtemVyby1uby11bml0ICovXG46cm9vdCB7XG4gIC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodDogMHB4O1xuICAtLXN5c3RlbS1oZWFkZXItaGVpZ2h0OiAwcHg7XG4gIC0taGVhZGVyLWhlaWdodDogMHB4O1xuICAtLXRvcC1iYXItaGVpZ2h0OiAwcHg7XG4gIC0tYnJvYWRjYXN0LW1lc3NhZ2UtaGVpZ2h0OiAwcHg7XG4gIC0tc3lzdGVtLWZvb3Rlci1oZWlnaHQ6IDBweDtcbiAgLS1hcHBsaWNhdGlvbi1oZWFkZXItaGVpZ2h0OiBjYWxjKFxuICAgIHZhcigtLWhlYWRlci1oZWlnaHQpICtcbiAgICB2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgK1xuICAgIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpICtcbiAgICB2YXIoLS10b3AtYmFyLWhlaWdodClcbiAgKTtcbiAgLS1hcHBsaWNhdGlvbi1iYXItcmlnaHQ6IDBweDtcbiAgLyoqXG4gICAqIENJIGljb24gc3R5bGVzXG4gICAqIERpc2N1c3Npb246IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzE3NzIyMlxuICAgKiBPd25lcjogVmVyaWZ5OiBQaXBlbGluZSBleGVjdXRpb25cbiAgICovXG4gIC0tY2ktaWNvbi1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTEwMCk7XG4gIC0tY2ktaWNvbi1zdWNjZXNzLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTcwMCk7XG4gIC0tY2ktaWNvbi1zdWNjZXNzLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gIC0tY2ktaWNvbi1zdWNjZXNzLWljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNTAwKTtcbiAgLS1jaS1pY29uLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTEwMCk7XG4gIC0tY2ktaWNvbi13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS03MDApO1xuICAtLWNpLWljb24td2FybmluZy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApO1xuICAtLWNpLWljb24td2FybmluZy1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MDApO1xuICAtLWNpLWljb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApO1xuICAtLWNpLWljb24tZGFuZ2VyLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC03MDApO1xuICAtLWNpLWljb24tZGFuZ2VyLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gIC0tY2ktaWNvbi1kYW5nZXItaWNvbi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtNTAwKTtcbiAgLS1jaS1pY29uLWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApO1xuICAtLWNpLWljb24taW5mby10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7XG4gIC0tY2ktaWNvbi1pbmZvLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTAwKTtcbiAgLS1jaS1pY29uLWluZm8taWNvbi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApO1xuICAtLWNpLWljb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7XG4gIC0tY2ktaWNvbi1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTtcbiAgLS1jaS1pY29uLW5ldXRyYWwtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MDApO1xuICAtLWNpLWljb24tbmV1dHJhbC1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gIC8qKlxuICAgKiBEaWZmIHN0eWxlc1xuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy8xNzE1MTRcbiAgICogT3duZXI6IENyZWF0ZTogQ29kZSByZXZpZXdcbiAgICovXG4gIC0tZGlmZi13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXdhcm5pbmctdGV4dC1jb2xvcik7XG4gIC0tZGlmZi13YXJuaW5nLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcik7XG4gIC8qKlxuICAgKiBSZXZpZXcgbm90ZSBzdHlsZXNcbiAgICogRGlzY3Vzc2lvbjogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vbWVyZ2VfcmVxdWVzdHMvMTY3NzA4XG4gICAqIE93bmVyOiBDcmVhdGU6IENvZGUgcmV2aWV3XG4gICAqL1xuICAtLXRpbWVsaW5lLWVudHJ5LWRyYWZ0LW5vdGUtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTUwKTtcbiAgLyoqXG4gICAqIFdvcmsgaXRlbSBub3RlIHN0eWxlc1xuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy8xNjc3MDhcbiAgICogT3duZXI6IFBsYW46IFByb2plY3QgTWFuYWdlbWVudFxuICAgKi9cbiAgLS10aW1lbGluZS1lbnRyeS1pbnRlcm5hbC1ub3RlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MCk7XG4gIC8qKlxuICAgKiBUYXJnZXQgbm90ZSBzdHlsZXNcbiAgICogRGlzY3Vzc2lvbjogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vbWVyZ2VfcmVxdWVzdHMvMTY3NzA4XG4gICAqIE93bmVyOiBUQkRcbiAgICovXG4gIC0tdGltZWxpbmUtZW50cnktdGFyZ2V0LWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTApO1xuICAvKipcbiAgICogQ29udHJpYnV0aW9uIGdyYXBoIHN0eWxlcyBvbiB1c2VyIHByb2ZpbGVcbiAgICogRGlzY3Vzc2lvbjogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vbWVyZ2VfcmVxdWVzdHMvMTgwNjY0XG4gICAqIE93bmVyOiBPcmdhbml6YXRpb25zXG4gICAqL1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xOiB2YXIoLS1nbC1jb2xvci1kYXRhLWJsdWUtMTAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLWRhdGEtYmx1ZS00MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMzogdmFyKC0tZ2wtY29sb3ItZGF0YS1ibHVlLTYwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00OiB2YXIoLS1nbC1jb2xvci1kYXRhLWJsdWUtOTAwKTtcbn1cbjpyb290IC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS00MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMzogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTYwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTtcbn1cbjpyb290LnVpLWluZGlnbyAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTQwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0zOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS04MDApO1xufVxuOnJvb3QudWktYmx1ZSAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLWJsdWUtNDAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLWJsdWUtNjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTtcbn1cbjpyb290LnVpLWdyZWVuIC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMTogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTQwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0zOiB2YXIoLS1nbC1jb2xvci1ncmVlbi02MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tODAwKTtcbn1cbjpyb290LnVpLXJlZCAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLXJlZC0yMDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItcmVkLTQwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0zOiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLXJlZC04MDApO1xufVxuOnJvb3QudWktZ3JheSAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTtcbn1cbjpyb290IHtcbiAgLyoqXG4gICAqIFNldmVyaXR5IGNvbG9yc1xuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9pc3N1ZXMvNTgxMTIxXG4gICAqIE93bmVyOiBTZWN1cml0eSBSaXNrIE1hbmFnZW1lbnQ6IFNlY3VyaXR5IEluc2lnaHRzXG4gICAqL1xuICAtLXNldmVyaXR5LWNvbG9yLWNyaXRpY2FsOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTtcbiAgLS1zZXZlcml0eS1jb2xvci1oaWdoOiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTtcbiAgLS1zZXZlcml0eS1jb2xvci1tZWRpdW06IHZhcigtLWdsLWNvbG9yLW9yYW5nZS00MDApO1xuICAtLXNldmVyaXR5LWNvbG9yLWxvdzogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTMwMCk7XG4gIC0tc2V2ZXJpdHktY29sb3ItaW5mbzogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApO1xuICAtLXNldmVyaXR5LWNvbG9yLXVua25vd246IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTtcbiAgLyoqXG4gICAqIEZpbmQgYW5kIHJlcGxhY2UgaGlnaGxpZ2h0IHN0eWxlc1xuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy8yMzEyNzRcbiAgICogT3duZXI6IEdyb3VwIEtub3dsZWRnZVxuICAgKi9cbiAgLS1maW5kLWFuZC1yZXBsYWNlLW1hdGNoLXRleHQtY29sb3I6IHZhcigtLWdsLWhpZ2hsaWdodC1tYXRjaC10ZXh0LWNvbG9yKTtcbiAgLS1maW5kLWFuZC1yZXBsYWNlLW1hdGNoLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApO1xuICAtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtYWN0aXZlLXRleHQtY29sb3I6IHZhcigtLWdsLWhpZ2hsaWdodC1tYXRjaC10ZXh0LWNvbG9yKTtcbiAgLS1maW5kLWFuZC1yZXBsYWNlLW1hdGNoLWFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1oaWdobGlnaHQtbWF0Y2gtYmFja2dyb3VuZC1jb2xvcik7XG59XG46cm9vdC5nbC1kYXJrIHtcbiAgLS1jaS1pY29uLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMzAwKTtcbiAgLS1jaS1pY29uLXN1Y2Nlc3MtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTAwKTtcbiAgLS1jaS1pY29uLXN1Y2Nlc3MtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMzAwKTtcbiAgLS1jaS1pY29uLXN1Y2Nlc3MtaWNvbi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi05MDApO1xuICAtLWNpLWljb24td2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMzAwKTtcbiAgLS1jaS1pY29uLXdhcm5pbmctdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTkwMCk7XG4gIC0tY2ktaWNvbi13YXJuaW5nLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0zMDApO1xuICAtLWNpLWljb24td2FybmluZy1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05MDApO1xuICAtLWNpLWljb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApO1xuICAtLWNpLWljb24tZGFuZ2VyLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApO1xuICAtLWNpLWljb24tZGFuZ2VyLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApO1xuICAtLWNpLWljb24tZGFuZ2VyLWljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7XG4gIC0tY2ktaWNvbi1pbmZvLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMzAwKTtcbiAgLS1jaS1pY29uLWluZm8tdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05MDApO1xuICAtLWNpLWljb24taW5mby1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7XG4gIC0tY2ktaWNvbi1pbmZvLWljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05MDApO1xuICAtLWNpLWljb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTMwMCk7XG4gIC0tY2ktaWNvbi1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTtcbiAgLS1jaS1pY29uLW5ldXRyYWwtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuICAtLWNpLWljb24tbmV1dHJhbC1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTtcbiAgLS1kaWZmLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogIzQ1MzUyMjtcbiAgLS10aW1lbGluZS1lbnRyeS1kcmFmdC1ub3RlLWJhY2tncm91bmQtY29sb3I6ICM0NTM1MjI7XG4gIC0tdGltZWxpbmUtZW50cnktaW50ZXJuYWwtbm90ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjNDUzNTIyO1xuICAtLXRpbWVsaW5lLWVudHJ5LXRhcmdldC1iYWNrZ3JvdW5kLWNvbG9yOiAjMkEzOTRFO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMTogdmFyKC0tZ2wtY29sb3ItZGF0YS1ibHVlLTkwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0yOiB2YXIoLS1nbC1jb2xvci1kYXRhLWJsdWUtNjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLWRhdGEtYmx1ZS00MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNDogdmFyKC0tZ2wtY29sb3ItZGF0YS1ibHVlLTEwMCk7XG59XG46cm9vdC5nbC1kYXJrIC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMTogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTgwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS00MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNDogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7XG59XG46cm9vdC5nbC1kYXJrLnVpLWluZGlnbyAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS04MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTYwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0zOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNDAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApO1xufVxuOnJvb3QuZ2wtZGFyay51aS1ibHVlIC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMTogdmFyKC0tZ2wtY29sb3ItYmx1ZS04MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItYmx1ZS02MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMzogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApO1xufVxuOnJvb3QuZ2wtZGFyay51aS1ncmVlbiAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTgwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi02MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMzogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNDAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTIwMCk7XG59XG46cm9vdC5nbC1kYXJrLnVpLXJlZCAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLXJlZC04MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItcmVkLTYwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0zOiB2YXIoLS1nbC1jb2xvci1yZWQtNDAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLXJlZC0yMDApO1xufVxuOnJvb3QuZ2wtZGFyay51aS1ncmF5IC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApO1xufVxuOnJvb3QuZ2wtZGFyayB7XG4gIC0tc2V2ZXJpdHktY29sb3ItY3JpdGljYWw6IHZhcigtLWdsLWNvbG9yLXJlZC01MDApO1xuICAtLXNldmVyaXR5LWNvbG9yLWhpZ2g6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApO1xuICAtLXNldmVyaXR5LWNvbG9yLW1lZGl1bTogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTMwMCk7XG4gIC0tc2V2ZXJpdHktY29sb3ItbG93OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMTAwKTtcbiAgLS1zZXZlcml0eS1jb2xvci1pbmZvOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7XG4gIC0tc2V2ZXJpdHktY29sb3ItdW5rbm93bjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuICAtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtYWN0aXZlLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gIC0tZmluZC1hbmQtcmVwbGFjZS1tYXRjaC1hY3RpdmUtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTgwMCk7XG59XG5cbi8qXG4qIFNBU1MgcHJlc2VydmVzIHVuaXRzIGluIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4gRm9yIGV4YW1wbGU6XG4qIDEyZW0gKiAwID0gMGVtLiBUaGlzIGZ1bmN0aW9uIHJldHVybiB0aGUgdW5pdCBvZiBhIG51bWVyaWMgdmFsdWUuXG4qXG4qIEZvciBtb3JlIGV4YW1wbGVzLCBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9wYXVsZ3YvcGVuL1hXcnFNZ1FcbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWVuYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qXG4gKiBMYXlvdXRcbiAqL1xuLyoqXG4gIPCfmqggRG8gbm90IHVzZSB0aGlzIHNwYWNpbmcgc2NhbGUg4oCUIGl0IGlzIGRlcHJlY2F0ZWQgYW5kIGJlaW5nIHJlbW92ZWQuIPCfmqhcbiAgU2VlIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi9pc3N1ZXMvMzY4NTcgZm9yIG1vcmUgZGV0YWlscy5cblxuICBJbnN0ZWFkLCBpZiB5b3UgbmVlZCBhIHNwYWNpbmcgY2xhc3MsIGFkZCBpdCB0byBhcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9jb21tb24uc2NzcyxcbiAgdXNpbmcgdGhlIGZvbGxvd2luZyB2YWx1ZXMuXG5cbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0wOiAwO1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTE6IDJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0yOiA0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMzogOHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTQ6IDEycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNTogMTZweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS02OiAyNHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTc6IDMycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtODogNDBweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS05OiA0OHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEwOiA1NnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTExOiA2NHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEyOiA4MHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEzOiA5NnB4O1xuXG4gIEUuZy4sIGEgcGFkZGluZyB0b3Agb2YgOTZweCBjYW4gYmUgYWRkZWQgdXNpbmc6XG4gIC5nbC1zaGltLXB0LTEzIHtcbiAgICBwYWRkaW5nLXRvcDogOTZweDtcbiAgfVxuXG4gIFBsZWFzZSB1c2UgLXNoaW0tIHNvIGl0IGNhbiBiZSBkaWZmZXJlbnRpYXRlZCBmcm9tIHRoZSBvbGQgc2NhbGUgY2xhc3Nlcy5cblxuICBUaGVzZSB3aWxsIGJlIHJlcGxhY2VkIHdoZW4gdGhlIEdpdGxhYiBVSSB1dGlsaXRpZXMgYXJlIGluY2x1ZGVkLlxuKiovXG4vKiBXaWxsIGJlIG1vdmVkIHRvIEBnaXRsYWIvdWkgYnkgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXNlcnZpY2VzL2Rlc2lnbi5naXRsYWIuY29tLy0vaXNzdWVzLzI3OTIgKi9cbi8qIEVuZCBnaXRsYWItdWkjMTcwOSAqL1xuLypcbiAqIFRleHRcbiAqL1xuLypcbiAqIExpc3RzXG4gKi9cbi8qXG4gKiBDb2RlXG4gKi9cbi8qXG4gKiBUb29sdGlwc1xuICovXG4vKlxuICogUGFkZGluZ1xuICovXG4vKlxuICogTWlzY1xuICovXG4vKlxuICogTWVyZ2UgcmVxdWVzdHNcbiAqL1xuLypcbiAqIENhbGN1bGF0ZWQgaGVpZ2h0c1xuICovXG4vKiB0YW51a2kgbG9nbyBjb2xvcnMgKi9cbi8qXG4gKiBTdGF0ZSBjb2xvcnM6XG4gKi9cbi8qXG4gKiBDb21taXQgRGlmZiBDb2xvcnNcbiAqL1xuLypcbiAqIFRoZSB0cmFuc3BhcmVudCBjb2xvcnMgYXJlIHVzZWQgaW4gTW9uYWNvIGVkaXRvci4gVXNpbmcgZnVsbCBvcGFjaXR5IGNvbG9yc1xuICogd291bGQgaGlkZSBvdGhlciBsYXllcnMgKHNlbGVjdGVkIHRleHQsIG1hdGNoaW5nIGJyYWNrZXRzKS5cbiAqXG4gKiBXaGVuIHRoZSB0cmFuc3BhcmVudCBjb2xvcnMgZ2V0IGxheWVyZWQgb24gd2hpdGUgYmFja2dyb3VuZCwgdGhleSBjcmVhdGUgdGhlaXJcbiAqIGZ1bGwgb3BhY2l0eSBjb3VudGVycGFydHM6XG4gKlxuICogIC0gd2hpdGUgKyAkbGluZS1hZGRlZC10cmFuc3BhcmVudCA9ICRsaW5lLWFkZGVkXG4gKiAgLSB3aGl0ZSArICRsaW5lLWFkZGVkLXRyYW5zcGFyZW50ICsgJGxpbmUtYWRkZWQtZGFyay10cmFuc3BhcmVudCA9ICRsaW5lLWFkZGVkLWRhcmtcbiAqXG4gKiBNb3JlIGRldGFpbHM6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzQxNTUzXG4gKi9cbi8qXG4gKiBGb250c1xuICogVGhlIC0tZGVmYXVsdC1tb25vLWZvbnQgYW5kIC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQgdmFyaWFibGVzIGdpdmUgdXNlcnNcbiAqIGEgd2F5IHRvIG92ZXJyaWRlIG91ciBmb250IGNob2ljZXMgZm9yIHRoZW0uXG4gKi9cbi8qXG4qIERyb3Bkb3duc1xuKi9cbi8qXG4qIFNpZGViYXJcbiovXG4vKlxuKiBCdXR0b25zXG4qL1xuLypcbiogQmFkZ2VzXG4qL1xuLypcbiAqICBBd2FyZCBlbW9qaVxuICovXG4vKlxuICogU2VhcmNoIEJveFxuICovXG4vKlxuICogIE5vdGVzXG4gKi9cbi8qXG4qIEJvYXJkc1xuKi9cbi8qXG4qIEJ1aWxkc1xuKi9cbi8qXG4qIENvbW1pdCBQYWdlXG4qL1xuLypcbiogRmlsZXNcbiovXG4vKlxuKiBGb3Jtc1xuKi9cbi8qXG4qIExhYmVsXG4qL1xuLypcbiogQW5pbWF0aW9uXG4qL1xuLypcbiogTG9naW5cbiovXG4vKlxuKiBUeXBvZ3JhcGh5XG4qL1xuLypcblBpcGVsaW5lIEdyYXBoXG4qL1xuLypcbkdpdExhYiBQbGFuc1xuKi9cbi8qXG5QZXJmb3JtYW5jZSBCYXJcbiovXG4vKlxuSW1hZ2UgQ29tbWVudGluZyBjdXJzb3JcbiovXG4vKlxuUG9wdXBcbiovXG4vKlxuRHJhd2Vyc1xuKi9cbi8qXG5Nb2RhbHNcbiovXG4vKlxuUG9wb3ZlcnNcbiovXG4vKlxuTWVyZ2UgcmVxdWVzdHNcbiovXG4vKlxuQm9hcmQgU3dpbWxhbmVzXG4qL1xuLypcblNvdXJjZSBFZGl0b3IgdGhlbWUgb3ZlcnJpZGVzXG4qL1xuLyoqXG4gQm9vdHN0cmFwIDQuMi4wIGludHJvZHVjZWQgbmV3IGljb25zIGZvciB2YWxpZGF0aW5nIGZvcm1zLlxuIE91ciBkZXNpZ24gc3lzdGVtIGRvZXMgbm90IHVzZSB0aG9zZSwgc28gd2UgYXJlIGRpc2FibGluZyB0aGVtIGZvciBub3c6XG4gLSBEb2NzOiBodHRwczovL2dldGJvb3RzdHJhcC5jb20vZG9jcy80LjMvY29tcG9uZW50cy9mb3Jtcy8jc2VydmVyLXNpZGVcbiAtIElzc3VlOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9kZXNpZ24uZ2l0bGFiLmNvbS9pc3N1ZXMvMjQyXG4gKi9cbi8qXG4gKiBUaGlzIGZpbGUgaXMgb25seSBmb3Igb3ZlcnJpZGluZyBCb290c3RyYXAgNCB2YXJpYWJsZXMuXG4gKiBQbGVhc2UgYWRkIGFueSBuZXcgdmFyaWFibGVzIHRvIHZhcmlhYmxlcy5zY3NzXG4gKi9cbi8qXG4qIFNBU1MgcHJlc2VydmVzIHVuaXRzIGluIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4gRm9yIGV4YW1wbGU6XG4qIDEyZW0gKiAwID0gMGVtLiBUaGlzIGZ1bmN0aW9uIHJldHVybiB0aGUgdW5pdCBvZiBhIG51bWVyaWMgdmFsdWUuXG4qXG4qIEZvciBtb3JlIGV4YW1wbGVzLCBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9wYXVsZ3YvcGVuL1hXcnFNZ1FcbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWVuYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qKlxuICogUHJlZmlsbGVkIG1peGluc1xuICogTWl4aW5zIHdpdGggZml4ZWQgdmFsdWVzXG4gKi9cbi8qXG4gKiBCYXNlIG1peGluIGZvciBsaXN0cyBpbiBHaXRMYWJcbiAqL1xuLypcbiAqIE1peGluIGZvciBzdGF0dXMgYmFkZ2VzLCBhcyB1c2VkIGZvciBwaXBlbGluZXMgYW5kIGNvbW1pdCBzaWduYXR1cmVzXG4gKi9cbi8qXG4gKiBNaXhpbiB0aGF0IGZpeGVzIHdyYXBwaW5nIGlzc3VlcyB3aXRoIGxvbmcgc3RyaW5ncyAoZS5nLiBVUkxzKVxuICpcbiAqIE5vdGU6IHRoZSB3aWR0aCBuZWVkcyB0byBiZSBzZXQgZm9yIGl0IHRvIHdvcmsgaW4gRmlyZWZveFxuICovXG4vKlxuKiBNaXhpbiB0aGF0IGhhbmRsZXMgdGhlIGNvbnRhaW5lciBmb3IgdGhlIGpvYiBsb2dzIChDSS9DRCBhbmQga3ViZXJuZXRlcyBwb2QgbG9ncylcbiovXG4vKlxuKiBNaXhpbiB0aGF0IGhhbmRsZXMgdGhlIHBvc2l0aW9uIG9mIHRoZSBjb250cm9scyBwbGFjZWQgb24gdGhlIHRvcCBiYXJcbiovXG4vKlxuKiBNaXhpbiB0aGF0IGhhbmRsZXMgdGhlIHNpemUgYW5kIHJpZ2h0IG1hcmdpbiBvZiBhdmF0YXJzLlxuKi9cbi8qKlxuKiBTdHlsZSB0byBhcHBseSB0bywgZm9yIGV4YW1wbGUsIHNlYXJjaCByZXN1bHRzIG1hdGNoZXMgb3IgdGV4dCB3cmFwcGVkXG4qIGFyb3VuZCA8bWFyaz4gKGFsbG93ZWQgaW4gTWFya2Rvd24pLlxuKi9cbi8qKlxuKiBMaW5lIGNvbm5lY3RpbmcgYWN0aXZpdHkgZW50cmllcywgdXNlZCBpbiBpc3N1YWJsZXMsIHdvcmsgaXRlbXMgZXRjXG4qL1xuLyoqXG4gKiBEZXByZWNhdGVkIG1peGluIGZvciBkYXJrIG1vZGVcbiAqL1xuLyoqXG4qIENJL0NEIEpvYiBpdGVtIGZhaWxlZCBzdGF0dXMgYmFja2dyb3VuZFxuKlxuKiBTZXRzIGJhY2tncm91bmQgY29sb3Igb2YgaXRlbXMgdG8gdmlzdWFsbHlcbiogaGlnaGxpZ2h0IGZhaWxlZCBqb2JzIGluIHRoZSBVSS5cbiovXG4vKipcbiogRGVjbGFyZXMgYSBwcm9wZXJ0eSB3aXRoIGEgZmx1aWQgdmFsdWUgdGhhdCBkZWNyZWFzZXMgb3JcbiogcmlzZXMgZGVwZW5kaW5nIG9uIHRoZSB2aWV3cG9ydOKAmXMgc2l6ZS4gVGhlIHByb3BlcnR5IHR5cGVcbiogc2hvdWxkIGJlIG51bWVyaWMuXG4qXG4qIFZhbHVlcyBhcmUgZXhwZWN0ZWQgaW4gcmVtIHVuaXRzLlxuKiBGbHVpZCByYW5nZTogYmV0d2VlbiA0OHJlbSAoNzY4cHgpIOKAkyA3NXJlbSAoMTIwMHB4KS5cbipcbiogQHBhcmFtICRwcm9wZXJ0eSBQcm9wZXJ0eSBuYW1lLCBpLmUuIGxpbmUtaGVpZ2h0LCBmb250LXNpemUsIHdpZHRoLCBoZWlnaHQsIGV0Yy5cbiogQHBhcmFtICRtaW4gUHJvcGVydHkgdmFsdWUgbG93ZXIgYm91bmQuXG4qIEBwYXJhbSAkbWF4IFByb3BlcnR5IHZhbHVlIHVwcGVyIGJvdW5kLlxuKi9cbi8qKlxuKiBIZWxwZXIgZnVuY3Rpb24gZm9yIDpmb2N1c1xuKlxuKiBAcGFyYW0gJHNpemUgaXMgZGVwcmVjYXRlZCBhbmQgc2hvdWxkIG5vdCBiZSB1c2VkIGFueW1vcmVcbiovXG4vKipcbiogSGVscGVyIGZ1bmN0aW9uIGZvciBAbWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW1cbiogYnJlYWtwb2ludCB3aWR0aC5cbipcbiogQHBhcmFtICRuYW1lIEJyZWFrcG9pbnQgbmFtZSwgc3VjaCBhcyBgc21gIG9yIGBtZGAuXG4qL1xuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiBmb3IgQG1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW1cbiogYnJlYWtwb2ludCB3aWR0aC5cbipcbiogTm90ZTogQmVmb3JlIHVzaW5nLCBjb25zaWRlciB1c2luZyBhIG1vYmlsZS1maXJzdFxuKiBhcHByb2FjaCwgYW5kIGRlZmluZSBAbWVkaWEgZm9yIGxhcmdlciBicmVha3BvaW50c1xuKiB1c2luZyBgZ2wtbWVkaWEtYnJlYWtwb2ludC11cGAgd2hpbGUgdXNpbmcgdGhpcyBydWxlIGFzXG4qIHRoZSBzdGFydGluZyBwb2ludCBpbnN0ZWFkLlxuKlxuKiBAcGFyYW0gJG5hbWUgQnJlYWtwb2ludCwgc3VjaCBhcyBgc21gIG9yIGBtZGAuIGB4c2AgaXMgbm90IHZhbGlkXG4qL1xuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiB0byByZXNvbHZlIGZvbnQtc2l6ZSB2YWx1ZSBmcm9tICRnbC1mb250LXNpemVzIGFuZFxuKiAkZ2wtZm9udC1zaXplcy1maXhlZCBtYXBzLlxuKlxuKiBAcGFyYW0gJHNpemUgTnVtYmVyIGZvbnQtc2l6ZSBzY2FsZVxuKiBAcGFyYW0gJGZpeGVkIEJvb2xlYW4gdG9nZ2xlIGRlZmF1bHQgYW5kIGZpeGVkIGZvbnQgc2l6ZSBzY2FsZXNcbiovXG4vKlxuKiBTQVNTIHByZXNlcnZlcyB1bml0cyBpbiBhcml0aG1ldGljIG9wZXJhdGlvbnMuIEZvciBleGFtcGxlOlxuKiAxMmVtICogMCA9IDBlbS4gVGhpcyBmdW5jdGlvbiByZXR1cm4gdGhlIHVuaXQgb2YgYSBudW1lcmljIHZhbHVlLlxuKlxuKiBGb3IgbW9yZSBleGFtcGxlcywgc2VlOiBodHRwczovL2NvZGVwZW4uaW8vcGF1bGd2L3Blbi9YV3JxTWdRXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1lbmFibGUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG46cm9vdCB7XG4gIC0tYmx1ZTogIzAwN2JmZjtcbiAgLS1pbmRpZ286ICM2NjEwZjI7XG4gIC0tcHVycGxlOiAjNmQ0OWNiO1xuICAtLXBpbms6ICNlODNlOGM7XG4gIC0tcmVkOiAjZGMzNTQ1O1xuICAtLW9yYW5nZTogI2ZkN2UxNDtcbiAgLS15ZWxsb3c6ICNmZmMxMDc7XG4gIC0tZ3JlZW46ICMyOGE3NDU7XG4gIC0tdGVhbDogIzIwYzk5NztcbiAgLS1jeWFuOiAjMTdhMmI4O1xuICAtLXdoaXRlOiAjZmZmO1xuICAtLWdyYXk6ICM2NDYxNjM7XG4gIC0tZ3JheS1kYXJrOiAjM2EzODNkO1xuICAtLXByaW1hcnk6ICMwMDdiZmY7XG4gIC0tc2Vjb25kYXJ5OiAjZWNlYmVhO1xuICAtLXN1Y2Nlc3M6ICMwYzcyNjU7XG4gIC0taW5mbzogIzFmNzNjYTtcbiAgLS13YXJuaW5nOiAjYjM0MDEzO1xuICAtLWRhbmdlcjogI2M1MjA0MjtcbiAgLS1saWdodDogI2RjZGJkOTtcbiAgLS1kYXJrOiAjM2EzODNkO1xuICAtLWJyZWFrcG9pbnQteHM6IDA7XG4gIC0tYnJlYWtwb2ludC1zbTogNTc2cHg7XG4gIC0tYnJlYWtwb2ludC1tZDogNzY4cHg7XG4gIC0tYnJlYWtwb2ludC1sZzogOTkycHg7XG4gIC0tYnJlYWtwb2ludC14bDogMTIwMHB4O1xuICAtLWZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IHZhcigtLWRlZmF1bHQtcmVndWxhci1mb250LCBcIkdpdExhYiBTYW5zXCIpLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIk5vdG8gU2Fuc1wiLCBVYnVudHUsIENhbnRhcmVsbCwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCI7XG4gIC0tZm9udC1mYW1pbHktbW9ub3NwYWNlOiB2YXIoLS1kZWZhdWx0LW1vbm8tZm9udCwgXCJHaXRMYWIgTW9ub1wiKSwgXCJKZXRCcmFpbnMgTW9ub1wiLCBcIk1lbmxvXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvbnNvbGFzXCIsIFwiVWJ1bnR1IE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBcImFuZGFsZSBtb25vXCIsIFwibHVjaWRhIGNvbnNvbGVcIiwgbW9ub3NwYWNlO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmFydGljbGUsIGFzaWRlLCBmaWdjYXB0aW9uLCBmaWd1cmUsIGZvb3RlciwgaGVhZGVyLCBoZ3JvdXAsIG1haW4sIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQsIFwiR2l0TGFiIFNhbnNcIiksIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiTm90byBTYW5zXCIsIFVidW50dSwgQ2FudGFyZWxsLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5bdGFiaW5kZXg9XCItMVwiXTpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbn1cblxucCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbmFiYnJbdGl0bGVdLFxuYWJicltkYXRhLW9yaWdpbmFsLXRpdGxlXSB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7XG4gIGN1cnNvcjogaGVscDtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uLXNraXAtaW5rOiBub25lO1xufVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxub2wsXG51bCxcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxub2wgb2wsXG51bCB1bCxcbm9sIHVsLFxudWwgb2wge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kdCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbmRkIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZGVyO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogNzUlO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LW1vbm8tZm9udCwgXCJHaXRMYWIgTW9ub1wiKSwgXCJKZXRCcmFpbnMgTW9ub1wiLCBcIk1lbmxvXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvbnNvbGFzXCIsIFwiVWJ1bnR1IE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBcImFuZGFsZSBtb25vXCIsIFwibHVjaWRhIGNvbnNvbGVcIiwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxucHJlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogc2Nyb2xsYmFyO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbnN2ZyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY2FwdGlvbi1zaWRlOiBib3R0b207XG59XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgdGV4dC1hbGlnbjogLXdlYmtpdC1tYXRjaC1wYXJlbnQ7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmJ1dHRvbjpmb2N1czpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgb3V0bGluZTogMDtcbn1cblxuaW5wdXQsXG5idXR0b24sXG5zZWxlY3QsXG5vcHRncm91cCxcbnRleHRhcmVhIHtcbiAgbWFyZ2luOiAwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbltyb2xlPWJ1dHRvbl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5idXR0b246bm90KDpkaXNhYmxlZCksXG5bdHlwZT1idXR0b25dOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9cmVzZXRdOm5vdCg6ZGlzYWJsZWQpLFxuW3R5cGU9c3VibWl0XTpub3QoOmRpc2FibGVkKSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmlucHV0W3R5cGU9cmFkaW9dLFxuaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwO1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5maWVsZHNldCB7XG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9c2VhcmNoXSB7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cblt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbjo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICBmb250OiBpbmhlcml0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsXG4uaDEsIC5oMiwgLmgzLCAuaDQsIC5oNSwgLmg2IHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMi4xODc1cmVtO1xufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxLjUzMTI1cmVtO1xufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG59XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDEuMDkzNzVyZW07XG59XG5cbmg2LCAuaDYge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmRpc3BsYXktMSB7XG4gIGZvbnQtc2l6ZTogNnJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuLmRpc3BsYXktMiB7XG4gIGZvbnQtc2l6ZTogNS41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuXG4uZGlzcGxheS0zIHtcbiAgZm9udC1zaXplOiA0LjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG59XG5cbi5kaXNwbGF5LTQge1xuICBmb250LXNpemU6IDMuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbn1cblxuaHIge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSg1LCA0LCA4LCAwLjEpO1xufVxuXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC44NzVlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogMC4yZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmY2Y4ZTM7XG59XG5cbi5saXN0LXVuc3R5bGVkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4ubGlzdC1pbmxpbmUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmxpc3QtaW5saW5lLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG4uaW5pdGlhbGlzbSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uYmxvY2txdW90ZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuXG4uYmxvY2txdW90ZS1mb290ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzY0NjE2Mztcbn1cbi5ibG9ja3F1b3RlLWZvb3Rlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJTCoFwiO1xufVxuXG4uaW1nLWZsdWlkIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5pbWctdGh1bWJuYWlsIHtcbiAgcGFkZGluZzogMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2E1YTNhMztcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi5maWd1cmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5maWd1cmUtaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzY0NjE2Mztcbn1cblxuY29kZSB7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogI2U4M2U4YztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuYSA+IGNvZGUge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogIzI4MjcyZDtcbn1cbnByZSBjb2RlIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xufVxuXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAzNDBweDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuXG4uY29udGFpbmVyLFxuLmNvbnRhaW5lci1mbHVpZCxcbi5jb250YWluZXIteGwsXG4uY29udGFpbmVyLWxnLFxuLmNvbnRhaW5lci1tZCxcbi5jb250YWluZXItc20ge1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbnRhaW5lci1zbSwgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogNzIwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuY29udGFpbmVyLWxnLCAuY29udGFpbmVyLW1kLCAuY29udGFpbmVyLXNtLCAuY29udGFpbmVyIHtcbiAgICBtYXgtd2lkdGg6IDk2MHB4O1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb250YWluZXIteGwsIC5jb250YWluZXItbGcsIC5jb250YWluZXItbWQsIC5jb250YWluZXItc20sIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG4ucm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG59XG5cbi5uby1ndXR0ZXJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5uby1ndXR0ZXJzID4gLmNvbCxcbi5uby1ndXR0ZXJzID4gW2NsYXNzKj1jb2wtXSB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmdsLWNvbC14bCxcbi5nbC1jb2wteGwtYXV0bywgLmdsLWNvbC14bC0xMiwgLmdsLWNvbC14bC0xMSwgLmdsLWNvbC14bC0xMCwgLmdsLWNvbC14bC05LCAuZ2wtY29sLXhsLTgsIC5nbC1jb2wteGwtNywgLmdsLWNvbC14bC02LCAuZ2wtY29sLXhsLTUsIC5nbC1jb2wteGwtNCwgLmdsLWNvbC14bC0zLCAuZ2wtY29sLXhsLTIsIC5nbC1jb2wteGwtMSwgLmdsLWNvbC1sZyxcbi5nbC1jb2wtbGctYXV0bywgLmdsLWNvbC1sZy0xMiwgLmdsLWNvbC1sZy0xMSwgLmdsLWNvbC1sZy0xMCwgLmdsLWNvbC1sZy05LCAuZ2wtY29sLWxnLTgsIC5nbC1jb2wtbGctNywgLmdsLWNvbC1sZy02LCAuZ2wtY29sLWxnLTUsIC5nbC1jb2wtbGctNCwgLmdsLWNvbC1sZy0zLCAuZ2wtY29sLWxnLTIsIC5nbC1jb2wtbGctMSwgLmdsLWNvbC1tZCxcbi5nbC1jb2wtbWQtYXV0bywgLmdsLWNvbC1tZC0xMiwgLmdsLWNvbC1tZC0xMSwgLmdsLWNvbC1tZC0xMCwgLmdsLWNvbC1tZC05LCAuZ2wtY29sLW1kLTgsIC5nbC1jb2wtbWQtNywgLmdsLWNvbC1tZC02LCAuZ2wtY29sLW1kLTUsIC5nbC1jb2wtbWQtNCwgLmdsLWNvbC1tZC0zLCAuZ2wtY29sLW1kLTIsIC5nbC1jb2wtbWQtMSwgLmdsLWNvbC1zbSxcbi5nbC1jb2wtc20tYXV0bywgLmdsLWNvbC1zbS0xMiwgLmdsLWNvbC1zbS0xMSwgLmdsLWNvbC1zbS0xMCwgLmdsLWNvbC1zbS05LCAuZ2wtY29sLXNtLTgsIC5nbC1jb2wtc20tNywgLmdsLWNvbC1zbS02LCAuZ2wtY29sLXNtLTUsIC5nbC1jb2wtc20tNCwgLmdsLWNvbC1zbS0zLCAuZ2wtY29sLXNtLTIsIC5nbC1jb2wtc20tMSwgLmdsLWNvbCxcbi5nbC1jb2wtYXV0bywgLmdsLWNvbC0xMiwgLmdsLWNvbC0xMSwgLmdsLWNvbC0xMCwgLmdsLWNvbC05LCAuZ2wtY29sLTgsIC5nbC1jb2wtNywgLmdsLWNvbC02LCAuZ2wtY29sLTUsIC5nbC1jb2wtNCwgLmdsLWNvbC0zLCAuZ2wtY29sLTIsIC5nbC1jb2wtMSwgLmNvbC14bCxcbi5jb2wteGwtYXV0bywgLmNvbC14bC0xMiwgLmNvbC14bC0xMSwgLmNvbC14bC0xMCwgLmNvbC14bC05LCAuY29sLXhsLTgsIC5jb2wteGwtNywgLmNvbC14bC02LCAuY29sLXhsLTUsIC5jb2wteGwtNCwgLmNvbC14bC0zLCAuY29sLXhsLTIsIC5jb2wteGwtMSwgLmNvbC1sZyxcbi5jb2wtbGctYXV0bywgLmNvbC1sZy0xMiwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMCwgLmNvbC1sZy05LCAuY29sLWxnLTgsIC5jb2wtbGctNywgLmNvbC1sZy02LCAuY29sLWxnLTUsIC5jb2wtbGctNCwgLmNvbC1sZy0zLCAuY29sLWxnLTIsIC5jb2wtbGctMSwgLmNvbC1tZCxcbi5jb2wtbWQtYXV0bywgLmNvbC1tZC0xMiwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMCwgLmNvbC1tZC05LCAuY29sLW1kLTgsIC5jb2wtbWQtNywgLmNvbC1tZC02LCAuY29sLW1kLTUsIC5jb2wtbWQtNCwgLmNvbC1tZC0zLCAuY29sLW1kLTIsIC5jb2wtbWQtMSwgLmNvbC1zbSxcbi5jb2wtc20tYXV0bywgLmNvbC1zbS0xMiwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMCwgLmNvbC1zbS05LCAuY29sLXNtLTgsIC5jb2wtc20tNywgLmNvbC1zbS02LCAuY29sLXNtLTUsIC5jb2wtc20tNCwgLmNvbC1zbS0zLCAuY29sLXNtLTIsIC5jb2wtc20tMSwgLmNvbCxcbi5jb2wtYXV0bywgLmNvbC0xMiwgLmNvbC0xMSwgLmNvbC0xMCwgLmNvbC05LCAuY29sLTgsIC5jb2wtNywgLmNvbC02LCAuY29sLTUsIC5jb2wtNCwgLmNvbC0zLCAuY29sLTIsIC5jb2wtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLmNvbCB7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIGZsZXgtZ3JvdzogMTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ucm93LWNvbHMtMSA+ICoge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ucm93LWNvbHMtMiA+ICoge1xuICBmbGV4OiAwIDAgNTAlO1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLnJvdy1jb2xzLTMgPiAqIHtcbiAgZmxleDogMCAwIDMzLjMzMzMzMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4ucm93LWNvbHMtNCA+ICoge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLnJvdy1jb2xzLTUgPiAqIHtcbiAgZmxleDogMCAwIDIwJTtcbiAgbWF4LXdpZHRoOiAyMCU7XG59XG5cbi5yb3ctY29scy02ID4gKiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLmNvbC1hdXRvIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wtMSB7XG4gIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzJTtcbn1cblxuLmNvbC0yIHtcbiAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NyU7XG59XG5cbi5jb2wtMyB7XG4gIGZsZXg6IDAgMCAyNSU7XG4gIG1heC13aWR0aDogMjUlO1xufVxuXG4uY29sLTQge1xuICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzJTtcbn1cblxuLmNvbC01IHtcbiAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7XG59XG5cbi5jb2wtNiB7XG4gIGZsZXg6IDAgMCA1MCU7XG4gIG1heC13aWR0aDogNTAlO1xufVxuXG4uY29sLTcge1xuICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbn1cblxuLmNvbC04IHtcbiAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NyU7XG59XG5cbi5jb2wtOSB7XG4gIGZsZXg6IDAgMCA3NSU7XG4gIG1heC13aWR0aDogNzUlO1xufVxuXG4uY29sLTEwIHtcbiAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMyU7XG59XG5cbi5jb2wtMTEge1xuICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY3JTtcbn1cblxuLmNvbC0xMiB7XG4gIGZsZXg6IDAgMCAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5vcmRlci1maXJzdCB7XG4gIG9yZGVyOiAtMTtcbn1cblxuLm9yZGVyLWxhc3Qge1xuICBvcmRlcjogMTM7XG59XG5cbi5vcmRlci0wIHtcbiAgb3JkZXI6IDA7XG59XG5cbi5vcmRlci0xIHtcbiAgb3JkZXI6IDE7XG59XG5cbi5vcmRlci0yIHtcbiAgb3JkZXI6IDI7XG59XG5cbi5vcmRlci0zIHtcbiAgb3JkZXI6IDM7XG59XG5cbi5vcmRlci00IHtcbiAgb3JkZXI6IDQ7XG59XG5cbi5vcmRlci01IHtcbiAgb3JkZXI6IDU7XG59XG5cbi5vcmRlci02IHtcbiAgb3JkZXI6IDY7XG59XG5cbi5vcmRlci03IHtcbiAgb3JkZXI6IDc7XG59XG5cbi5vcmRlci04IHtcbiAgb3JkZXI6IDg7XG59XG5cbi5vcmRlci05IHtcbiAgb3JkZXI6IDk7XG59XG5cbi5vcmRlci0xMCB7XG4gIG9yZGVyOiAxMDtcbn1cblxuLm9yZGVyLTExIHtcbiAgb3JkZXI6IDExO1xufVxuXG4ub3JkZXItMTIge1xuICBvcmRlcjogMTI7XG59XG5cbi5vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbn1cblxuLm9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLm9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbn1cblxuLm9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLm9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbn1cblxuLm9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbn1cblxuLm9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLm9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG59XG5cbi5vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmNvbC1zbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1zbS0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1zbS0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAucm93LWNvbHMtc20tMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5yb3ctY29scy1zbS00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucm93LWNvbHMtc20tNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnJvdy1jb2xzLXNtLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLXNtLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1zbS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1zbS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtc20tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXNtLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1zbS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXNtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtc20tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAub3JkZXItc20tZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAub3JkZXItc20tbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci1zbS0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICAub3JkZXItc20tMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLm9yZGVyLXNtLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci1zbS0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICAub3JkZXItc20tNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLm9yZGVyLXNtLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci1zbS02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICAub3JkZXItc20tNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgLm9yZGVyLXNtLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci1zbS05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICAub3JkZXItc20tMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICAub3JkZXItc20tMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICAub3JkZXItc20tMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICAub2Zmc2V0LXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vZmZzZXQtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm9mZnNldC1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXNtLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm9mZnNldC1zbS03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtc20tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LXNtLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm9mZnNldC1zbS0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXNtLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLmNvbC1tZCB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1tZC0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1tZC0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAucm93LWNvbHMtbWQtMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5yb3ctY29scy1tZC00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucm93LWNvbHMtbWQtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnJvdy1jb2xzLW1kLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLW1kLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1tZC00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1tZC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbWQtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLW1kLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1tZC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLW1kLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbWQtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAub3JkZXItbWQtZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAub3JkZXItbWQtbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci1tZC0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICAub3JkZXItbWQtMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLm9yZGVyLW1kLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci1tZC0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICAub3JkZXItbWQtNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLm9yZGVyLW1kLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci1tZC02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICAub3JkZXItbWQtNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgLm9yZGVyLW1kLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci1tZC05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICAub3JkZXItbWQtMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICAub3JkZXItbWQtMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICAub3JkZXItbWQtMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICAub2Zmc2V0LW1kLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vZmZzZXQtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm9mZnNldC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LW1kLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm9mZnNldC1tZC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbWQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LW1kLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm9mZnNldC1tZC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LW1kLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLmNvbC1sZyB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1sZy0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5yb3ctY29scy1sZy0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICAucm93LWNvbHMtbGctMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5yb3ctY29scy1sZy00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICAucm93LWNvbHMtbGctNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgLnJvdy1jb2xzLWxnLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAuY29sLWxnLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLmNvbC1sZy00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLmNvbC1sZy03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5jb2wtbGctOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLWxnLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgLmNvbC1sZy0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLWxnLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIC5jb2wtbGctMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAub3JkZXItbGctZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICAub3JkZXItbGctbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIC5vcmRlci1sZy0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICAub3JkZXItbGctMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgLm9yZGVyLWxnLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIC5vcmRlci1sZy0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICAub3JkZXItbGctNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgLm9yZGVyLWxnLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIC5vcmRlci1sZy02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICAub3JkZXItbGctNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgLm9yZGVyLWxnLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIC5vcmRlci1sZy05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICAub3JkZXItbGctMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICAub3JkZXItbGctMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICAub3JkZXItbGctMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICAub2Zmc2V0LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5vZmZzZXQtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LWxnLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm9mZnNldC1sZy00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbGctNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LWxnLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm9mZnNldC1sZy03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIC5vZmZzZXQtbGctOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICAub2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm9mZnNldC1sZy0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LWxnLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5jb2wteGwge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucm93LWNvbHMteGwtMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICAucm93LWNvbHMteGwtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgLnJvdy1jb2xzLXhsLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAucm93LWNvbHMteGwtNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgLnJvdy1jb2xzLXhsLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIC5yb3ctY29scy14bC02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbC14bC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIC5jb2wteGwtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIC5jb2wteGwtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAuY29sLXhsLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLmNvbC14bC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIC5jb2wteGwtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLmNvbC14bC0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICAuY29sLXhsLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm9yZGVyLXhsLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgLm9yZGVyLXhsLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICAub3JkZXIteGwtMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgLm9yZGVyLXhsLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5vcmRlci14bC0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAub3JkZXIteGwtMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLm9yZGVyLXhsLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5vcmRlci14bC01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICAub3JkZXIteGwtNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgLm9yZGVyLXhsLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIC5vcmRlci14bC04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuICAub3JkZXIteGwtOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgLm9yZGVyLXhsLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgLm9yZGVyLXhsLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cbiAgLm9yZGVyLXhsLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgLm9mZnNldC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAub2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5vZmZzZXQteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC14bC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5vZmZzZXQteGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICAub2Zmc2V0LXhsLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgLm9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5vZmZzZXQteGwtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgLm9mZnNldC14bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuLnRhYmxlLXNtIHRoLFxuLnRhYmxlLXNtIHRkIHtcbiAgcGFkZGluZzogMC4zcmVtO1xufVxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGNkYmQ5O1xufVxuLnRhYmxlLWJvcmRlcmVkIHRoLFxuLnRhYmxlLWJvcmRlcmVkIHRkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RjZGJkOTtcbn1cbi50YWJsZS1ib3JkZXJlZCB0aGVhZCB0aCxcbi50YWJsZS1ib3JkZXJlZCB0aGVhZCB0ZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbn1cblxuLnRhYmxlLWJvcmRlcmxlc3MgdGgsXG4udGFibGUtYm9yZGVybGVzcyB0ZCxcbi50YWJsZS1ib3JkZXJsZXNzIHRoZWFkIHRoLFxuLnRhYmxlLWJvcmRlcmxlc3MgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlcjogMDtcbn1cblxuLnRhYmxlLXN0cmlwZWQgdGJvZHkgdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3VidGxlKTtcbn1cblxuLnRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNSwgNCwgOCwgMC4wNzUpO1xufVxuXG4udGFibGUtcHJpbWFyeSxcbi50YWJsZS1wcmltYXJ5ID4gdGgsXG4udGFibGUtcHJpbWFyeSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4My42LCAyMTguMDQsIDI1NSk7XG59XG4udGFibGUtcHJpbWFyeSB0aCxcbi50YWJsZS1wcmltYXJ5IHRkLFxuLnRhYmxlLXByaW1hcnkgdGhlYWQgdGgsXG4udGFibGUtcHJpbWFyeSB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTIyLjQsIDE4Ni4zNiwgMjU1KTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1wcmltYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE1OC4xLCAyMDQuODQsIDI1NSk7XG59XG4udGFibGUtaG92ZXIgLnRhYmxlLXByaW1hcnk6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtcHJpbWFyeTpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE1OC4xLCAyMDQuODQsIDI1NSk7XG59XG5cbi50YWJsZS1zZWNvbmRhcnksXG4udGFibGUtc2Vjb25kYXJ5ID4gdGgsXG4udGFibGUtc2Vjb25kYXJ5ID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ5LjY4LCAyNDkuNCwgMjQ5LjEyKTtcbn1cbi50YWJsZS1zZWNvbmRhcnkgdGgsXG4udGFibGUtc2Vjb25kYXJ5IHRkLFxuLnRhYmxlLXNlY29uZGFyeSB0aGVhZCB0aCxcbi50YWJsZS1zZWNvbmRhcnkgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDI0NS4xMiwgMjQ0LjYsIDI0NC4wOCk7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzNy41Njc1LCAyMzYuNjUsIDIzNS43MzI1KTtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtc2Vjb25kYXJ5OmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLXNlY29uZGFyeTpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzNy41Njc1LCAyMzYuNjUsIDIzNS43MzI1KTtcbn1cblxuLnRhYmxlLXN1Y2Nlc3MsXG4udGFibGUtc3VjY2VzcyA+IHRoLFxuLnRhYmxlLXN1Y2Nlc3MgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxODYuOTYsIDIxNS41MiwgMjExLjg4KTtcbn1cbi50YWJsZS1zdWNjZXNzIHRoLFxuLnRhYmxlLXN1Y2Nlc3MgdGQsXG4udGFibGUtc3VjY2VzcyB0aGVhZCB0aCxcbi50YWJsZS1zdWNjZXNzIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6IHJnYigxMjguNjQsIDE4MS42OCwgMTc0LjkyKTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1zdWNjZXNzOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE3MC44MjMyODEyNSwgMjA2LjE1NjcxODc1LCAyMDEuNjUzNDM3NSk7XG59XG4udGFibGUtaG92ZXIgLnRhYmxlLXN1Y2Nlc3M6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtc3VjY2Vzczpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE3MC44MjMyODEyNSwgMjA2LjE1NjcxODc1LCAyMDEuNjUzNDM3NSk7XG59XG5cbi50YWJsZS1pbmZvLFxuLnRhYmxlLWluZm8gPiB0aCxcbi50YWJsZS1pbmZvID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkyLjI4LCAyMTUuOCwgMjQwLjE2KTtcbn1cbi50YWJsZS1pbmZvIHRoLFxuLnRhYmxlLWluZm8gdGQsXG4udGFibGUtaW5mbyB0aGVhZCB0aCxcbi50YWJsZS1pbmZvIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6IHJnYigxMzguNTIsIDE4Mi4yLCAyMjcuNDQpO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTcxLjY1OTA2MTM3MTgsIDIwMi45MTE5MTMzNTc0LCAyMzUuMjgwOTM4NjI4Mik7XG59XG4udGFibGUtaG92ZXIgLnRhYmxlLWluZm86aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtaW5mbzpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE3MS42NTkwNjEzNzE4LCAyMDIuOTExOTEzMzU3NCwgMjM1LjI4MDkzODYyODIpO1xufVxuXG4udGFibGUtd2FybmluZyxcbi50YWJsZS13YXJuaW5nID4gdGgsXG4udGFibGUtd2FybmluZyA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzMy43MiwgMjAxLjUyLCAxODguOTIpO1xufVxuLnRhYmxlLXdhcm5pbmcgdGgsXG4udGFibGUtd2FybmluZyB0ZCxcbi50YWJsZS13YXJuaW5nIHRoZWFkIHRoLFxuLnRhYmxlLXdhcm5pbmcgdGJvZHkgKyB0Ym9keSB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDIxNS40OCwgMTU1LjY4LCAxMzIuMjgpO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjI3LjUwODQ2MTUzODUsIDE4NS45MDk0MjMwNzY5LCAxNjkuNjMxNTM4NDYxNSk7XG59XG4udGFibGUtaG92ZXIgLnRhYmxlLXdhcm5pbmc6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtd2FybmluZzpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyNy41MDg0NjE1Mzg1LCAxODUuOTA5NDIzMDc2OSwgMTY5LjYzMTUzODQ2MTUpO1xufVxuXG4udGFibGUtZGFuZ2VyLFxuLnRhYmxlLWRhbmdlciA+IHRoLFxuLnRhYmxlLWRhbmdlciA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzOC43NiwgMTkyLjU2LCAyMDIuMDgpO1xufVxuLnRhYmxlLWRhbmdlciB0aCxcbi50YWJsZS1kYW5nZXIgdGQsXG4udGFibGUtZGFuZ2VyIHRoZWFkIHRoLFxuLnRhYmxlLWRhbmdlciB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMjI0Ljg0LCAxMzkuMDQsIDE1Ni43Mik7XG59XG5cbi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzMy40OTY2NTQ4MDQzLCAxNzIuMzIzMzQ1MTk1NywgMTg0LjkyODc1NDQ0ODQpO1xufVxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYW5nZXI6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtZGFuZ2VyOmhvdmVyID4gdGgge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMzLjQ5NjY1NDgwNDMsIDE3Mi4zMjMzNDUxOTU3LCAxODQuOTI4NzU0NDQ4NCk7XG59XG5cbi50YWJsZS1saWdodCxcbi50YWJsZS1saWdodCA+IHRoLFxuLnRhYmxlLWxpZ2h0ID4gdGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ1LjIsIDI0NC45MiwgMjQ0LjM2KTtcbn1cbi50YWJsZS1saWdodCB0aCxcbi50YWJsZS1saWdodCB0ZCxcbi50YWJsZS1saWdodCB0aGVhZCB0aCxcbi50YWJsZS1saWdodCB0Ym9keSArIHRib2R5IHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMjM2LjgsIDIzNi4yOCwgMjM1LjI0KTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1saWdodDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzIuOTczOTcyNjAyNywgMjMyLjM0NDY1NzUzNDIsIDIzMS4wODYwMjczOTczKTtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0ZCxcbi50YWJsZS1ob3ZlciAudGFibGUtbGlnaHQ6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzIuOTczOTcyNjAyNywgMjMyLjM0NDY1NzUzNDIsIDIzMS4wODYwMjczOTczKTtcbn1cblxuLnRhYmxlLWRhcmssXG4udGFibGUtZGFyayA+IHRoLFxuLnRhYmxlLWRhcmsgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOTkuODQsIDE5OS4yOCwgMjAwLjY4KTtcbn1cbi50YWJsZS1kYXJrIHRoLFxuLnRhYmxlLWRhcmsgdGQsXG4udGFibGUtZGFyayB0aGVhZCB0aCxcbi50YWJsZS1kYXJrIHRib2R5ICsgdGJvZHkge1xuICBib3JkZXItY29sb3I6IHJnYigxNTIuNTYsIDE1MS41MiwgMTU0LjEyKTtcbn1cblxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4Ny4wNTc1NTcyNTE5LCAxODYuMzY3Nzg2MjU5NSwgMTg4LjA5MjIxMzc0MDUpO1xufVxuLnRhYmxlLWhvdmVyIC50YWJsZS1kYXJrOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLWRhcms6aG92ZXIgPiB0aCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxODcuMDU3NTU3MjUxOSwgMTg2LjM2Nzc4NjI1OTUsIDE4OC4wOTIyMTM3NDA1KTtcbn1cblxuLnRhYmxlLWFjdGl2ZSxcbi50YWJsZS1hY3RpdmUgPiB0aCxcbi50YWJsZS1hY3RpdmUgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNSwgNCwgOCwgMC4wNzUpO1xufVxuXG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGhzbGEoMjU1LCAzMy4zMzMzMzMzMzMzJSwgLTIuNjQ3MDU4ODIzNSUsIDAuMDc1KTtcbn1cbi50YWJsZS1ob3ZlciAudGFibGUtYWN0aXZlOmhvdmVyID4gdGQsXG4udGFibGUtaG92ZXIgLnRhYmxlLWFjdGl2ZTpob3ZlciA+IHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaHNsYSgyNTUsIDMzLjMzMzMzMzMzMzMlLCAtMi42NDcwNTg4MjM1JSwgMC4wNzUpO1xufVxuXG4udGFibGUgLnRoZWFkLWRhcmsgdGgge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhMzgzZDtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoNzYuOTYxNTM4NDYxNSwgNzQuMzA3NjkyMzA3NywgODAuOTQyMzA3NjkyMyk7XG59XG4udGFibGUgLnRoZWFkLWxpZ2h0IHRoIHtcbiAgY29sb3I6ICM0ZDRiNGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWJmYmU7XG4gIGJvcmRlci1jb2xvcjogI2RjZGJkOTtcbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhMzgzZDtcbn1cbi50YWJsZS1kYXJrIHRoLFxuLnRhYmxlLWRhcmsgdGQsXG4udGFibGUtZGFyayB0aGVhZCB0aCB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDc2Ljk2MTUzODQ2MTUsIDc0LjMwNzY5MjMwNzcsIDgwLjk0MjMwNzY5MjMpO1xufVxuLnRhYmxlLWRhcmsudGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDA7XG59XG4udGFibGUtZGFyay50YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDUpO1xufVxuLnRhYmxlLWRhcmsudGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA3NSk7XG59XG5cbkBjb250YWluZXIgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLXJlc3BvbnNpdmUtc20ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1yZXNwb25zaXZlLXNtID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtcmVzcG9uc2l2ZS1zbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLXJlc3BvbnNpdmUtc20gPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuQGNvbnRhaW5lciAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtcmVzcG9uc2l2ZS1tZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLXJlc3BvbnNpdmUtbWQgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1yZXNwb25zaXZlLW1kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtcmVzcG9uc2l2ZS1tZCA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5AY29udGFpbmVyICh3aWR0aCA8IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1yZXNwb25zaXZlLWxnIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtcmVzcG9uc2l2ZS1sZyA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLXJlc3BvbnNpdmUtbGcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1yZXNwb25zaXZlLWxnID4gLnRhYmxlLWJvcmRlcmVkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbkBjb250YWluZXIgKHdpZHRoIDwgMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1yZXNwb25zaXZlLXhsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtcmVzcG9uc2l2ZS14bCA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1yZXNwb25zaXZlLXhsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtcmVzcG9uc2l2ZS14bCA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDA7XG59XG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzJweDtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4YTg4ODg7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5mb3JtLWNvbnRyb2w6Oi1tcy1leHBhbmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuLmZvcm0tY29udHJvbDpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEyNy41LCAxODksIDI1NSk7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cbi5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM2NDYxNjM7XG4gIG9wYWNpdHk6IDE7XG59XG4uZm9ybS1jb250cm9sOmRpc2FibGVkLCAuZm9ybS1jb250cm9sW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3ZjU7XG4gIG9wYWNpdHk6IDE7XG59XG5cbmlucHV0W3R5cGU9ZGF0ZV0uZm9ybS1jb250cm9sLFxuaW5wdXRbdHlwZT10aW1lXS5mb3JtLWNvbnRyb2wsXG5pbnB1dFt0eXBlPWRhdGV0aW1lLWxvY2FsXS5mb3JtLWNvbnRyb2wsXG5pbnB1dFt0eXBlPW1vbnRoXS5mb3JtLWNvbnRyb2wge1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sOi1tb3otZm9jdXNyaW5nIHtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogMCAwIDAgIzNhMzgzZDtcbn1cbnNlbGVjdC5mb3JtLWNvbnRyb2w6Zm9jdXMtdmlzaWJsZTo6LW1zLXZhbHVlIHtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5mb3JtLWNvbnRyb2wtZmlsZSxcbi5mb3JtLWNvbnRyb2wtcmFuZ2Uge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbCB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuMzc1cmVtICsgMXB4KTtcbiAgcGFkZGluZy1ib3R0b206IGNhbGMoMC4zNzVyZW0gKyAxcHgpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1sZyB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuNXJlbSArIDFweCk7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLmNvbC1mb3JtLWxhYmVsLXNtIHtcbiAgcGFkZGluZy10b3A6IGNhbGMoMC4yNXJlbSArIDFweCk7XG4gIHBhZGRpbmctYm90dG9tOiBjYWxjKDAuMjVyZW0gKyAxcHgpO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC4zNzVyZW0gMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDFweCAwO1xufVxuLmZvcm0tY29udHJvbC1wbGFpbnRleHQuZm9ybS1jb250cm9sLXNtLCAuZm9ybS1jb250cm9sLXBsYWludGV4dC5mb3JtLWNvbnRyb2wtbGcge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuXG4uZm9ybS1jb250cm9sLWxnIHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMXJlbSArIDJweCk7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuc2VsZWN0LmZvcm0tY29udHJvbFtzaXplXSwgc2VsZWN0LmZvcm0tY29udHJvbFttdWx0aXBsZV0ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbnRleHRhcmVhLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmZvcm0tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuXG4uZm9ybS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG59XG5cbi5mb3JtLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICBtYXJnaW4tbGVmdDogLTVweDtcbn1cbi5mb3JtLXJvdyA+IC5jb2wsXG4uZm9ybS1yb3cgPiBbY2xhc3MqPWNvbC1dIHtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDVweDtcbn1cblxuLmZvcm0tY2hlY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAwLjNyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbn1cbi5mb3JtLWNoZWNrLWlucHV0W2Rpc2FibGVkXSB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICM2NDYxNjM7XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmZvcm0tY2hlY2staW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xufVxuLmZvcm0tY2hlY2staW5saW5lIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjMxMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4udmFsaWQtZmVlZGJhY2sge1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBjb2xvcjogIzBjNzI2NTtcbn1cblxuLnZhbGlkLXRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjVyZW0gMC43NXJlbTtcbiAgbWFyZ2luLXRvcDogMC4xcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGM3MjY1O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmZvcm0tcm93ID4gLmNvbCA+IC52YWxpZC10b29sdGlwLCAuZm9ybS1yb3cgPiBbY2xhc3MqPWNvbC1dID4gLnZhbGlkLXRvb2x0aXAge1xuICBsZWZ0OiA1cHg7XG59XG5cbi53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIDp2YWxpZCB+IC52YWxpZC10b29sdGlwLFxuLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmlzLXZhbGlkIH4gLnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDp2YWxpZCwgLmZvcm0tY29udHJvbC5pcy12YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogIzBjNzI2NTtcbn1cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNvbnRyb2w6dmFsaWQ6Zm9jdXMtdmlzaWJsZSwgLmZvcm0tY29udHJvbC5pcy12YWxpZDpmb2N1cy12aXNpYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGM3MjY1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMiwgMTE0LCAxMDEsIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZCwgLmN1c3RvbS1zZWxlY3QuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMwYzcyNjU7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXNlbGVjdDp2YWxpZDpmb2N1cy12aXNpYmxlLCAuY3VzdG9tLXNlbGVjdC5pcy12YWxpZDpmb2N1cy12aXNpYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGM3MjY1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMiwgMTE0LCAxMDEsIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsLCAuZm9ybS1jaGVjay1pbnB1dC5pcy12YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICMwYzcyNjU7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDp2YWxpZCB+IC52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OnZhbGlkIH4gLnZhbGlkLXRvb2x0aXAsIC5mb3JtLWNoZWNrLWlucHV0LmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtdmFsaWQgfiAudmFsaWQtdG9vbHRpcCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6dmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIGNvbG9yOiAjMGM3MjY1O1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGM3MjY1O1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLXZhbGlkOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE2Ljg1NzE0Mjg1NzEsIDE2MC4xNDI4NTcxNDI5LCAxNDEuODgwOTUyMzgxKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2Ljg1NzE0Mjg1NzEsIDE2MC4xNDI4NTcxNDI5LCAxNDEuODgwOTUyMzgxKTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tY29udHJvbC1pbnB1dDp2YWxpZDpmb2N1cy12aXNpYmxlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy12YWxpZDpmb2N1cy12aXNpYmxlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMiwgMTE0LCAxMDEsIDAuMjUpO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OnZhbGlkOmZvY3VzLXZpc2libGU6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtdmFsaWQ6Zm9jdXMtdmlzaWJsZTpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICMwYzcyNjU7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDp2YWxpZCB+IC5jdXN0b20tZmlsZS1sYWJlbCwgLmN1c3RvbS1maWxlLWlucHV0LmlzLXZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGM3MjY1O1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1maWxlLWlucHV0OnZhbGlkOmZvY3VzLXZpc2libGUgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy12YWxpZDpmb2N1cy12aXNpYmxlIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGM3MjY1O1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMiwgMTE0LCAxMDEsIDAuMjUpO1xufVxuXG4uaW52YWxpZC1mZWVkYmFjayB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIGNvbG9yOiAjYzUyMDQyO1xufVxuXG4uaW52YWxpZC10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIG1hcmdpbi10b3A6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MjA0MjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cbi5mb3JtLXJvdyA+IC5jb2wgPiAuaW52YWxpZC10b29sdGlwLCAuZm9ybS1yb3cgPiBbY2xhc3MqPWNvbC1dID4gLmludmFsaWQtdG9vbHRpcCB7XG4gIGxlZnQ6IDVweDtcbn1cblxuLndhcy12YWxpZGF0ZWQgOmludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi53YXMtdmFsaWRhdGVkIDppbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCxcbi5pcy1pbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4uaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmZvcm0tY29udHJvbDppbnZhbGlkLCAuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBib3JkZXItY29sb3I6ICNjNTIwNDI7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jb250cm9sOmludmFsaWQ6Zm9jdXMtdmlzaWJsZSwgLmZvcm0tY29udHJvbC5pcy1pbnZhbGlkOmZvY3VzLXZpc2libGUge1xuICBib3JkZXItY29sb3I6ICNjNTIwNDI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE5NywgMzIsIDY2LCAwLjI1KTtcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1zZWxlY3Q6aW52YWxpZCwgLmN1c3RvbS1zZWxlY3QuaXMtaW52YWxpZCB7XG4gIGJvcmRlci1jb2xvcjogI2M1MjA0Mjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tc2VsZWN0OmludmFsaWQ6Zm9jdXMtdmlzaWJsZSwgLmN1c3RvbS1zZWxlY3QuaXMtaW52YWxpZDpmb2N1cy12aXNpYmxlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYzUyMDQyO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxOTcsIDMyLCA2NiwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5mb3JtLWNoZWNrLWlucHV0OmludmFsaWQgfiAuZm9ybS1jaGVjay1sYWJlbCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgY29sb3I6ICNjNTIwNDI7XG59XG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCAuZm9ybS1jaGVjay1pbnB1dDppbnZhbGlkIH4gLmludmFsaWQtdG9vbHRpcCwgLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5pbnZhbGlkLWZlZWRiYWNrLFxuLmZvcm0tY2hlY2staW5wdXQuaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsIC5jdXN0b20tY29udHJvbC1pbnB1dC5pcy1pbnZhbGlkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgY29sb3I6ICNjNTIwNDI7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjYzUyMDQyO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHJnYigyMjIuODYwMjYyMDA4NywgNTcuMTM5NzM3OTkxMywgOTEuMjg4MjA5NjA3KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyMi44NjAyNjIwMDg3LCA1Ny4xMzk3Mzc5OTEzLCA5MS4yODgyMDk2MDcpO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1jb250cm9sLWlucHV0OmludmFsaWQ6Zm9jdXMtdmlzaWJsZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQuaXMtaW52YWxpZDpmb2N1cy12aXNpYmxlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxOTcsIDMyLCA2NiwgMC4yNSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW52YWxpZDpmb2N1cy12aXNpYmxlOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSwgLmN1c3RvbS1jb250cm9sLWlucHV0LmlzLWludmFsaWQ6Zm9jdXMtdmlzaWJsZTpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6ICNjNTIwNDI7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkIH4gLmN1c3RvbS1maWxlLWxhYmVsLCAuY3VzdG9tLWZpbGUtaW5wdXQuaXMtaW52YWxpZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIGJvcmRlci1jb2xvcjogI2M1MjA0Mjtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tZmlsZS1pbnB1dDppbnZhbGlkOmZvY3VzLXZpc2libGUgfiAuY3VzdG9tLWZpbGUtbGFiZWwsIC5jdXN0b20tZmlsZS1pbnB1dC5pcy1pbnZhbGlkOmZvY3VzLXZpc2libGUgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICBib3JkZXItY29sb3I6ICNjNTIwNDI7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE5NywgMzIsIDY2LCAwLjI1KTtcbn1cblxuLmZvcm0taW5saW5lIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5mb3JtLWlubGluZSAuZm9ybS1jaGVjayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5mb3JtLWlubGluZSBsYWJlbCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLmZvcm0taW5saW5lIC5mb3JtLWdyb3VwIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmlucHV0LWdyb3VwLFxuICAuZm9ybS1pbmxpbmUgLmN1c3RvbS1zZWxlY3Qge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIC5mb3JtLWlubGluZSAuZm9ybS1jaGVjayB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZm9ybS1pbmxpbmUgLmN1c3RvbS1jb250cm9sIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5mb3JtLWlubGluZSAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5idG4ge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5idG46aG92ZXIge1xuICBjb2xvcjogIzNhMzgzZDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJ0bjpmb2N1cy12aXNpYmxlLCAuYnRuLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuLmJ0bi5kaXNhYmxlZCwgLmJ0bjpkaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG4uYnRuOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuYS5idG4uZGlzYWJsZWQsXG5maWVsZHNldDpkaXNhYmxlZCBhLmJ0biB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uYnRuLXByaW1hcnkge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuLmJ0bi1wcmltYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAxMDQuNTUsIDIxNi43NSk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDAsIDk4LjQsIDIwNCk7XG59XG4uYnRuLXByaW1hcnk6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5LmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAxMDQuNTUsIDIxNi43NSk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDAsIDk4LjQsIDIwNCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDM4LjI1LCAxNDIuOCwgMjU1LCAwLjUpO1xufVxuLmJ0bi1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLXByaW1hcnk6ZGlzYWJsZWQge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCA5OC40LCAyMDQpO1xuICBib3JkZXItY29sb3I6IHJnYigwLCA5Mi4yNSwgMTkxLjI1KTtcbn1cbi5idG4tcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuc2hvdyA+IC5idG4tcHJpbWFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDM4LjI1LCAxNDIuOCwgMjU1LCAwLjUpO1xufVxuXG4uYnRuLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlYmVhO1xuICBib3JkZXItY29sb3I6ICNlY2ViZWE7XG59XG4uYnRuLXNlY29uZGFyeTpob3ZlciB7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjE3LjgzMTI1LCAyMTUuODc1LCAyMTMuOTE4NzUpO1xuICBib3JkZXItY29sb3I6IHJnYigyMTEuNzc1LCAyMDkuNSwgMjA3LjIyNSk7XG59XG4uYnRuLXNlY29uZGFyeTpmb2N1cy12aXNpYmxlLCAuYnRuLXNlY29uZGFyeS5mb2N1cyB7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjE3LjgzMTI1LCAyMTUuODc1LCAyMTMuOTE4NzUpO1xuICBib3JkZXItY29sb3I6IHJnYigyMTEuNzc1LCAyMDkuNSwgMjA3LjIyNSk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIwNi42LCAyMDUuNiwgMjA1LjY1LCAwLjUpO1xufVxuLmJ0bi1zZWNvbmRhcnkuZGlzYWJsZWQsIC5idG4tc2Vjb25kYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICMyODI3MmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2ViZWE7XG4gIGJvcmRlci1jb2xvcjogI2VjZWJlYTtcbn1cbi5idG4tc2Vjb25kYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tc2Vjb25kYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjExLjc3NSwgMjA5LjUsIDIwNy4yMjUpO1xuICBib3JkZXItY29sb3I6IHJnYigyMDUuNzE4NzUsIDIwMy4xMjUsIDIwMC41MzEyNSk7XG59XG4uYnRuLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5zaG93ID4gLmJ0bi1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMDYuNiwgMjA1LjYsIDIwNS42NSwgMC41KTtcbn1cblxuLmJ0bi1zdWNjZXNzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzcyNjU7XG4gIGJvcmRlci1jb2xvcjogIzBjNzI2NTtcbn1cbi5idG4tc3VjY2Vzczpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOC4zNTcxNDI4NTcxLCA3OS4zOTI4NTcxNDI5LCA3MC4zMzkyODU3MTQzKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoNy4xNDI4NTcxNDI5LCA2Ny44NTcxNDI4NTcxLCA2MC4xMTkwNDc2MTkpO1xufVxuLmJ0bi1zdWNjZXNzOmZvY3VzLXZpc2libGUsIC5idG4tc3VjY2Vzcy5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOC4zNTcxNDI4NTcxLCA3OS4zOTI4NTcxNDI5LCA3MC4zMzkyODU3MTQzKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoNy4xNDI4NTcxNDI5LCA2Ny44NTcxNDI4NTcxLCA2MC4xMTkwNDc2MTkpO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg0OC40NSwgMTM1LjE1LCAxMjQuMSwgMC41KTtcbn1cbi5idG4tc3VjY2Vzcy5kaXNhYmxlZCwgLmJ0bi1zdWNjZXNzOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzcyNjU7XG4gIGJvcmRlci1jb2xvcjogIzBjNzI2NTtcbn1cbi5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNy4xNDI4NTcxNDI5LCA2Ny44NTcxNDI4NTcxLCA2MC4xMTkwNDc2MTkpO1xuICBib3JkZXItY29sb3I6IHJnYig1LjkyODU3MTQyODYsIDU2LjMyMTQyODU3MTQsIDQ5Ljg5ODgwOTUyMzgpO1xufVxuLmJ0bi1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5zaG93ID4gLmJ0bi1zdWNjZXNzLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNDguNDUsIDEzNS4xNSwgMTI0LjEsIDAuNSk7XG59XG5cbi5idG4taW5mbyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWY3M2NhO1xuICBib3JkZXItY29sb3I6ICMxZjczY2E7XG59XG4uYnRuLWluZm86aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1LjkxMDk0NDIwNiwgOTYuMTIxMjQ0NjM1MiwgMTY4LjgzOTA1NTc5NCk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDI0LjIxNDU5MjI3NDcsIDg5LjgyODMyNjE4MDMsIDE1Ny43ODU0MDc3MjUzKTtcbn1cbi5idG4taW5mbzpmb2N1cy12aXNpYmxlLCAuYnRuLWluZm8uZm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1LjkxMDk0NDIwNiwgOTYuMTIxMjQ0NjM1MiwgMTY4LjgzOTA1NTc5NCk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDI0LjIxNDU5MjI3NDcsIDg5LjgyODMyNjE4MDMsIDE1Ny43ODU0MDc3MjUzKTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNjQuNiwgMTM2LCAyMDkuOTUsIDAuNSk7XG59XG4uYnRuLWluZm8uZGlzYWJsZWQsIC5idG4taW5mbzpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMWY3M2NhO1xuICBib3JkZXItY29sb3I6ICMxZjczY2E7XG59XG4uYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4taW5mby5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0LjIxNDU5MjI3NDcsIDg5LjgyODMyNjE4MDMsIDE1Ny43ODU0MDc3MjUzKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMjIuNTE4MjQwMzQzMywgODMuNTM1NDA3NzI1MywgMTQ2LjczMTc1OTY1NjcpO1xufVxuLmJ0bi1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5zaG93ID4gLmJ0bi1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoNjQuNiwgMTM2LCAyMDkuOTUsIDAuNSk7XG59XG5cbi5idG4td2FybmluZyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjM0MDEzO1xuICBib3JkZXItY29sb3I6ICNiMzQwMTM7XG59XG4uYnRuLXdhcm5pbmc6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE0NC40MjA0NTQ1NDU1LCA1MS42MzYzNjM2MzY0LCAxNS4zMjk1NDU0NTQ1KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTMyLjg5MzkzOTM5MzksIDQ3LjUxNTE1MTUxNTIsIDE0LjEwNjA2MDYwNjEpO1xufVxuLmJ0bi13YXJuaW5nOmZvY3VzLXZpc2libGUsIC5idG4td2FybmluZy5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTQ0LjQyMDQ1NDU0NTUsIDUxLjYzNjM2MzYzNjQsIDE1LjMyOTU0NTQ1NDUpO1xuICBib3JkZXItY29sb3I6IHJnYigxMzIuODkzOTM5MzkzOSwgNDcuNTE1MTUxNTE1MiwgMTQuMTA2MDYwNjA2MSk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE5MC40LCA5Mi42NSwgNTQuNCwgMC41KTtcbn1cbi5idG4td2FybmluZy5kaXNhYmxlZCwgLmJ0bi13YXJuaW5nOmRpc2FibGVkIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMzQwMTM7XG4gIGJvcmRlci1jb2xvcjogI2IzNDAxMztcbn1cbi5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi13YXJuaW5nLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTMyLjg5MzkzOTM5MzksIDQ3LjUxNTE1MTUxNTIsIDE0LjEwNjA2MDYwNjEpO1xuICBib3JkZXItY29sb3I6IHJnYigxMjEuMzY3NDI0MjQyNCwgNDMuMzkzOTM5MzkzOSwgMTIuODgyNTc1NzU3Nik7XG59XG4uYnRuLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4td2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnNob3cgPiAuYnRuLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxOTAuNCwgOTIuNjUsIDU0LjQsIDAuNSk7XG59XG5cbi5idG4tZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNTIwNDI7XG4gIGJvcmRlci1jb2xvcjogI2M1MjA0Mjtcbn1cbi5idG4tZGFuZ2VyOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjQuMDk0OTc4MTY1OSwgMjYuNjU1MDIxODM0MSwgNTQuOTc1OTgyNTMyOCk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE1My4xMjY2Mzc1NTQ2LCAyNC44NzMzNjI0NDU0LCA1MS4zMDEzMTAwNDM3KTtcbn1cbi5idG4tZGFuZ2VyOmZvY3VzLXZpc2libGUsIC5idG4tZGFuZ2VyLmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjQuMDk0OTc4MTY1OSwgMjYuNjU1MDIxODM0MSwgNTQuOTc1OTgyNTMyOCk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE1My4xMjY2Mzc1NTQ2LCAyNC44NzMzNjI0NDU0LCA1MS4zMDEzMTAwNDM3KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjA1LjcsIDY1LjQ1LCA5NC4zNSwgMC41KTtcbn1cbi5idG4tZGFuZ2VyLmRpc2FibGVkLCAuYnRuLWRhbmdlcjpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzUyMDQyO1xuICBib3JkZXItY29sb3I6ICNjNTIwNDI7XG59XG4uYnRuLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLWRhbmdlci5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE1My4xMjY2Mzc1NTQ2LCAyNC44NzMzNjI0NDU0LCA1MS4zMDEzMTAwNDM3KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTQyLjE1ODI5Njk0MzIsIDIzLjA5MTcwMzA1NjgsIDQ3LjYyNjYzNzU1NDYpO1xufVxuLmJ0bi1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tZGFuZ2VyOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuc2hvdyA+IC5idG4tZGFuZ2VyLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjA1LjcsIDY1LjQ1LCA5NC4zNSwgMC41KTtcbn1cblxuLmJ0bi1saWdodCB7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkYmQ5O1xuICBib3JkZXItY29sb3I6ICNkY2RiZDk7XG59XG4uYnRuLWxpZ2h0OmhvdmVyIHtcbiAgY29sb3I6ICMyODI3MmQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDEuNjYwOTU4OTA0MSwgMjAwLjEzNjk4NjMwMTQsIDE5Ny4wODkwNDEwOTU5KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTk1LjU0Nzk0NTIwNTUsIDE5My44NDkzMTUwNjg1LCAxOTAuNDUyMDU0Nzk0NSk7XG59XG4uYnRuLWxpZ2h0OmZvY3VzLXZpc2libGUsIC5idG4tbGlnaHQuZm9jdXMge1xuICBjb2xvcjogIzI4MjcyZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwMS42NjA5NTg5MDQxLCAyMDAuMTM2OTg2MzAxNCwgMTk3LjA4OTA0MTA5NTkpO1xuICBib3JkZXItY29sb3I6IHJnYigxOTUuNTQ3OTQ1MjA1NSwgMTkzLjg0OTMxNTA2ODUsIDE5MC40NTIwNTQ3OTQ1KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTkzLCAxOTIsIDE5MS4yLCAwLjUpO1xufVxuLmJ0bi1saWdodC5kaXNhYmxlZCwgLmJ0bi1saWdodDpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkYmQ5O1xuICBib3JkZXItY29sb3I6ICNkY2RiZDk7XG59XG4uYnRuLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1saWdodDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzI4MjcyZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5NS41NDc5NDUyMDU1LCAxOTMuODQ5MzE1MDY4NSwgMTkwLjQ1MjA1NDc5NDUpO1xuICBib3JkZXItY29sb3I6IHJnYigxODkuNDM0OTMxNTA2OCwgMTg3LjU2MTY0MzgzNTYsIDE4My44MTUwNjg0OTMyKTtcbn1cbi5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5zaG93ID4gLmJ0bi1saWdodC5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE5MywgMTkyLCAxOTEuMiwgMC41KTtcbn1cblxuLmJ0bi1kYXJrIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYTM4M2Q7XG4gIGJvcmRlci1jb2xvcjogIzNhMzgzZDtcbn1cbi5idG4tZGFyazpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzkuMDM4NDYxNTM4NSwgMzcuNjkyMzA3NjkyMywgNDEuMDU3NjkyMzA3Nyk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDMyLjcxNzk0ODcxNzksIDMxLjU4OTc0MzU4OTcsIDM0LjQxMDI1NjQxMDMpO1xufVxuLmJ0bi1kYXJrOmZvY3VzLXZpc2libGUsIC5idG4tZGFyay5mb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzkuMDM4NDYxNTM4NSwgMzcuNjkyMzA3NjkyMywgNDEuMDU3NjkyMzA3Nyk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDMyLjcxNzk0ODcxNzksIDMxLjU4OTc0MzU4OTcsIDM0LjQxMDI1NjQxMDMpO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg4Ny41NSwgODUuODUsIDkwLjEsIDAuNSk7XG59XG4uYnRuLWRhcmsuZGlzYWJsZWQsIC5idG4tZGFyazpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2EzODNkO1xuICBib3JkZXItY29sb3I6ICMzYTM4M2Q7XG59XG4uYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tZGFyay5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDMyLjcxNzk0ODcxNzksIDMxLjU4OTc0MzU4OTcsIDM0LjQxMDI1NjQxMDMpO1xuICBib3JkZXItY29sb3I6IHJnYigyNi4zOTc0MzU4OTc0LCAyNS40ODcxNzk0ODcyLCAyNy43NjI4MjA1MTI4KTtcbn1cbi5idG4tZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuc2hvdyA+IC5idG4tZGFyay5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDg3LjU1LCA4NS44NSwgOTAuMSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXByaW1hcnkge1xuICBjb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuLmJ0bi1vdXRsaW5lLXByaW1hcnk6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1vdXRsaW5lLXByaW1hcnkuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtcHJpbWFyeTpkaXNhYmxlZCB7XG4gIGNvbG9yOiAjMDA3YmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idG4tb3V0bGluZS1wcmltYXJ5Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1wcmltYXJ5LmRyb3Bkb3duLXRvZ2dsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXItY29sb3I6ICMwMDdiZmY7XG59XG4uYnRuLW91dGxpbmUtcHJpbWFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1vdXRsaW5lLXByaW1hcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXByaW1hcnkuZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjZWNlYmVhO1xuICBib3JkZXItY29sb3I6ICNlY2ViZWE7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmhvdmVyIHtcbiAgY29sb3I6ICMyODI3MmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2ViZWE7XG4gIGJvcmRlci1jb2xvcjogI2VjZWJlYTtcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzNiwgMjM1LCAyMzQsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtc2Vjb25kYXJ5OmRpc2FibGVkIHtcbiAgY29sb3I6ICNlY2ViZWE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLXNlY29uZGFyeTpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1zZWNvbmRhcnkuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICMyODI3MmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2ViZWE7XG4gIGJvcmRlci1jb2xvcjogI2VjZWJlYTtcbn1cbi5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tb3V0bGluZS1zZWNvbmRhcnk6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXNlY29uZGFyeS5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDIzNiwgMjM1LCAyMzQsIDAuNSk7XG59XG5cbi5idG4tb3V0bGluZS1zdWNjZXNzIHtcbiAgY29sb3I6ICMwYzcyNjU7XG4gIGJvcmRlci1jb2xvcjogIzBjNzI2NTtcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzOmhvdmVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzcyNjU7XG4gIGJvcmRlci1jb2xvcjogIzBjNzI2NTtcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzOmZvY3VzLXZpc2libGUsIC5idG4tb3V0bGluZS1zdWNjZXNzLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTIsIDExNCwgMTAxLCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1zdWNjZXNzOmRpc2FibGVkIHtcbiAgY29sb3I6ICMwYzcyNjU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLXN1Y2Nlc3M6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXN1Y2Nlc3MuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzcyNjU7XG4gIGJvcmRlci1jb2xvcjogIzBjNzI2NTtcbn1cbi5idG4tb3V0bGluZS1zdWNjZXNzOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmUtc3VjY2Vzczpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnNob3cgPiAuYnRuLW91dGxpbmUtc3VjY2Vzcy5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEyLCAxMTQsIDEwMSwgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWluZm8ge1xuICBjb2xvcjogIzFmNzNjYTtcbiAgYm9yZGVyLWNvbG9yOiAjMWY3M2NhO1xufVxuLmJ0bi1vdXRsaW5lLWluZm86aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFmNzNjYTtcbiAgYm9yZGVyLWNvbG9yOiAjMWY3M2NhO1xufVxuLmJ0bi1vdXRsaW5lLWluZm86Zm9jdXMtdmlzaWJsZSwgLmJ0bi1vdXRsaW5lLWluZm8uZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgzMSwgMTE1LCAyMDIsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtaW5mby5kaXNhYmxlZCwgLmJ0bi1vdXRsaW5lLWluZm86ZGlzYWJsZWQge1xuICBjb2xvcjogIzFmNzNjYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLW91dGxpbmUtaW5mbzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgLnNob3cgPiAuYnRuLW91dGxpbmUtaW5mby5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzFmNzNjYTtcbiAgYm9yZGVyLWNvbG9yOiAjMWY3M2NhO1xufVxuLmJ0bi1vdXRsaW5lLWluZm86bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tb3V0bGluZS1pbmZvOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1pbmZvLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMzEsIDExNSwgMjAyLCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtd2FybmluZyB7XG4gIGNvbG9yOiAjYjM0MDEzO1xuICBib3JkZXItY29sb3I6ICNiMzQwMTM7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjM0MDEzO1xuICBib3JkZXItY29sb3I6ICNiMzQwMTM7XG59XG4uYnRuLW91dGxpbmUtd2FybmluZzpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmUtd2FybmluZy5mb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE3OSwgNjQsIDE5LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZGlzYWJsZWQsIC5idG4tb3V0bGluZS13YXJuaW5nOmRpc2FibGVkIHtcbiAgY29sb3I6ICNiMzQwMTM7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLXdhcm5pbmc6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLXdhcm5pbmcuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNiMzQwMTM7XG4gIGJvcmRlci1jb2xvcjogI2IzNDAxMztcbn1cbi5idG4tb3V0bGluZS13YXJuaW5nOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmUtd2FybmluZzpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnNob3cgPiAuYnRuLW91dGxpbmUtd2FybmluZy5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE3OSwgNjQsIDE5LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtZGFuZ2VyIHtcbiAgY29sb3I6ICNjNTIwNDI7XG4gIGJvcmRlci1jb2xvcjogI2M1MjA0Mjtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXI6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MjA0MjtcbiAgYm9yZGVyLWNvbG9yOiAjYzUyMDQyO1xufVxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmUtZGFuZ2VyLmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTk3LCAzMiwgNjYsIDAuNSk7XG59XG4uYnRuLW91dGxpbmUtZGFuZ2VyLmRpc2FibGVkLCAuYnRuLW91dGxpbmUtZGFuZ2VyOmRpc2FibGVkIHtcbiAgY29sb3I6ICNjNTIwNDI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLWRhbmdlcjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKTphY3RpdmUsIC5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1kYW5nZXIuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNTIwNDI7XG4gIGJvcmRlci1jb2xvcjogI2M1MjA0Mjtcbn1cbi5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5idG4tb3V0bGluZS1kYW5nZXI6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhbmdlci5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE5NywgMzIsIDY2LCAwLjUpO1xufVxuXG4uYnRuLW91dGxpbmUtbGlnaHQge1xuICBjb2xvcjogI2RjZGJkOTtcbiAgYm9yZGVyLWNvbG9yOiAjZGNkYmQ5O1xufVxuLmJ0bi1vdXRsaW5lLWxpZ2h0OmhvdmVyIHtcbiAgY29sb3I6ICMyODI3MmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkY2RiZDk7XG4gIGJvcmRlci1jb2xvcjogI2RjZGJkOTtcbn1cbi5idG4tb3V0bGluZS1saWdodDpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmUtbGlnaHQuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgyMjAsIDIxOSwgMjE3LCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWxpZ2h0LmRpc2FibGVkLCAuYnRuLW91dGxpbmUtbGlnaHQ6ZGlzYWJsZWQge1xuICBjb2xvcjogI2RjZGJkOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlLCAuc2hvdyA+IC5idG4tb3V0bGluZS1saWdodC5kcm9wZG93bi10b2dnbGUge1xuICBjb2xvcjogIzI4MjcyZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RjZGJkOTtcbiAgYm9yZGVyLWNvbG9yOiAjZGNkYmQ5O1xufVxuLmJ0bi1vdXRsaW5lLWxpZ2h0Om5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmUtbGlnaHQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkuYWN0aXZlOmZvY3VzLXZpc2libGUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWxpZ2h0LmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCAyMTksIDIxNywgMC41KTtcbn1cblxuLmJ0bi1vdXRsaW5lLWRhcmsge1xuICBjb2xvcjogIzNhMzgzZDtcbiAgYm9yZGVyLWNvbG9yOiAjM2EzODNkO1xufVxuLmJ0bi1vdXRsaW5lLWRhcms6aG92ZXIge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhMzgzZDtcbiAgYm9yZGVyLWNvbG9yOiAjM2EzODNkO1xufVxuLmJ0bi1vdXRsaW5lLWRhcms6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1vdXRsaW5lLWRhcmsuZm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSg1OCwgNTYsIDYxLCAwLjUpO1xufVxuLmJ0bi1vdXRsaW5lLWRhcmsuZGlzYWJsZWQsIC5idG4tb3V0bGluZS1kYXJrOmRpc2FibGVkIHtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ0bi1vdXRsaW5lLWRhcms6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCAuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsIC5zaG93ID4gLmJ0bi1vdXRsaW5lLWRhcmsuZHJvcGRvd24tdG9nZ2xlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYTM4M2Q7XG4gIGJvcmRlci1jb2xvcjogIzNhMzgzZDtcbn1cbi5idG4tb3V0bGluZS1kYXJrOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuYnRuLW91dGxpbmUtZGFyazpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLnNob3cgPiAuYnRuLW91dGxpbmUtZGFyay5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDU4LCA1NiwgNjEsIDAuNSk7XG59XG5cbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWxpbmspO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYnRuLWxpbms6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1saW5rKTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnRuLWxpbms6Zm9jdXMtdmlzaWJsZSwgLmJ0bi1saW5rLmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uYnRuLWxpbms6ZGlzYWJsZWQsIC5idG4tbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNjQ2MTYzO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmJ0bi1sZywgLmJ0bi1ncm91cC1sZyA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbi5idG4tc20sIC5idG4tZ3JvdXAtc20gPiAuYnRuIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbn1cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuXG5pbnB1dFt0eXBlPXN1Ym1pdF0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1yZXNldF0uYnRuLWJsb2NrLFxuaW5wdXRbdHlwZT1idXR0b25dLmJ0bi1ibG9jayB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZmFkZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZhZGUge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5mYWRlOm5vdCguc2hvdykge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uY29sbGFwc2U6bm90KC5zaG93KSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjM1cyBlYXNlO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmNvbGxhcHNpbmcge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jb2xsYXBzaW5nLndpZHRoIHtcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogYXV0bztcbiAgdHJhbnNpdGlvbjogd2lkdGggMC4zNXMgZWFzZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jb2xsYXBzaW5nLndpZHRoIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5kcm9wdXAsXG4uZHJvcHJpZ2h0LFxuLmRyb3Bkb3duLFxuLmRyb3BsZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkO1xuICBib3JkZXItcmlnaHQ6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcGRvd24tdG9nZ2xlOmVtcHR5OjphZnRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBkaXNwbGF5OiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIG1hcmdpbjogMC4xMjVyZW0gMCAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjM2EzODNkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDUsIDQsIDgsIDAuMTUpO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG5cbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi5kcm9wdXAgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IGF1dG87XG4gIGJvdHRvbTogMTAwJTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC4xMjVyZW07XG59XG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkO1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcHVwIC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5kcm9wcmlnaHQgLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tbGVmdDogMC4xMjVyZW07XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC4yNTVlbTtcbiAgdmVydGljYWwtYWxpZ246IDAuMjU1ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3A6IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci1ib3R0b206IDAuM2VtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMC4zZW0gc29saWQ7XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6ZW1wdHk6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgdmVydGljYWwtYWxpZ246IDA7XG59XG5cbi5kcm9wbGVmdCAuZHJvcGRvd24tbWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC4xMjVyZW07XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1NWVtO1xuICB2ZXJ0aWNhbC1hbGlnbjogMC4yNTVlbTtcbiAgY29udGVudDogXCJcIjtcbn1cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjU1ZW07XG4gIHZlcnRpY2FsLWFsaWduOiAwLjI1NWVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItdG9wOiAwLjNlbSBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAwLjNlbSBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogMC4zZW0gc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZTplbXB0eTo6YWZ0ZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5kcm9wbGVmdCAuZHJvcGRvd24tdG9nZ2xlOjpiZWZvcmUge1xuICB2ZXJ0aWNhbC1hbGlnbjogMDtcbn1cblxuLmRyb3Bkb3duLW1lbnVbeC1wbGFjZW1lbnRePXRvcF0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1yaWdodF0sIC5kcm9wZG93bi1tZW51W3gtcGxhY2VtZW50Xj1ib3R0b21dLCAuZHJvcGRvd24tbWVudVt4LXBsYWNlbWVudF49bGVmdF0ge1xuICByaWdodDogYXV0bztcbiAgYm90dG9tOiBhdXRvO1xufVxuXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiA0cHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjMWJmYmU7XG59XG5cbi5kcm9wZG93bi1pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuLmRyb3Bkb3duLWl0ZW06aG92ZXIsIC5kcm9wZG93bi1pdGVtOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogcmdiKDI3Ljg1NzE0Mjg1NzEsIDI3LjE2MDcxNDI4NTcsIDMxLjMzOTI4NTcxNDMpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWJmYmU7XG59XG4uZHJvcGRvd24taXRlbS5hY3RpdmUsIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG59XG4uZHJvcGRvd24taXRlbS5kaXNhYmxlZCwgLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWQge1xuICBjb2xvcjogIzc0NzI3MztcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uZHJvcGRvd24tbWVudS5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtIDEycHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjNjQ2MTYzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZHJvcGRvd24taXRlbS10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICBjb2xvcjogIzI4MjcyZDtcbn1cblxuLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLmJ0bi1ncm91cCA+IC5idG4sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG59XG4uYnRuLWdyb3VwID4gLmJ0bjpob3Zlcixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmhvdmVyIHtcbiAgei1pbmRleDogMTtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuOmZvY3VzLXZpc2libGUsIC5idG4tZ3JvdXAgPiAuYnRuOmFjdGl2ZSwgLmJ0bi1ncm91cCA+IC5idG4uYWN0aXZlLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG46Zm9jdXMtdmlzaWJsZSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOmFjdGl2ZSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLmFjdGl2ZSB7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLmJ0bi10b29sYmFyIC5pbnB1dC1ncm91cCB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC41NjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNTYyNXJlbTtcbn1cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcHVwIC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyLCAuZHJvcHJpZ2h0IC5kcm9wZG93bi10b2dnbGUtc3BsaXQ6OmFmdGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcGxlZnQgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdDo6YmVmb3JlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uYnRuLXNtICsgLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCwgLmJ0bi1ncm91cC1zbSA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgcGFkZGluZy1yaWdodDogMC4zNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC4zNzVyZW07XG59XG5cbi5idG4tbGcgKyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LCAuYnRuLWdyb3VwLWxnID4gLmJ0biArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bixcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bi1ncm91cCA+IC5idG4ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmJ0bi1ncm91cC10b2dnbGUgPiAuYnRuIGlucHV0W3R5cGU9cmFkaW9dLFxuLmJ0bi1ncm91cC10b2dnbGUgPiAuYnRuIGlucHV0W3R5cGU9Y2hlY2tib3hdLFxuLmJ0bi1ncm91cC10b2dnbGUgPiAuYnRuLWdyb3VwID4gLmJ0biBpbnB1dFt0eXBlPXJhZGlvXSxcbi5idG4tZ3JvdXAtdG9nZ2xlID4gLmJ0bi1ncm91cCA+IC5idG4gaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsZXg6IDEgMSBhdXRvO1xuICB3aWR0aDogMSU7XG4gIG1pbi13aWR0aDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wgKyAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCArIC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbCArIC5jdXN0b20tZmlsZSxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0ICsgLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0ICsgLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCArIC5jdXN0b20tZmlsZSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0ICsgLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0ICsgLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXNlbGVjdCArIC5jdXN0b20tZmlsZSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgKyAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSArIC5jdXN0b20tZmlsZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpmb2N1cy12aXNpYmxlLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1zZWxlY3Q6Zm9jdXMtdmlzaWJsZSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMtdmlzaWJsZSB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHotaW5kZXg6IDM7XG59XG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzLXZpc2libGUge1xuICB6LWluZGV4OiA0O1xufVxuLmlucHV0LWdyb3VwID4gLmZvcm0tY29udHJvbDpub3QoOmZpcnN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsIC5pbnB1dC1ncm91cCA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLWZpbGU6bm90KDpmaXJzdC1jaGlsZCkgLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5mb3JtLWNvbnRyb2w6bm90KDpsYXN0LWNoaWxkKSxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5jdXN0b20tc2VsZWN0Om5vdCg6bGFzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuY3VzdG9tLWZpbGU6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWw6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmZvcm0tY29udHJvbDpudGgtbGFzdC1jaGlsZChuKzMpLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmN1c3RvbS1zZWxlY3Q6bnRoLWxhc3QtY2hpbGQobiszKSxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5jdXN0b20tZmlsZTpudGgtbGFzdC1jaGlsZChuKzMpIC5jdXN0b20tZmlsZS1sYWJlbCxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5jdXN0b20tZmlsZTpudGgtbGFzdC1jaGlsZChuKzMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuLFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufVxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bjpmb2N1cy12aXNpYmxlLFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuOmZvY3VzLXZpc2libGUge1xuICB6LWluZGV4OiAzO1xufVxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0biArIC5idG4sXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmlucHV0LWdyb3VwLXRleHQgKyAuYnRuLFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuICsgLmJ0bixcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biArIC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuaW5wdXQtZ3JvdXAtdGV4dCArIC5idG4ge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQge1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG5cbi5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwLjM3NXJlbSAwLjc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzNhMzgzZDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzFiZmJlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4ODg4O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmlucHV0LWdyb3VwLXRleHQgaW5wdXRbdHlwZT1yYWRpb10sXG4uaW5wdXQtZ3JvdXAtdGV4dCBpbnB1dFt0eXBlPWNoZWNrYm94XSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0IHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMXJlbSArIDJweCk7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0biB7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGJvcmRlci1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3Qge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwLXNtID4gLmN1c3RvbS1zZWxlY3QsXG4uaW5wdXQtZ3JvdXAtc20gPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4ge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogMS43NXJlbTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXA6bm90KC5oYXMtdmFsaWRhdGlvbikgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6bGFzdC1jaGlsZCkgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC5oYXMtdmFsaWRhdGlvbiA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bnRoLWxhc3QtY2hpbGQobiszKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAuaGFzLXZhbGlkYXRpb24gPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOm50aC1sYXN0LWNoaWxkKG4rMykgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1wcmVwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpmaXJzdC1jaGlsZCA+IC5pbnB1dC1ncm91cC10ZXh0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cblxuLmN1c3RvbS1jb250cm9sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWluLWhlaWdodDogMS41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcbn1cblxuLmN1c3RvbS1jb250cm9sLWlubGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG4gIG9wYWNpdHk6IDA7XG59XG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dDpmb2N1cy12aXNpYmxlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG4uY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Zm9jdXMtdmlzaWJsZTpub3QoOmNoZWNrZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHJnYigxMjcuNSwgMTg5LCAyNTUpO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmFjdGl2ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNzguNSwgMjE1LjQsIDI1NSk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE3OC41LCAyMTUuNCwgMjU1KTtcbn1cbi5jdXN0b20tY29udHJvbC1pbnB1dFtkaXNhYmxlZF0gfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIGNvbG9yOiAjNjQ2MTYzO1xufVxuLmN1c3RvbS1jb250cm9sLWlucHV0W2Rpc2FibGVkXSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3ZjU7XG59XG5cbi5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IC0xLjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc0NzI3Mztcbn1cbi5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogLTEuNXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQ6IDUwJS81MCUgNTAlIG5vLXJlcGVhdDtcbn1cblxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4JyUzZSUzY3BhdGggZmlsbD0nJTIzZmZmJyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogIzAwN2JmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbn1cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnJTNlJTNjcGF0aCBzdHJva2U9JyUyM2ZmZicgZD0nTTAgMmg0Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cbi5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMTIzLCAyNTUsIDAuNSk7XG59XG5cbi5jdXN0b20tcmFkaW8gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG59XG4uY3VzdG9tLXJhZGlvIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwlM2NzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCclM2UlM2NjaXJjbGUgcj0nMycgZmlsbD0nJTIzZmZmJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLmN1c3RvbS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmN1c3RvbS1zd2l0Y2gge1xuICBwYWRkaW5nLWxlZnQ6IDIuMjVyZW07XG59XG4uY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGxlZnQ6IC0yLjI1cmVtO1xuICB3aWR0aDogMS43NXJlbTtcbiAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xufVxuLmN1c3RvbS1zd2l0Y2ggLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIHRvcDogY2FsYygwLjI1cmVtICsgMnB4KTtcbiAgbGVmdDogY2FsYygtMi4yNXJlbSArIDJweCk7XG4gIHdpZHRoOiBjYWxjKDFyZW0gLSA0cHgpO1xuICBoZWlnaHQ6IGNhbGMoMXJlbSAtIDRweCk7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NDcyNzM7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMC43NXJlbSk7XG59XG4uY3VzdG9tLXN3aXRjaCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDEuNzVyZW0gMC4zNzVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzUnIHZpZXdCb3g9JzAgMCA0IDUnJTNlJTNjcGF0aCBmaWxsPSclMjMzYTM4M2QnIGQ9J00yIDBMMCAyaDR6bTAgNUwwIDNoNHonLyUzZSUzYy9zdmclM2VcIikgcmlnaHQgMC43NXJlbSBjZW50ZXIvOHB4IDEwcHggbm8tcmVwZWF0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4ODg4O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuLmN1c3RvbS1zZWxlY3Q6Zm9jdXMtdmlzaWJsZSB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEyNy41LCAxODksIDI1NSk7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cbi5jdXN0b20tc2VsZWN0OmZvY3VzLXZpc2libGU6Oi1tcy12YWx1ZSB7XG4gIGNvbG9yOiAjM2EzODNkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuLmN1c3RvbS1zZWxlY3RbbXVsdGlwbGVdLCAuY3VzdG9tLXNlbGVjdFtzaXplXTpub3QoW3NpemU9XCIxXCJdKSB7XG4gIGhlaWdodDogYXV0bztcbiAgcGFkZGluZy1yaWdodDogMC43NXJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi5jdXN0b20tc2VsZWN0OmRpc2FibGVkIHtcbiAgY29sb3I6ICM2NDYxNjM7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWJmYmU7XG59XG4uY3VzdG9tLXNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uY3VzdG9tLXNlbGVjdDotbW96LWZvY3VzcmluZyB7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IDAgMCAwICMzYTM4M2Q7XG59XG5cbi5jdXN0b20tc2VsZWN0LXNtIHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLmN1c3RvbS1zZWxlY3QtbGcge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMnB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDMycHg7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbn1cbi5jdXN0b20tZmlsZS1pbnB1dDpmb2N1cy12aXNpYmxlIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTI3LjUsIDE4OSwgMjU1KTtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuLmN1c3RvbS1maWxlLWlucHV0W2Rpc2FibGVkXSB+IC5jdXN0b20tZmlsZS1sYWJlbCwgLmN1c3RvbS1maWxlLWlucHV0OmRpc2FibGVkIH4gLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNTtcbn1cbi5jdXN0b20tZmlsZS1pbnB1dDpsYW5nKGVuKSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIkJyb3dzZVwiO1xufVxuLmN1c3RvbS1maWxlLWlucHV0IH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtYnJvd3NlKTtcbn1cblxuLmN1c3RvbS1maWxlLWxhYmVsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjM2EzODNkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4ODg4O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLmN1c3RvbS1maWxlLWxhYmVsOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAzO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC43NXJlbSk7XG4gIHBhZGRpbmc6IDAuMzc1cmVtIDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjM2EzODNkO1xuICBjb250ZW50OiBcIkJyb3dzZVwiO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzFiZmJlO1xuICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgYm9yZGVyLXJhZGl1czogMCAwLjI1cmVtIDAuMjVyZW0gMDtcbn1cblxuLmN1c3RvbS1yYW5nZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEuNHJlbTtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4uY3VzdG9tLXJhbmdlOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAwO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1cy12aXNpYmxlOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG4uY3VzdG9tLXJhbmdlOmZvY3VzLXZpc2libGU6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuLmN1c3RvbS1yYW5nZTpmb2N1cy12aXNpYmxlOjotbXMtdGh1bWIge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2ZmZiwgMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuLmN1c3RvbS1yYW5nZTo6LW1vei1mb2N1cy1vdXRlciB7XG4gIGJvcmRlcjogMDtcbn1cbi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogLTAuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmN1c3RvbS1yYW5nZTo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cbi5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNzguNSwgMjE1LjQsIDI1NSk7XG59XG4uY3VzdG9tLXJhbmdlOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNWEzYTM7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG4uY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3JkZXItY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgMC4xNXMgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNzguNSwgMjE1LjQsIDI1NSk7XG59XG4uY3VzdG9tLXJhbmdlOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E1YTNhMztcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cbi5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYiB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1yaWdodDogMC4ycmVtO1xuICBtYXJnaW4tbGVmdDogMC4ycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jdXN0b20tcmFuZ2U6Oi1tcy10aHVtYiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmN1c3RvbS1yYW5nZTo6LW1zLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNzguNSwgMjE1LjQsIDI1NSk7XG59XG4uY3VzdG9tLXJhbmdlOjotbXMtdHJhY2sge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwLjVyZW07XG59XG4uY3VzdG9tLXJhbmdlOjotbXMtZmlsbC1sb3dlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNWEzYTM7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG4uY3VzdG9tLXJhbmdlOjotbXMtZmlsbC11cHBlciB7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2E1YTNhMztcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcbn1cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc0NzI3Mztcbn1cbi5jdXN0b20tcmFuZ2U6ZGlzYWJsZWQ6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3NDcyNzM7XG59XG4uY3VzdG9tLXJhbmdlOmRpc2FibGVkOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmN1c3RvbS1yYW5nZTpkaXNhYmxlZDo6LW1zLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc0NzI3Mztcbn1cblxuLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uY3VzdG9tLWZpbGUtbGFiZWwsXG4uY3VzdG9tLXNlbGVjdCB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm94LXNoYWRvdyAwLjE1cyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gIC5jdXN0b20tc2VsZWN0IHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xufVxuLm5hdi1saW5rOmhvdmVyLCAubmF2LWxpbms6Zm9jdXMtdmlzaWJsZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNjQ2MTYzO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2E1YTNhMztcbn1cbi5uYXYtdGFicyAubmF2LWxpbmsge1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xufVxuLm5hdi10YWJzIC5uYXYtbGluazpob3ZlciwgLm5hdi10YWJzIC5uYXYtbGluazpmb2N1cy12aXNpYmxlIHtcbiAgaXNvbGF0aW9uOiBpc29sYXRlO1xuICBib3JkZXItY29sb3I6ICNjMWJmYmUgI2MxYmZiZSAjYTVhM2EzO1xufVxuLm5hdi10YWJzIC5uYXYtbGluay5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjNjQ2MTYzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi10YWJzIC5uYXYtaXRlbS5zaG93IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjNGQ0YjRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6ICNhNWEzYTMgI2E1YTNhMyAjZmZmO1xufVxuLm5hdi10YWJzIC5kcm9wZG93bi1tZW51IHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG5cbi5uYXYtcGlsbHMgLm5hdi1saW5rIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLm5hdi1waWxscyAubmF2LWxpbmsuYWN0aXZlLFxuLm5hdi1waWxscyAuc2hvdyA+IC5uYXYtbGluayB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xufVxuXG4ubmF2LWZpbGwgPiAubmF2LWxpbmssXG4ubmF2LWZpbGwgLm5hdi1pdGVtIHtcbiAgZmxleDogMSAxIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm5hdi1qdXN0aWZpZWQgPiAubmF2LWxpbmssXG4ubmF2LWp1c3RpZmllZCAubmF2LWl0ZW0ge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRhYi1jb250ZW50ID4gLnRhYi1wYW5lIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi50YWItY29udGVudCA+IC5hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLm5hdmJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xufVxuLm5hdmJhciAuY29udGFpbmVyLFxuLm5hdmJhciAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhciAuY29udGFpbmVyLXNtLFxuLm5hdmJhciAuY29udGFpbmVyLW1kLFxuLm5hdmJhciAuY29udGFpbmVyLWxnLFxuLm5hdmJhciAuY29udGFpbmVyLXhsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogMC4zMTI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zMTI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItYnJhbmQ6Zm9jdXMtdmlzaWJsZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5hdmJhci1uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4ubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4ubmF2YmFyLW5hdiAuZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGZsb2F0OiBub25lO1xufVxuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5uYXZiYXItdG9nZ2xlciB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLm5hdmJhci10b2dnbGVyOmhvdmVyLCAubmF2YmFyLXRvZ2dsZXI6Zm9jdXMtdmlzaWJsZSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogNTAlLzEwMCUgMTAwJSBuby1yZXBlYXQ7XG59XG5cbi5uYXZiYXItbmF2LXNjcm9sbCB7XG4gIG1heC1oZWlnaHQ6IDc1dmg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1mbHVpZCxcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXNtLFxuICAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItbWQsXG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1sZyxcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLXNtIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXNtIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItZmx1aWQsXG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci1zbSxcbiAgLm5hdmJhci1leHBhbmQtc20gPiAuY29udGFpbmVyLW1kLFxuICAubmF2YmFyLWV4cGFuZC1zbSA+IC5jb250YWluZXItbGcsXG4gIC5uYXZiYXItZXhwYW5kLXNtID4gLmNvbnRhaW5lci14bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtc20gLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1zbSAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA3NjcuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1mbHVpZCxcbiAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLXNtLFxuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbWQsXG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1sZyxcbiAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLW1kIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLW1kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItZmx1aWQsXG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci1zbSxcbiAgLm5hdmJhci1leHBhbmQtbWQgPiAuY29udGFpbmVyLW1kLFxuICAubmF2YmFyLWV4cGFuZC1tZCA+IC5jb250YWluZXItbGcsXG4gIC5uYXZiYXItZXhwYW5kLW1kID4gLmNvbnRhaW5lci14bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbWQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1tZCAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA5OTEuOThweCkge1xuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1mbHVpZCxcbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLXNtLFxuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbWQsXG4gIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1sZyxcbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLXhsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5uYXZiYXItZXhwYW5kLWxnIHtcbiAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLWxnIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItZmx1aWQsXG4gIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci1zbSxcbiAgLm5hdmJhci1leHBhbmQtbGcgPiAuY29udGFpbmVyLW1kLFxuICAubmF2YmFyLWV4cGFuZC1sZyA+IC5jb250YWluZXItbGcsXG4gIC5uYXZiYXItZXhwYW5kLWxnID4gLmNvbnRhaW5lci14bCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQtbGcgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgZmxleC1iYXNpczogYXV0bztcbiAgfVxuICAubmF2YmFyLWV4cGFuZC1sZyAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLFxuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItZmx1aWQsXG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1zbSxcbiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLW1kLFxuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbGcsXG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci14bCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm5hdmJhci1leHBhbmQteGwge1xuICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm5hdmJhci1leHBhbmQteGwgLm5hdmJhci1uYXYgLmRyb3Bkb3duLW1lbnUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXIsXG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1mbHVpZCxcbiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXNtLFxuICAubmF2YmFyLWV4cGFuZC14bCA+IC5jb250YWluZXItbWQsXG4gIC5uYXZiYXItZXhwYW5kLXhsID4gLmNvbnRhaW5lci1sZyxcbiAgLm5hdmJhci1leHBhbmQteGwgPiAuY29udGFpbmVyLXhsIHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuICAubmF2YmFyLWV4cGFuZC14bCAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICB9XG4gIC5uYXZiYXItZXhwYW5kLXhsIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWZsdWlkLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXNtLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLW1kLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLWxnLFxuLm5hdmJhci1leHBhbmQgPiAuY29udGFpbmVyLXhsIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLm5hdmJhci1leHBhbmQge1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbn1cbi5uYXZiYXItZXhwYW5kIC5uYXZiYXItbmF2IC5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYgLm5hdi1saW5rIHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lcixcbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1mbHVpZCxcbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1zbSxcbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1tZCxcbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci1sZyxcbi5uYXZiYXItZXhwYW5kID4gLmNvbnRhaW5lci14bCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG4ubmF2YmFyLWV4cGFuZCAubmF2YmFyLWNvbGxhcHNlIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBmbGV4LWJhc2lzOiBhdXRvO1xufVxuLm5hdmJhci1leHBhbmQgLm5hdmJhci10b2dnbGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kIHtcbiAgY29sb3I6IHJnYmEoNSwgNCwgOCwgMC45KTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci1icmFuZDpob3ZlciwgLm5hdmJhci1saWdodCAubmF2YmFyLWJyYW5kOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogcmdiYSg1LCA0LCA4LCAwLjkpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBjb2xvcjogcmdiYSg1LCA0LCA4LCAwLjUpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbms6aG92ZXIsIC5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogcmdiYSg1LCA0LCA4LCAwLjcpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAubmF2LWxpbmsuZGlzYWJsZWQge1xuICBjb2xvcjogcmdiYSg1LCA0LCA4LCAwLjMpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLW5hdiAuc2hvdyA+IC5uYXYtbGluayxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLmFjdGl2ZSA+IC5uYXYtbGluayxcbi5uYXZiYXItbGlnaHQgLm5hdmJhci1uYXYgLm5hdi1saW5rLnNob3csXG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItbmF2IC5uYXYtbGluay5hY3RpdmUge1xuICBjb2xvcjogcmdiYSg1LCA0LCA4LCAwLjkpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLXRvZ2dsZXIge1xuICBjb2xvcjogcmdiYSg1LCA0LCA4LCAwLjUpO1xuICBib3JkZXItY29sb3I6IHJnYmEoNSwgNCwgOCwgMC4xKTtcbn1cbi5uYXZiYXItbGlnaHQgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjg1LCA0LCA4LCAwLjUlMjknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQge1xuICBjb2xvcjogcmdiYSg1LCA0LCA4LCAwLjUpO1xufVxuLm5hdmJhci1saWdodCAubmF2YmFyLXRleHQgYSB7XG4gIGNvbG9yOiByZ2JhKDUsIDQsIDgsIDAuOSk7XG59XG4ubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmhvdmVyLCAubmF2YmFyLWxpZ2h0IC5uYXZiYXItdGV4dCBhOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogcmdiYSg1LCA0LCA4LCAwLjkpO1xufVxuXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1icmFuZCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItYnJhbmQ6aG92ZXIsIC5uYXZiYXItZGFyayAubmF2YmFyLWJyYW5kOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsge1xuICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItbmF2IC5uYXYtbGluazpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC43NSk7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLm5hdi1saW5rLmRpc2FibGVkIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNSk7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLnNob3cgPiAubmF2LWxpbmssXG4ubmF2YmFyLWRhcmsgLm5hdmJhci1uYXYgLmFjdGl2ZSA+IC5uYXYtbGluayxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuc2hvdyxcbi5uYXZiYXItZGFyayAubmF2YmFyLW5hdiAubmF2LWxpbmsuYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyIHtcbiAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnJTNlJTNjcGF0aCBzdHJva2U9J3JnYmElMjgyNTUsIDI1NSwgMjU1LCAwLjUlMjknIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNSk7XG59XG4ubmF2YmFyLWRhcmsgLm5hdmJhci10ZXh0IGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uYXZiYXItZGFyayAubmF2YmFyLXRleHQgYTpob3ZlciwgLm5hdmJhci1kYXJrIC5uYXZiYXItdGV4dCBhOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmNhcmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1pbi13aWR0aDogMDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkY2RiZDk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uY2FyZCA+IGhyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5jYXJkID4gLmxpc3QtZ3JvdXAge1xuICBib3JkZXItdG9wOiBpbmhlcml0O1xuICBib3JkZXItYm90dG9tOiBpbmhlcml0O1xufVxuLmNhcmQgPiAubGlzdC1ncm91cDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuLmNhcmQgPiAubGlzdC1ncm91cDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG4uY2FyZCA+IC5jYXJkLWhlYWRlciArIC5saXN0LWdyb3VwLFxuLmNhcmQgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi5jYXJkLWJvZHkge1xuICBmbGV4OiAxIDEgYXV0bztcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nOiAxLjI1cmVtO1xufVxuXG4uY2FyZC10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLTAuMzc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC10ZXh0Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1saW5rOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmNhcmQtbGluayArIC5jYXJkLWxpbmsge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxuLmNhcmQtaGVhZGVyIHtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y1O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2RjZGJkOTtcbn1cbi5jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGMoMC4yNXJlbSAtIDFweCkgY2FsYygwLjI1cmVtIC0gMXB4KSAwIDA7XG59XG5cbi5jYXJkLWZvb3RlciB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkY2RiZDk7XG59XG4uY2FyZC1mb290ZXI6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCBjYWxjKDAuMjVyZW0gLSAxcHgpIGNhbGMoMC4yNXJlbSAtIDFweCk7XG59XG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4uY2FyZC1oZWFkZXItcGlsbHMge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbn1cblxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBmbGV4LXNocmluazogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuXG4uYWNjb3JkaW9uIHtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xufVxuLmFjY29yZGlvbiA+IC5jYXJkIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5hY2NvcmRpb24gPiAuY2FyZDpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi5hY2NvcmRpb24gPiAuY2FyZDpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG59XG4uYWNjb3JkaW9uID4gLmNhcmQgPiAuY2FyZC1oZWFkZXIge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xufVxuXG4uYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzFiZmJlO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtICsgLmJyZWFkY3J1bWItaXRlbSB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuLmJyZWFkY3J1bWItaXRlbSArIC5icmVhZGNydW1iLWl0ZW06OmJlZm9yZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIGNvbG9yOiAjNjQ2MTYzO1xuICBjb250ZW50OiBcIi9cIjtcbn1cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5icmVhZGNydW1iLWl0ZW0gKyAuYnJlYWRjcnVtYi1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uYnJlYWRjcnVtYi1pdGVtLmFjdGl2ZSB7XG4gIGNvbG9yOiAjNjQ2MTYzO1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnBhZ2UtbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWxpbmspO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYTVhM2EzO1xufVxuLnBhZ2UtbGluazpob3ZlciB7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWxpbmspO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWJmYmU7XG4gIGJvcmRlci1jb2xvcjogI2E1YTNhMztcbn1cbi5wYWdlLWxpbms6Zm9jdXMtdmlzaWJsZSB7XG4gIHotaW5kZXg6IDM7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDAsIDEyMywgMjU1LCAwLjI1KTtcbn1cblxuLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG59XG4ucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjI1cmVtO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbn1cbi5wYWdlLWl0ZW0uYWN0aXZlIC5wYWdlLWxpbmsge1xuICB6LWluZGV4OiAzO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuLnBhZ2UtaXRlbS5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgY29sb3I6ICM2NDYxNjM7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBjdXJzb3I6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2E1YTNhMztcbn1cblxuLnBhZ2luYXRpb24tbGcgLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4ucGFnaW5hdGlvbi1sZyAucGFnZS1pdGVtOmZpcnN0LWNoaWxkIC5wYWdlLWxpbmsge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwLjNyZW07XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuM3JlbTtcbn1cbi5wYWdpbmF0aW9uLWxnIC5wYWdlLWl0ZW06bGFzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuM3JlbTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDAuM3JlbTtcbn1cblxuLnBhZ2luYXRpb24tc20gLnBhZ2UtbGluayB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuLnBhZ2luYXRpb24tc20gLnBhZ2UtaXRlbTpmaXJzdC1jaGlsZCAucGFnZS1saW5rIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4ycmVtO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwLjJyZW07XG59XG4ucGFnaW5hdGlvbi1zbSAucGFnZS1pdGVtOmxhc3QtY2hpbGQgLnBhZ2UtbGluayB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwLjJyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjJyZW07XG59XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMC4yNWVtIDAuNGVtO1xuICBmb250LXNpemU6IDc1JTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYmFja2dyb3VuZC1jb2xvciAwLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmJhZGdlIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG5hLmJhZGdlOmhvdmVyLCBhLmJhZGdlOmZvY3VzLXZpc2libGUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5iYWRnZTplbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogMC42ZW07XG4gIHBhZGRpbmctbGVmdDogMC42ZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcmVtO1xufVxuXG4uYmFkZ2UtcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA3YmZmO1xufVxuYS5iYWRnZS1wcmltYXJ5OmhvdmVyLCBhLmJhZGdlLXByaW1hcnk6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMCwgOTguNCwgMjA0KTtcbn1cbmEuYmFkZ2UtcHJpbWFyeTpmb2N1cy12aXNpYmxlLCBhLmJhZGdlLXByaW1hcnkuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC41KTtcbn1cblxuLmJhZGdlLXNlY29uZGFyeSB7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWNlYmVhO1xufVxuYS5iYWRnZS1zZWNvbmRhcnk6aG92ZXIsIGEuYmFkZ2Utc2Vjb25kYXJ5OmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogIzI4MjcyZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIxMS43NzUsIDIwOS41LCAyMDcuMjI1KTtcbn1cbmEuYmFkZ2Utc2Vjb25kYXJ5OmZvY3VzLXZpc2libGUsIGEuYmFkZ2Utc2Vjb25kYXJ5LmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjM2LCAyMzUsIDIzNCwgMC41KTtcbn1cblxuLmJhZGdlLXN1Y2Nlc3Mge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBjNzI2NTtcbn1cbmEuYmFkZ2Utc3VjY2Vzczpob3ZlciwgYS5iYWRnZS1zdWNjZXNzOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDcuMTQyODU3MTQyOSwgNjcuODU3MTQyODU3MSwgNjAuMTE5MDQ3NjE5KTtcbn1cbmEuYmFkZ2Utc3VjY2Vzczpmb2N1cy12aXNpYmxlLCBhLmJhZGdlLXN1Y2Nlc3MuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxMiwgMTE0LCAxMDEsIDAuNSk7XG59XG5cbi5iYWRnZS1pbmZvIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxZjczY2E7XG59XG5hLmJhZGdlLWluZm86aG92ZXIsIGEuYmFkZ2UtaW5mbzpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNC4yMTQ1OTIyNzQ3LCA4OS44MjgzMjYxODAzLCAxNTcuNzg1NDA3NzI1Myk7XG59XG5hLmJhZGdlLWluZm86Zm9jdXMtdmlzaWJsZSwgYS5iYWRnZS1pbmZvLmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMzEsIDExNSwgMjAyLCAwLjUpO1xufVxuXG4uYmFkZ2Utd2FybmluZyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjM0MDEzO1xufVxuYS5iYWRnZS13YXJuaW5nOmhvdmVyLCBhLmJhZGdlLXdhcm5pbmc6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTMyLjg5MzkzOTM5MzksIDQ3LjUxNTE1MTUxNTIsIDE0LjEwNjA2MDYwNjEpO1xufVxuYS5iYWRnZS13YXJuaW5nOmZvY3VzLXZpc2libGUsIGEuYmFkZ2Utd2FybmluZy5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDE3OSwgNjQsIDE5LCAwLjUpO1xufVxuXG4uYmFkZ2UtZGFuZ2VyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNTIwNDI7XG59XG5hLmJhZGdlLWRhbmdlcjpob3ZlciwgYS5iYWRnZS1kYW5nZXI6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTUzLjEyNjYzNzU1NDYsIDI0Ljg3MzM2MjQ0NTQsIDUxLjMwMTMxMDA0MzcpO1xufVxuYS5iYWRnZS1kYW5nZXI6Zm9jdXMtdmlzaWJsZSwgYS5iYWRnZS1kYW5nZXIuZm9jdXMge1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgxOTcsIDMyLCA2NiwgMC41KTtcbn1cblxuLmJhZGdlLWxpZ2h0IHtcbiAgY29sb3I6ICMyODI3MmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkY2RiZDk7XG59XG5hLmJhZGdlLWxpZ2h0OmhvdmVyLCBhLmJhZGdlLWxpZ2h0OmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogIzI4MjcyZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5NS41NDc5NDUyMDU1LCAxOTMuODQ5MzE1MDY4NSwgMTkwLjQ1MjA1NDc5NDUpO1xufVxuYS5iYWRnZS1saWdodDpmb2N1cy12aXNpYmxlLCBhLmJhZGdlLWxpZ2h0LmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMjIwLCAyMTksIDIxNywgMC41KTtcbn1cblxuLmJhZGdlLWRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhMzgzZDtcbn1cbmEuYmFkZ2UtZGFyazpob3ZlciwgYS5iYWRnZS1kYXJrOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDMyLjcxNzk0ODcxNzksIDMxLjU4OTc0MzU4OTcsIDM0LjQxMDI1NjQxMDMpO1xufVxuYS5iYWRnZS1kYXJrOmZvY3VzLXZpc2libGUsIGEuYmFkZ2UtZGFyay5mb2N1cyB7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDU4LCA1NiwgNjEsIDAuNSk7XG59XG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmFsZXJ0LWhlYWRpbmcge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLmFsZXJ0LWxpbmsge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xufVxuLmFsZXJ0LWRpc21pc3NpYmxlIC5jbG9zZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjtcbiAgcGFkZGluZzogMC43NXJlbSAxLjI1cmVtO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLmFsZXJ0LXByaW1hcnkge1xuICBjb2xvcjogcmdiKDIuNCwgNjUuODgsIDEzNi40NCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDQsIDIyOC42LCAyNTUpO1xuICBib3JkZXItY29sb3I6IHJnYigxODMuNiwgMjE4LjA0LCAyNTUpO1xufVxuLmFsZXJ0LXByaW1hcnkgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2IoMTU4LjEsIDIwNC44NCwgMjU1KTtcbn1cbi5hbGVydC1wcmltYXJ5IC5hbGVydC1saW5rIHtcbiAgY29sb3I6IHJnYigxLjUxODQwOTY4MDIsIDQxLjY4MDM0NTcyMTcsIDg2LjMyMTU5MDMxOTgpO1xufVxuXG4uYWxlcnQtc2Vjb25kYXJ5IHtcbiAgY29sb3I6IHJnYigxMjUuMTIsIDEyNC4xMiwgMTI1LjUyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1MS4yLCAyNTEsIDI1MC44KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMjQ5LjY4LCAyNDkuNCwgMjQ5LjEyKTtcbn1cbi5hbGVydC1zZWNvbmRhcnkgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2IoMjM3LjU2NzUsIDIzNi42NSwgMjM1LjczMjUpO1xufVxuLmFsZXJ0LXNlY29uZGFyeSAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiByZ2IoOTkuNTU4NzExNzQ0OSwgOTguNzYzMDA1OTI4NSwgOTkuODc2OTk0MDcxNSk7XG59XG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgY29sb3I6IHJnYig4LjY0LCA2MS4yLCA1Ni4zNik7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDYuNCwgMjI2LjgsIDIyNC4yKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTg2Ljk2LCAyMTUuNTIsIDIxMS44OCk7XG59XG4uYWxlcnQtc3VjY2VzcyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYigxNzAuODIzMjgxMjUsIDIwNi4xNTY3MTg3NSwgMjAxLjY1MzQzNzUpO1xufVxuLmFsZXJ0LXN1Y2Nlc3MgLmFsZXJ0LWxpbmsge1xuICBjb2xvcjogcmdiKDIuMzMwNzIxNjQ5NSwgMTYuNTA5Mjc4MzUwNSwgMTUuMjAzNjQyNjExNyk7XG59XG5cbi5hbGVydC1pbmZvIHtcbiAgY29sb3I6IHJnYigxOC41MiwgNjEuNzIsIDEwOC44OCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMTAuMiwgMjI3LCAyNDQuNCk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE5Mi4yOCwgMjE1LjgsIDI0MC4xNik7XG59XG4uYWxlcnQtaW5mbyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYigxNzEuNjU5MDYxMzcxOCwgMjAyLjkxMTkxMzM1NzQsIDIzNS4yODA5Mzg2MjgyKTtcbn1cbi5hbGVydC1pbmZvIC5hbGVydC1saW5rIHtcbiAgY29sb3I6IHJnYigxMS4xMDYxODUyNDMzLCAzNy4wMTI2MjE2NjQxLCA2NS4yOTM4MTQ3NTY3KTtcbn1cblxuLmFsZXJ0LXdhcm5pbmcge1xuICBjb2xvcjogcmdiKDk1LjQ4LCAzNS4yLCAxMy43Mik7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzkuOCwgMjE2LjgsIDIwNy44KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMjMzLjcyLCAyMDEuNTIsIDE4OC45Mik7XG59XG4uYWxlcnQtd2FybmluZyBociB7XG4gIGJvcmRlci10b3AtY29sb3I6IHJnYigyMjcuNTA4NDYxNTM4NSwgMTg1LjkwOTQyMzA3NjksIDE2OS42MzE1Mzg0NjE1KTtcbn1cbi5hbGVydC13YXJuaW5nIC5hbGVydC1saW5rIHtcbiAgY29sb3I6IHJnYig1MC44ODc2OTIzMDc3LCAxOC43NjA0Mzk1NjA0LCA3LjMxMjMwNzY5MjMpO1xufVxuXG4uYWxlcnQtZGFuZ2VyIHtcbiAgY29sb3I6IHJnYigxMDQuODQsIDE4LjU2LCAzOC4xNik7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDMuNCwgMjEwLjQsIDIxNy4yKTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMjM4Ljc2LCAxOTIuNTYsIDIwMi4wOCk7XG59XG4uYWxlcnQtZGFuZ2VyIGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiKDIzMy40OTY2NTQ4MDQzLCAxNzIuMzIzMzQ1MTk1NywgMTg0LjkyODc1NDQ0ODQpO1xufVxuLmFsZXJ0LWRhbmdlciAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiByZ2IoNjEuNTEwNjY0NTA1NywgMTAuODg5MzM1NDk0MywgMjIuMzg4ODQ5MjcwNyk7XG59XG5cbi5hbGVydC1saWdodCB7XG4gIGNvbG9yOiByZ2IoMTE2LjgsIDExNS44LCAxMTYuNjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ4LCAyNDcuOCwgMjQ3LjQpO1xuICBib3JkZXItY29sb3I6IHJnYigyNDUuMiwgMjQ0LjkyLCAyNDQuMzYpO1xufVxuLmFsZXJ0LWxpZ2h0IGhyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogcmdiKDIzMi45NzM5NzI2MDI3LCAyMzIuMzQ0NjU3NTM0MiwgMjMxLjA4NjAyNzM5NzMpO1xufVxuLmFsZXJ0LWxpZ2h0IC5hbGVydC1saW5rIHtcbiAgY29sb3I6IHJnYig5MS4xOTAzNjk3MzM0LCA5MC40MDk2MzAyNjY2LCA5MS4wOTY2ODA5OTc0KTtcbn1cblxuLmFsZXJ0LWRhcmsge1xuICBjb2xvcjogcmdiKDMyLjU2LCAzMS4wNCwgMzUuNTYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjE1LjYsIDIxNS4yLCAyMTYuMik7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE5OS44NCwgMTk5LjI4LCAyMDAuNjgpO1xufVxuLmFsZXJ0LWRhcmsgaHIge1xuICBib3JkZXItdG9wLWNvbG9yOiByZ2IoMTg3LjA1NzU1NzI1MTksIDE4Ni4zNjc3ODYyNTk1LCAxODguMDkyMjEzNzQwNSk7XG59XG4uYWxlcnQtZGFyayAuYWxlcnQtbGluayB7XG4gIGNvbG9yOiByZ2IoNy42MjY2NjY2NjY3LCA3LjI3MDYzMDYzMDYsIDguMzI5MzY5MzY5NCk7XG59XG5cbkBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxcmVtIDA7XG4gIH1cbiAgdG8ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMDtcbiAgfVxufVxuLnByb2dyZXNzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxcmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBsaW5lLWhlaWdodDogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzFiZmJlO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDdiZmY7XG4gIHRyYW5zaXRpb246IHdpZHRoIDAuNnMgZWFzZTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gIC5wcm9ncmVzcy1iYXIge1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNSkgNTAlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtc2l6ZTogMXJlbSAxcmVtO1xufVxuXG4ucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgYW5pbWF0aW9uOiAxcyBsaW5lYXIgaW5maW5pdGUgcHJvZ3Jlc3MtYmFyLXN0cmlwZXM7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cblxuLmxpc3QtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjNGQ0YjRlO1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLXZpc2libGUge1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogIzRkNGI0ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkYmQ5O1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246YWN0aXZlIHtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWJmYmU7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNSwgNCwgOCwgMC4xMjUpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiBpbmhlcml0O1xufVxuLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG59XG4ubGlzdC1ncm91cC1pdGVtLmRpc2FibGVkLCAubGlzdC1ncm91cC1pdGVtOmRpc2FibGVkIHtcbiAgY29sb3I6ICM2NDYxNjM7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUge1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwN2JmZjtcbiAgYm9yZGVyLWNvbG9yOiAjMDA3YmZmO1xufVxuLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0ge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuLmxpc3QtZ3JvdXAtaXRlbSArIC5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xufVxuXG4ubGlzdC1ncm91cC1mbHVzaCB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4ubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW0ge1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG59XG4ubGlzdC1ncm91cC1mbHVzaCA+IC5saXN0LWdyb3VwLWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tcHJpbWFyeSB7XG4gIGNvbG9yOiByZ2IoMi40LCA2NS44OCwgMTM2LjQ0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4My42LCAyMTguMDQsIDI1NSk7XG59XG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS1wcmltYXJ5Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiByZ2IoMi40LCA2NS44OCwgMTM2LjQ0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE1OC4xLCAyMDQuODQsIDI1NSk7XG59XG4ubGlzdC1ncm91cC1pdGVtLXByaW1hcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIuNCwgNjUuODgsIDEzNi40NCk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDIuNCwgNjUuODgsIDEzNi40NCk7XG59XG5cbi5saXN0LWdyb3VwLWl0ZW0tc2Vjb25kYXJ5IHtcbiAgY29sb3I6IHJnYigxMjUuMTIsIDEyNC4xMiwgMTI1LjUyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0OS42OCwgMjQ5LjQsIDI0OS4xMik7XG59XG4ubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXNlY29uZGFyeS5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogcmdiKDEyNS4xMiwgMTI0LjEyLCAxMjUuNTIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM3LjU2NzUsIDIzNi42NSwgMjM1LjczMjUpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1zZWNvbmRhcnkubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEyNS4xMiwgMTI0LjEyLCAxMjUuNTIpO1xuICBib3JkZXItY29sb3I6IHJnYigxMjUuMTIsIDEyNC4xMiwgMTI1LjUyKTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzIHtcbiAgY29sb3I6IHJnYig4LjY0LCA2MS4yLCA1Ni4zNik7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxODYuOTYsIDIxNS41MiwgMjExLjg4KTtcbn1cbi5saXN0LWdyb3VwLWl0ZW0tc3VjY2Vzcy5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLXN1Y2Nlc3MubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHJnYig4LjY0LCA2MS4yLCA1Ni4zNik7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNzAuODIzMjgxMjUsIDIwNi4xNTY3MTg3NSwgMjAxLjY1MzQzNzUpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1zdWNjZXNzLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig4LjY0LCA2MS4yLCA1Ni4zNik7XG4gIGJvcmRlci1jb2xvcjogcmdiKDguNjQsIDYxLjIsIDU2LjM2KTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvIHtcbiAgY29sb3I6IHJnYigxOC41MiwgNjEuNzIsIDEwOC44OCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOTIuMjgsIDIxNS44LCAyNDAuMTYpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0taW5mby5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogcmdiKDE4LjUyLCA2MS43MiwgMTA4Ljg4KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE3MS42NTkwNjEzNzE4LCAyMDIuOTExOTEzMzU3NCwgMjM1LjI4MDkzODYyODIpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1pbmZvLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOC41MiwgNjEuNzIsIDEwOC44OCk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDE4LjUyLCA2MS43MiwgMTA4Ljg4KTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nIHtcbiAgY29sb3I6IHJnYig5NS40OCwgMzUuMiwgMTMuNzIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMzLjcyLCAyMDEuNTIsIDE4OC45Mik7XG59XG4ubGlzdC1ncm91cC1pdGVtLXdhcm5pbmcubGlzdC1ncm91cC1pdGVtLWFjdGlvbjpob3ZlciwgLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiByZ2IoOTUuNDgsIDM1LjIsIDEzLjcyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyNy41MDg0NjE1Mzg1LCAxODUuOTA5NDIzMDc2OSwgMTY5LjYzMTUzODQ2MTUpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS13YXJuaW5nLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig5NS40OCwgMzUuMiwgMTMuNzIpO1xuICBib3JkZXItY29sb3I6IHJnYig5NS40OCwgMzUuMiwgMTMuNzIpO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlciB7XG4gIGNvbG9yOiByZ2IoMTA0Ljg0LCAxOC41NiwgMzguMTYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM4Ljc2LCAxOTIuNTYsIDIwMi4wOCk7XG59XG4ubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWRhbmdlci5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogcmdiKDEwNC44NCwgMTguNTYsIDM4LjE2KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzMy40OTY2NTQ4MDQzLCAxNzIuMzIzMzQ1MTk1NywgMTg0LjkyODc1NDQ0ODQpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1kYW5nZXIubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDEwNC44NCwgMTguNTYsIDM4LjE2KTtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTA0Ljg0LCAxOC41NiwgMzguMTYpO1xufVxuXG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0IHtcbiAgY29sb3I6IHJnYigxMTYuOCwgMTE1LjgsIDExNi42OCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDUuMiwgMjQ0LjkyLCAyNDQuMzYpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1saWdodC5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmhvdmVyLCAubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiByZ2IoMTE2LjgsIDExNS44LCAxMTYuNjgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjMyLjk3Mzk3MjYwMjcsIDIzMi4zNDQ2NTc1MzQyLCAyMzEuMDg2MDI3Mzk3Myk7XG59XG4ubGlzdC1ncm91cC1pdGVtLWxpZ2h0Lmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb24uYWN0aXZlIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxMTYuOCwgMTE1LjgsIDExNi42OCk7XG4gIGJvcmRlci1jb2xvcjogcmdiKDExNi44LCAxMTUuOCwgMTE2LjY4KTtcbn1cblxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrIHtcbiAgY29sb3I6IHJnYigzMi41NiwgMzEuMDQsIDM1LjU2KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5OS44NCwgMTk5LjI4LCAyMDAuNjgpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS1kYXJrLmxpc3QtZ3JvdXAtaXRlbS1hY3Rpb246aG92ZXIsIC5saXN0LWdyb3VwLWl0ZW0tZGFyay5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogcmdiKDMyLjU2LCAzMS4wNCwgMzUuNTYpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTg3LjA1NzU1NzI1MTksIDE4Ni4zNjc3ODYyNTk1LCAxODguMDkyMjEzNzQwNSk7XG59XG4ubGlzdC1ncm91cC1pdGVtLWRhcmsubGlzdC1ncm91cC1pdGVtLWFjdGlvbi5hY3RpdmUge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDMyLjU2LCAzMS4wNCwgMzUuNTYpO1xuICBib3JkZXItY29sb3I6IHJnYigzMi41NiwgMzEuMDQsIDM1LjU2KTtcbn1cblxuLmNsb3NlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMDUwNDA4O1xuICB0ZXh0LXNoYWRvdzogMCAxcHggMCAjZmZmO1xuICBvcGFjaXR5OiAwLjU7XG59XG4uY2xvc2U6aG92ZXIge1xuICBjb2xvcjogIzA1MDQwODtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmNsb3NlOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmhvdmVyLCAuY2xvc2U6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDAuNzU7XG59XG5cbmJ1dHRvbi5jbG9zZSB7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbmEuY2xvc2UuZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLm1vZGFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLm1vZGFsLW9wZW4gLm1vZGFsIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA1MDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3V0bGluZTogMDtcbn1cblxuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMC41cmVtO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5tb2RhbC5mYWRlIC5tb2RhbC1kaWFsb2cge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTBweCk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2Utb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLm1vZGFsLmZhZGUgLm1vZGFsLWRpYWxvZyB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLm1vZGFsLnNob3cgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cbi5tb2RhbC5tb2RhbC1zdGF0aWMgLm1vZGFsLWRpYWxvZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wMik7XG59XG5cbi5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xufVxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDFyZW0pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1oZWFkZXIsXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUgLm1vZGFsLWZvb3RlciB7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1ib2R5IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoMTAwJSAtIDFyZW0pO1xufVxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogY2FsYygxMDB2aCAtIDFyZW0pO1xuICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICBjb250ZW50OiBcIlwiO1xufVxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ubW9kYWwtZGlhbG9nLWNlbnRlcmVkLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIC5tb2RhbC1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogbm9uZTtcbn1cbi5tb2RhbC1kaWFsb2ctY2VudGVyZWQubW9kYWwtZGlhbG9nLXNjcm9sbGFibGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5tb2RhbC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTtcbiAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNSwgNCwgOCwgMC4yKTtcbiAgYm9yZGVyLXJhZGl1czogMC4zcmVtO1xuICBvdXRsaW5lOiAwO1xufVxuXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA0MDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xufVxuLm1vZGFsLWJhY2tkcm9wLmZhZGUge1xuICBvcGFjaXR5OiAwO1xufVxuLm1vZGFsLWJhY2tkcm9wLnNob3cge1xuICBvcGFjaXR5OiAwLjY0O1xufVxuXG4ubW9kYWwtaGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMXJlbSAxcmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2MxYmZiZTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjNyZW0gLSAxcHgpO1xufVxuLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xuICBwYWRkaW5nOiAxcmVtIDFyZW07XG4gIG1hcmdpbjogLTFyZW0gLTFyZW0gLTFyZW0gYXV0bztcbn1cblxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG59XG5cbi5tb2RhbC1ib2R5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxIDEgYXV0bztcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLm1vZGFsLWZvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjMWJmYmU7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuM3JlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC4zcmVtIC0gMXB4KTtcbn1cbi5tb2RhbC1mb290ZXIgPiAqIHtcbiAgbWFyZ2luOiAwLjI1cmVtO1xufVxuXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgbWFyZ2luOiAxLjc1cmVtIGF1dG87XG4gIH1cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSAzLjVyZW0pO1xuICB9XG4gIC5tb2RhbC1kaWFsb2ctc2Nyb2xsYWJsZSAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogY2FsYygxMDB2aCAtIDMuNXJlbSk7XG4gIH1cbiAgLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMy41cmVtKTtcbiAgfVxuICAubW9kYWwtZGlhbG9nLWNlbnRlcmVkOjpiZWZvcmUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCAtIDMuNXJlbSk7XG4gICAgaGVpZ2h0OiBtaW4tY29udGVudDtcbiAgfVxuICAubW9kYWwtc20ge1xuICAgIG1heC13aWR0aDogMzAwcHg7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubW9kYWwteGwge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICB9XG59XG4udG9vbHRpcCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA3MDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWRlZmF1bHQtcmVndWxhci1mb250LCBcIkdpdExhYiBTYW5zXCIpLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIk5vdG8gU2Fuc1wiLCBVYnVudHUsIENhbnRhcmVsbCwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcbn1cbi50b29sdGlwLnNob3cge1xuICBvcGFjaXR5OiAxO1xufVxuLnRvb2x0aXAgLmFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMC41cmVtO1xufVxuLnRvb2x0aXAgLmFycm93OjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy10b29sdGlwLXRvcCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xufVxuLmJzLXRvb2x0aXAtdG9wIC5hcnJvdywgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49dG9wXSAuYXJyb3cge1xuICBib3R0b206IDA7XG59XG4uYnMtdG9vbHRpcC10b3AgLmFycm93OjpiZWZvcmUsIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93OjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwO1xuICBib3JkZXItdG9wLWNvbG9yOiAjMDUwNDA4O1xufVxuXG4uYnMtdG9vbHRpcC1yaWdodCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdIHtcbiAgcGFkZGluZzogMCAwLjVyZW07XG59XG4uYnMtdG9vbHRpcC1yaWdodCAuYXJyb3csIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSAuYXJyb3cge1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDFyZW07XG59XG4uYnMtdG9vbHRpcC1yaWdodCAuYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdIC5hcnJvdzo6YmVmb3JlIHtcbiAgcmlnaHQ6IDA7XG4gIGJvcmRlci13aWR0aDogMC41cmVtIDAuNXJlbSAwLjVyZW0gMDtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjMDUwNDA4O1xufVxuXG4uYnMtdG9vbHRpcC1ib3R0b20sIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0ge1xuICBwYWRkaW5nOiAwLjVyZW0gMDtcbn1cbi5icy10b29sdGlwLWJvdHRvbSAuYXJyb3csIC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gLmFycm93IHtcbiAgdG9wOiAwO1xufVxuLmJzLXRvb2x0aXAtYm90dG9tIC5hcnJvdzo6YmVmb3JlLCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dIC5hcnJvdzo6YmVmb3JlIHtcbiAgYm90dG9tOiAwO1xuICBib3JkZXItd2lkdGg6IDAgMC41cmVtIDAuNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzA1MDQwODtcbn1cblxuLmJzLXRvb2x0aXAtbGVmdCwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49bGVmdF0ge1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbn1cbi5icy10b29sdGlwLWxlZnQgLmFycm93LCAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSAuYXJyb3cge1xuICByaWdodDogMDtcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xufVxuLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3c6OmJlZm9yZSwgLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gLmFycm93OjpiZWZvcmUge1xuICBsZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuNXJlbSAwIDAuNXJlbSAwLjVyZW07XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjMDUwNDA4O1xufVxuXG4udG9vbHRpcC1pbm5lciB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjc1cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDUwNDA4O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuXG4ucG9wb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDYwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LXdpZHRoOiAzMDBweDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWRlZmF1bHQtcmVndWxhci1mb250LCBcIkdpdExhYiBTYW5zXCIpLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsIFwiU2Vnb2UgVUlcIiwgUm9ib3RvLCBcIk5vdG8gU2Fuc1wiLCBVYnVudHUsIENhbnRhcmVsbCwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBzYW5zLXNlcmlmLCBcIkFwcGxlIENvbG9yIEVtb2ppXCIsIFwiU2Vnb2UgVUkgRW1vamlcIiwgXCJTZWdvZSBVSSBTeW1ib2xcIiwgXCJOb3RvIENvbG9yIEVtb2ppXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkY2RiZDk7XG59XG4ucG9wb3ZlciAuYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDAuMjVyZW07XG4gIG1hcmdpbjogMCAwLjNyZW07XG59XG4ucG9wb3ZlciAuYXJyb3c6OmJlZm9yZSwgLnBvcG92ZXIgLmFycm93OjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG59XG5cbi5icy1wb3BvdmVyLXRvcCwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49dG9wXSB7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59XG4uYnMtcG9wb3Zlci10b3AgPiAuYXJyb3csIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gPiAuYXJyb3cge1xuICBib3R0b206IGNhbGMoLTAuMjVyZW0gLSAxcHgpO1xufVxuLmJzLXBvcG92ZXItdG9wID4gLmFycm93OjpiZWZvcmUsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gPiAuYXJyb3c6OmJlZm9yZSB7XG4gIGJvdHRvbTogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjI1cmVtIDAuMjVyZW0gMDtcbn1cbi5icy1wb3BvdmVyLXRvcCA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gPiAuYXJyb3c6OmFmdGVyIHtcbiAgYm90dG9tOiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC4yNXJlbSAwLjI1cmVtIDA7XG59XG5cbi5icy1wb3BvdmVyLXJpZ2h0LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0ge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbn1cbi5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gPiAuYXJyb3cge1xuICBsZWZ0OiBjYWxjKC0wLjI1cmVtIC0gMXB4KTtcbiAgd2lkdGg6IDAuMjVyZW07XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW46IDAuM3JlbSAwO1xufVxuLmJzLXBvcG92ZXItcmlnaHQgPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdID4gLmFycm93OjpiZWZvcmUge1xuICBsZWZ0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuMjVyZW0gMC4yNXJlbSAwLjI1cmVtIDA7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogI2RjZGJkOTtcbn1cbi5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93OjphZnRlciwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdID4gLmFycm93OjphZnRlciB7XG4gIGxlZnQ6IDFweDtcbiAgYm9yZGVyLXdpZHRoOiAwLjI1cmVtIDAuMjVyZW0gMC4yNXJlbSAwO1xufVxuXG4uYnMtcG9wb3Zlci1ib3R0b20sIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0ge1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xufVxuLmJzLXBvcG92ZXItYm90dG9tID4gLmFycm93LCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dID4gLmFycm93IHtcbiAgdG9wOiBjYWxjKC0wLjI1cmVtIC0gMXB4KTtcbn1cbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5hcnJvdzo6YmVmb3JlLCAuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dID4gLmFycm93OjpiZWZvcmUge1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwLjI1cmVtIDAuMjVyZW0gMC4yNXJlbTtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2RjZGJkOTtcbn1cbi5icy1wb3BvdmVyLWJvdHRvbSA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWJvdHRvbV0gPiAuYXJyb3c6OmFmdGVyIHtcbiAgdG9wOiAxcHg7XG4gIGJvcmRlci13aWR0aDogMCAwLjI1cmVtIDAuMjVyZW0gMC4yNXJlbTtcbn1cbi5icy1wb3BvdmVyLWJvdHRvbSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuMjVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMjQ3LjM1LCAyNDcuMzUsIDI0Ny4zNSk7XG59XG5cbi5icy1wb3BvdmVyLWxlZnQsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuLmJzLXBvcG92ZXItbGVmdCA+IC5hcnJvdywgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gPiAuYXJyb3cge1xuICByaWdodDogY2FsYygtMC4yNXJlbSAtIDFweCk7XG4gIHdpZHRoOiAwLjI1cmVtO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luOiAwLjNyZW0gMDtcbn1cbi5icy1wb3BvdmVyLWxlZnQgPiAuYXJyb3c6OmJlZm9yZSwgLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gPiAuYXJyb3c6OmJlZm9yZSB7XG4gIHJpZ2h0OiAwO1xuICBib3JkZXItd2lkdGg6IDAuMjVyZW0gMCAwLjI1cmVtIDAuMjVyZW07XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZGNkYmQ5O1xufVxuLmJzLXBvcG92ZXItbGVmdCA+IC5hcnJvdzo6YWZ0ZXIsIC5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdID4gLmFycm93OjphZnRlciB7XG4gIHJpZ2h0OiAxcHg7XG4gIGJvcmRlci13aWR0aDogMC4yNXJlbSAwIDAuMjVyZW0gMC4yNXJlbTtcbn1cblxuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMzYTM4M2Q7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMjM0LjYsIDIzNC42LCAyMzQuNik7XG59XG4ucG9wb3Zlci1oZWFkZXI6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIGNvbG9yOiAjM2EzODNkO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBhOm5vdCguYnRuKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbiAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgcHJlIHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXAgIWltcG9ydGFudDtcbiAgfVxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM3NDcyNzM7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbiAgQHBhZ2Uge1xuICAgIHNpemU6IGEzO1xuICB9XG4gIGJvZHkge1xuICAgIG1pbi13aWR0aDogOTkycHggIWltcG9ydGFudDtcbiAgfVxuICAuY29udGFpbmVyIHtcbiAgICBtaW4td2lkdGg6IDk5MnB4ICFpbXBvcnRhbnQ7XG4gIH1cbiAgLm5hdmJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYmFkZ2Uge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwNTA0MDg7XG4gIH1cbiAgLnRhYmxlIHtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnRhYmxlIHRkLFxuICAudGFibGUgdGgge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgfVxuICAudGFibGUtYm9yZGVyZWQgdGgsXG4gIC50YWJsZS1ib3JkZXJlZCB0ZCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2E1YTNhMyAhaW1wb3J0YW50O1xuICB9XG4gIC50YWJsZS1kYXJrIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxuICAudGFibGUtZGFyayB0aCxcbiAgLnRhYmxlLWRhcmsgdGQsXG4gIC50YWJsZS1kYXJrIHRoZWFkIHRoLFxuICAudGFibGUtZGFyayB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItY29sb3I6ICNkY2RiZDk7XG4gIH1cbiAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItY29sb3I6ICNkY2RiZDk7XG4gIH1cbn1cbi5idi1uby1mb2N1cy1yaW5nOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uZHJvcGRvd246bm90KC5kcm9wbGVmdCkgLmRyb3Bkb3duLXRvZ2dsZS5kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmRyb3Bkb3duLmRyb3BsZWZ0IC5kcm9wZG93bi10b2dnbGUuZHJvcGRvd24tdG9nZ2xlLW5vLWNhcmV0OjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uZHJvcGRvd24gLmRyb3Bkb3duLW1lbnU6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbi5iLWRyb3Bkb3duLWZvcm0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICB3aWR0aDogMTAwJTtcbiAgY2xlYXI6IGJvdGg7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uYi1kcm9wZG93bi1mb3JtOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAxcHggZG90dGVkICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciAhaW1wb3J0YW50O1xufVxuLmItZHJvcGRvd24tZm9ybS5kaXNhYmxlZCwgLmItZHJvcGRvd24tZm9ybTpkaXNhYmxlZCB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbiAgY29sb3I6ICM3NDcyNzM7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uYi1kcm9wZG93bi10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGNsZWFyOiBib3RoO1xuICBmb250LXdlaWdodDogbGlnaHRlcjtcbn1cblxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgb3BhY2l0eTogMC42NDtcbn1cblxuLnBvcG92ZXIuYi1wb3BvdmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIG91dGxpbmU6IDA7XG59XG4ucG9wb3Zlci5iLXBvcG92ZXIuZmFkZTpub3QoLnNob3cpIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5wb3BvdmVyLmItcG9wb3Zlci5zaG93IHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnRhYmxlLmItdGFibGUuYi10YWJsZS1maXhlZCB7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG59XG4udGFibGUuYi10YWJsZS5iLXRhYmxlLW5vLWJvcmRlci1jb2xsYXBzZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuLnRhYmxlLmItdGFibGVbYXJpYS1idXN5PXRydWVdIHtcbiAgb3BhY2l0eTogMTtcbn1cbi50YWJsZS5iLXRhYmxlID4gdGJvZHkgPiB0ci5iLXRhYmxlLWRldGFpbHMgPiB0ZCB7XG4gIGJvcmRlci10b3A6IG5vbmUgIWltcG9ydGFudDtcbn1cbi50YWJsZS5iLXRhYmxlID4gY2FwdGlvbiB7XG4gIGNhcHRpb24tc2lkZTogYm90dG9tO1xufVxuLnRhYmxlLmItdGFibGUuYi10YWJsZS1jYXB0aW9uLXRvcCA+IGNhcHRpb24ge1xuICBjYXB0aW9uLXNpZGU6IHRvcCAhaW1wb3J0YW50O1xufVxuLnRhYmxlLmItdGFibGUgPiB0Ym9keSA+IC50YWJsZS1hY3RpdmUsXG4udGFibGUuYi10YWJsZSA+IHRib2R5ID4gLnRhYmxlLWFjdGl2ZSA+IHRoLFxuLnRhYmxlLmItdGFibGUgPiB0Ym9keSA+IC50YWJsZS1hY3RpdmUgPiB0ZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNSwgNCwgOCwgMC4wNzUpO1xufVxuLnRhYmxlLmItdGFibGUudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLnRhYmxlLWFjdGl2ZTpob3ZlciB0ZCxcbi50YWJsZS5iLXRhYmxlLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ci50YWJsZS1hY3RpdmU6aG92ZXIgdGgge1xuICBjb2xvcjogIzNhMzgzZDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHJnYmEoNSwgNCwgOCwgMC4wNzUpLCByZ2JhKDUsIDQsIDgsIDAuMDc1KSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4udGFibGUuYi10YWJsZSA+IHRib2R5ID4gLmJnLWFjdGl2ZSxcbi50YWJsZS5iLXRhYmxlID4gdGJvZHkgPiAuYmctYWN0aXZlID4gdGgsXG4udGFibGUuYi10YWJsZSA+IHRib2R5ID4gLmJnLWFjdGl2ZSA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA3NSkgIWltcG9ydGFudDtcbn1cbi50YWJsZS5iLXRhYmxlLnRhYmxlLWhvdmVyLnRhYmxlLWRhcmsgPiB0Ym9keSA+IHRyLmJnLWFjdGl2ZTpob3ZlciB0ZCxcbi50YWJsZS5iLXRhYmxlLnRhYmxlLWhvdmVyLnRhYmxlLWRhcmsgPiB0Ym9keSA+IHRyLmJnLWFjdGl2ZTpob3ZlciB0aCB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQocmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA3NSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNzUpKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuLmItdGFibGUtc3RpY2t5LWhlYWRlcixcbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuLmItdGFibGUtc3RpY2t5LWhlYWRlciA+IC50YWJsZSxcbi50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmItdGFibGUtc3RpY2t5LWhlYWRlciB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDMwMHB4O1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAuYi10YWJsZS1zdGlja3ktaGVhZGVyIHtcbiAgICBvdmVyZmxvdy15OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5Ac3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgLmItdGFibGUtc3RpY2t5LWhlYWRlciA+IC50YWJsZS5iLXRhYmxlID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogMDtcbiAgICB6LWluZGV4OiAyO1xuICB9XG4gIC5iLXRhYmxlLXN0aWNreS1oZWFkZXIgPiAudGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiAuYi10YWJsZS1zdGlja3ktY29sdW1uLFxuICAuYi10YWJsZS1zdGlja3ktaGVhZGVyID4gLnRhYmxlLmItdGFibGUgPiB0Ym9keSA+IHRyID4gLmItdGFibGUtc3RpY2t5LWNvbHVtbixcbiAgLmItdGFibGUtc3RpY2t5LWhlYWRlciA+IC50YWJsZS5iLXRhYmxlID4gdGZvb3QgPiB0ciA+IC5iLXRhYmxlLXN0aWNreS1jb2x1bW4sXG4gIC50YWJsZS1yZXNwb25zaXZlID4gLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gLmItdGFibGUtc3RpY2t5LWNvbHVtbixcbiAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUuYi10YWJsZSA+IHRib2R5ID4gdHIgPiAuYi10YWJsZS1zdGlja3ktY29sdW1uLFxuICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS5iLXRhYmxlID4gdGZvb3QgPiB0ciA+IC5iLXRhYmxlLXN0aWNreS1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgbGVmdDogMDtcbiAgfVxuICAuYi10YWJsZS1zdGlja3ktaGVhZGVyID4gLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gLmItdGFibGUtc3RpY2t5LWNvbHVtbixcbiAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiAuYi10YWJsZS1zdGlja3ktY29sdW1uIHtcbiAgICB6LWluZGV4OiA1O1xuICB9XG4gIC5iLXRhYmxlLXN0aWNreS1oZWFkZXIgPiAudGFibGUuYi10YWJsZSA+IHRib2R5ID4gdHIgPiAuYi10YWJsZS1zdGlja3ktY29sdW1uLFxuICAuYi10YWJsZS1zdGlja3ktaGVhZGVyID4gLnRhYmxlLmItdGFibGUgPiB0Zm9vdCA+IHRyID4gLmItdGFibGUtc3RpY2t5LWNvbHVtbixcbiAgLnRhYmxlLXJlc3BvbnNpdmUgPiAudGFibGUuYi10YWJsZSA+IHRib2R5ID4gdHIgPiAuYi10YWJsZS1zdGlja3ktY29sdW1uLFxuICAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS5iLXRhYmxlID4gdGZvb3QgPiB0ciA+IC5iLXRhYmxlLXN0aWNreS1jb2x1bW4ge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gLnRhYmxlLWItdGFibGUtZGVmYXVsdCxcbiAgLnRhYmxlLmItdGFibGUgPiB0Ym9keSA+IHRyID4gLnRhYmxlLWItdGFibGUtZGVmYXVsdCxcbiAgLnRhYmxlLmItdGFibGUgPiB0Zm9vdCA+IHRyID4gLnRhYmxlLWItdGFibGUtZGVmYXVsdCB7XG4gICAgY29sb3I6ICMzYTM4M2Q7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICAudGFibGUuYi10YWJsZS50YWJsZS1kYXJrID4gdGhlYWQgPiB0ciA+IC5iZy1iLXRhYmxlLWRlZmF1bHQsXG4gIC50YWJsZS5iLXRhYmxlLnRhYmxlLWRhcmsgPiB0Ym9keSA+IHRyID4gLmJnLWItdGFibGUtZGVmYXVsdCxcbiAgLnRhYmxlLmItdGFibGUudGFibGUtZGFyayA+IHRmb290ID4gdHIgPiAuYmctYi10YWJsZS1kZWZhdWx0IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2EzODNkO1xuICB9XG4gIC50YWJsZS5iLXRhYmxlLnRhYmxlLXN0cmlwZWQgPiB0Ym9keSA+IHRyOm50aC1vZi10eXBlKG9kZCkgPiAudGFibGUtYi10YWJsZS1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdWJ0bGUpLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN1YnRsZSkpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbiAgLnRhYmxlLmItdGFibGUudGFibGUtc3RyaXBlZC50YWJsZS1kYXJrID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZShvZGQpID4gLmJnLWItdGFibGUtZGVmYXVsdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSksIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNSkpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbiAgLnRhYmxlLmItdGFibGUudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyOmhvdmVyID4gLnRhYmxlLWItdGFibGUtZGVmYXVsdCB7XG4gICAgY29sb3I6ICMzYTM4M2Q7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHJnYmEoNSwgNCwgOCwgMC4wNzUpLCByZ2JhKDUsIDQsIDgsIDAuMDc1KSk7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgfVxuICAudGFibGUuYi10YWJsZS50YWJsZS1ob3Zlci50YWJsZS1kYXJrID4gdGJvZHkgPiB0cjpob3ZlciA+IC5iZy1iLXRhYmxlLWRlZmF1bHQge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChyZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDc1KSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA3NSkpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIH1cbn1cbi50YWJsZS5iLXRhYmxlID4gdGhlYWQgPiB0ciA+IFthcmlhLXNvcnRdLFxuLnRhYmxlLmItdGFibGUgPiB0Zm9vdCA+IHRyID4gW2FyaWEtc29ydF0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogMC42NWVtIDFlbTtcbn1cbi50YWJsZS5iLXRhYmxlID4gdGhlYWQgPiB0ciA+IFthcmlhLXNvcnRdOm5vdCguYi10YWJsZS1zb3J0LWljb24tbGVmdCksXG4udGFibGUuYi10YWJsZSA+IHRmb290ID4gdHIgPiBbYXJpYS1zb3J0XTpub3QoLmItdGFibGUtc29ydC1pY29uLWxlZnQpIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2FsYygwLjc1cmVtIC8gMikgY2VudGVyO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuNzVyZW0gKyAwLjY1ZW0pO1xufVxuLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gW2FyaWEtc29ydF0uYi10YWJsZS1zb3J0LWljb24tbGVmdCxcbi50YWJsZS5iLXRhYmxlID4gdGZvb3QgPiB0ciA+IFthcmlhLXNvcnRdLmItdGFibGUtc29ydC1pY29uLWxlZnQge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNhbGMoMC43NXJlbSAvIDIpIGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDAuNzVyZW0gKyAwLjY1ZW0pO1xufVxuLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gW2FyaWEtc29ydD1ub25lXSxcbi50YWJsZS5iLXRhYmxlID4gdGZvb3QgPiB0ciA+IFthcmlhLXNvcnQ9bm9uZV0ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSclM2UlM2NwYXRoIGZpbGw9J2JsYWNrJyBvcGFjaXR5PScuMycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnpNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gW2FyaWEtc29ydD1hc2NlbmRpbmddLFxuLnRhYmxlLmItdGFibGUgPiB0Zm9vdCA+IHRyID4gW2FyaWEtc29ydD1hc2NlbmRpbmddIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnJTNlJTNjcGF0aCBmaWxsPSdibGFjaycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnonLyUzZSUzY3BhdGggZmlsbD0nYmxhY2snIG9wYWNpdHk9Jy4zJyBkPSdNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gW2FyaWEtc29ydD1kZXNjZW5kaW5nXSxcbi50YWJsZS5iLXRhYmxlID4gdGZvb3QgPiB0ciA+IFthcmlhLXNvcnQ9ZGVzY2VuZGluZ10ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSclM2UlM2NwYXRoIGZpbGw9J2JsYWNrJyBvcGFjaXR5PScuMycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnonLyUzZSUzY3BhdGggZmlsbD0nYmxhY2snIGQ9J001MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLyUzZSUzYy9zdmclM2VcIik7XG59XG4udGFibGUuYi10YWJsZS50YWJsZS1kYXJrID4gdGhlYWQgPiB0ciA+IFthcmlhLXNvcnQ9bm9uZV0sIC50YWJsZS5iLXRhYmxlLnRhYmxlLWRhcmsgPiB0Zm9vdCA+IHRyID4gW2FyaWEtc29ydD1ub25lXSxcbi50YWJsZS5iLXRhYmxlID4gLnRoZWFkLWRhcmsgPiB0ciA+IFthcmlhLXNvcnQ9bm9uZV0ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSclM2UlM2NwYXRoIGZpbGw9J3doaXRlJyBvcGFjaXR5PScuMycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnpNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLnRhYmxlLmItdGFibGUudGFibGUtZGFyayA+IHRoZWFkID4gdHIgPiBbYXJpYS1zb3J0PWFzY2VuZGluZ10sIC50YWJsZS5iLXRhYmxlLnRhYmxlLWRhcmsgPiB0Zm9vdCA+IHRyID4gW2FyaWEtc29ydD1hc2NlbmRpbmddLFxuLnRhYmxlLmItdGFibGUgPiAudGhlYWQtZGFyayA+IHRyID4gW2FyaWEtc29ydD1hc2NlbmRpbmddIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnJTNlJTNjcGF0aCBmaWxsPSd3aGl0ZScgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnonLyUzZSUzY3BhdGggZmlsbD0nd2hpdGUnIG9wYWNpdHk9Jy4zJyBkPSdNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLnRhYmxlLmItdGFibGUudGFibGUtZGFyayA+IHRoZWFkID4gdHIgPiBbYXJpYS1zb3J0PWRlc2NlbmRpbmddLCAudGFibGUuYi10YWJsZS50YWJsZS1kYXJrID4gdGZvb3QgPiB0ciA+IFthcmlhLXNvcnQ9ZGVzY2VuZGluZ10sXG4udGFibGUuYi10YWJsZSA+IC50aGVhZC1kYXJrID4gdHIgPiBbYXJpYS1zb3J0PWRlc2NlbmRpbmddIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnJTNlJTNjcGF0aCBmaWxsPSd3aGl0ZScgb3BhY2l0eT0nLjMnIGQ9J001MSAxbDI1IDIzIDI0IDIySDFsMjUtMjJ6Jy8lM2UlM2NwYXRoIGZpbGw9J3doaXRlJyBkPSdNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8lM2UlM2Mvc3ZnJTNlXCIpO1xufVxuLnRhYmxlLmItdGFibGUgPiB0aGVhZCA+IHRyID4gLnRhYmxlLWRhcmtbYXJpYS1zb3J0PW5vbmVdLFxuLnRhYmxlLmItdGFibGUgPiB0Zm9vdCA+IHRyID4gLnRhYmxlLWRhcmtbYXJpYS1zb3J0PW5vbmVdIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCUzY3N2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnJTNlJTNjcGF0aCBmaWxsPSd3aGl0ZScgb3BhY2l0eT0nLjMnIGQ9J001MSAxbDI1IDIzIDI0IDIySDFsMjUtMjJ6TTUxIDEwMWwyNS0yMyAyNC0yMkgxbDI1IDIyeicvJTNlJTNjL3N2ZyUzZVwiKTtcbn1cbi50YWJsZS5iLXRhYmxlID4gdGhlYWQgPiB0ciA+IC50YWJsZS1kYXJrW2FyaWEtc29ydD1hc2NlbmRpbmddLFxuLnRhYmxlLmItdGFibGUgPiB0Zm9vdCA+IHRyID4gLnRhYmxlLWRhcmtbYXJpYS1zb3J0PWFzY2VuZGluZ10ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSclM2UlM2NwYXRoIGZpbGw9J3doaXRlJyBkPSdNNTEgMWwyNSAyMyAyNCAyMkgxbDI1LTIyeicvJTNlJTNjcGF0aCBmaWxsPSd3aGl0ZScgb3BhY2l0eT0nLjMnIGQ9J001MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLyUzZSUzYy9zdmclM2VcIik7XG59XG4udGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiAudGFibGUtZGFya1thcmlhLXNvcnQ9ZGVzY2VuZGluZ10sXG4udGFibGUuYi10YWJsZSA+IHRmb290ID4gdHIgPiAudGFibGUtZGFya1thcmlhLXNvcnQ9ZGVzY2VuZGluZ10ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsJTNjc3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSclM2UlM2NwYXRoIGZpbGw9J3doaXRlJyBvcGFjaXR5PScuMycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnonLyUzZSUzY3BhdGggZmlsbD0nd2hpdGUnIGQ9J001MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLyUzZSUzYy9zdmclM2VcIik7XG59XG4udGFibGUuYi10YWJsZS50YWJsZS1zbSA+IHRoZWFkID4gdHIgPiBbYXJpYS1zb3J0XTpub3QoLmItdGFibGUtc29ydC1pY29uLWxlZnQpLFxuLnRhYmxlLmItdGFibGUudGFibGUtc20gPiB0Zm9vdCA+IHRyID4gW2FyaWEtc29ydF06bm90KC5iLXRhYmxlLXNvcnQtaWNvbi1sZWZ0KSB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoMC4zcmVtIC8gMikgY2VudGVyO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDAuM3JlbSArIDAuNjVlbSk7XG59XG4udGFibGUuYi10YWJsZS50YWJsZS1zbSA+IHRoZWFkID4gdHIgPiBbYXJpYS1zb3J0XS5iLXRhYmxlLXNvcnQtaWNvbi1sZWZ0LFxuLnRhYmxlLmItdGFibGUudGFibGUtc20gPiB0Zm9vdCA+IHRyID4gW2FyaWEtc29ydF0uYi10YWJsZS1zb3J0LWljb24tbGVmdCB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2FsYygwLjNyZW0gLyAyKSBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogY2FsYygwLjNyZW0gKyAwLjY1ZW0pO1xufVxuXG4udGFibGUuYi10YWJsZS5iLXRhYmxlLXNlbGVjdGFibGU6bm90KC5iLXRhYmxlLXNlbGVjdGFibGUtbm8tY2xpY2spID4gdGJvZHkgPiB0ciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc2VsZWN0YWJsZTpub3QoLmItdGFibGUtc2VsZWN0YWJsZS1uby1jbGljaykuYi10YWJsZS1zZWxlY3RpbmcuYi10YWJsZS1zZWxlY3QtcmFuZ2UgPiB0Ym9keSA+IHRyIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbkBjb250YWluZXIgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiBjYXB0aW9uLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtID4gdGJvZHkgPiB0cixcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtID4gdGJvZHkgPiB0ciA+IHRkLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSA+IHRyID4gdGgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRoZWFkLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0aGVhZCA+IHRyLmItdGFibGUtdG9wLXJvdyxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtID4gdGhlYWQgPiB0ci5iLXRhYmxlLWJvdHRvbS1yb3csXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRmb290ID4gdHIuYi10YWJsZS10b3Atcm93LFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Zm9vdCA+IHRyLmItdGFibGUtYm90dG9tLXJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiBjYXB0aW9uIHtcbiAgICBjYXB0aW9uLXNpZGU6IHRvcCAhaW1wb3J0YW50O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF06OmJlZm9yZSB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICB3aWR0aDogNDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHBhZGRpbmc6IDAgY2FsYygxcmVtIC8gMikgMCAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdID4gZGl2IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwJSk7XG4gICAgcGFkZGluZzogMCAwIDAgY2FsYygxcmVtIC8gMik7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRib2R5ID4gdHIudG9wLXJvdywgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtID4gdGJvZHkgPiB0ci5ib3R0b20tcm93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRib2R5ID4gdHIgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDNweDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSA+IHRyID4gW3Jvd3NwYW5dICsgdGQsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRib2R5ID4gdHIgPiBbcm93c3Bhbl0gKyB0aCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogM3B4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiBjYXB0aW9uLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtID4gdGJvZHkgPiB0cixcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtID4gdGJvZHkgPiB0ciA+IHRkLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSA+IHRyID4gdGgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRoZWFkLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0aGVhZCA+IHRyLmItdGFibGUtdG9wLXJvdyxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtID4gdGhlYWQgPiB0ci5iLXRhYmxlLWJvdHRvbS1yb3csXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRmb290ID4gdHIuYi10YWJsZS10b3Atcm93LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Zm9vdCA+IHRyLmItdGFibGUtYm90dG9tLXJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiBjYXB0aW9uIHtcbiAgICBjYXB0aW9uLXNpZGU6IHRvcCAhaW1wb3J0YW50O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF06OmJlZm9yZSB7XG4gICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICB3aWR0aDogNDAlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHBhZGRpbmc6IDAgY2FsYygxcmVtIC8gMikgMCAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdID4gZGl2IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwJSk7XG4gICAgcGFkZGluZzogMCAwIDAgY2FsYygxcmVtIC8gMik7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRib2R5ID4gdHIudG9wLXJvdywgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtID4gdGJvZHkgPiB0ci5ib3R0b20tcm93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRib2R5ID4gdHIgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDNweDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gPiB0Ym9keSA+IHRyID4gW3Jvd3NwYW5dICsgdGQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSA+IHRib2R5ID4gdHIgPiBbcm93c3Bhbl0gKyB0aCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogM3B4O1xuICB9XG59XG5AY29udGFpbmVyICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gY2FwdGlvbixcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHksXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCA+IHRib2R5ID4gdHIsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCA+IHRib2R5ID4gdHIgPiB0ZCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHkgPiB0ciA+IHRoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0aGVhZCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGhlYWQgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCA+IHRoZWFkID4gdHIuYi10YWJsZS1ib3R0b20tcm93LFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Zm9vdCA+IHRyLmItdGFibGUtdG9wLXJvdyxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGZvb3QgPiB0ci5iLXRhYmxlLWJvdHRvbS1yb3cge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gY2FwdGlvbiB7XG4gICAgY2FwdGlvbi1zaWRlOiB0b3AgIWltcG9ydGFudDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiAwIGNhbGMoMXJlbSAvIDIpIDAgMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXSA+IGRpdiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MCUpO1xuICAgIHBhZGRpbmc6IDAgMCAwIGNhbGMoMXJlbSAvIDIpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Ym9keSA+IHRyLnRvcC1yb3csIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCA+IHRib2R5ID4gdHIuYm90dG9tLXJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Ym9keSA+IHRyID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAzcHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHkgPiB0ciA+IFtyb3dzcGFuXSArIHRkLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Ym9keSA+IHRyID4gW3Jvd3NwYW5dICsgdGgge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDNweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gY2FwdGlvbixcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHksXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCA+IHRib2R5ID4gdHIsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCA+IHRib2R5ID4gdHIgPiB0ZCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHkgPiB0ciA+IHRoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0aGVhZCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGhlYWQgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCA+IHRoZWFkID4gdHIuYi10YWJsZS1ib3R0b20tcm93LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Zm9vdCA+IHRyLmItdGFibGUtdG9wLXJvdyxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGZvb3QgPiB0ci5iLXRhYmxlLWJvdHRvbS1yb3cge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gY2FwdGlvbiB7XG4gICAgY2FwdGlvbi1zaWRlOiB0b3AgIWltcG9ydGFudDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiAwIGNhbGMoMXJlbSAvIDIpIDAgMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXSA+IGRpdiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MCUpO1xuICAgIHBhZGRpbmc6IDAgMCAwIGNhbGMoMXJlbSAvIDIpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Ym9keSA+IHRyLnRvcC1yb3csIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCA+IHRib2R5ID4gdHIuYm90dG9tLXJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Ym9keSA+IHRyID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAzcHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kID4gdGJvZHkgPiB0ciA+IFtyb3dzcGFuXSArIHRkLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgPiB0Ym9keSA+IHRyID4gW3Jvd3NwYW5dICsgdGgge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDNweDtcbiAgfVxufVxuQGNvbnRhaW5lciAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IGNhcHRpb24sXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5LFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgPiB0Ym9keSA+IHRyLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgPiB0Ym9keSA+IHRyID4gdGQsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGhlYWQsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRoZWFkID4gdHIuYi10YWJsZS10b3Atcm93LFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgPiB0aGVhZCA+IHRyLmItdGFibGUtYm90dG9tLXJvdyxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGZvb3QgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRmb290ID4gdHIuYi10YWJsZS1ib3R0b20tcm93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IGNhcHRpb24ge1xuICAgIGNhcHRpb24tc2lkZTogdG9wICFpbXBvcnRhbnQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICAgIHdpZHRoOiA0MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgcGFkZGluZzogMCBjYWxjKDFyZW0gLyAyKSAwIDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF06OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF0gPiBkaXYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDAlKTtcbiAgICBwYWRkaW5nOiAwIDAgMCBjYWxjKDFyZW0gLyAyKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGJvZHkgPiB0ci50b3Atcm93LCA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgPiB0Ym9keSA+IHRyLmJvdHRvbS1yb3cge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGJvZHkgPiB0ciA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogM3B4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5ID4gdHIgPiBbcm93c3Bhbl0gKyB0ZCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGJvZHkgPiB0ciA+IFtyb3dzcGFuXSArIHRoIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAzcHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IGNhcHRpb24sXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgPiB0Ym9keSA+IHRyLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgPiB0Ym9keSA+IHRyID4gdGQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGhlYWQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRoZWFkID4gdHIuYi10YWJsZS10b3Atcm93LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgPiB0aGVhZCA+IHRyLmItdGFibGUtYm90dG9tLXJvdyxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGZvb3QgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRmb290ID4gdHIuYi10YWJsZS1ib3R0b20tcm93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IGNhcHRpb24ge1xuICAgIGNhcHRpb24tc2lkZTogdG9wICFpbXBvcnRhbnQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICAgIHdpZHRoOiA0MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgcGFkZGluZzogMCBjYWxjKDFyZW0gLyAyKSAwIDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF06OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF0gPiBkaXYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDAlKTtcbiAgICBwYWRkaW5nOiAwIDAgMCBjYWxjKDFyZW0gLyAyKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGJvZHkgPiB0ci50b3Atcm93LCA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgPiB0Ym9keSA+IHRyLmJvdHRvbS1yb3cge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGJvZHkgPiB0ciA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogM3B4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyA+IHRib2R5ID4gdHIgPiBbcm93c3Bhbl0gKyB0ZCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnID4gdGJvZHkgPiB0ciA+IFtyb3dzcGFuXSArIHRoIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAzcHg7XG4gIH1cbn1cbkBjb250YWluZXIgKHdpZHRoIDwgMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gY2FwdGlvbixcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHksXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRib2R5ID4gdHIsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRib2R5ID4gdHIgPiB0ZCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHkgPiB0ciA+IHRoIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0aGVhZCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGhlYWQgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRoZWFkID4gdHIuYi10YWJsZS1ib3R0b20tcm93LFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0Zm9vdCA+IHRyLmItdGFibGUtdG9wLXJvdyxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGZvb3QgPiB0ci5iLXRhYmxlLWJvdHRvbS1yb3cge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gY2FwdGlvbiB7XG4gICAgY2FwdGlvbi1zaWRlOiB0b3AgIWltcG9ydGFudDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1sYWJlbCk7XG4gICAgd2lkdGg6IDQwJTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBwYWRkaW5nOiAwIGNhbGMoMXJlbSAvIDIpIDAgMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXSA+IGRpdiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSA0MCUpO1xuICAgIHBhZGRpbmc6IDAgMCAwIGNhbGMoMXJlbSAvIDIpO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0Ym9keSA+IHRyLnRvcC1yb3csIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRib2R5ID4gdHIuYm90dG9tLXJvdyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0Ym9keSA+IHRyID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAzcHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHkgPiB0ciA+IFtyb3dzcGFuXSArIHRkLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0Ym9keSA+IHRyID4gW3Jvd3NwYW5dICsgdGgge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDNweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IGNhcHRpb24sXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRib2R5LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0Ym9keSA+IHRyLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0Ym9keSA+IHRyID4gdGQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGhlYWQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRoZWFkID4gdHIuYi10YWJsZS10b3Atcm93LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0aGVhZCA+IHRyLmItdGFibGUtYm90dG9tLXJvdyxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGZvb3QgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRmb290ID4gdHIuYi10YWJsZS1ib3R0b20tcm93IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IGNhcHRpb24ge1xuICAgIGNhcHRpb24tc2lkZTogdG9wICFpbXBvcnRhbnQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICAgIHdpZHRoOiA0MCU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgcGFkZGluZzogMCBjYWxjKDFyZW0gLyAyKSAwIDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF06OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF0gPiBkaXYge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNDAlKTtcbiAgICBwYWRkaW5nOiAwIDAgMCBjYWxjKDFyZW0gLyAyKTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHkgPiB0ci50b3Atcm93LCA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgPiB0Ym9keSA+IHRyLmJvdHRvbS1yb3cge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHkgPiB0ciA+IDpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogM3B4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCA+IHRib2R5ID4gdHIgPiBbcm93c3Bhbl0gKyB0ZCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsID4gdGJvZHkgPiB0ciA+IFtyb3dzcGFuXSArIHRoIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAzcHg7XG4gIH1cbn1cbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCA+IGNhcHRpb24sXG4udGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgPiB0Ym9keSxcbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCA+IHRib2R5ID4gdHIsXG4udGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgPiB0Ym9keSA+IHRyID4gdGQsXG4udGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgPiB0Ym9keSA+IHRyID4gdGgge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCA+IHRoZWFkLFxuLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkID4gdGZvb3Qge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkID4gdGhlYWQgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4udGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgPiB0aGVhZCA+IHRyLmItdGFibGUtYm90dG9tLXJvdyxcbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCA+IHRmb290ID4gdHIuYi10YWJsZS10b3Atcm93LFxuLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkID4gdGZvb3QgPiB0ci5iLXRhYmxlLWJvdHRvbS1yb3cge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkID4gY2FwdGlvbiB7XG4gIGNhcHRpb24tc2lkZTogdG9wICFpbXBvcnRhbnQ7XG59XG4udGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICBjb250ZW50OiBhdHRyKGRhdGEtbGFiZWwpO1xuICB3aWR0aDogNDAlO1xuICBmbG9hdDogbGVmdDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHBhZGRpbmc6IDAgY2FsYygxcmVtIC8gMikgMCAwO1xuICBtYXJnaW46IDA7XG59XG4udGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgPiB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCA+IHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF0gPiBkaXYge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0MCUpO1xuICBwYWRkaW5nOiAwIDAgMCBjYWxjKDFyZW0gLyAyKTtcbiAgbWFyZ2luOiAwO1xufVxuLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkID4gdGJvZHkgPiB0ci50b3Atcm93LCAudGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgPiB0Ym9keSA+IHRyLmJvdHRvbS1yb3cge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkID4gdGJvZHkgPiB0ciA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDNweDtcbn1cbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCA+IHRib2R5ID4gdHIgPiBbcm93c3Bhbl0gKyB0ZCxcbi50YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCA+IHRib2R5ID4gdHIgPiBbcm93c3Bhbl0gKyB0aCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDNweDtcbn1cblxuLnRvb2x0aXAuYi10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIG91dGxpbmU6IDA7XG59XG4udG9vbHRpcC5iLXRvb2x0aXAuZmFkZTpub3QoLnNob3cpIHtcbiAgb3BhY2l0eTogMDtcbn1cbi50b29sdGlwLmItdG9vbHRpcC5zaG93IHtcbiAgb3BhY2l0eTogMTtcbn1cbi50b29sdGlwLmItdG9vbHRpcC5ub25pbnRlcmFjdGl2ZSB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnRvb2x0aXAuYi10b29sdGlwIC5hcnJvdyB7XG4gIG1hcmdpbjogMCAwLjI1cmVtO1xufVxuLnRvb2x0aXAuYi10b29sdGlwLmJzLXRvb2x0aXAtcmlnaHQgLmFycm93LCAudG9vbHRpcC5iLXRvb2x0aXAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1yaWdodF0gLmFycm93LCAudG9vbHRpcC5iLXRvb2x0aXAuYnMtdG9vbHRpcC1sZWZ0IC5hcnJvdywgLnRvb2x0aXAuYi10b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gLmFycm93IHtcbiAgbWFyZ2luOiAwLjI1cmVtIDA7XG59XG5cbi8qKlxuICogRG8gbm90IGVkaXQgZGlyZWN0bHksIHRoaXMgZmlsZSB3YXMgYXV0by1nZW5lcmF0ZWQuXG4gKi9cbjpyb290LCAuZ2wtbGlnaHQtc2NvcGUge1xuICAtLWdsLWJvcmRlci1yYWRpdXMtZnVsbDogOTk5OXB4O1xuICAtLWdsLWNvbG9yLWFscGhhLTA6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yOiByZ2JhKDUsIDUsIDYsIDAuMDIpO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstNDogcmdiYSg1LCA1LCA2LCAwLjA0KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1kYXJrLTY6IHJnYmEoNSwgNSwgNiwgMC4wNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay04OiByZ2JhKDUsIDUsIDYsIDAuMDgpO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstMTY6IHJnYmEoNSwgNSwgNiwgMC4xNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yNDogcmdiYSg1LCA1LCA2LCAwLjI0KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1kYXJrLTQwOiByZ2JhKDUsIDUsIDYsIDAuNCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpO1xuICAtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtODogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC0xNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE2KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC0yNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC0zNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM2KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC00MDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICAtLWdsLWNvbG9yLWJsdWUtNTA6ICNlOGYyZmQ7XG4gIC0tZ2wtY29sb3ItYmx1ZS0xMDA6ICNjOGUwZjk7XG4gIC0tZ2wtY29sb3ItYmx1ZS0yMDA6ICM5ZGM4ZjI7XG4gIC0tZ2wtY29sb3ItYmx1ZS0zMDA6ICM2NGE3ZTk7XG4gIC0tZ2wtY29sb3ItYmx1ZS00MDA6ICMzZjhlZGQ7XG4gIC0tZ2wtY29sb3ItYmx1ZS01MDA6ICMxZjczY2E7XG4gIC0tZ2wtY29sb3ItYmx1ZS02MDA6ICMyNTY2YjU7XG4gIC0tZ2wtY29sb3ItYmx1ZS03MDA6ICMyNzU5OWY7XG4gIC0tZ2wtY29sb3ItYmx1ZS04MDA6ICMyNTQ1ODE7XG4gIC0tZ2wtY29sb3ItYmx1ZS05MDA6ICMxZjMxNjY7XG4gIC0tZ2wtY29sb3ItYmx1ZS05NTA6ICMxZDIxNTM7XG4gIC0tZ2wtY29sb3ItYnJhbmQtd2hpdGU6ICNmZmY7XG4gIC0tZ2wtY29sb3ItYnJhbmQtY2hhcmNvYWw6ICMxNzEzMjE7XG4gIC0tZ2wtY29sb3ItYnJhbmQtb3JhbmdlLTAxZzogI2ZmZDFiZjtcbiAgLS1nbC1jb2xvci1icmFuZC1vcmFuZ2UtMDFwOiAjZmNhMzI2O1xuICAtLWdsLWNvbG9yLWJyYW5kLW9yYW5nZS0wMnA6ICNmYzZkMjY7XG4gIC0tZ2wtY29sb3ItYnJhbmQtb3JhbmdlLTAzcDogI2UyNDMyOTtcbiAgLS1nbC1jb2xvci1icmFuZC1wdXJwbGUtMDFnOiAjY2ViM2VmO1xuICAtLWdsLWNvbG9yLWJyYW5kLXB1cnBsZS0wMXA6ICNhOTg5ZjU7XG4gIC0tZ2wtY29sb3ItYnJhbmQtcHVycGxlLTAycDogIzc3NTljMjtcbiAgLS1nbC1jb2xvci1icmFuZC1ncmF5LTAxOiAjZDFkMGQzO1xuICAtLWdsLWNvbG9yLWJyYW5kLWdyYXktMDI6ICNhMmExYTY7XG4gIC0tZ2wtY29sb3ItYnJhbmQtZ3JheS0wMzogIzc0NzE3YTtcbiAgLS1nbC1jb2xvci1icmFuZC1ncmF5LTA0OiAjNDU0MjRkO1xuICAtLWdsLWNvbG9yLWJyYW5kLWdyYXktMDU6ICMyYjI4Mzg7XG4gIC0tZ2wtY29sb3ItYnJhbmQtcGluay0wMWc6ICNmZmI5Yzk7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi01MDogI2RkZmFiNztcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTEwMDogI2M2ZWQ5NDtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTIwMDogI2IwZDk3YjtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTMwMDogIzk0YzI1ZTtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTQwMDogIzgxYWM0MTtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTUwMDogIzYxOTAyNTtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTYwMDogIzRlN2YwZTtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTcwMDogIzM2NjgwMDtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTgwMDogIzI3NTYwMDtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTkwMDogIzFhNDUwMDtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTk1MDogIzEzM2EwMztcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtNTA6ICNiNWZlZmQ7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTEwMDogIzkzZjJlZjtcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtMjAwOiAjNWVkZWUzO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS0zMDA6ICMzMmM1ZDI7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTQwMDogIzAwYWNjNDtcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtNTAwOiAjMDA5MGIxO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS02MDA6ICMwMDdiOWI7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTcwMDogIzAwNjM4MTtcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtODAwOiAjMDA1MTZjO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS05MDA6ICMwMDQwNTk7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTk1MDogIzAwMzQ0YjtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtNTA6ICNlOWViZmY7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTEwMDogI2QyZGNmZjtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtMjAwOiAjYjdjNmZmO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS0zMDA6ICM5N2FjZmY7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTQwMDogIzc5OTJmNTtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtNTAwOiAjNjE3YWUyO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS02MDA6ICM0ZTY1Y2Q7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTcwMDogIzNmNTFhZTtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtODAwOiAjMzc0MjkxO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS05MDA6ICMzMDM0NzA7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTk1MDogIzJhMmI1OTtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtNTA6ICNmZmUzZWI7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTEwMDogI2ZmY2NkYjtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtMjAwOiAjZmNhY2M1O1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS0zMDA6ICNmODhhYWY7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTQwMDogI2U4NmU5YTtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtNTAwOiAjY2Y0ZDgxO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS02MDA6ICNiOTNkNzE7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTcwMDogIzlhMmU1ZDtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtODAwOiAjN2MyMTRmO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS05MDA6ICM2NjFlM2E7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTk1MDogIzU0MWQzMTtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS01MDogI2ZhZThkMTtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS0xMDA6ICNmNWQ2YjM7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtMjAwOiAjZWViZDhjO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTMwMDogI2U5OWI2MDtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS00MDA6ICNlMDdlNDE7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNTAwOiAjYzk1ZDJlO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTYwMDogI2IxNGYxODtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS03MDA6ICM5MjQzMGE7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtODAwOiAjNmYzNTAwO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTkwMDogIzVlMmYwNTtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS05NTA6ICM0YjI3MDc7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tNTA6ICNlNmY1ZWE7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tMTAwOiAjYmVlNmQwO1xuICAtLWdsLWNvbG9yLWdyZWVuLTIwMDogIzg0ZDRiNjtcbiAgLS1nbC1jb2xvci1ncmVlbi0zMDA6ICMzNWI1OTc7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tNDAwOiAjMTI5Yzg0O1xuICAtLWdsLWNvbG9yLWdyZWVuLTUwMDogIzBkODA3MDtcbiAgLS1nbC1jb2xvci1ncmVlbi02MDA6ICMwYzcyNjU7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tNzAwOiAjMGI2NDVhO1xuICAtLWdsLWNvbG9yLWdyZWVuLTgwMDogIzA3NTA0ODtcbiAgLS1nbC1jb2xvci1ncmVlbi05MDA6ICMwMDNjMzY7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tOTUwOiAjMDAyYzI2O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMDogI2ZmZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwOiAjZjdmN2Y1O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTA6ICNlY2ViZWE7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDA6ICNkY2RiZDk7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0yMDA6ICNjMWJmYmU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0zMDA6ICNhNWEzYTM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC00MDA6ICM4YTg4ODg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDA6ICM3NDcyNzM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC02MDA6ICM2NDYxNjM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC03MDA6ICM0ZDRiNGU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC04MDA6ICMzYTM4M2Q7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05MDA6ICMyODI3MmQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05NTA6ICMxODE3MWQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwOiAjMDUwNDA4O1xuICAtLWdsLWNvbG9yLW9yYW5nZS01MDogI2ZkZjBkNTtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtMTAwOiAjZmFkYTljO1xuICAtLWdsLWNvbG9yLW9yYW5nZS0yMDA6ICNmN2I5NTE7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTMwMDogI2ZiODAxNztcbiAgLS1nbC1jb2xvci1vcmFuZ2UtNDAwOiAjZTk1ZjIxO1xuICAtLWdsLWNvbG9yLW9yYW5nZS01MDA6ICNjNzQ4MTY7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTYwMDogI2IzNDAxMztcbiAgLS1nbC1jb2xvci1vcmFuZ2UtNzAwOiAjOWUzODExO1xuICAtLWdsLWNvbG9yLW9yYW5nZS04MDA6ICM3ZDJkMGU7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTkwMDogIzVkMjIwZDtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtOTUwOiAjNDYxODA3O1xuICAtLWdsLWNvbG9yLXB1cnBsZS01MDogI2Y0ZjBmYztcbiAgLS1nbC1jb2xvci1wdXJwbGUtMTAwOiAjZTFkYWY3O1xuICAtLWdsLWNvbG9yLXB1cnBsZS0yMDA6ICNjOWJlZWY7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTMwMDogI2E5OTdlMTtcbiAgLS1nbC1jb2xvci1wdXJwbGUtNDAwOiAjOTI3Y2Q3O1xuICAtLWdsLWNvbG9yLXB1cnBsZS01MDA6ICM3ODYyYzg7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTYwMDogIzZhNTRjMDtcbiAgLS1nbC1jb2xvci1wdXJwbGUtNzAwOiAjNWI0NmI4O1xuICAtLWdsLWNvbG9yLXB1cnBsZS04MDA6ICM0ODM2OTg7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTkwMDogIzM2MjY3NjtcbiAgLS1nbC1jb2xvci1wdXJwbGUtOTUwOiAjMjkxYTVjO1xuICAtLWdsLWNvbG9yLXJlZC01MDogI2ZlZWVmMDtcbiAgLS1nbC1jb2xvci1yZWQtMTAwOiAjZmZkM2Q3O1xuICAtLWdsLWNvbG9yLXJlZC0yMDA6ICNmZmFmYjg7XG4gIC0tZ2wtY29sb3ItcmVkLTMwMDogI2ZjNzk4ODtcbiAgLS1nbC1jb2xvci1yZWQtNDAwOiAjZjE1MTY4O1xuICAtLWdsLWNvbG9yLXJlZC01MDA6ICNkZTFkNGI7XG4gIC0tZ2wtY29sb3ItcmVkLTYwMDogI2M1MjA0MjtcbiAgLS1nbC1jb2xvci1yZWQtNzAwOiAjYWMyMDNhO1xuICAtLWdsLWNvbG9yLXJlZC04MDA6ICM4OTFjMmY7XG4gIC0tZ2wtY29sb3ItcmVkLTkwMDogIzY0MTkyNTtcbiAgLS1nbC1jb2xvci1yZWQtOTUwOiAjNDgxNTFkO1xuICAtLWdsLWZvbnQtZmFtaWx5LXJlZ3VsYXI6IHZhcigtLWRlZmF1bHQtcmVndWxhci1mb250LCAnR2l0TGFiIFNhbnMnKSwnR2l0TGFiIFNhbnMnLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LCdTZWdvZSBVSScsUm9ib3RvLCdOb3RvIFNhbnMnLFVidW50dSxDYW50YXJlbGwsJ0hlbHZldGljYSBOZXVlJyxzYW5zLXNlcmlmLCdBcHBsZSBDb2xvciBFbW9qaScsJ1NlZ29lIFVJIEVtb2ppJywnU2Vnb2UgVUkgU3ltYm9sJywnTm90byBDb2xvciBFbW9qaSc7XG4gIC0tZ2wtZm9udC1mYW1pbHktbW9ub3NwYWNlOiB2YXIoLS1kZWZhdWx0LW1vbm8tZm9udCwgJ0dpdExhYiBNb25vJyksJ0dpdExhYiBNb25vJywnSmV0QnJhaW5zIE1vbm8nLE1lbmxvLCdEZWphVnUgU2FucyBNb25vJywnTGliZXJhdGlvbiBNb25vJyxDb25zb2xhcywnVWJ1bnR1IE1vbm8nLCdDb3VyaWVyIE5ldycsJ2FuZGFsZSBtb25vJywnbHVjaWRhIGNvbnNvbGUnLG1vbm9zcGFjZTtcbiAgLS1nbC1mb250LXNpemUtMTAwOiAwLjc1cmVtOyAvKiogVXNlZCBmb3IgbWV0YSB0ZXh0IGFuZCBzbWFsbCBsYWJlbHMuICovXG4gIC0tZ2wtZm9udC1zaXplLTIwMDogMC44MTI1cmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgNiBoZWFkaW5ncy4gKi9cbiAgLS1nbC1mb250LXNpemUtMzAwOiAwLjg3NXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDUgaGVhZGluZ3MsIGJvZHkgdGV4dCwgaW5wdXQgbGFiZWxzLCBhbmQgaGVscCB0ZXh0LiAqL1xuICAtLWdsLWZvbnQtc2l6ZS00MDA6IDFyZW07IC8qKiBVc2VkIGZvciBsZXZlbCA0IGhlYWRpbmdzLCBsYXJnZSBib2R5IHRleHQuICovXG4gIC0tZ2wtZm9udC1zaXplLTUwMDogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pOyAvKiogVXNlZCBmb3IgcmVzcG9uc2l2ZSBsZXZlbCAzIGhlYWRpbmdzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS02MDA6IGNsYW1wKDEuMzEyNXJlbSwgMC44NjgwNTU1NTU2cmVtICsgMC45MjU5MjU5MjU5dncsIDEuNTYyNXJlbSk7IC8qKiBVc2VkIGZvciByZXNwb25zaXZlIGxldmVsIDIgaGVhZGluZ3MuICovXG4gIC0tZ2wtZm9udC1zaXplLTcwMDogY2xhbXAoMS41cmVtLCAwLjgzMzMzMzMzMzNyZW0gKyAxLjM4ODg4ODg4ODl2dywgMS44NzVyZW0pOyAvKiogVXNlZCBmb3IgcmVzcG9uc2l2ZSBsZXZlbCAxIGhlYWRpbmdzICovXG4gIC0tZ2wtZm9udC1zaXplLTgwMDogY2xhbXAoMS43NXJlbSwgMC44NjExMTExMTExcmVtICsgMS44NTE4NTE4NTE5dncsIDIuMjVyZW0pOyAvKiogVXNlZCBmb3IgYSByZXNwb25zaXZlIGRpc3BsYXkgb3B0aW9uIHRoYXQgY2FuIGJlIGFwcGxpZWQgdG8gYSBsZXZlbCAxIGhlYWRpbmcgdG8gaW5jcmVhc2UgaXRzIHByb21pbmVuY2UuICovXG4gIC0tZ2wtZm9udC1zaXplLXhzOiAwLjYyNXJlbTtcbiAgLS1nbC1mb250LXNpemUtMTAwLWZpeGVkOiAwLjc1cmVtOyAvKiogVXNlZCBmb3IgbWV0YSB0ZXh0IGFuZCBzbWFsbCBsYWJlbHMuICovXG4gIC0tZ2wtZm9udC1zaXplLTIwMC1maXhlZDogMC44MTI1cmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgNiBoZWFkaW5ncy4gKi9cbiAgLS1nbC1mb250LXNpemUtMzAwLWZpeGVkOiAwLjg3NXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDUgaGVhZGluZ3MsIGJvZHkgdGV4dCwgaW5wdXQgbGFiZWxzLCBhbmQgaGVscCB0ZXh0LiAqL1xuICAtLWdsLWZvbnQtc2l6ZS00MDAtZml4ZWQ6IDFyZW07IC8qKiBVc2VkIGZvciBsZXZlbCA0IGhlYWRpbmdzLCBsYXJnZSBib2R5IHRleHQuICovXG4gIC0tZ2wtZm9udC1zaXplLTUwMC1maXhlZDogMS4xMjVyZW07IC8qKiBVc2VkIGZvciBsZXZlbCAzIGhlYWRpbmdzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS02MDAtZml4ZWQ6IDEuMzEyNXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDIgaGVhZGluZ3MuICovXG4gIC0tZ2wtZm9udC1zaXplLTcwMC1maXhlZDogMS41cmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgMSBoZWFkaW5ncyAqL1xuICAtLWdsLWZvbnQtc2l6ZS04MDAtZml4ZWQ6IDEuNzVyZW07IC8qKiBVc2VkIGZvciBhIGRpc3BsYXkgb3B0aW9uIHRoYXQgY2FuIGJlIGFwcGxpZWQgdG8gYSBsZXZlbCAxIGhlYWRpbmcgdG8gaW5jcmVhc2UgaXRzIHByb21pbmVuY2UuICovXG4gIC0tZ2wtZm9udC13ZWlnaHQtMTAwOiAxMDA7XG4gIC0tZ2wtZm9udC13ZWlnaHQtMzAwOiAzMDA7XG4gIC0tZ2wtZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4gIC0tZ2wtZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDUwMDtcbiAgLS1nbC1mb250LXdlaWdodC1ib2xkOiA2MDA7XG4gIC0tZ2wtbGluZS1oZWlnaHQtMTI6IDAuNzVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMTY6IDFyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMjA6IDEuMjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMjQ6IDEuNXJlbTtcbiAgLS1nbC1saW5lLWhlaWdodC0yODogMS43NXJlbTtcbiAgLS1nbC1saW5lLWhlaWdodC0zMjogMnJlbTtcbiAgLS1nbC1saW5lLWhlaWdodC0zNjogMi4yNXJlbTtcbiAgLS1nbC1saW5lLWhlaWdodC00MjogMi42MjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtNDQ6IDIuNzVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtNTI6IDMuMjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZzogMS4yNTtcbiAgLS1nbC1vcGFjaXR5LTA6IDA7XG4gIC0tZ2wtb3BhY2l0eS0xOiAuMTtcbiAgLS1nbC1vcGFjaXR5LTI6IC4yO1xuICAtLWdsLW9wYWNpdHktMzogLjM7XG4gIC0tZ2wtb3BhY2l0eS00OiAuNDtcbiAgLS1nbC1vcGFjaXR5LTU6IC41O1xuICAtLWdsLW9wYWNpdHktNjogLjY7XG4gIC0tZ2wtb3BhY2l0eS03OiAuNztcbiAgLS1nbC1vcGFjaXR5LTg6IC44O1xuICAtLWdsLW9wYWNpdHktOTogLjk7XG4gIC0tZ2wtb3BhY2l0eS0xMDogMTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTA6IDBweDtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTE6IDAuMTI1cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMjogMC4yNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTM6IDAuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTQ6IDAuNzVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS01OiAxcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNjogMS41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNzogMnJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTg6IDIuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTk6IDNyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xMDogMy41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMTE6IDRyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xMjogNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTEzOiA2cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMTU6IDcuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTE4OiA5cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMjA6IDEwcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMjY6IDEzcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMjg6IDE0cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMzA6IDE1cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMzE6IDE1LjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0zMzogMTYuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTM0OiAxN3JlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTM3OiAxOC41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNDg6IDI0cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNjI6IDMxcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNzU6IDM3LjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS04MDogNDByZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS04ODogNDRyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS1weDogMXB4O1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMi01OiAwLjM3NXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTExLTU6IDQuNXJlbTtcbiAgLS1nbC16aW5kZXgtMDogMDtcbiAgLS1nbC16aW5kZXgtMTogMTtcbiAgLS1nbC16aW5kZXgtMjogMjtcbiAgLS1nbC16aW5kZXgtMzogMztcbiAgLS1nbC16aW5kZXgtNDogNDtcbiAgLS1nbC16aW5kZXgtMjAwOiAyMDA7XG4gIC0tZ2wtemluZGV4LTk5OTk6IDk5OTk7XG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItcmVkOiByZ2JhKDI1NSwgMTc1LCAxODQsIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvKiogUmVkIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1wdXJwbGU6IHJnYmEoMjAxLCAxOTAsIDIzOSwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBQdXJwbGUgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLWJsdWU6IHJnYmEoMTU3LCAyMDAsIDI0MiwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBCbHVlIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ncmVlbjogcmdiYSgxMzIsIDIxMiwgMTgyLCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLyoqIEdyZWVuIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1vcmFuZ2U6IHJnYmEoMjQ3LCAxODUsIDgxLCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLyoqIE9yYW5nZSBiYWNrZ3JvdW5kIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItbmV1dHJhbDogcmdiYSgxOTEsIDE5MSwgMTk1LCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLyoqIE5ldXRyYWwgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1ibHVlOiAjMjM1MTgwOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgZm9yIHRoZSBibHVlIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1ncmVlbjogIzFiNjUzZjsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgZ3JlZW4gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWluZGlnbzogIzQxNDE5ZjsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgaW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodGJsdWU6ICM0OTc3YTU7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0Ymx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRncmVlbjogIzMwODI1ODsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHRncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRpbmRpZ286ICM2NjY2YzQ7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodHJlZDogI2FkNGEzYjsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHRyZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLXJlZDogIzhmMjExMDsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgcmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWJsdWU6ICMwYjI2NDA7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1ncmVlbjogIzBlNDMyODsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1pbmRpZ286ICMyMjIyNjE7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgaW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0Ymx1ZTogIzIzNTE4MDsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHRncmVlbjogIzFiNjUzZjsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0aW5kaWdvOiAjNDE0MTlmOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0cmVkOiAjOGYyMTEwOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGxpZ2h0cmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLXJlZDogIzU4MGQwMjsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSByZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtY2hhcnQtdGhyZXNob2xkLWFyZWEtY29sb3I6IHJnYmEoMjIyLCAyOSwgNzUsIDAuMSk7IC8qKiBVc2VkIGluIGNoYXJ0cyB0byBkZWxpbmVhdGUgYSB0aHJlc2hvbGQgYXJlYSBpbiBhIGNoYXJ0LiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1zdHJva2UtY29sb3ItZGVmYXVsdDogIzE3MTMyMTsgLyoqIERlZmF1bHQgc3Ryb2tlIGNvbG9yIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1zdHJva2Utd2lkdGgtZGVmYXVsdDogMjsgLyoqIERlZmF1bHQgc3Ryb2tlIHdpZHRoIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1maWxsLWNvbG9yLWRlZmF1bHQ6ICNmZmY7IC8qKiBEZWZhdWx0IGZpbGwgY29sb3IgZm9yIGFuIGVsZW1lbnQgd2hlcmUgc3BlY2lmaWMgbWVhbmluZyBvciBlbXBoYXNpcyBpcyBub3QgcmVxdWlyZWQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLW5ldXRyYWw6ICNhZWE1ZDY7IC8qKiBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBjb25jZXB0IHdoaWNoIGlzIG5laXRoZXIgcG9zaXRpdmUgb3IgbmVnYXRpdmUuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLXN1Y2Nlc3M6ICM2ZmRhYzk7IC8qKiBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBzdWNjZXNzIG9yIGFjdGl2ZSBjb25jZXB0LCBoYXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3RhdHVzLWZpbGwtY29sb3Itd2FybmluZzogI2ZjYTMyNjsgLyoqIFVzZWQgYXMgYSBmaWxsIHRvIGNvbnZleSBhIGNhdXRpb24gb3Igd2FybmluZyBjb25jZXB0LCBoYXMgYSBzbGlnaHRseSBuZWdhdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3RhdHVzLWZpbGwtY29sb3ItZGFuZ2VyOiAjZmY5ZDczOyAvKiogVXNlZCBhcyBhIGZpbGwgdG8gY29udmV5IGEgY3JpdGljYWwgb3IgZGFuZ2VyIGNvbmNlcHQsIGhhcyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtc3Ryb2tlLWNvbG9yLW9yYW5nZTogI2ZmOWQ3MzsgLyoqIFVzZWQgZm9yIG9yYW5nZSBhY2NlbnQgc3Ryb2tlIGRldGFpbCBvbiBhbiBvYmplY3Qgb3IgYXR0ZW50aW9uLWRyYXdpbmcgZWxlbWVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LXN0cm9rZS1jb2xvci10ZWFsOiAjNmZkYWM5OyAvKiogVXNlZCBmb3IgdGVhbCBhY2NlbnQgc3Ryb2tlIGRldGFpbCBvbiBhbiBvYmplY3Qgb3IgYXR0ZW50aW9uLWRyYXdpbmcgZWxlbWVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LXN0cm9rZS1jb2xvci1zdHJvbmc6ICNhZWE1ZDY7IC8qKiBVc2VkIGZvciBkYXJrIGFjY2VudCBzdHJva2UgZGV0YWlsIG9uIGFuIG9iamVjdCBvciBhdHRlbnRpb24tZHJhd2luZyBlbGVtZW50LiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtZmlsbC1jb2xvci1zdWJ0bGU6ICNkMGM1ZTI7IC8qKiBVc2VkIHRvIGFkZCBkZXB0aCB0byBhIHNlY29uZGFyeSBlbGVtZW50IGFuZCBzdXBwb3J0aW5nIHN1cmZhY2UuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWFjY2VudC1maWxsLWNvbG9yLXN0cm9uZzogI2FlYTVkNjsgLyoqIFVzZWQgZm9yIGFuIGVsZW1lbnQgcmVxdWlyaW5nIHZpc3VhbCBlbXBoYXNpcyB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudCBvciBzdGF0dXMgaW5kaWNhdG9ycy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3Itb3JhbmdlOiAjZmY5ZDczOyAvKiogVXNlZCB0byBhZGQgb3JhbmdlIHRvIGEgc2Vjb25kYXJ5IGVsZW1lbnQgYW5kIHN1cHBvcnRpbmcgc3VyZmFjZS4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3ItdGVhbDogIzZmZGFjOTsgLyoqIFVzZWQgdG8gYWRkIHRlYWwgdG8gYSBzZWNvbmRhcnkgZWxlbWVudCBhbmQgc3VwcG9ydGluZyBzdXJmYWNlLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1iYXNlLWZpbGwtY29sb3I6ICNlN2U0ZjI7IC8qKiBVc2VkIGZvciB0aGUgY29uc2lzdGVudCBiYWNrZ3JvdW5kIHNoYXBlIHByZXNlbnQgYWNyb3NzIGFsbCBpbGx1c3RyYXRpb25zLiBQcm92aWRlcyBhIHVuaWZpZWQgZm91bmRhdGlvbiB0aGF0IHZpc3VhbGx5IGdyb3VuZHMgZWFjaCBpbGx1c3RyYXRpb24gd2hpbGUgbWFpbnRhaW5pbmcgc3lzdGVtIGNvaGVzaW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLWNvbG9yLWRlZmF1bHQ6ICMxNzEzMjE7IC8qKiBEZWZhdWx0IHN0cm9rZSBjb2xvciB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbCBpbiBpc29tZXRyaWMgaWxsdXN0cmF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLXdpZHRoLWRlZmF1bHQ6IDI7IC8qKiBEZWZhdWx0IHN0cm9rZSB3aWR0aCB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbCBpbiBpc29tZXRyaWMgaWxsdXN0cmF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtdG9wLWZpbGwtY29sb3I6ICNjNWY0ZWM7IC8qKiBVc2VkIGZvciB0aGUgdG9wIGZhY2Ugb2YgaXNvbWV0cmljIHRleHQgYW5kIG51bWJlciBlbGVtZW50cy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWdseXBoLWZyb250LWZpbGwtY29sb3I6ICNmZmY7IC8qKiBVc2VkIGZvciB0aGUgZnJvbnQgZmFjZSBvZiBpc29tZXRyaWMgdGV4dCBhbmQgbnVtYmVyIGVsZW1lbnRzLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtc2lkZS1maWxsLWNvbG9yOiAjNmZkYWM5OyAvKiogVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBpc29tZXRyaWMgdGV4dCBhbmQgbnVtYmVyIGVsZW1lbnRzLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtc2hhZG93LWZpbGwtY29sb3I6ICMxMGIxYjE7IC8qKiBVc2VkIGZvciB0aGUgc2hhZG93IG9mIGlzb21ldHJpYyB0ZXh0IGFuZCBudW1iZXIgZWxlbWVudHMuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3QtdG9wLWZpbGwtY29sb3I6ICNmZjlkNzM7IC8qKiBVc2VkIGZvciB0aGUgdG9wIGZhY2Ugb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3QtZnJvbnQtZmlsbC1jb2xvcjogI2ZmYzJhODsgLyoqIFVzZWQgZm9yIHRoZSBmcm9udCBmYWNlIG9mIGFuIGlzb21ldHJpYyBvYmplY3Qgb3Igc3ltYm9sLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtb2JqZWN0LXNpZGUtZmlsbC1jb2xvcjogI2ZmN2I0MjsgLyoqIFVzZWQgZm9yIHRoZSBzaWRlIGZhY2Ugb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3QtaGlnaGxpZ2h0LWZpbGwtY29sb3I6ICNmZmY7IC8qKiBVc2VkIGZvciB0aGUgZmFjZSBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbCB0aGF0IHJlcXVpcmVzIG1heGltdW0gZGlzdGluY3Rpb24gZnJvbSBvdGhlciBlbGVtZW50cy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC1zaGFkb3ctZmlsbC1jb2xvcjogI2UyNDMyOTsgLyoqIFVzZWQgZm9yIHRoZSBzaGFkb3cgb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1hY2NlbnQtdG9wLWZpbGwtY29sb3I6ICM0NTQyNGQ7IC8qKiBVc2VkIGZvciB0aGUgdG9wIGZhY2Ugb2YgYSBzdXBwb3J0aW5nIGlzb21ldHJpYyBlbGVtZW50LiBQcm92aWRlcyBzdWJ0bGUgZGltZW5zaW9uYWwgdmFyaWF0aW9uIHdpdGhvdXQgY29tcGV0aW5nIHdpdGggcHJpbWFyeSBjb250ZW50LiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtYWNjZW50LWZyb250LWZpbGwtY29sb3I6ICM3NDcxN2E7IC8qKiBVc2VkIGZvciB0aGUgZnJvbnQgZmFjZSBvZiBhIHN1cHBvcnRpbmcgaXNvbWV0cmljIGVsZW1lbnQuIFByb3ZpZGVzIHN1YnRsZSBkaW1lbnNpb25hbCB2YXJpYXRpb24gd2l0aG91dCBjb21wZXRpbmcgd2l0aCBwcmltYXJ5IGNvbnRlbnQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1hY2NlbnQtc2lkZS1maWxsLWNvbG9yOiAjMmIyODM4OyAvKiogVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBhIHN1cHBvcnRpbmcgaXNvbWV0cmljIGVsZW1lbnQuIFByb3ZpZGVzIHN1YnRsZSBkaW1lbnNpb25hbCB2YXJpYXRpb24gd2l0aG91dCBjb21wZXRpbmcgd2l0aCBwcmltYXJ5IGNvbnRlbnQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1iYXNlLXRvcC1maWxsLWNvbG9yOiAjZTdlNGYyOyAvKiogVXNlZCBmb3IgdGhlIHRvcCBzdXJmYWNlIG9mIGFuIGlzb21ldHJpYyBiYXNlIHBsYXRmb3JtLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtYmFzZS1mcm9udC1maWxsLWNvbG9yOiAjZDVkMGU4OyAvKiogVXNlZCBmb3IgdGhlIGZyb250IGZhY2Ugb2YgYW4gaXNvbWV0cmljIGJhc2UgcGxhdGZvcm0uICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1iYXNlLXNpZGUtZmlsbC1jb2xvcjogI2FlYTVkNjsgLyoqIFVzZWQgZm9yIHRoZSBzaWRlIGZhY2Ugb2YgYW4gaXNvbWV0cmljIGJhc2UgcGxhdGZvcm0uICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9udC13ZWlnaHQ6IDQyNTsgLyoqIFVzZWQgZm9yIHRoZSBmb250IHdlaWdodCBvZiBhIG5hdmlnYXRpb24gaXRlbSAqL1xuICAtLWRhdGEtdml6LWdyZWVuLTUwOiAjZGRmYWI3O1xuICAtLWRhdGEtdml6LWdyZWVuLTEwMDogI2M2ZWQ5NDtcbiAgLS1kYXRhLXZpei1ncmVlbi0yMDA6ICNiMGQ5N2I7XG4gIC0tZGF0YS12aXotZ3JlZW4tMzAwOiAjOTRjMjVlO1xuICAtLWRhdGEtdml6LWdyZWVuLTQwMDogIzgxYWM0MTtcbiAgLS1kYXRhLXZpei1ncmVlbi01MDA6ICM2MTkwMjU7XG4gIC0tZGF0YS12aXotZ3JlZW4tNjAwOiAjNGU3ZjBlO1xuICAtLWRhdGEtdml6LWdyZWVuLTcwMDogIzM2NjgwMDtcbiAgLS1kYXRhLXZpei1ncmVlbi04MDA6ICMyNzU2MDA7XG4gIC0tZGF0YS12aXotZ3JlZW4tOTAwOiAjMWE0NTAwO1xuICAtLWRhdGEtdml6LWdyZWVuLTk1MDogIzEzM2EwMztcbiAgLS1kYXRhLXZpei1hcXVhLTUwOiAjYjVmZWZkO1xuICAtLWRhdGEtdml6LWFxdWEtMTAwOiAjOTNmMmVmO1xuICAtLWRhdGEtdml6LWFxdWEtMjAwOiAjNWVkZWUzO1xuICAtLWRhdGEtdml6LWFxdWEtMzAwOiAjMzJjNWQyO1xuICAtLWRhdGEtdml6LWFxdWEtNDAwOiAjMDBhY2M0O1xuICAtLWRhdGEtdml6LWFxdWEtNTAwOiAjMDA5MGIxO1xuICAtLWRhdGEtdml6LWFxdWEtNjAwOiAjMDA3YjliO1xuICAtLWRhdGEtdml6LWFxdWEtNzAwOiAjMDA2MzgxO1xuICAtLWRhdGEtdml6LWFxdWEtODAwOiAjMDA1MTZjO1xuICAtLWRhdGEtdml6LWFxdWEtOTAwOiAjMDA0MDU5O1xuICAtLWRhdGEtdml6LWFxdWEtOTUwOiAjMDAzNDRiO1xuICAtLWRhdGEtdml6LWJsdWUtNTA6ICNlOWViZmY7XG4gIC0tZGF0YS12aXotYmx1ZS0xMDA6ICNkMmRjZmY7XG4gIC0tZGF0YS12aXotYmx1ZS0yMDA6ICNiN2M2ZmY7XG4gIC0tZGF0YS12aXotYmx1ZS0zMDA6ICM5N2FjZmY7XG4gIC0tZGF0YS12aXotYmx1ZS00MDA6ICM3OTkyZjU7XG4gIC0tZGF0YS12aXotYmx1ZS01MDA6ICM2MTdhZTI7XG4gIC0tZGF0YS12aXotYmx1ZS02MDA6ICM0ZTY1Y2Q7XG4gIC0tZGF0YS12aXotYmx1ZS03MDA6ICMzZjUxYWU7XG4gIC0tZGF0YS12aXotYmx1ZS04MDA6ICMzNzQyOTE7XG4gIC0tZGF0YS12aXotYmx1ZS05MDA6ICMzMDM0NzA7XG4gIC0tZGF0YS12aXotYmx1ZS05NTA6ICMyYTJiNTk7XG4gIC0tZGF0YS12aXotbWFnZW50YS01MDogI2ZmZTNlYjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTEwMDogI2ZmY2NkYjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTIwMDogI2ZjYWNjNTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTMwMDogI2Y4OGFhZjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTQwMDogI2U4NmU5YTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTUwMDogI2NmNGQ4MTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTYwMDogI2I5M2Q3MTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTcwMDogIzlhMmU1ZDtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTgwMDogIzdjMjE0ZjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTkwMDogIzY2MWUzYTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTk1MDogIzU0MWQzMTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtNTA6ICNmYWU4ZDE7XG4gIC0tZGF0YS12aXotb3JhbmdlLTEwMDogI2Y1ZDZiMztcbiAgLS1kYXRhLXZpei1vcmFuZ2UtMjAwOiAjZWViZDhjO1xuICAtLWRhdGEtdml6LW9yYW5nZS0zMDA6ICNlOTliNjA7XG4gIC0tZGF0YS12aXotb3JhbmdlLTQwMDogI2UwN2U0MTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtNTAwOiAjYzk1ZDJlO1xuICAtLWRhdGEtdml6LW9yYW5nZS02MDA6ICNiMTRmMTg7XG4gIC0tZGF0YS12aXotb3JhbmdlLTcwMDogIzkyNDMwYTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtODAwOiAjNmYzNTAwO1xuICAtLWRhdGEtdml6LW9yYW5nZS05MDA6ICM1ZTJmMDU7XG4gIC0tZGF0YS12aXotb3JhbmdlLTk1MDogIzRiMjcwNztcbiAgLS1icmFuZC1jaGFyY29hbDogIzE3MTMyMTsgLyoqIFVzZSBjb2xvci5icmFuZC1jaGFyY29hbCBpbnN0ZWFkLiAqL1xuICAtLWJyYW5kLW9yYW5nZS0wMTogI2ZjYTMyNjsgLyoqIFVzZSBjb2xvci5icmFuZC1vcmFuZ2UuMDFwIGluc3RlYWQuICovXG4gIC0tYnJhbmQtb3JhbmdlLTAyOiAjZmM2ZDI2OyAvKiogVXNlIGNvbG9yLmJyYW5kLW9yYW5nZS4wMnAgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1vcmFuZ2UtMDM6ICNlMjQzMjk7IC8qKiBVc2UgY29sb3IuYnJhbmQtb3JhbmdlLjAzcCBpbnN0ZWFkLiAqL1xuICAtLWJyYW5kLXB1cnBsZS0wMTogI2E5ODlmNTsgLyoqIFVzZSBjb2xvci5wdXJwbGUuMDFwIGluc3RlYWQuICovXG4gIC0tYnJhbmQtcHVycGxlLTAyOiAjNzc1OWMyOyAvKiogVXNlIGNvbG9yLnB1cnBsZS4wMnAgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTAxOiAjZDFkMGQzOyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDEgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTAyOiAjYTJhMWE2OyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDIgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTAzOiAjNzQ3MTdhOyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDMgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTA0OiAjNDU0MjRkOyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDQgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTA1OiAjMmIyODM4OyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDUgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0xNjogcmdiYSg1LCA1LCA2LCAwLjE2KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjE2IGluc3RlYWQuICovXG4gIC0tdC1ncmF5LWEtMjQ6IHJnYmEoNSwgNSwgNiwgMC4yNCk7IC8qKiBVc2UgY29sb3IuYWxwaGEuZGFyay4yNCBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTAyOiByZ2JhKDUsIDUsIDYsIDAuMDIpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuMiBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTA0OiByZ2JhKDUsIDUsIDYsIDAuMDQpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuNCBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTA2OiByZ2JhKDUsIDUsIDYsIDAuMDYpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuNiBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTA4OiByZ2JhKDUsIDUsIDYsIDAuMDgpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuOCBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0xNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE2KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC4xNiBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0yNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC4yNCBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0zNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM2KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC4zNiBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0wMjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC4yIGluc3RlYWQuICovXG4gIC0tdC13aGl0ZS1hLTA0OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpOyAvKiogVXNlIGNvbG9yLmFscGhhLmxpZ2h0LjQgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMDY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNik7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuNiBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0wODogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC44IGluc3RlYWQuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHJnYmEoMjIyLCAyOSwgNzUsIDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiByZ2JhKDIyMiwgMjksIDc1LCAwLjE2KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiByZ2JhKDE3MiwgMzIsIDU4LCAwLjI0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZzogLTAuMDFlbTtcbiAgLS1nbC1oZWFkaW5nLTMtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy00LWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctNS1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLTYtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtbGluZS1oZWlnaHQ6IDEuMTI1O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktbGluZS1oZWlnaHQ6IDEuMTI1O1xuICAtLWdsLWhlYWRpbmctMy1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy01LWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctNi1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1ib3JkZXItY29sb3ItdHJhbnNwYXJlbnQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCB3aGVuIGEgYm9yZGVyIG5lZWRzIHRvIGJlIHByZXNlbnQsIGJ1dCBub3QgdmlzaWJseSBwZXJjZWl2ZWQuICovXG4gIC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IGJvcmRlciBjb2xvci4gKi9cbiAgLS1nbC1ib3JkZXItY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIGEgc3VidGxlIGJvcmRlciBpbiBjb21iaW5hdGlvbiB3aXRoIHRoZSBkZWZhdWx0IGJhY2tncm91bmQuICovXG4gIC0tZ2wtYm9yZGVyLWNvbG9yLXN0cm9uZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgYSBkaXN0aW5jdCBib3JkZXIgdGhhdCBlbXBoYXNpemVzIGFuIGVkZ2Ugb3IgYm91bmRhcmllcy4gKi9cbiAgLS1nbC1ib3JkZXItcmFkaXVzLW5vbmU6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMCk7XG4gIC0tZ2wtYm9yZGVyLXJhZGl1cy14czogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS1weCk7XG4gIC0tZ2wtYm9yZGVyLXJhZGl1cy1zbTogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0xKTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLW1kOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTIpO1xuICAtLWdsLWJvcmRlci1yYWRpdXMtbGc6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMyk7XG4gIC0tZ2wtYm9yZGVyLXJhZGl1cy14bDogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS00KTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLTJ4bDogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS01KTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLTN4bDogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS02KTtcbiAgLS1nbC1mb250LXNpemUtc206IHZhcigtLWdsLWZvbnQtc2l6ZS0xMDApO1xuICAtLWdsLWZvbnQtc2l6ZS1tZDogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtZm9udC1zaXplLWxnOiB2YXIoLS1nbC1mb250LXNpemUtNDAwKTtcbiAgLS1nbC1mb250LXdlaWdodC1oZWFkaW5nOiB2YXIoLS1nbC1mb250LXdlaWdodC1ib2xkKTtcbiAgLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0wKTtcbiAgLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS01KTtcbiAgLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0xNik7IC8qKiBVc2VkIGZvciB0aGUgZGVmYXVsdCBzaGFkb3cgY29sb3IuICovXG4gIC0tZ2wtYWxlcnQtbmV1dHJhbC1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LW5ldXRyYWwtYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYW4gaW5mbyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1pbmZvLWJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBib3R0b20gY29sb3Igb2YgYW4gaW5mbyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1zdWNjZXNzLWJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC13YXJuaW5nLWJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtd2FybmluZy1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgd2FybmluZyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1kYW5nZXItYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWRhbmdlci1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFwcGxpY2F0aW9uLWNocm9tZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBhcHBsaWNhdGlvbiBjaHJvbWUgYmFja2dyb3VuZCwgdGhlIGxvd2VzdCBsYXllciBvZiB0aGUgaW50ZXJmYWNlIHRoYXQgc2l0cyBiZW5lYXRoIHBhbmVscyBhbmQgY29udGFpbnMgZ2xvYmFsIG5hdmlnYXRpb24sIHVzZXIgYWN0aW9ucywgYXBwbGljYXRpb24gbmF2aWdhdGlvbiwgYW5kIEFJIG5hdmlnYXRpb24uICovXG4gIC0tZ2wtYXZhdGFyLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTgpOyAvKiogVXNlZCB0byBkZWZpbmUgdGhlIGVkZ2Ugb2YgYW4gYXZhdGFyLiAqL1xuICAtLWdsLWF2YXRhci1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstMjQpOyAvKiogVXNlZCB0byBpbmNyZWFzZSB0aGUgZWRnZSBkZWZpbml0aW9uIG9mIGFuIGF2YXRhciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYXZhdGFyLWNpcmNsZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQ6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZnVsbCk7IC8qKiBCb3JkZXIgcmFkaXVzIGZvciBjaXJsY2UgYXZhdGFycyBhdCBhbGwgc2l6ZXMuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItcmVkOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFJlZCB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItcHVycGxlOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTsgLyoqIFB1cnBsZSB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItYmx1ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS04MDApOyAvKiogQmx1ZSB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItZ3JlZW46IHZhcigtLWdsLWNvbG9yLWdyZWVuLTgwMCk7IC8qKiBHcmVlbiB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3Itb3JhbmdlOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTsgLyoqIE9yYW5nZSB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItbmV1dHJhbDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogTmV1dHJhbCB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG11dGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWljb24tY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG5ldXRyYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWJsdWUtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWJsdWUtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWJsdWUtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3MgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ncmVlbi04MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1ncmVlbi05MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3MgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ncmVlbi02MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1ncmVlbi03MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgd2FybmluZyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS04MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS02MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWljb24tY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFubmVyLWludHJvLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBpbmZvIGJhbm5lci4gKi9cbiAgLS1nbC1iYW5uZXItcHJvbW8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgcHJvbW8gYmFubmVyLiAqL1xuICAtLWdsLWJhbm5lci1wcm9tby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHByb21vIGJhbm5lci4gKi9cbiAgLS1nbC1icmVhZGNydW1iLXNlcGFyYXRvci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJyZWFkY3J1bWIgbGV2ZWwgc2VwYXJhdG9yLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1kYXJrOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZGFyazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC03MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItYmx1ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZGFyazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgZGFyayBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZ3JlZW46IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1pbmRpZ286IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0Ymx1ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRibHVlIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGdyZWVuOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGluZGlnbzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRpbmRpZ28gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0cmVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodHJlZCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItcmVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSByZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWJsdWU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWRhcms6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWdyZWVuOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItaW5kaWdvOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBpbmRpZ28gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0IGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodGJsdWU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0Ymx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRncmVlbjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRpbmRpZ286IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodHJlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRyZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLXJlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgcmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBvdXRsaW5lZCBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1yZWQtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1yZWQtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItcmVkLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhc2hlZCBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRpc2FibGVkIGJ1dHRvbi4gKi9cbiAgLS1nbC1idXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRpc2FibGVkIGJ1dHRvbi4gKi9cbiAgLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGlzYWJsZWQgYnV0dG9uLiAqL1xuICAtLWdsLWJ1dHRvbi1jb3VudC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTgpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBidXR0b24gY291bnQgZWxlbWVudC4gKi9cbiAgLS1nbC1jaGFydC1heGlzLWxpbmUtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciBheGlzIGxpbmUgY29sb3IuICovXG4gIC0tZ2wtY2hhcnQtdGhyZXNob2xkLWxpbmUtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC01MDApOyAvKiogVXNlZCBpbiBjaGFydHMgdG8gZGl2aWRlIGEgdGhyZXNob2xkIGFyZWEgaW4gYSBjaGFydCBmcm9tIG90aGVyIGRhdGEuICovXG4gIC0tZ2wtY2hhcnQtem9vbS1maWxsZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstOCk7IC8qKiBVc2VkIGluIGNoYXJ0cyBmb3IgdGhlIG92ZXJsYXkgY29sb3Igd2hlbiB6b29taW5nIGluIG9uIGEgc3BlY2lmaWMgYXJlYSBvZiBkYXRhLiAqL1xuICAtLWdsLWRhdGVwaWNrZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGRhdGVwaWNrZXIuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1zZWFyY2gtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VhcmNoIGlucHV0IGluIGEgZHJvcGRvd24gbGlzdGJveC4gKi9cbiAgLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCB0eXBlIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCB0eXBlIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1kYXRhLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBkYXRhIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBkYXRhIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBvcGVyYXRvciBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIG9wZXJhdG9yIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWxpZ2h0LXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCB0ZXh0IGNvbG9yIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvci4gKi9cbiAgLS1nbC1sYWJlbC1saWdodC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBsaWdodCBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWxpZ2h0LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBiYWNrZ3JvdW5kIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtbGlnaHQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBvbiBhIGxpZ2h0IGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtZGFyay10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGxhYmVsIHRleHQgY29sb3Igb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWRhcmstYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBzY29wZWQgbGFiZWwgdGV4dCBjb2xvci4gKi9cbiAgLS1nbC1sYWJlbC1zY29wZWQtYnV0dG9uLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBzY29wZWQgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBiYWNrZ3JvdW5kIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1sYWJlbC1zY29wZWQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHNjb3BlZCBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLWJ1dHRvbi1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHNjb3BlZCBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxpbmstbWVudGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBtZW50aW9uIGxpbmsgdGV4dCBjb2xvci4gKi9cbiAgLS1nbC1saW5rLW1lbnRpb24tdGV4dC1jb2xvci1jdXJyZW50OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBtZW50aW9uIGxpbmsgdGV4dCBjb2xvciB3aGVuIHJlZmVyZW5jaW5nIHRoZSBjdXJyZW50IHVzZXIuICovXG4gIC0tZ2wtbGluay1tZW50aW9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIG1lbnRpb24gbGluayBkZWZhdWx0IGJhY2tncm91bmQuICovXG4gIC0tZ2wtbGluay1tZW50aW9uLWJhY2tncm91bmQtY29sb3ItY3VycmVudDogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgbWVudGlvbiBsaW5rIGJhY2tncm91bmQgd2hlbiByZWZlcmVuY2luZyB0aGUgY3VycmVudCB1c2VyLiAqL1xuICAtLWdsLW5hdi1pdGVtLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9udCBzaXplIG9mIGEgbmF2aWdhdGlvbiBpdGVtICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWJvbGQpOyAvKiogVXNlZCBmb3IgdGhlIGZvbnQgd2VpZ2h0IG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiAqL1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgYmVzaWRlIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiBUaW50ZWQgdGhlbWVzIG92ZXJyaWRlIGl0IGluIHNyYy9zY3NzL3RoZW1lcy5zY3NzLiAqL1xuICAtLWdsLXByb2dyZXNzLWJhci10cmFjay1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIGZvciBhbGwgcHJvZ3Jlc3MtYmFyIHZhcmlhbnRzLiAqL1xuICAtLWdsLXNrZWxldG9uLWxvYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgc2tlbGV0b24gbG9hZGVyIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtc2tlbGV0b24tbG9hZGVyLXNoaW1tZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGFuaW1hdGVkIHNoaW1tZXIgZWZmZWN0IGluIGEgc2tlbGV0b24gbG9hZGVyLiAqL1xuICAtLWdsLXNwaW5uZXItdHJhY2stY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIHN0YXRpYyB0cmFjayAoYmFja2dyb3VuZCkgb2YgYSBsb2FkaW5nIHNwaW5uZXIuICovXG4gIC0tZ2wtc3Bpbm5lci10cmFjay1jb2xvci1saWdodDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIHN0YXRpYyB0cmFjayAoYmFja2dyb3VuZCkgb2YgYSBsb2FkaW5nIHNwaW5uZXIgb24gYSBkYXJrIGJhY2tncm91bmQuICovXG4gIC0tZ2wtc3Bpbm5lci1zZWdtZW50LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBhbmltYXRlZCBzZWdtZW50IG9mIGEgbG9hZGluZyBzcGlubmVyLiAqL1xuICAtLWdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1saWdodDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGFuaW1hdGVkIHNlZ21lbnQgb2YgYSBsb2FkaW5nIHNwaW5uZXIgb24gYSBkYXJrIGJhY2tncm91bmQuICovXG4gIC0tZ2wtdG9rZW4tc2VsZWN0b3ItdG9rZW4tY29udGFpbmVyLXRva2VuLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdG9rZW4gaW4gYSB0b2tlbi1zZWxlY3RvciB3aGVuIGl0J3MgdG9rZW4tY29udGFpbmVyIGlzIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC10b2tlbi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgdG9rZW4gYmFja2dyb3VuZCBjb2xvci4gKi9cbiAgLS1nbC10b29sdGlwLXRleHQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciBzdXBwbGVtZW50YWwgdG9vbHRpcCB0ZXh0IHRoYXQgaXMgbGVzcyBwcm9taW5lbnQgdGhhbiB0aGUgZGVmYXVsdCB0ZXh0IGFuZCByZW1haW5zIHRoZSBzYW1lIGNvbG9yIHJlZ2FyZGxlc3Mgb2YgbW9kZS4gKi9cbiAgLS1ibGFjazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwKTtcbiAgLS13aGl0ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTtcbiAgLS1ibHVlLTUwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwKTtcbiAgLS1ibHVlLTEwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApO1xuICAtLWJsdWUtMjAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTIwMCk7XG4gIC0tYmx1ZS0zMDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtMzAwKTtcbiAgLS1ibHVlLTQwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApO1xuICAtLWJsdWUtNTAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCk7XG4gIC0tYmx1ZS02MDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtNjAwKTtcbiAgLS1ibHVlLTcwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApO1xuICAtLWJsdWUtODAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTgwMCk7XG4gIC0tYmx1ZS05MDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtOTAwKTtcbiAgLS1ibHVlLTk1MDogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApO1xuICAtLWdyYXktMTA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTApO1xuICAtLWdyYXktNTA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApO1xuICAtLWdyYXktMTAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7XG4gIC0tZ3JheS0yMDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTtcbiAgLS1ncmF5LTMwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuICAtLWdyYXktNDAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7XG4gIC0tZ3JheS01MDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTAwKTtcbiAgLS1ncmF5LTYwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApO1xuICAtLWdyYXktNzAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7XG4gIC0tZ3JheS04MDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTtcbiAgLS1ncmF5LTkwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xuICAtLWdyYXktOTUwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7XG4gIC0tZ3JlZW4tNTA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTUwKTtcbiAgLS1ncmVlbi0xMDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTEwMCk7XG4gIC0tZ3JlZW4tMjAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApO1xuICAtLWdyZWVuLTMwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMzAwKTtcbiAgLS1ncmVlbi00MDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTQwMCk7XG4gIC0tZ3JlZW4tNTAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi01MDApO1xuICAtLWdyZWVuLTYwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTtcbiAgLS1ncmVlbi03MDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTcwMCk7XG4gIC0tZ3JlZW4tODAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi04MDApO1xuICAtLWdyZWVuLTkwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTAwKTtcbiAgLS1ncmVlbi05NTA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7XG4gIC0tb3JhbmdlLTUwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTApO1xuICAtLW9yYW5nZS0xMDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApO1xuICAtLW9yYW5nZS0yMDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0yMDApO1xuICAtLW9yYW5nZS0zMDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0zMDApO1xuICAtLW9yYW5nZS00MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS00MDApO1xuICAtLW9yYW5nZS01MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MDApO1xuICAtLW9yYW5nZS02MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS02MDApO1xuICAtLW9yYW5nZS03MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS03MDApO1xuICAtLW9yYW5nZS04MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS04MDApO1xuICAtLW9yYW5nZS05MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05MDApO1xuICAtLW9yYW5nZS05NTA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApO1xuICAtLXB1cnBsZS01MDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTtcbiAgLS1wdXJwbGUtMTAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMTAwKTtcbiAgLS1wdXJwbGUtMjAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTtcbiAgLS1wdXJwbGUtMzAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMzAwKTtcbiAgLS1wdXJwbGUtNDAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNDAwKTtcbiAgLS1wdXJwbGUtNTAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNTAwKTtcbiAgLS1wdXJwbGUtNjAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNjAwKTtcbiAgLS1wdXJwbGUtNzAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNzAwKTtcbiAgLS1wdXJwbGUtODAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTtcbiAgLS1wdXJwbGUtOTAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTAwKTtcbiAgLS1wdXJwbGUtOTUwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTUwKTtcbiAgLS1yZWQtNTA6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7XG4gIC0tcmVkLTEwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTEwMCk7XG4gIC0tcmVkLTIwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7XG4gIC0tcmVkLTMwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTMwMCk7XG4gIC0tcmVkLTQwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTQwMCk7XG4gIC0tcmVkLTUwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTUwMCk7XG4gIC0tcmVkLTYwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTYwMCk7XG4gIC0tcmVkLTcwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTcwMCk7XG4gIC0tcmVkLTgwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTgwMCk7XG4gIC0tcmVkLTkwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7XG4gIC0tcmVkLTk1MDogdmFyKC0tZ2wtY29sb3ItcmVkLTk1MCk7XG4gIC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkaXNhYmxlZCBhY3Rpb24uICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkaXNhYmxlZCBhY3Rpb24gdGhhdCBzdGF5cyBzZWxlY3RlZC4gU2l0cyBiZXR3ZWVuIHRoZSBkaXNhYmxlZCBiYWNrZ3JvdW5kIGFuZCB0aGUgZW5hYmxlZCBzZWxlY3RlZCBiYWNrZ3JvdW5kIHNvIHRoZSBzZWxlY3RlZCBzdGF0ZSBrZWVwcyAzOjEgY29udHJhc3QgYWdhaW5zdCB0aGUgcGFnZSB3aGlsZSBzdGlsbCByZWFkaW5nIGFzIGRpc2FibGVkLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTYpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstMTYpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTYpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0xNik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1yZWQtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWJsdWUtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWJsdWUtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgZGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwKTsgLyoqIFVzZWQgdG8gc2xpZ2h0bHkgZGlmZmVyZW50aWF0ZSB0aGUgYmFja2dyb3VuZCBmcm9tIHRoZSBkZWZhdWx0LiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itc3Ryb25nOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgdG8gbWFrZSB0aGUgYmFja2dyb3VuZCBlYXNpbHkgc3RhbmQgb3V0IGZyb20gdGhlIGRlZmF1bHQuICovXG4gIC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIHRvIGlkZW50aWZ5IGEgZGlzYWJsZWQgc2VjdGlvbi4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciBjb21wb25lbnRzLCBsaWtlIHRvb2x0aXBzIGFuZCBkcmF3ZXJzLCBhbmQgY29udGVudCwgbGlrZSBhIHN0aWNreSBoZWFkZXIsIHRoYXQgb3ZlcmxhcCBvdGhlciBjb250ZW50LiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itc2VjdGlvbjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIGNvbnRhaW5lcnMsIGxpa2UgYSBjYXJkIGhlYWRlciwgdGhhdCBhcmUgdmlzdWFsbHkgZGlzdGluY3QgZnJvbSB0aGUgZGVmYXVsdCBwYWdlIGJhY2tncm91bmQgb25seSB3aGVuIG5lY2Vzc2FyeSB0byBtYWludGFpbiBhZmZvcmRhbmNlIGFuZCBoaWVyYXJjaHkgaW4gZGlmZmVyZW50IG1vZGVzLiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxheTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yNCk7IC8qKiBVc2VkIGZvciBhbiBvdmVybGF5IHRoYXQgY292ZXJzIG90aGVyIGNvbnRlbnQuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgZGVmYXVsdCBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciBkaXNhYmxlZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItY29uY2F0ZW5hdGlvbjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBzdGF0aWMgY29udGVudCB0aGF0IHByZXBlbmRzIG9yIGFwcGVuZHMgYSB0ZXh0IGlucHV0LiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1yZWFkb25seTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIHN0YXRpYyBjb250ZW50IHRoYXQgcHJlcGVuZHMgb3IgYXBwZW5kcyBhIHRleHQgaW5wdXQuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBiYWNrZ3JvdW5kIG9uIGhvdmVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIGZvcm0gY29udHJvbCAoaW5wdXQsIHJhZGlvIGJ1dHRvbiwgY2hlY2tib3gsIHRleHRhcmVhKSBkZWZhdWx0IGJvcmRlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGJvcmRlciBvbiBob3Zlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGJvcmRlciBvbiBmb2N1cy4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgZGlzYWJsZWQgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGJvcmRlci4gKi9cbiAgLS1nbC1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiBpbnB1dHMuICovXG4gIC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciBjaGVja2JveCBhbmQgcmFkaW8gYnV0dG9uIHN0YXRlIGluZGljYXRvcnMuICovXG4gIC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIGEgYmFja2dyb3VuZCBhc3NvY2lhdGVkIHdpdGggc3Ryb25nIGZlZWRiYWNrIGxpa2UgYSB0b29sdGlwIG9yIHRvYXN0IG1lc3NhZ2UuICovXG4gIC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYXNzb2NpYXRlZCB3aXRoIHN0cm9uZyBmZWVkYmFjay4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdHJvbmctdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRleHQgb24gYSBzdHJvbmcgZmVlZGJhY2sgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdHJvbmctaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gb24gYSBzdHJvbmcgZmVlZGJhY2sgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdHJvbmctbGluay1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0zMDApOyAvKiogVXNlZCBmb3IgYSBsaW5rIG9uIGEgc3Ryb25nIGZlZWRiYWNrIGJhY2tncm91bmQuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGZlZWRiYWNrIGl0ZW0gd2hlbiB0aGVyZSBpc24ndCBhIHNwZWNpZmljIG1lYW5pbmcgb3IgdXJnZW5jeS4gKi9cbiAgLS1nbC1mZWVkYmFjay1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgZmVlZGJhY2sgaXRlbSB3aGVuIHRoZXJlIGlzbid0IGEgc3BlY2lmaWMgbWVhbmluZyBvciB1cmdlbmN5LiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBpbmZvcm1hdGlvbmFsIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgbmV3IGluZm9ybWF0aW9uIG9yIGEgY2hhbmdlIHRoYXQgZG9lc24ndCByZXF1aXJlIGltbWVkaWF0ZSBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2staW5mby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8tdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8taWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS02MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stc3VjY2Vzcy1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3VjY2VzcyBmZWVkYmFjayBpdGVtIHdoZW4gY29uZmlybWluZyB0aGUgc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIGEgdXNlci1pbml0aWF0ZWQgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBmZWVkYmFjayBpdGVtIHdoZW4gY29uZmlybWluZyB0aGUgc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIGEgdXNlci1pbml0aWF0ZWQgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgc3VjY2VzcyBmZWVkYmFjayBpdGVtIHdoZW4gY29uZmlybWluZyB0aGUgc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIGEgdXNlci1pbml0aWF0ZWQgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay13YXJuaW5nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBwb3RlbnRpYWwgaXNzdWUgb3Igc2Vuc2l0aXZlIGluZm9ybWF0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXdhcm5pbmctaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIHBvdGVudGlhbCBpc3N1ZSBvciBzZW5zaXRpdmUgaW5mb3JtYXRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgY3JpdGljYWwgaXNzdWUgdGhhdCBoYXMganVzdCBvY2N1cnJlZCBhbmQgcmVxdWlyZXMgaW1tZWRpYXRlIGF0dGVudGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1kYW5nZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stYnJhbmQtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYnJhbmQtcmVsYXRlZCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIGluZm9ybWF0aW9uIHRoYXQgcGVydGFpbnMgdG8gR2l0TGFiLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJyYW5kLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYnJhbmQtcmVsYXRlZCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIGluZm9ybWF0aW9uIHRoYXQgcGVydGFpbnMgdG8gR2l0TGFiLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJyYW5kLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBicmFuZC1yZWxhdGVkIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgaW5mb3JtYXRpb24gdGhhdCBwZXJ0YWlucyB0byBHaXRMYWIuICovXG4gIC0tZ2wtZmVlZGJhY2stYnJhbmQtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGJyYW5kLXJlbGF0ZWQgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBpbmZvcm1hdGlvbiB0aGF0IHBlcnRhaW5zIHRvIEdpdExhYi4gKi9cbiAgLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgb3V0ZXIgY29sb3IgcG9ydGlvbiBvZiB0aGUgZm9jdXMgcmluZy4gKi9cbiAgLS1nbC1oaWdobGlnaHQtbWF0Y2gtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTUwMCk7IC8qKiBVc2VkIGZvciB0ZW1wb3JhcnkgdmlzdWFsIGVtcGhhc2lzIG9mIGJhY2tncm91bmRzIG9mIG1hdGNoZWQgc2VhcmNoIHRlcm1zLCBmaWx0ZXJlZCByZXN1bHRzLCBvciBhdXRvY29tcGxldGUgc3VnZ2VzdGlvbnMgd2l0aG91dCBpbXBseWluZyBhbnkgcGFydGljdWxhciBzdGF0ZSBvciBtZWFuaW5nLiAqL1xuICAtLWdsLWhpZ2hsaWdodC1tYXRjaC10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGV4dCB3aXRoaW4gdGVtcG9yYXJpbHkgaGlnaGxpZ2h0ZWQgbWF0Y2hlcyB0byBtYWludGFpbiByZWFkYWJpbGl0eSB3aGlsZSBkcmF3aW5nIGF0dGVudGlvbiB3aXRob3V0IGNvbnZleWluZyBzdGF0dXMuICovXG4gIC0tZ2wtaGlnaGxpZ2h0LXRhcmdldC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwKTsgLyoqIFVzZWQgZm9yIHRlbXBvcmFyeSB2aXN1YWwgZW1waGFzaXMgZm9yIGJhY2tncm91bmRzIG9mIHJlZmVyZW5jZWQgZWxlbWVudHMgKGZvciBleGFtcGxlIFVSTCBhbmNob3JzLCBob3ZlciBzdGF0ZXMpIG9yIHRvIHNob3cgcmVsYXRpb25zaGlwcyBiZXR3ZWVuIGNvbnRlbnQgd2l0aG91dCBpbXBseWluZyBzdGF0dXMgb3IgcmVxdWlyaW5nIGFjdGlvbi4gKi9cbiAgLS1nbC1oaWdobGlnaHQtdGFyZ2V0LWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCB0byBwcm92aWRlIGFkZGl0aW9uYWwgdmlzdWFsIGVtcGhhc2lzIGZvciBib3JkZXJzIG9mIHRlbXBvcmFyaWx5IHRhcmdldGVkIGVsZW1lbnRzIG9yIHdoZW4gdmlzdWFsaXppbmcgY29ubmVjdGlvbnMgYmV0d2VlbiByZWxhdGVkIGNvbnRlbnQsIGRpc3RpbmN0IGZyb20gcGVyc2lzdGVudCBzdGF0ZXMuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1pbmZvOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7IC8qKiBVc2VkIGZvciBhbiBpY29uIGFzc29jaWF0ZWQgd2l0aCBpbmZvcm1hdGlvbiBvciBoZWxwLiAqL1xuICAtLWdsLXN0YXR1cy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBzdGF0dXMgaXRlbSB3aGVuIHRoZSBzdGF0dXMgaXMgbmVpdGhlciBwb3NpdGl2ZSBub3IgbmVnYXRpdmUsIG9yIHdoZW4gaW5kaWNhdGluZyBhIHNwZWNpYWwgYnV0IHN0YWJsZSBzdGF0ZS4gKi9cbiAgLS1nbC1zdGF0dXMtbmV1dHJhbC10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG5ldXRyYWwgc3RhdHVzIGl0ZW0gd2hlbiB0aGUgc3RhdHVzIGlzIG5laXRoZXIgcG9zaXRpdmUgbm9yIG5lZ2F0aXZlLCBvciB3aGVuIGluZGljYXRpbmcgYSBzcGVjaWFsIGJ1dCBzdGFibGUgc3RhdGUuICovXG4gIC0tZ2wtc3RhdHVzLW5ldXRyYWwtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBuZXV0cmFsIHN0YXR1cyBpdGVtIHdoZW4gdGhlIHN0YXR1cyBpcyBuZWl0aGVyIHBvc2l0aXZlIG5vciBuZWdhdGl2ZSwgb3Igd2hlbiBpbmRpY2F0aW5nIGEgc3BlY2lhbCBidXQgc3RhYmxlIHN0YXRlLiAqL1xuICAtLWdsLXN0YXR1cy1pbmZvLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGluZm9ybWF0aW9uYWwgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgbm90ZXdvcnRoeSBvbmdvaW5nIGNvbmRpdGlvbiBvciBhIHN0YXRlIG9mIGFjdGl2ZSBwcm9ncmVzcy4gKi9cbiAgLS1nbC1zdGF0dXMtaW5mby10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIG5vdGV3b3J0aHkgb25nb2luZyBjb25kaXRpb24gb3IgYSBzdGF0ZSBvZiBhY3RpdmUgcHJvZ3Jlc3MuICovXG4gIC0tZ2wtc3RhdHVzLWluZm8taWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBub3Rld29ydGh5IG9uZ29pbmcgY29uZGl0aW9uIG9yIGEgc3RhdGUgb2YgYWN0aXZlIHByb2dyZXNzLiAqL1xuICAtLWdsLXN0YXR1cy1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3Mgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgcG9zaXRpdmUgb3V0Y29tZSwgY29tcGxldGlvbiwgb3IgZGVzaXJlZCBzdGF0ZS4gQ2xlYXJseSBjb252ZXlzIGEgcG9zaXRpdmUgY29ubm90YXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLXN1Y2Nlc3MtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBwb3NpdGl2ZSBvdXRjb21lLCBjb21wbGV0aW9uLCBvciBkZXNpcmVkIHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1zdGF0dXMtc3VjY2Vzcy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHBvc2l0aXZlIG91dGNvbWUsIGNvbXBsZXRpb24sIG9yIGRlc2lyZWQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIHBvc2l0aXZlIGNvbm5vdGF0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy13YXJuaW5nLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHN0YXRlIHRoYXQgcmVxdWlyZXMgaGVpZ2h0ZW5lZCBhd2FyZW5lc3Mgb3IgY2F1dGlvbiwgYnV0IGlzIG5vdCBuZWNlc3NhcmlseSBwcm9ibGVtYXRpYy4gUmVwcmVzZW50cyBhIHN0YXRlIHRoYXQgd2FycmFudHMgZXh0cmEgYXR0ZW50aW9uIG9yIGNhcmUgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBpdGVtLiAqL1xuICAtLWdsLXN0YXR1cy13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHN0YXRlIHRoYXQgcmVxdWlyZXMgaGVpZ2h0ZW5lZCBhd2FyZW5lc3Mgb3IgY2F1dGlvbiwgYnV0IGlzIG5vdCBuZWNlc3NhcmlseSBwcm9ibGVtYXRpYy4gUmVwcmVzZW50cyBhIHN0YXRlIHRoYXQgd2FycmFudHMgZXh0cmEgYXR0ZW50aW9uIG9yIGNhcmUgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBpdGVtLiAqL1xuICAtLWdsLXN0YXR1cy13YXJuaW5nLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHN0YXRlIHRoYXQgcmVxdWlyZXMgaGVpZ2h0ZW5lZCBhd2FyZW5lc3Mgb3IgY2F1dGlvbiwgYnV0IGlzIG5vdCBuZWNlc3NhcmlseSBwcm9ibGVtYXRpYy4gUmVwcmVzZW50cyBhIHN0YXRlIHRoYXQgd2FycmFudHMgZXh0cmEgYXR0ZW50aW9uIG9yIGNhcmUgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBpdGVtLiAqL1xuICAtLWdsLXN0YXR1cy1kYW5nZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBjcml0aWNhbCBvciBzZXZlcmVseSBwcm9ibGVtYXRpYyBjdXJyZW50IHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBuZWdhdGl2ZSBjb25ub3RhdGlvbiwgcmVwcmVzZW50aW5nIGEgc2VyaW91cywgb25nb2luZyBpc3N1ZSBvciB1bmRlc2lyZWQgY29uZGl0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy1kYW5nZXItdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRhbmdlciBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBjcml0aWNhbCBvciBzZXZlcmVseSBwcm9ibGVtYXRpYyBjdXJyZW50IHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBuZWdhdGl2ZSBjb25ub3RhdGlvbiwgcmVwcmVzZW50aW5nIGEgc2VyaW91cywgb25nb2luZyBpc3N1ZSBvciB1bmRlc2lyZWQgY29uZGl0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy1kYW5nZXItaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBjcml0aWNhbCBvciBzZXZlcmVseSBwcm9ibGVtYXRpYyBjdXJyZW50IHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBuZWdhdGl2ZSBjb25ub3RhdGlvbiwgcmVwcmVzZW50aW5nIGEgc2VyaW91cywgb25nb2luZyBpc3N1ZSBvciB1bmRlc2lyZWQgY29uZGl0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy1icmFuZC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYnJhbmQtcmVsYXRlZCBzdGF0dXMgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyB0aGUgc3RhdGUgb2YgdW5pcXVlIGZlYXR1cmVzIG9yIGVsZW1lbnRzIHNwZWNpZmljIHRvIHRoZSBHaXRMYWIgYnJhbmQgaWRlbnRpdHkuIEhlbHBzIGRpc3Rpbmd1aXNoIGFuZCBlbXBoYXNpemUgYnJhbmQtc3BlY2lmaWMgZWxlbWVudHMgd2l0aGluIHRoZSBpbnRlcmZhY2UuICovXG4gIC0tZ2wtc3RhdHVzLWJyYW5kLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBicmFuZC1yZWxhdGVkIHN0YXR1cyBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIHRoZSBzdGF0ZSBvZiB1bmlxdWUgZmVhdHVyZXMgb3IgZWxlbWVudHMgc3BlY2lmaWMgdG8gdGhlIEdpdExhYiBicmFuZCBpZGVudGl0eS4gSGVscHMgZGlzdGluZ3Vpc2ggYW5kIGVtcGhhc2l6ZSBicmFuZC1zcGVjaWZpYyBlbGVtZW50cyB3aXRoaW4gdGhlIGludGVyZmFjZS4gKi9cbiAgLS1nbC1zdGF0dXMtYnJhbmQtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGJyYW5kLXJlbGF0ZWQgc3RhdHVzIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgdGhlIHN0YXRlIG9mIHVuaXF1ZSBmZWF0dXJlcyBvciBlbGVtZW50cyBzcGVjaWZpYyB0byB0aGUgR2l0TGFiIGJyYW5kIGlkZW50aXR5LiBIZWxwcyBkaXN0aW5ndWlzaCBhbmQgZW1waGFzaXplIGJyYW5kLXNwZWNpZmljIGVsZW1lbnRzIHdpdGhpbiB0aGUgaW50ZXJmYWNlLiAqL1xuICAtLWdsLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGRlZmF1bHQgdGV4dCBjb2xvci4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLXN1YnRsZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3Igc3VwcGxlbWVudGFsIHRleHQgdGhhdCBkb2Vzbid0IG5lZWQgdG8gYmUgYXMgcHJvbWluZW50IGFzIG90aGVyIHRleHQuICovXG4gIC0tZ2wtdGV4dC1jb2xvci1zdHJvbmc6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRleHQgd2l0aCB0aGUgaGlnaGVzdCBjb250cmFzdC4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmc6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIGhlYWRpbmdzIGxldmVsIDEtNi4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLWxpbms6IHZhcigtLWdsLWNvbG9yLWJsdWUtNzAwKTsgLyoqIFVzZWQgZm9yIGRlZmF1bHQgdGV4dCBsaW5rcy4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLXdhcm5pbmc6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS02MDApOyAvKiogVXNlZCBmb3IgdGV4dCB0aGF0IHJlcXVpcmVzIGNhdXRpb24gb3IgY2FyZWZ1bCBhdHRlbnRpb24uICovXG4gIC0tZ2wtdGV4dC1jb2xvci1kYW5nZXI6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApOyAvKiogVXNlZCBmb3IgdGV4dCBpbmRpY2F0aW5nIGEgcHJvYmxlbSwgY3JpdGljYWwgc3RhdGUsIGRlc3RydWN0aXZlIGFjdGlvbiwgZXJyb3IsIGZhaWx1cmUsIHJlbW92YWwsIHN0b3AsIG9yIGRlY2xpbmF0aW9uLiAqL1xuICAtLWdsLXRleHQtY29sb3Itc3VjY2VzczogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTsgLyoqIFVzZWQgZm9yIHRleHQgaW5kaWNhdGluZyBzdWNjZXNzLCBjb21wbGV0aW9uLCBhcHByb3ZhbCwgYWRkaXRpb24sIG9yIHZhbGlkaXR5LiAqL1xuICAtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIGRpc2FibGVkIHRleHQuICovXG4gIC0tZ2wtaGVhZGluZy0xLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTcwMCk7XG4gIC0tZ2wtaGVhZGluZy0xLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTEtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS02MDApO1xuICAtLWdsLWhlYWRpbmctMi1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTMtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNTAwKTtcbiAgLS1nbC1oZWFkaW5nLTMtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS00MDApO1xuICAtLWdsLWhlYWRpbmctNC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtaGVhZGluZy01LWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTYtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMjAwKTtcbiAgLS1nbC1oZWFkaW5nLTYtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTEwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTIwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTQwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTUwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTYwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS03MDApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtODAwKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMTAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMzAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNDAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNTAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTcwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS04MDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtODAwKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctZGlzcGxheS1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTYpO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS03MDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTUwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNDAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS0zMDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTIwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1ib3JkZXItY29sb3Itc2VjdGlvbjogdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciB0aGF0IHN1cnJvdW5kcyBjb250ZW50IG9yIGVsZW1lbnRzIHdoZW4gdGhleSBhcHBlYXIgYXMgYSBjbG9zZWQgY29udGFpbmVyIG9yIGNsb3NlZCBzZWN0aW9uIG9mIHRoZSBwYWdlLiAqL1xuICAtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdDogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1tZCk7XG4gIC0tZ2wtZm9udC1zaXplLWJhc2U6IHZhcigtLWdsLWZvbnQtc2l6ZS1tZCk7XG4gIC0tZ2wtc2hhZG93LXNtOiAwIDAgMnB4IDAgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpLCAwIDFweCA0cHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciBzdXJmYWNlcyB0aGF0IG5lZWQgdG8gaW5kaWNhdGUgdXNlcnMgY2FuIG1hbnVhbGx5IGludGVyYWN0IHdpdGggdGhlbS4gRm9yIGV4YW1wbGUsIGNhcmRzIGluIGlzc3VlIGJvYXJkLiAqL1xuICAtLWdsLXNoYWRvdy1tZDogMCAwIDFweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCAwIDJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCAycHggOHB4IDAgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3Igc3VyZmFjZXMgdGhhdCBuZWVkIGJvdW5kYXJ5IGRlZmluaXRpb24gYW5kIGFwcGVhciBvbiBob3Zlci4gRm9yIGV4YW1wbGUsIHBvcG92ZXJzLiAqL1xuICAtLWdsLXNoYWRvdy1sZzogMCAwIDJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCAwIDJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCA0cHggMTJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGxhcmdlIHN1cmZhY2VzIHRoYXQgcHJlc2VudCBhZGRpdGlvbmFsIGNvbnRleHQgdG8gdGhlIHVzZXIuICovXG4gIC0tZ2wtYWxlcnQtYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1sZyk7IC8qKiBVc2VkIGZvciBhbGVydCBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWFsZXJ0LW5ldXRyYWwtdGl0bGUtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgdGl0bGUgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbmV1dHJhbCBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1uZXV0cmFsLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby10aXRsZS1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTsgLyoqIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhbiBpbmZvIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8tYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYW4gaW5mbyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1zdWNjZXNzLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpOyAvKiogVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBzdWNjZXNzIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LXdhcm5pbmctdGl0bGUtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgdGl0bGUgY29sb3Igb2YgYSB3YXJuaW5nIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgd2FybmluZyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC13YXJuaW5nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtZGFuZ2VyLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpOyAvKiogVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1kYW5nZXItYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIGRhbmdlciBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1kYW5nZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1kYW5nZXItYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBkYW5nZXIgYWxlcnQuICovXG4gIC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLWxnKTsgLyoqIEJvcmRlciByYWRpdXMgZm9yIHNxdWFyZSBhdmF0YXJzIGF0IGxhcmdlciBzaXplcyAoNDhweCwgNjRweCwgOTZweCkuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItaWNvbi1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhc2hlZC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFzaGVkIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWxpbmstYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1tZCk7IC8qKiBVc2VkIGZvciBsaW5rIGJ1dHRvbiBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtdGV4dC1jb2xvci1saW5rKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1jYXJkLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMteGwpOyAvKiogVXNlZCBmb3IgY2FyZCBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWNoYXJ0LWF4aXMtdGV4dC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGUpOyAvKiogVXNlZCBpbiBjaGFydHMgZm9yIHRoZSB0ZXh0IGNvbG9yIG9mIGF4aXMgdGl0bGVzIGFuZCBsYWJlbHMuICovXG4gIC0tZ2wtZGF0ZXBpY2tlci1kYXRlLXRleHQtY29sb3Itc2VsZWN0ZWQ6IHZhcigtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkKTsgLyoqIFVzZWQgZm9yIHRoZSBkYXRlcGlja2VyIGRhdGUgdGV4dCBjb2xvciBzdGF0ZSBpbmRpY2F0b3JzLiAqL1xuICAtLWdsLWRyYXdlci1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLTJ4bCk7IC8qKiBVc2VkIGZvciBkcmF3ZXIgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1kcm9wZG93bi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkcm9wZG93bi4gKi9cbiAgLS1nbC1kcm9wZG93bi1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJvcmRlci1jb2xvci1zdHJvbmcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRyb3Bkb3duLiAqL1xuICAtLWdsLWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciByYWRpdXMgb2YgYSBkcm9wZG93bi4gKi9cbiAgLS1nbC1kcm9wZG93bi1kaXZpZGVyLWNvbG9yOiB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZGl2aWRlciBvZiBhIGRyb3Bkb3duLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGRpc2FibGVkIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBkcm9wZG93biBzZWxlY3RlZCBvcHRpb24gaW5kaWNhdG9yIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiB1bnNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gdW5zZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1czogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLW1vZGFsLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtMnhsKTsgLyoqIFVzZWQgZm9yIG1vZGFsIGJvcmRlciByYWRpdXMuICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLXN0YXR1cy1pbmZvLWljb24tY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGluZGljYXRvciBjb2xvciBmb3IgdGhlIHByaW1hcnkgcHJvZ3Jlc3MtYmFyIHZhcmlhbnQuICovXG4gIC0tZ2wtcHJvZ3Jlc3MtYmFyLWluZGljYXRvci1jb2xvci1zdWNjZXNzOiB2YXIoLS1nbC1zdGF0dXMtc3VjY2Vzcy1pY29uLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgY29sb3IgZm9yIHRoZSBzdWNjZXNzIHByb2dyZXNzLWJhciB2YXJpYW50LiAqL1xuICAtLWdsLXByb2dyZXNzLWJhci1pbmRpY2F0b3ItY29sb3Itd2FybmluZzogdmFyKC0tZ2wtc3RhdHVzLXdhcm5pbmctaWNvbi1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgd2FybmluZyBwcm9ncmVzcy1iYXIgdmFyaWFudC4gKi9cbiAgLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLWRhbmdlcjogdmFyKC0tZ2wtc3RhdHVzLWRhbmdlci1pY29uLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgY29sb3IgZm9yIHRoZSBkYW5nZXIgcHJvZ3Jlc3MtYmFyIHZhcmlhbnQuICovXG4gIC0tZ2wtdGFibGUtcm93LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWhpZ2hsaWdodC10YXJnZXQtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHRhYmxlIHJvdyBpbiBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10YWJsZS1zb3J0aW5nLWljb24tY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgY29sb3Igb2YgdGhlIHNvcnRpbmcgaWNvbnMgaW4gdGhlIGNvbHVtbiBoZWFkZXJzLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRpc2FibGVkOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBkaXNhYmxlZCB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaC4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGRpc2FibGVkIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCwgd2hpY2ggc3RheXMgZmlsbGVkIHNvIHRoZSBjaGVja2VkIHN0YXRlIHJlbWFpbnMgbGVnaWJsZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWxvYWRpbmc6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGxvYWRpbmcgdG9nZ2xlIHN3aXRjaC4gQSBsb2FkaW5nIHRvZ2dsZSByZW5kZXJzIG5vIHRodW1iIGFuZCBpdHMgdmFsdWUgaXMgc3RpbGwgaW4gZmxpZ2h0LCBzbyB0aGUgdHJhY2sgY2FycmllcyBubyBjaGVja2VkIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGRpc2FibGVkIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGEgZGlzYWJsZWQgdG9nZ2xlIHN3aXRjaC4gKi9cbiAgLS1nbC10b2tlbi1mb3JlZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRva2VuIGZvcmVncm91bmQgY29sb3IuICovXG4gIC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciByYWRpdXMgb2YgYW4gYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1czogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQgb24gZm9jdXMuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBiYWNrZ3JvdW5kIHdoZW4gZGlzYWJsZWQuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZXJyb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgaW52YWxpZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYm9yZGVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciBvbiBob3Zlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGRlZmF1bHQgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1jb250cm9sLXRleHQtY29sb3ItZXJyb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGFuZ2VyKTsgLyoqIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyBpbnZhbGlkLiAqL1xuICAtLWdsLWNvbnRyb2wtdGV4dC1jb2xvci12YWxpZDogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWNjZXNzKTsgLyoqIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyB2YWxpZC4gKi9cbiAgLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQpOyAvKiogVXNlZCBmb3IgZGlzYWJsZWQgY2hlY2tib3ggYW5kIHJhZGlvIGJ1dHRvbiBzdGF0ZSBpbmRpY2F0b3JzLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciByYWRpdXMgb2YgYSBmZWVkYmFjayBlbGVtZW50LiAqL1xuICAtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgaW5uZXIgbmV1dHJhbCBwb3J0aW9uIG9mIHRoZSBmb2N1cyByaW5nLiAqL1xuICAtLWdsLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IGljb24gY29sb3IuIENhbiBiZSBwYWlyZWQgd2l0aCBkZWZhdWx0IHRleHQuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdWJ0bGU6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgZm9yIGEgc3RhdGljIG9yIGRlY29yYXRpb25hbCBpY29uLiBDYW4gYmUgcGFpcmVkIHdpdGggc3VidGxlIHRleHQuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdHJvbmc6IHZhcigtLWdsLXRleHQtY29sb3Itc3Ryb25nKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gd2l0aCB0aGUgaGlnaGVzdCBjb250cmFzdC4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWRpc2FibGVkOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gd2l0aGluIGEgZGlzYWJsZWQgc2VjdGlvbi4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWxpbms6IHZhcigtLWdsLXRleHQtY29sb3ItbGluayk7IC8qKiBVc2VkIGZvciBhbiBpY29uIHdpdGhpbiBhIGxpbmsuICovXG4gIC0tZ2wtaWNvbi1jb2xvci13YXJuaW5nOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXdhcm5pbmcpOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggYSB3YXJuaW5nLiAqL1xuICAtLWdsLWljb24tY29sb3ItZGFuZ2VyOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRhbmdlcik7IC8qKiBVc2VkIGZvciBhbiBpY29uIGFzc29jaWF0ZWQgd2l0aCBhbiBlcnJvciBvciBkYW5nZXIuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdWNjZXNzOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXN1Y2Nlc3MpOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggc3VjY2VzcyBvciB2YWxpZGl0eS4gKi9cbiAgLS1nbC10ZXh0LXByaW1hcnk6IHZhcigtLWdsLXRleHQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2UgdGV4dC5jb2xvci5kZWZhdWx0IGluc3RlYWQuICovXG4gIC0tZ2wtdGV4dC1zZWNvbmRhcnk6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZSB0ZXh0LmNvbG9yLnN1YnRsZSBpbnN0ZWFkLiAqL1xuICAtLWdsLXRleHQtdGVydGlhcnk6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpOyAvKiogVXNlIHRleHQuY29sb3IuZGlzYWJsZWQgaW5zdGVhZC4gKi9cbiAgLS1nbC1oZWFkaW5nLTEtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMS1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy0xLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTEtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTItbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctMi1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy0yLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMy1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0zLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTMtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctMy1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy00LW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTUtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctNS1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy01LWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNi1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy02LW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTYtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctNi1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctZGlzcGxheS1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1kaXNwbGF5LW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTEtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMy1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctNC1maXhlZC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTUtZml4ZWQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNi1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQ6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7IC8qKiBCb3JkZXIgcmFkaXVzIGZvciBzcXVhcmUgYXZhdGFycyBhdCBzbWFsbGVyIHNpemVzICgxNnB4LCAyNHB4LCAzMnB4KS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGJyb2FkY2FzdCBiYW5uZXIgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1idXR0b24tYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXMpOyAvKiogVXNlZCBmb3IgYnV0dG9uIGJvcmRlciByYWRpdXMuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGxpbmsgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1jaGFydC1heGlzLXBvaW50ZXItY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgY29sb3Igb2YgdGhlIHJlZmVyZW5jZSBsaW5lIGFuZCBheGlzIHZhbHVlIHVuZGVyIG1vdXNlIHBvaW50ZXIuICovXG4gIC0tZ2wtY2hhcnQtem9vbS1oYW5kbGUtY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgaGFuZGxlIGNvbG9yIHdoZW4gem9vbWluZyBpbiBvbiBhIHNwZWNpZmljIGFyZWEgb2YgZGF0YS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24taW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkLWZvY3VzOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtYWN0aXZlOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hY3Rpb24tYm9yZGVyLXJhZGl1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIHJhZGl1cyBvZiBhIG5hdmlnYXRpb24gaXRlbSAqL1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBzZWxlY3RlZCBpbmRpY2F0b3Igb2YgYSB0YWIuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gVGhlIHRyYWNrIGlzIGRlbGliZXJhdGVseSB1bmNoYW5nZWQgZnJvbSB0aGUgZGVmYXVsdCBzdGF0ZTsgaG92ZXIgaXMgY2FycmllZCBieSB0aGUgdHJhY2sgYm9yZGVyIGFuZCB0aGUgdGh1bWIgc2l6ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBkaXNhYmxlZCBjaGVja2VkIHRvZ2dsZSBzd2l0Y2gsIHdoaWNoIG1hdGNoZXMgdGhlIHRyYWNrIGNvbG9yLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWxvYWRpbmc6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItbG9hZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgbG9hZGluZyB0b2dnbGUgc3dpdGNoLCB3aGljaCBtYXRjaGVzIHRoZSB0cmFjayBjb2xvciBzbyB0aGUgdHJhY2sgcmVhZHMgYXMgYSBzaW5nbGUgZmxhdCBmaWxsLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCk7IC8qKiBVc2UgdG9nZ2xlLnN3aXRjaC5iYWNrZ3JvdW5kLmNvbG9yLnVuY2hlY2tlZC5kaXNhYmxlZCBpbnN0ZWFkLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRva2VuLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0b2tlbiBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1mb2N1czogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciBvbiBmb2N1cy4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciB3aGVuIGRpc2FibGVkLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGZvY3VzIHN0YXRlLiBUaGUgdHJhY2sgaXMgZGVsaWJlcmF0ZWx5IHVuY2hhbmdlZCBmcm9tIHRoZSBkZWZhdWx0IHN0YXRlOyBmb2N1cyBpcyBjYXJyaWVkIGJ5IHRoZSBmb2N1cyByaW5nLCB0aGUgdHJhY2sgYm9yZGVyIGFuZCB0aGUgdGh1bWIgc2l6ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG59XG5cbi8qKlxuICogRG8gbm90IGVkaXQgZGlyZWN0bHksIHRoaXMgZmlsZSB3YXMgYXV0by1nZW5lcmF0ZWQuXG4gKi9cbjpyb290LmdsLWRhcmssIC5nbC1kYXJrLXNjb3BlIHtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLWZ1bGw6IDk5OTlweDtcbiAgLS1nbC1jb2xvci1hbHBoYS0wOiByZ2JhKDAsIDAsIDAsIDApO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstMjogcmdiYSg1LCA1LCA2LCAwLjAyKTtcbiAgLS1nbC1jb2xvci1hbHBoYS1kYXJrLTQ6IHJnYmEoNSwgNSwgNiwgMC4wNCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay02OiByZ2JhKDUsIDUsIDYsIDAuMDYpO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstODogcmdiYSg1LCA1LCA2LCAwLjA4KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1kYXJrLTE2OiByZ2JhKDUsIDUsIDYsIDAuMTYpO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstMjQ6IHJnYmEoNSwgNSwgNiwgMC4yNCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay00MDogcmdiYSg1LCA1LCA2LCAwLjQpO1xuICAtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC02OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuICAtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTg6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMTY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMjQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMzY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtNDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgLS1nbC1jb2xvci1ibHVlLTUwOiAjZThmMmZkO1xuICAtLWdsLWNvbG9yLWJsdWUtMTAwOiAjYzhlMGY5O1xuICAtLWdsLWNvbG9yLWJsdWUtMjAwOiAjOWRjOGYyO1xuICAtLWdsLWNvbG9yLWJsdWUtMzAwOiAjNjRhN2U5O1xuICAtLWdsLWNvbG9yLWJsdWUtNDAwOiAjM2Y4ZWRkO1xuICAtLWdsLWNvbG9yLWJsdWUtNTAwOiAjMWY3M2NhO1xuICAtLWdsLWNvbG9yLWJsdWUtNjAwOiAjMjU2NmI1O1xuICAtLWdsLWNvbG9yLWJsdWUtNzAwOiAjMjc1OTlmO1xuICAtLWdsLWNvbG9yLWJsdWUtODAwOiAjMjU0NTgxO1xuICAtLWdsLWNvbG9yLWJsdWUtOTAwOiAjMWYzMTY2O1xuICAtLWdsLWNvbG9yLWJsdWUtOTUwOiAjMWQyMTUzO1xuICAtLWdsLWNvbG9yLWJyYW5kLXdoaXRlOiAjZmZmO1xuICAtLWdsLWNvbG9yLWJyYW5kLWNoYXJjb2FsOiAjMTcxMzIxO1xuICAtLWdsLWNvbG9yLWJyYW5kLW9yYW5nZS0wMWc6ICNmZmQxYmY7XG4gIC0tZ2wtY29sb3ItYnJhbmQtb3JhbmdlLTAxcDogI2ZjYTMyNjtcbiAgLS1nbC1jb2xvci1icmFuZC1vcmFuZ2UtMDJwOiAjZmM2ZDI2O1xuICAtLWdsLWNvbG9yLWJyYW5kLW9yYW5nZS0wM3A6ICNlMjQzMjk7XG4gIC0tZ2wtY29sb3ItYnJhbmQtcHVycGxlLTAxZzogI2NlYjNlZjtcbiAgLS1nbC1jb2xvci1icmFuZC1wdXJwbGUtMDFwOiAjYTk4OWY1O1xuICAtLWdsLWNvbG9yLWJyYW5kLXB1cnBsZS0wMnA6ICM3NzU5YzI7XG4gIC0tZ2wtY29sb3ItYnJhbmQtZ3JheS0wMTogI2QxZDBkMztcbiAgLS1nbC1jb2xvci1icmFuZC1ncmF5LTAyOiAjYTJhMWE2O1xuICAtLWdsLWNvbG9yLWJyYW5kLWdyYXktMDM6ICM3NDcxN2E7XG4gIC0tZ2wtY29sb3ItYnJhbmQtZ3JheS0wNDogIzQ1NDI0ZDtcbiAgLS1nbC1jb2xvci1icmFuZC1ncmF5LTA1OiAjMmIyODM4O1xuICAtLWdsLWNvbG9yLWJyYW5kLXBpbmstMDFnOiAjZmZiOWM5O1xuICAtLWdsLWNvbG9yLWRhdGEtZ3JlZW4tNTA6ICNkZGZhYjc7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi0xMDA6ICNjNmVkOTQ7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi0yMDA6ICNiMGQ5N2I7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi0zMDA6ICM5NGMyNWU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi00MDA6ICM4MWFjNDE7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi01MDA6ICM2MTkwMjU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi02MDA6ICM0ZTdmMGU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi03MDA6ICMzNjY4MDA7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi04MDA6ICMyNzU2MDA7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi05MDA6ICMxYTQ1MDA7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi05NTA6ICMxMzNhMDM7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTUwOiAjYjVmZWZkO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS0xMDA6ICM5M2YyZWY7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTIwMDogIzVlZGVlMztcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtMzAwOiAjMzJjNWQyO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS00MDA6ICMwMGFjYzQ7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTUwMDogIzAwOTBiMTtcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtNjAwOiAjMDA3YjliO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS03MDA6ICMwMDYzODE7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTgwMDogIzAwNTE2YztcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtOTAwOiAjMDA0MDU5O1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS05NTA6ICMwMDM0NGI7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTUwOiAjZTllYmZmO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS0xMDA6ICNkMmRjZmY7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTIwMDogI2I3YzZmZjtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtMzAwOiAjOTdhY2ZmO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS00MDA6ICM3OTkyZjU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTUwMDogIzYxN2FlMjtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtNjAwOiAjNGU2NWNkO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS03MDA6ICMzZjUxYWU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTgwMDogIzM3NDI5MTtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtOTAwOiAjMzAzNDcwO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS05NTA6ICMyYTJiNTk7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTUwOiAjZmZlM2ViO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS0xMDA6ICNmZmNjZGI7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTIwMDogI2ZjYWNjNTtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtMzAwOiAjZjg4YWFmO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS00MDA6ICNlODZlOWE7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTUwMDogI2NmNGQ4MTtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtNjAwOiAjYjkzZDcxO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS03MDA6ICM5YTJlNWQ7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTgwMDogIzdjMjE0ZjtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtOTAwOiAjNjYxZTNhO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS05NTA6ICM1NDFkMzE7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNTA6ICNmYWU4ZDE7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtMTAwOiAjZjVkNmIzO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTIwMDogI2VlYmQ4YztcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS0zMDA6ICNlOTliNjA7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNDAwOiAjZTA3ZTQxO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTUwMDogI2M5NWQyZTtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS02MDA6ICNiMTRmMTg7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNzAwOiAjOTI0MzBhO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTgwMDogIzZmMzUwMDtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS05MDA6ICM1ZTJmMDU7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtOTUwOiAjNGIyNzA3O1xuICAtLWdsLWNvbG9yLWdyZWVuLTUwOiAjZTZmNWVhO1xuICAtLWdsLWNvbG9yLWdyZWVuLTEwMDogI2JlZTZkMDtcbiAgLS1nbC1jb2xvci1ncmVlbi0yMDA6ICM4NGQ0YjY7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tMzAwOiAjMzViNTk3O1xuICAtLWdsLWNvbG9yLWdyZWVuLTQwMDogIzEyOWM4NDtcbiAgLS1nbC1jb2xvci1ncmVlbi01MDA6ICMwZDgwNzA7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tNjAwOiAjMGM3MjY1O1xuICAtLWdsLWNvbG9yLWdyZWVuLTcwMDogIzBiNjQ1YTtcbiAgLS1nbC1jb2xvci1ncmVlbi04MDA6ICMwNzUwNDg7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tOTAwOiAjMDAzYzM2O1xuICAtLWdsLWNvbG9yLWdyZWVuLTk1MDogIzAwMmMyNjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTA6ICNmZmY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDogI2Y3ZjdmNTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTUwOiAjZWNlYmVhO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwOiAjZGNkYmQ5O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMjAwOiAjYzFiZmJlO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMzAwOiAjYTVhM2EzO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNDAwOiAjOGE4ODg4O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTAwOiAjNzQ3MjczO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNjAwOiAjNjQ2MTYzO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNzAwOiAjNGQ0YjRlO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtODAwOiAjM2EzODNkO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTAwOiAjMjgyNzJkO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTUwOiAjMTgxNzFkO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwMDogIzA1MDQwODtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtNTA6ICNmZGYwZDU7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTEwMDogI2ZhZGE5YztcbiAgLS1nbC1jb2xvci1vcmFuZ2UtMjAwOiAjZjdiOTUxO1xuICAtLWdsLWNvbG9yLW9yYW5nZS0zMDA6ICNmYjgwMTc7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTQwMDogI2U5NWYyMTtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtNTAwOiAjYzc0ODE2O1xuICAtLWdsLWNvbG9yLW9yYW5nZS02MDA6ICNiMzQwMTM7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTcwMDogIzllMzgxMTtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtODAwOiAjN2QyZDBlO1xuICAtLWdsLWNvbG9yLW9yYW5nZS05MDA6ICM1ZDIyMGQ7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTk1MDogIzQ2MTgwNztcbiAgLS1nbC1jb2xvci1wdXJwbGUtNTA6ICNmNGYwZmM7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTEwMDogI2UxZGFmNztcbiAgLS1nbC1jb2xvci1wdXJwbGUtMjAwOiAjYzliZWVmO1xuICAtLWdsLWNvbG9yLXB1cnBsZS0zMDA6ICNhOTk3ZTE7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTQwMDogIzkyN2NkNztcbiAgLS1nbC1jb2xvci1wdXJwbGUtNTAwOiAjNzg2MmM4O1xuICAtLWdsLWNvbG9yLXB1cnBsZS02MDA6ICM2YTU0YzA7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTcwMDogIzViNDZiODtcbiAgLS1nbC1jb2xvci1wdXJwbGUtODAwOiAjNDgzNjk4O1xuICAtLWdsLWNvbG9yLXB1cnBsZS05MDA6ICMzNjI2NzY7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTk1MDogIzI5MWE1YztcbiAgLS1nbC1jb2xvci1yZWQtNTA6ICNmZWVlZjA7XG4gIC0tZ2wtY29sb3ItcmVkLTEwMDogI2ZmZDNkNztcbiAgLS1nbC1jb2xvci1yZWQtMjAwOiAjZmZhZmI4O1xuICAtLWdsLWNvbG9yLXJlZC0zMDA6ICNmYzc5ODg7XG4gIC0tZ2wtY29sb3ItcmVkLTQwMDogI2YxNTE2ODtcbiAgLS1nbC1jb2xvci1yZWQtNTAwOiAjZGUxZDRiO1xuICAtLWdsLWNvbG9yLXJlZC02MDA6ICNjNTIwNDI7XG4gIC0tZ2wtY29sb3ItcmVkLTcwMDogI2FjMjAzYTtcbiAgLS1nbC1jb2xvci1yZWQtODAwOiAjODkxYzJmO1xuICAtLWdsLWNvbG9yLXJlZC05MDA6ICM2NDE5MjU7XG4gIC0tZ2wtY29sb3ItcmVkLTk1MDogIzQ4MTUxZDtcbiAgLS1nbC1mb250LWZhbWlseS1yZWd1bGFyOiB2YXIoLS1kZWZhdWx0LXJlZ3VsYXItZm9udCwgJ0dpdExhYiBTYW5zJyksJ0dpdExhYiBTYW5zJywtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCwnU2Vnb2UgVUknLFJvYm90bywnTm90byBTYW5zJyxVYnVudHUsQ2FudGFyZWxsLCdIZWx2ZXRpY2EgTmV1ZScsc2Fucy1zZXJpZiwnQXBwbGUgQ29sb3IgRW1vamknLCdTZWdvZSBVSSBFbW9qaScsJ1NlZ29lIFVJIFN5bWJvbCcsJ05vdG8gQ29sb3IgRW1vamknO1xuICAtLWdsLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogdmFyKC0tZGVmYXVsdC1tb25vLWZvbnQsICdHaXRMYWIgTW9ubycpLCdHaXRMYWIgTW9ubycsJ0pldEJyYWlucyBNb25vJyxNZW5sbywnRGVqYVZ1IFNhbnMgTW9ubycsJ0xpYmVyYXRpb24gTW9ubycsQ29uc29sYXMsJ1VidW50dSBNb25vJywnQ291cmllciBOZXcnLCdhbmRhbGUgbW9ubycsJ2x1Y2lkYSBjb25zb2xlJyxtb25vc3BhY2U7XG4gIC0tZ2wtZm9udC1zaXplLTEwMDogMC43NXJlbTsgLyoqIFVzZWQgZm9yIG1ldGEgdGV4dCBhbmQgc21hbGwgbGFiZWxzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS0yMDA6IDAuODEyNXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDYgaGVhZGluZ3MuICovXG4gIC0tZ2wtZm9udC1zaXplLTMwMDogMC44NzVyZW07IC8qKiBVc2VkIGZvciBsZXZlbCA1IGhlYWRpbmdzLCBib2R5IHRleHQsIGlucHV0IGxhYmVscywgYW5kIGhlbHAgdGV4dC4gKi9cbiAgLS1nbC1mb250LXNpemUtNDAwOiAxcmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgNCBoZWFkaW5ncywgbGFyZ2UgYm9keSB0ZXh0LiAqL1xuICAtLWdsLWZvbnQtc2l6ZS01MDA6IGNsYW1wKDEuMTI1cmVtLCAwLjkwMjc3Nzc3NzhyZW0gKyAwLjQ2Mjk2Mjk2M3Z3LCAxLjI1cmVtKTsgLyoqIFVzZWQgZm9yIHJlc3BvbnNpdmUgbGV2ZWwgMyBoZWFkaW5ncy4gKi9cbiAgLS1nbC1mb250LXNpemUtNjAwOiBjbGFtcCgxLjMxMjVyZW0sIDAuODY4MDU1NTU1NnJlbSArIDAuOTI1OTI1OTI1OXZ3LCAxLjU2MjVyZW0pOyAvKiogVXNlZCBmb3IgcmVzcG9uc2l2ZSBsZXZlbCAyIGhlYWRpbmdzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS03MDA6IGNsYW1wKDEuNXJlbSwgMC44MzMzMzMzMzMzcmVtICsgMS4zODg4ODg4ODg5dncsIDEuODc1cmVtKTsgLyoqIFVzZWQgZm9yIHJlc3BvbnNpdmUgbGV2ZWwgMSBoZWFkaW5ncyAqL1xuICAtLWdsLWZvbnQtc2l6ZS04MDA6IGNsYW1wKDEuNzVyZW0sIDAuODYxMTExMTExMXJlbSArIDEuODUxODUxODUxOXZ3LCAyLjI1cmVtKTsgLyoqIFVzZWQgZm9yIGEgcmVzcG9uc2l2ZSBkaXNwbGF5IG9wdGlvbiB0aGF0IGNhbiBiZSBhcHBsaWVkIHRvIGEgbGV2ZWwgMSBoZWFkaW5nIHRvIGluY3JlYXNlIGl0cyBwcm9taW5lbmNlLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS14czogMC42MjVyZW07XG4gIC0tZ2wtZm9udC1zaXplLTEwMC1maXhlZDogMC43NXJlbTsgLyoqIFVzZWQgZm9yIG1ldGEgdGV4dCBhbmQgc21hbGwgbGFiZWxzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS0yMDAtZml4ZWQ6IDAuODEyNXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDYgaGVhZGluZ3MuICovXG4gIC0tZ2wtZm9udC1zaXplLTMwMC1maXhlZDogMC44NzVyZW07IC8qKiBVc2VkIGZvciBsZXZlbCA1IGhlYWRpbmdzLCBib2R5IHRleHQsIGlucHV0IGxhYmVscywgYW5kIGhlbHAgdGV4dC4gKi9cbiAgLS1nbC1mb250LXNpemUtNDAwLWZpeGVkOiAxcmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgNCBoZWFkaW5ncywgbGFyZ2UgYm9keSB0ZXh0LiAqL1xuICAtLWdsLWZvbnQtc2l6ZS01MDAtZml4ZWQ6IDEuMTI1cmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgMyBoZWFkaW5ncy4gKi9cbiAgLS1nbC1mb250LXNpemUtNjAwLWZpeGVkOiAxLjMxMjVyZW07IC8qKiBVc2VkIGZvciBsZXZlbCAyIGhlYWRpbmdzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS03MDAtZml4ZWQ6IDEuNXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDEgaGVhZGluZ3MgKi9cbiAgLS1nbC1mb250LXNpemUtODAwLWZpeGVkOiAxLjc1cmVtOyAvKiogVXNlZCBmb3IgYSBkaXNwbGF5IG9wdGlvbiB0aGF0IGNhbiBiZSBhcHBsaWVkIHRvIGEgbGV2ZWwgMSBoZWFkaW5nIHRvIGluY3JlYXNlIGl0cyBwcm9taW5lbmNlLiAqL1xuICAtLWdsLWZvbnQtd2VpZ2h0LTEwMDogMTAwO1xuICAtLWdsLWZvbnQtd2VpZ2h0LTMwMDogMzAwO1xuICAtLWdsLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuICAtLWdsLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA1MDA7XG4gIC0tZ2wtZm9udC13ZWlnaHQtYm9sZDogNjAwO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTEyOiAwLjc1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTE2OiAxcmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTIwOiAxLjI1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTI0OiAxLjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMjg6IDEuNzVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMzI6IDJyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMzY6IDIuMjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtNDI6IDIuNjI1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTQ0OiAyLjc1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTUyOiAzLjI1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc6IDEuMjU7XG4gIC0tZ2wtb3BhY2l0eS0wOiAwO1xuICAtLWdsLW9wYWNpdHktMTogLjE7XG4gIC0tZ2wtb3BhY2l0eS0yOiAuMjtcbiAgLS1nbC1vcGFjaXR5LTM6IC4zO1xuICAtLWdsLW9wYWNpdHktNDogLjQ7XG4gIC0tZ2wtb3BhY2l0eS01OiAuNTtcbiAgLS1nbC1vcGFjaXR5LTY6IC42O1xuICAtLWdsLW9wYWNpdHktNzogLjc7XG4gIC0tZ2wtb3BhY2l0eS04OiAuODtcbiAgLS1nbC1vcGFjaXR5LTk6IC45O1xuICAtLWdsLW9wYWNpdHktMTA6IDE7XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0wOiAwcHg7XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xOiAwLjEyNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTI6IDAuMjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0zOiAwLjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS00OiAwLjc1cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNTogMXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTY6IDEuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTc6IDJyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS04OiAyLjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS05OiAzcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMTA6IDMuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTExOiA0cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMTI6IDVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xMzogNnJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTE1OiA3LjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xODogOXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTIwOiAxMHJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTI2OiAxM3JlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTI4OiAxNHJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTMwOiAxNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTMxOiAxNS41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMzM6IDE2LjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0zNDogMTdyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0zNzogMTguNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTQ4OiAyNHJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTYyOiAzMXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTc1OiAzNy41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtODA6IDQwcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtODg6IDQ0cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtcHg6IDFweDtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTItNTogMC4zNzVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xMS01OiA0LjVyZW07XG4gIC0tZ2wtemluZGV4LTA6IDA7XG4gIC0tZ2wtemluZGV4LTE6IDE7XG4gIC0tZ2wtemluZGV4LTI6IDI7XG4gIC0tZ2wtemluZGV4LTM6IDM7XG4gIC0tZ2wtemluZGV4LTQ6IDQ7XG4gIC0tZ2wtemluZGV4LTIwMDogMjAwO1xuICAtLWdsLXppbmRleC05OTk5OiA5OTk5O1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLXJlZDogcmdiYSgyNTUsIDE3NSwgMTg0LCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLyoqIFJlZCBiYWNrZ3JvdW5kIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItcHVycGxlOiByZ2JhKDIwMSwgMTkwLCAyMzksIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvKiogUHVycGxlIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ibHVlOiByZ2JhKDE1NywgMjAwLCAyNDIsIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvKiogQmx1ZSBiYWNrZ3JvdW5kIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItZ3JlZW46IHJnYmEoMTMyLCAyMTIsIDE4MiwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBHcmVlbiBiYWNrZ3JvdW5kIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3Itb3JhbmdlOiByZ2JhKDI0NywgMTg1LCA4MSwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBPcmFuZ2UgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLW5ldXRyYWw6IHJnYmEoMTkxLCAxOTEsIDE5NSwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBOZXV0cmFsIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItYmx1ZTogIzIzNTE4MDsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItZ3JlZW46ICMxYjY1M2Y7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1pbmRpZ286ICM0MTQxOWY7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRibHVlOiAjNDk3N2E1OyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgZm9yIHRoZSBsaWdodGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0Z3JlZW46ICMzMDgyNTg7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0Z3JlZW4gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0aW5kaWdvOiAjNjY2NmM0OyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgZm9yIHRoZSBsaWdodGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRyZWQ6ICNhZDRhM2I7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0cmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1yZWQ6ICM4ZjIxMTA7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIHJlZCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1ibHVlOiAjMGIyNjQwOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZ3JlZW46ICMwZTQzMjg7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgZ3JlZW4gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItaW5kaWdvOiAjMjIyMjYxOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodGJsdWU6ICMyMzUxODA7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgbGlnaHRibHVlIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0Z3JlZW46ICMxYjY1M2Y7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgbGlnaHRncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodGluZGlnbzogIzQxNDE5ZjsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodHJlZDogIzhmMjExMDsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodHJlZCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1yZWQ6ICM1ODBkMDI7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgcmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDEzNywgMTM2LCAxNDEsIDAuNCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogcmdiYSgxMzcsIDEzNiwgMTQxLCAwLjY0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHJnYmEoMTM3LCAxMzYsIDE0MSwgMC4zMik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDI0MSwgODEsIDEwNCwgMC40KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiByZ2JhKDI0MSwgODEsIDEwNCwgMC42NCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiByZ2JhKDI0MSwgODEsIDEwNCwgMC4zMik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMzcsIDEzNiwgMTQxLCAwLjE2KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYnV0dG9uLiAqL1xuICAtLWdsLWNoYXJ0LXRocmVzaG9sZC1hcmVhLWNvbG9yOiByZ2JhKDIyMiwgMjksIDc1LCAwLjEpOyAvKiogVXNlZCBpbiBjaGFydHMgdG8gZGVsaW5lYXRlIGEgdGhyZXNob2xkIGFyZWEgaW4gYSBjaGFydC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3Ryb2tlLWNvbG9yLWRlZmF1bHQ6ICNlM2UzZTg7IC8qKiBEZWZhdWx0IHN0cm9rZSBjb2xvciB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3Ryb2tlLXdpZHRoLWRlZmF1bHQ6IDEuNTsgLyoqIERlZmF1bHQgc3Ryb2tlIHdpZHRoIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1maWxsLWNvbG9yLWRlZmF1bHQ6ICM0MjNmNGY7IC8qKiBEZWZhdWx0IGZpbGwgY29sb3IgZm9yIGFuIGVsZW1lbnQgd2hlcmUgc3BlY2lmaWMgbWVhbmluZyBvciBlbXBoYXNpcyBpcyBub3QgcmVxdWlyZWQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLW5ldXRyYWw6ICM2ZjY3OTY7IC8qKiBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBjb25jZXB0IHdoaWNoIGlzIG5laXRoZXIgcG9zaXRpdmUgb3IgbmVnYXRpdmUuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLXN1Y2Nlc3M6ICMzYjg1ODE7IC8qKiBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBzdWNjZXNzIG9yIGFjdGl2ZSBjb25jZXB0LCBoYXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3RhdHVzLWZpbGwtY29sb3Itd2FybmluZzogI2FiNzUyZjsgLyoqIFVzZWQgYXMgYSBmaWxsIHRvIGNvbnZleSBhIGNhdXRpb24gb3Igd2FybmluZyBjb25jZXB0LCBoYXMgYSBzbGlnaHRseSBuZWdhdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3RhdHVzLWZpbGwtY29sb3ItZGFuZ2VyOiAjYWE1NjNhOyAvKiogVXNlZCBhcyBhIGZpbGwgdG8gY29udmV5IGEgY3JpdGljYWwgb3IgZGFuZ2VyIGNvbmNlcHQsIGhhcyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtc3Ryb2tlLWNvbG9yLW9yYW5nZTogI2UzODY1ZjsgLyoqIFVzZWQgZm9yIG9yYW5nZSBhY2NlbnQgc3Ryb2tlIGRldGFpbCBvbiBhbiBvYmplY3Qgb3IgYXR0ZW50aW9uLWRyYXdpbmcgZWxlbWVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LXN0cm9rZS1jb2xvci10ZWFsOiAjNmJhZWEzOyAvKiogVXNlZCBmb3IgdGVhbCBhY2NlbnQgc3Ryb2tlIGRldGFpbCBvbiBhbiBvYmplY3Qgb3IgYXR0ZW50aW9uLWRyYXdpbmcgZWxlbWVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LXN0cm9rZS1jb2xvci1zdHJvbmc6ICNhZWE1ZDY7IC8qKiBVc2VkIGZvciBkYXJrIGFjY2VudCBzdHJva2UgZGV0YWlsIG9uIGFuIG9iamVjdCBvciBhdHRlbnRpb24tZHJhd2luZyBlbGVtZW50LiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtZmlsbC1jb2xvci1zdWJ0bGU6ICM1YzUzNzE7IC8qKiBVc2VkIHRvIGFkZCBkZXB0aCB0byBhIHNlY29uZGFyeSBlbGVtZW50IGFuZCBzdXBwb3J0aW5nIHN1cmZhY2UuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWFjY2VudC1maWxsLWNvbG9yLXN0cm9uZzogIzZmNjc5NjsgLyoqIFVzZWQgZm9yIGFuIGVsZW1lbnQgcmVxdWlyaW5nIHZpc3VhbCBlbXBoYXNpcyB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudCBvciBzdGF0dXMgaW5kaWNhdG9ycy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3Itb3JhbmdlOiAjYWE1NjNhOyAvKiogVXNlZCB0byBhZGQgb3JhbmdlIHRvIGEgc2Vjb25kYXJ5IGVsZW1lbnQgYW5kIHN1cHBvcnRpbmcgc3VyZmFjZS4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3ItdGVhbDogIzNiODU4MTsgLyoqIFVzZWQgdG8gYWRkIHRlYWwgdG8gYSBzZWNvbmRhcnkgZWxlbWVudCBhbmQgc3VwcG9ydGluZyBzdXJmYWNlLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1iYXNlLWZpbGwtY29sb3I6ICMzMjMwM2M7IC8qKiBVc2VkIGZvciB0aGUgY29uc2lzdGVudCBiYWNrZ3JvdW5kIHNoYXBlIHByZXNlbnQgYWNyb3NzIGFsbCBpbGx1c3RyYXRpb25zLiBQcm92aWRlcyBhIHVuaWZpZWQgZm91bmRhdGlvbiB0aGF0IHZpc3VhbGx5IGdyb3VuZHMgZWFjaCBpbGx1c3RyYXRpb24gd2hpbGUgbWFpbnRhaW5pbmcgc3lzdGVtIGNvaGVzaW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLWNvbG9yLWRlZmF1bHQ6ICNlM2UzZTg7IC8qKiBEZWZhdWx0IHN0cm9rZSBjb2xvciB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbCBpbiBpc29tZXRyaWMgaWxsdXN0cmF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLXdpZHRoLWRlZmF1bHQ6IDEuNTsgLyoqIERlZmF1bHQgc3Ryb2tlIHdpZHRoIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsIGluIGlzb21ldHJpYyBpbGx1c3RyYXRpb24uICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC10b3AtZmlsbC1jb2xvcjogIzVhNTY2YzsgLyoqIFVzZWQgZm9yIHRoZSB0b3AgZmFjZSBvZiBpc29tZXRyaWMgdGV4dCBhbmQgbnVtYmVyIGVsZW1lbnRzLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtZnJvbnQtZmlsbC1jb2xvcjogIzQyM2Y0ZjsgLyoqIFVzZWQgZm9yIHRoZSBmcm9udCBmYWNlIG9mIGlzb21ldHJpYyB0ZXh0IGFuZCBudW1iZXIgZWxlbWVudHMuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC1zaWRlLWZpbGwtY29sb3I6ICMzNzM0NDE7IC8qKiBVc2VkIGZvciB0aGUgc2lkZSBmYWNlIG9mIGlzb21ldHJpYyB0ZXh0IGFuZCBudW1iZXIgZWxlbWVudHMuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC1zaGFkb3ctZmlsbC1jb2xvcjogIzI5MjczMDsgLyoqIFVzZWQgZm9yIHRoZSBzaGFkb3cgb2YgaXNvbWV0cmljIHRleHQgYW5kIG51bWJlciBlbGVtZW50cy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC10b3AtZmlsbC1jb2xvcjogI2FhNTYzYTsgLyoqIFVzZWQgZm9yIHRoZSB0b3AgZmFjZSBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC1mcm9udC1maWxsLWNvbG9yOiAjYTU0NjIzOyAvKiogVXNlZCBmb3IgdGhlIGZyb250IGZhY2Ugb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3Qtc2lkZS1maWxsLWNvbG9yOiAjOGY0NDI0OyAvKiogVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC1oaWdobGlnaHQtZmlsbC1jb2xvcjogIzQyM2Y0ZjsgLyoqIFVzZWQgZm9yIHRoZSBmYWNlIG9mIGFuIGlzb21ldHJpYyBvYmplY3Qgb3Igc3ltYm9sIHRoYXQgcmVxdWlyZXMgbWF4aW11bSBkaXN0aW5jdGlvbiBmcm9tIG90aGVyIGVsZW1lbnRzLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtb2JqZWN0LXNoYWRvdy1maWxsLWNvbG9yOiAjM2QyYjJhOyAvKiogVXNlZCBmb3IgdGhlIHNoYWRvdyBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWFjY2VudC10b3AtZmlsbC1jb2xvcjogIzZkNjk3MjsgLyoqIFVzZWQgZm9yIHRoZSB0b3AgZmFjZSBvZiBhIHN1cHBvcnRpbmcgaXNvbWV0cmljIGVsZW1lbnQuIFByb3ZpZGVzIHN1YnRsZSBkaW1lbnNpb25hbCB2YXJpYXRpb24gd2l0aG91dCBjb21wZXRpbmcgd2l0aCBwcmltYXJ5IGNvbnRlbnQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1hY2NlbnQtZnJvbnQtZmlsbC1jb2xvcjogIzQ5NDc0ZDsgLyoqIFVzZWQgZm9yIHRoZSBmcm9udCBmYWNlIG9mIGEgc3VwcG9ydGluZyBpc29tZXRyaWMgZWxlbWVudC4gUHJvdmlkZXMgc3VidGxlIGRpbWVuc2lvbmFsIHZhcmlhdGlvbiB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWFjY2VudC1zaWRlLWZpbGwtY29sb3I6ICMyMTIwMjM7IC8qKiBVc2VkIGZvciB0aGUgc2lkZSBmYWNlIG9mIGEgc3VwcG9ydGluZyBpc29tZXRyaWMgZWxlbWVudC4gUHJvdmlkZXMgc3VidGxlIGRpbWVuc2lvbmFsIHZhcmlhdGlvbiB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWJhc2UtdG9wLWZpbGwtY29sb3I6ICMzMjMwM2M7IC8qKiBVc2VkIGZvciB0aGUgdG9wIHN1cmZhY2Ugb2YgYW4gaXNvbWV0cmljIGJhc2UgcGxhdGZvcm0uICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1iYXNlLWZyb250LWZpbGwtY29sb3I6ICMyYjI5MzI7IC8qKiBVc2VkIGZvciB0aGUgZnJvbnQgZmFjZSBvZiBhbiBpc29tZXRyaWMgYmFzZSBwbGF0Zm9ybS4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWJhc2Utc2lkZS1maWxsLWNvbG9yOiAjMjMyMjJiOyAvKiogVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBhbiBpc29tZXRyaWMgYmFzZSBwbGF0Zm9ybS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1mb250LXdlaWdodDogNDI1OyAvKiogVXNlZCBmb3IgdGhlIGZvbnQgd2VpZ2h0IG9mIGEgbmF2aWdhdGlvbiBpdGVtICovXG4gIC0tZGF0YS12aXotZ3JlZW4tNTA6ICMxMzNhMDM7XG4gIC0tZGF0YS12aXotZ3JlZW4tMTAwOiAjMWE0NTAwO1xuICAtLWRhdGEtdml6LWdyZWVuLTIwMDogIzI3NTYwMDtcbiAgLS1kYXRhLXZpei1ncmVlbi0zMDA6ICMzNjY4MDA7XG4gIC0tZGF0YS12aXotZ3JlZW4tNDAwOiAjNGU3ZjBlO1xuICAtLWRhdGEtdml6LWdyZWVuLTUwMDogIzYxOTAyNTtcbiAgLS1kYXRhLXZpei1ncmVlbi02MDA6ICM4MWFjNDE7XG4gIC0tZGF0YS12aXotZ3JlZW4tNzAwOiAjOTRjMjVlO1xuICAtLWRhdGEtdml6LWdyZWVuLTgwMDogI2IwZDk3YjtcbiAgLS1kYXRhLXZpei1ncmVlbi05MDA6ICNjNmVkOTQ7XG4gIC0tZGF0YS12aXotZ3JlZW4tOTUwOiAjZGRmYWI3O1xuICAtLWRhdGEtdml6LWFxdWEtNTA6ICMwMDM0NGI7XG4gIC0tZGF0YS12aXotYXF1YS0xMDA6ICMwMDQwNTk7XG4gIC0tZGF0YS12aXotYXF1YS0yMDA6ICMwMDUxNmM7XG4gIC0tZGF0YS12aXotYXF1YS0zMDA6ICMwMDYzODE7XG4gIC0tZGF0YS12aXotYXF1YS00MDA6ICMwMDdiOWI7XG4gIC0tZGF0YS12aXotYXF1YS01MDA6ICMwMDkwYjE7XG4gIC0tZGF0YS12aXotYXF1YS02MDA6ICMwMGFjYzQ7XG4gIC0tZGF0YS12aXotYXF1YS03MDA6ICMzMmM1ZDI7XG4gIC0tZGF0YS12aXotYXF1YS04MDA6ICM1ZWRlZTM7XG4gIC0tZGF0YS12aXotYXF1YS05MDA6ICM5M2YyZWY7XG4gIC0tZGF0YS12aXotYXF1YS05NTA6ICNiNWZlZmQ7XG4gIC0tZGF0YS12aXotYmx1ZS01MDogIzJhMmI1OTtcbiAgLS1kYXRhLXZpei1ibHVlLTEwMDogIzMwMzQ3MDtcbiAgLS1kYXRhLXZpei1ibHVlLTIwMDogIzM3NDI5MTtcbiAgLS1kYXRhLXZpei1ibHVlLTMwMDogIzNmNTFhZTtcbiAgLS1kYXRhLXZpei1ibHVlLTQwMDogIzRlNjVjZDtcbiAgLS1kYXRhLXZpei1ibHVlLTUwMDogIzYxN2FlMjtcbiAgLS1kYXRhLXZpei1ibHVlLTYwMDogIzc5OTJmNTtcbiAgLS1kYXRhLXZpei1ibHVlLTcwMDogIzk3YWNmZjtcbiAgLS1kYXRhLXZpei1ibHVlLTgwMDogI2I3YzZmZjtcbiAgLS1kYXRhLXZpei1ibHVlLTkwMDogI2QyZGNmZjtcbiAgLS1kYXRhLXZpei1ibHVlLTk1MDogI2U5ZWJmZjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTUwOiAjNTQxZDMxO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtMTAwOiAjNjYxZTNhO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtMjAwOiAjN2MyMTRmO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtMzAwOiAjOWEyZTVkO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtNDAwOiAjYjkzZDcxO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtNTAwOiAjY2Y0ZDgxO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtNjAwOiAjZTg2ZTlhO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtNzAwOiAjZjg4YWFmO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtODAwOiAjZmNhY2M1O1xuICAtLWRhdGEtdml6LW1hZ2VudGEtOTAwOiAjZmZjY2RiO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtOTUwOiAjZmZlM2ViO1xuICAtLWRhdGEtdml6LW9yYW5nZS01MDogIzRiMjcwNztcbiAgLS1kYXRhLXZpei1vcmFuZ2UtMTAwOiAjNWUyZjA1O1xuICAtLWRhdGEtdml6LW9yYW5nZS0yMDA6ICM2ZjM1MDA7XG4gIC0tZGF0YS12aXotb3JhbmdlLTMwMDogIzkyNDMwYTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtNDAwOiAjYjE0ZjE4O1xuICAtLWRhdGEtdml6LW9yYW5nZS01MDA6ICNjOTVkMmU7XG4gIC0tZGF0YS12aXotb3JhbmdlLTYwMDogI2UwN2U0MTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtNzAwOiAjZTk5YjYwO1xuICAtLWRhdGEtdml6LW9yYW5nZS04MDA6ICNlZWJkOGM7XG4gIC0tZGF0YS12aXotb3JhbmdlLTkwMDogI2Y1ZDZiMztcbiAgLS1kYXRhLXZpei1vcmFuZ2UtOTUwOiAjZmFlOGQxO1xuICAtLWJsdWUtOTUwOiAjZjJmOWZmO1xuICAtLWdyZWVuLTk1MDogI2YxZmRmNjtcbiAgLS1vcmFuZ2UtOTUwOiAjZmZmNGUxO1xuICAtLXJlZC05NTA6ICNmZmY0ZjM7XG4gIC0tYnJhbmQtY2hhcmNvYWw6ICMxNzEzMjE7IC8qKiBVc2UgY29sb3IuYnJhbmQtY2hhcmNvYWwgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1vcmFuZ2UtMDE6ICNmY2EzMjY7IC8qKiBVc2UgY29sb3IuYnJhbmQtb3JhbmdlLjAxcCBpbnN0ZWFkLiAqL1xuICAtLWJyYW5kLW9yYW5nZS0wMjogI2ZjNmQyNjsgLyoqIFVzZSBjb2xvci5icmFuZC1vcmFuZ2UuMDJwIGluc3RlYWQuICovXG4gIC0tYnJhbmQtb3JhbmdlLTAzOiAjZTI0MzI5OyAvKiogVXNlIGNvbG9yLmJyYW5kLW9yYW5nZS4wM3AgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1wdXJwbGUtMDE6ICNhOTg5ZjU7IC8qKiBVc2UgY29sb3IucHVycGxlLjAxcCBpbnN0ZWFkLiAqL1xuICAtLWJyYW5kLXB1cnBsZS0wMjogIzc3NTljMjsgLyoqIFVzZSBjb2xvci5wdXJwbGUuMDJwIGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wMTogI2QxZDBkMzsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjAxIGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wMjogI2EyYTFhNjsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjAyIGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wMzogIzc0NzE3YTsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjAzIGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wNDogIzQ1NDI0ZDsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjA0IGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wNTogIzJiMjgzODsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjA1IGluc3RlYWQuICovXG4gIC0tdC1ncmF5LWEtMTY6IHJnYmEoNSwgNSwgNiwgMC4xNik7IC8qKiBVc2UgY29sb3IuYWxwaGEuZGFyay4xNiBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTI0OiByZ2JhKDUsIDUsIDYsIDAuMjQpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuMjQgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0wMjogcmdiYSg1LCA1LCA2LCAwLjAyKTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjIgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0wNDogcmdiYSg1LCA1LCA2LCAwLjA0KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjQgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0wNjogcmdiYSg1LCA1LCA2LCAwLjA2KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjYgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0wODogcmdiYSg1LCA1LCA2LCAwLjA4KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjggaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMTY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuMTYgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMjQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuMjQgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMzY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNik7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuMzYgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMDI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuMiBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0wNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC40IGluc3RlYWQuICovXG4gIC0tdC13aGl0ZS1hLTA2OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpOyAvKiogVXNlIGNvbG9yLmFscGhhLmxpZ2h0LjYgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMDg6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuOCBpbnN0ZWFkLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDI0MSwgODEsIDEwNCwgMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHJnYmEoMjQxLCA4MSwgMTA0LCAwLjQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHJnYmEoMjQxLCA4MSwgMTA0LCAwLjE2KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGF5OiByZ2JhKDAsIDAsIDAsIDAuNjQpOyAvKiogVXNlZCBmb3IgYW4gb3ZlcmxheSB0aGF0IGNvdmVycyBvdGhlciBjb250ZW50LiAqL1xuICAtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmc6IC0wLjAxZW07XG4gIC0tZ2wtaGVhZGluZy0zLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctNC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLTUtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy02LWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1saW5lLWhlaWdodDogMS4xMjU7XG4gIC0tZ2wtaGVhZGluZy1kaXNwbGF5LWxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtYm9yZGVyLWNvbG9yLXRyYW5zcGFyZW50OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgd2hlbiBhIGJvcmRlciBuZWVkcyB0byBiZSBwcmVzZW50LCBidXQgbm90IHZpc2libHkgcGVyY2VpdmVkLiAqL1xuICAtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgZGVmYXVsdCBib3JkZXIgY29sb3IuICovXG4gIC0tZ2wtYm9yZGVyLWNvbG9yLXN1YnRsZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgYSBzdWJ0bGUgYm9yZGVyIGluIGNvbWJpbmF0aW9uIHdpdGggdGhlIGRlZmF1bHQgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1ib3JkZXItY29sb3Itc3Ryb25nOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciBhIGRpc3RpbmN0IGJvcmRlciB0aGF0IGVtcGhhc2l6ZXMgYW4gZWRnZSBvciBib3VuZGFyaWVzLiAqL1xuICAtLWdsLWJvcmRlci1yYWRpdXMtbm9uZTogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0wKTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLXhzOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLXB4KTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLXNtOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTEpO1xuICAtLWdsLWJvcmRlci1yYWRpdXMtbWQ6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMik7XG4gIC0tZ2wtYm9yZGVyLXJhZGl1cy1sZzogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0zKTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLXhsOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTQpO1xuICAtLWdsLWJvcmRlci1yYWRpdXMtMnhsOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTUpO1xuICAtLWdsLWJvcmRlci1yYWRpdXMtM3hsOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTYpO1xuICAtLWdsLWZvbnQtc2l6ZS1zbTogdmFyKC0tZ2wtZm9udC1zaXplLTEwMCk7XG4gIC0tZ2wtZm9udC1zaXplLW1kOiB2YXIoLS1nbC1mb250LXNpemUtMzAwKTtcbiAgLS1nbC1mb250LXNpemUtbGc6IHZhcigtLWdsLWZvbnQtc2l6ZS00MDApO1xuICAtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTApO1xuICAtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTUpO1xuICAtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTQwKTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IHNoYWRvdyBjb2xvci4gKi9cbiAgLS1nbC1hbGVydC1uZXV0cmFsLWJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LW5ldXRyYWwtYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby10aXRsZS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy10aXRsZS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC13YXJuaW5nLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtd2FybmluZy1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSB3YXJuaW5nIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LXdhcm5pbmctYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtZGFuZ2VyLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhIGRhbmdlciBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1kYW5nZXItYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWRhbmdlci1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFwcGxpY2F0aW9uLWNocm9tZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMDApOyAvKiogVXNlZCBmb3IgdGhlIGFwcGxpY2F0aW9uIGNocm9tZSBiYWNrZ3JvdW5kLCB0aGUgbG93ZXN0IGxheWVyIG9mIHRoZSBpbnRlcmZhY2UgdGhhdCBzaXRzIGJlbmVhdGggcGFuZWxzIGFuZCBjb250YWlucyBnbG9iYWwgbmF2aWdhdGlvbiwgdXNlciBhY3Rpb25zLCBhcHBsaWNhdGlvbiBuYXZpZ2F0aW9uLCBhbmQgQUkgbmF2aWdhdGlvbi4gKi9cbiAgLS1nbC1hdmF0YXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTgpOyAvKiogVXNlZCB0byBkZWZpbmUgdGhlIGVkZ2Ugb2YgYW4gYXZhdGFyLiAqL1xuICAtLWdsLWF2YXRhci1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTI0KTsgLyoqIFVzZWQgdG8gaW5jcmVhc2UgdGhlIGVkZ2UgZGVmaW5pdGlvbiBvZiBhbiBhdmF0YXIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWF2YXRhci1jaXJjbGUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0OiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLWZ1bGwpOyAvKiogQm9yZGVyIHJhZGl1cyBmb3IgY2lybGNlIGF2YXRhcnMgYXQgYWxsIHNpemVzLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXJlZDogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7IC8qKiBSZWQgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXB1cnBsZTogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7IC8qKiBQdXJwbGUgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLWJsdWU6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIEJsdWUgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLWdyZWVuOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogR3JlZW4gdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLW9yYW5nZTogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBPcmFuZ2UgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLW5ldXRyYWw6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIE5ldXRyYWwgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBtdXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ibHVlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1pY29uLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ncmVlbi0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYW5uZXItaW50cm8tYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm8gYmFubmVyLiAqL1xuICAtLWdsLWJhbm5lci1wcm9tby1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgcHJvbW8gYmFubmVyLiAqL1xuICAtLWdsLWJhbm5lci1wcm9tby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHByb21vIGJhbm5lci4gKi9cbiAgLS1nbC1icmVhZGNydW1iLXNlcGFyYXRvci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJyZWFkY3J1bWIgbGV2ZWwgc2VwYXJhdG9yLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1kYXJrOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZGFyazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC03MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItYmx1ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZGFyazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgZGFyayBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZ3JlZW46IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1pbmRpZ286IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0Ymx1ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRibHVlIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGdyZWVuOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGluZGlnbzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRpbmRpZ28gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0cmVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodHJlZCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItcmVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSByZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWJsdWU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWRhcms6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWdyZWVuOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItaW5kaWdvOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBpbmRpZ28gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0IGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodGJsdWU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0Ymx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRncmVlbjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRpbmRpZ286IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodHJlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRyZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLXJlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgcmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTI0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTQwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMTYpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFzaGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRpc2FibGVkIGJ1dHRvbi4gKi9cbiAgLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkaXNhYmxlZCBidXR0b24uICovXG4gIC0tZ2wtYnV0dG9uLWNvdW50LWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTE2KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYnV0dG9uIGNvdW50IGVsZW1lbnQuICovXG4gIC0tZ2wtY2hhcnQtYXhpcy1saW5lLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGluIGNoYXJ0cyBmb3IgYXhpcyBsaW5lIGNvbG9yLiAqL1xuICAtLWdsLWNoYXJ0LXRocmVzaG9sZC1saW5lLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTsgLyoqIFVzZWQgaW4gY2hhcnRzIHRvIGRpdmlkZSBhIHRocmVzaG9sZCBhcmVhIGluIGEgY2hhcnQgZnJvbSBvdGhlciBkYXRhLiAqL1xuICAtLWdsLWNoYXJ0LXpvb20tZmlsbGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1saWdodC0xNik7IC8qKiBVc2VkIGluIGNoYXJ0cyBmb3IgdGhlIG92ZXJsYXkgY29sb3Igd2hlbiB6b29taW5nIGluIG9uIGEgc3BlY2lmaWMgYXJlYSBvZiBkYXRhLiAqL1xuICAtLWdsLWRhdGVwaWNrZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgZGF0ZXBpY2tlci4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC03MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1zZWFyY2gtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0xNik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlYXJjaCBpbnB1dCBpbiBhIGRyb3Bkb3duIGxpc3Rib3guICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIHR5cGUgdG9rZW4gYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIHR5cGUgdG9rZW4gYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIGRhdGEgYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tZGF0YS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIGRhdGEgdG9rZW4gYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBvcGVyYXRvciBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIG9wZXJhdG9yIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWxpZ2h0LXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCB0ZXh0IGNvbG9yIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvci4gKi9cbiAgLS1nbC1sYWJlbC1saWdodC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBsaWdodCBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWxpZ2h0LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBiYWNrZ3JvdW5kIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtbGlnaHQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBvbiBhIGxpZ2h0IGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtZGFyay10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGxhYmVsIHRleHQgY29sb3Igb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWRhcmstYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgc2NvcGVkIGxhYmVsIHRleHQgY29sb3IuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHNjb3BlZCBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLXNjb3BlZC1idXR0b24taWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHNjb3BlZCBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLWJ1dHRvbi1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgc2NvcGVkIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbGluay1tZW50aW9uLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIG1lbnRpb24gbGluayB0ZXh0IGNvbG9yLiAqL1xuICAtLWdsLWxpbmstbWVudGlvbi10ZXh0LWNvbG9yLWN1cnJlbnQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIG1lbnRpb24gbGluayB0ZXh0IGNvbG9yIHdoZW4gcmVmZXJlbmNpbmcgdGhlIGN1cnJlbnQgdXNlci4gKi9cbiAgLS1nbC1saW5rLW1lbnRpb24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgbWVudGlvbiBsaW5rIGRlZmF1bHQgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1saW5rLW1lbnRpb24tYmFja2dyb3VuZC1jb2xvci1jdXJyZW50OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBtZW50aW9uIGxpbmsgYmFja2dyb3VuZCB3aGVuIHJlZmVyZW5jaW5nIHRoZSBjdXJyZW50IHVzZXIuICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb250IHNpemUgb2YgYSBuYXZpZ2F0aW9uIGl0ZW0gKi9cbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWJvbGQpOyAvKiogVXNlZCBmb3IgdGhlIGZvbnQgd2VpZ2h0IG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiAqL1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgYmVzaWRlIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiBUaW50ZWQgdGhlbWVzIG92ZXJyaWRlIGl0IGluIHNyYy9zY3NzL3RoZW1lcy5zY3NzLiAqL1xuICAtLWdsLXByb2dyZXNzLWJhci10cmFjay1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIGZvciBhbGwgcHJvZ3Jlc3MtYmFyIHZhcmlhbnRzLiAqL1xuICAtLWdsLXNrZWxldG9uLWxvYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgc2tlbGV0b24gbG9hZGVyIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtc2tlbGV0b24tbG9hZGVyLXNoaW1tZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBhbmltYXRlZCBzaGltbWVyIGVmZmVjdCBpbiBhIHNrZWxldG9uIGxvYWRlci4gKi9cbiAgLS1nbC1zcGlubmVyLXRyYWNrLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBzdGF0aWMgdHJhY2sgKGJhY2tncm91bmQpIG9mIGEgbG9hZGluZyBzcGlubmVyLiAqL1xuICAtLWdsLXNwaW5uZXItdHJhY2stY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBzdGF0aWMgdHJhY2sgKGJhY2tncm91bmQpIG9mIGEgbG9hZGluZyBzcGlubmVyIG9uIGEgZGFyayBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYW5pbWF0ZWQgc2VnbWVudCBvZiBhIGxvYWRpbmcgc3Bpbm5lci4gKi9cbiAgLS1nbC1zcGlubmVyLXNlZ21lbnQtY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBhbmltYXRlZCBzZWdtZW50IG9mIGEgbG9hZGluZyBzcGlubmVyIG9uIGEgZGFyayBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLXRva2VuLXNlbGVjdG9yLXRva2VuLWNvbnRhaW5lci10b2tlbi1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRva2VuIGluIGEgdG9rZW4tc2VsZWN0b3Igd2hlbiBpdCdzIHRva2VuLWNvbnRhaW5lciBpcyBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9rZW4tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIHRva2VuIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtdG9vbHRpcC10ZXh0LWNvbG9yLXN1YnRsZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3Igc3VwcGxlbWVudGFsIHRvb2x0aXAgdGV4dCB0aGF0IGlzIGxlc3MgcHJvbWluZW50IHRoYW4gdGhlIGRlZmF1bHQgdGV4dCBhbmQgcmVtYWlucyB0aGUgc2FtZSBjb2xvciByZWdhcmRsZXNzIG9mIG1vZGUuICovXG4gIC0tYmxhY2s6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gIC0td2hpdGU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTtcbiAgLS1ibHVlLTUwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTkwMCk7XG4gIC0tYmx1ZS0xMDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTtcbiAgLS1ibHVlLTIwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApO1xuICAtLWJsdWUtMzAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTYwMCk7XG4gIC0tYmx1ZS00MDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTAwKTtcbiAgLS1ibHVlLTUwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApO1xuICAtLWJsdWUtNjAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7XG4gIC0tYmx1ZS03MDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTtcbiAgLS1ibHVlLTgwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApO1xuICAtLWJsdWUtOTAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwKTtcbiAgLS1ncmF5LTEwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7XG4gIC0tZ3JheS01MDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xuICAtLWdyYXktMTAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7XG4gIC0tZ3JheS0yMDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTtcbiAgLS1ncmF5LTMwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApO1xuICAtLWdyYXktNDAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7XG4gIC0tZ3JheS01MDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTtcbiAgLS1ncmF5LTYwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuICAtLWdyYXktNzAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7XG4gIC0tZ3JheS04MDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTtcbiAgLS1ncmF5LTkwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7XG4gIC0tZ3JheS05NTA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTApO1xuICAtLWdyZWVuLTUwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi05MDApO1xuICAtLWdyZWVuLTEwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tODAwKTtcbiAgLS1ncmVlbi0yMDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTcwMCk7XG4gIC0tZ3JlZW4tMzAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi02MDApO1xuICAtLWdyZWVuLTQwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNTAwKTtcbiAgLS1ncmVlbi01MDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTQwMCk7XG4gIC0tZ3JlZW4tNjAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0zMDApO1xuICAtLWdyZWVuLTcwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMjAwKTtcbiAgLS1ncmVlbi04MDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTEwMCk7XG4gIC0tZ3JlZW4tOTAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi01MCk7XG4gIC0tb3JhbmdlLTUwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtOTAwKTtcbiAgLS1vcmFuZ2UtMTAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTtcbiAgLS1vcmFuZ2UtMjAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNzAwKTtcbiAgLS1vcmFuZ2UtMzAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNjAwKTtcbiAgLS1vcmFuZ2UtNDAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTAwKTtcbiAgLS1vcmFuZ2UtNTAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNDAwKTtcbiAgLS1vcmFuZ2UtNjAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMzAwKTtcbiAgLS1vcmFuZ2UtNzAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTtcbiAgLS1vcmFuZ2UtODAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMTAwKTtcbiAgLS1vcmFuZ2UtOTAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTApO1xuICAtLXB1cnBsZS01MDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTk1MCk7XG4gIC0tcHVycGxlLTEwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTkwMCk7XG4gIC0tcHVycGxlLTIwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTgwMCk7XG4gIC0tcHVycGxlLTMwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTcwMCk7XG4gIC0tcHVycGxlLTQwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTYwMCk7XG4gIC0tcHVycGxlLTUwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwMCk7XG4gIC0tcHVycGxlLTYwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTQwMCk7XG4gIC0tcHVycGxlLTcwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTMwMCk7XG4gIC0tcHVycGxlLTgwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7XG4gIC0tcHVycGxlLTkwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTEwMCk7XG4gIC0tcHVycGxlLTk1MDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTtcbiAgLS1yZWQtNTA6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApO1xuICAtLXJlZC0xMDA6IHZhcigtLWdsLWNvbG9yLXJlZC04MDApO1xuICAtLXJlZC0yMDA6IHZhcigtLWdsLWNvbG9yLXJlZC03MDApO1xuICAtLXJlZC0zMDA6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApO1xuICAtLXJlZC00MDA6IHZhcigtLWdsLWNvbG9yLXJlZC01MDApO1xuICAtLXJlZC01MDA6IHZhcigtLWdsLWNvbG9yLXJlZC00MDApO1xuICAtLXJlZC02MDA6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApO1xuICAtLXJlZC03MDA6IHZhcigtLWdsLWNvbG9yLXJlZC0yMDApO1xuICAtLXJlZC04MDA6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApO1xuICAtLXJlZC05MDA6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7XG4gIC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRpc2FibGVkIGFjdGlvbi4gKi9cbiAgLS1nbC1hY3Rpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGlzYWJsZWQgYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uIHRoYXQgc3RheXMgc2VsZWN0ZWQuIFNpdHMgYmV0d2VlbiB0aGUgZGlzYWJsZWQgYmFja2dyb3VuZCBhbmQgdGhlIGVuYWJsZWQgc2VsZWN0ZWQgYmFja2dyb3VuZCBzbyB0aGUgc2VsZWN0ZWQgc3RhdGUga2VlcHMgMzoxIGNvbnRyYXN0IGFnYWluc3QgdGhlIHBhZ2Ugd2hpbGUgc3RpbGwgcmVhZGluZyBhcyBkaXNhYmxlZC4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1saWdodC0xNik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtOCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1saWdodC0xNik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1saWdodC04KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgZGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIHRvIHNsaWdodGx5IGRpZmZlcmVudGlhdGUgdGhlIGJhY2tncm91bmQgZnJvbSB0aGUgZGVmYXVsdC4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCB0byBtYWtlIHRoZSBiYWNrZ3JvdW5kIGVhc2lseSBzdGFuZCBvdXQgZnJvbSB0aGUgZGVmYXVsdC4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIHRvIGlkZW50aWZ5IGEgZGlzYWJsZWQgc2VjdGlvbi4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIGNvbXBvbmVudHMsIGxpa2UgdG9vbHRpcHMgYW5kIGRyYXdlcnMsIGFuZCBjb250ZW50LCBsaWtlIGEgc3RpY2t5IGhlYWRlciwgdGhhdCBvdmVybGFwIG90aGVyIGNvbnRlbnQuICovXG4gIC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zZWN0aW9uOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciBjb250YWluZXJzLCBsaWtlIGEgY2FyZCBoZWFkZXIsIHRoYXQgYXJlIHZpc3VhbGx5IGRpc3RpbmN0IGZyb20gdGhlIGRlZmF1bHQgcGFnZSBiYWNrZ3JvdW5kIG9ubHkgd2hlbiBuZWNlc3NhcnkgdG8gbWFpbnRhaW4gYWZmb3JkYW5jZSBhbmQgaGllcmFyY2h5IGluIGRpZmZlcmVudCBtb2Rlcy4gKi9cbiAgLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay00MCk7IC8qKiBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgZGVmYXVsdCBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtNCk7IC8qKiBVc2VkIGZvciBkaXNhYmxlZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItY29uY2F0ZW5hdGlvbjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtNCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBzdGF0aWMgY29udGVudCB0aGF0IHByZXBlbmRzIG9yIGFwcGVuZHMgYSB0ZXh0IGlucHV0LiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1yZWFkb25seTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtOCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBzdGF0aWMgY29udGVudCB0aGF0IHByZXBlbmRzIG9yIGFwcGVuZHMgYSB0ZXh0IGlucHV0LiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQgb24gaG92ZXIuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MDApOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGRlZmF1bHQgYm9yZGVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTMwMCk7IC8qKiBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgYm9yZGVyIG9uIGhvdmVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIGZvcm0gY29udHJvbCAoaW5wdXQsIHJhZGlvIGJ1dHRvbiwgY2hlY2tib3gsIHRleHRhcmVhKSBib3JkZXIgb24gZm9jdXMuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIGRpc2FibGVkIGZvcm0gY29udHJvbCAoaW5wdXQsIHJhZGlvIGJ1dHRvbiwgY2hlY2tib3gsIHRleHRhcmVhKSBib3JkZXIuICovXG4gIC0tZ2wtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gaW5wdXRzLiAqL1xuICAtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciBjaGVja2JveCBhbmQgcmFkaW8gYnV0dG9uIHN0YXRlIGluZGljYXRvcnMuICovXG4gIC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIGEgYmFja2dyb3VuZCBhc3NvY2lhdGVkIHdpdGggc3Ryb25nIGZlZWRiYWNrIGxpa2UgYSB0b29sdGlwIG9yIHRvYXN0IG1lc3NhZ2UuICovXG4gIC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBhc3NvY2lhdGVkIHdpdGggc3Ryb25nIGZlZWRiYWNrLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN0cm9uZy10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGV4dCBvbiBhIHN0cm9uZyBmZWVkYmFjayBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN0cm9uZy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBvbiBhIHN0cm9uZyBmZWVkYmFjayBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN0cm9uZy1saW5rLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7IC8qKiBVc2VkIGZvciBhIGxpbmsgb24gYSBzdHJvbmcgZmVlZGJhY2sgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1mZWVkYmFjay1uZXV0cmFsLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGZlZWRiYWNrIGl0ZW0gd2hlbiB0aGVyZSBpc24ndCBhIHNwZWNpZmljIG1lYW5pbmcgb3IgdXJnZW5jeS4gKi9cbiAgLS1nbC1mZWVkYmFjay1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgZmVlZGJhY2sgaXRlbSB3aGVuIHRoZXJlIGlzbid0IGEgc3BlY2lmaWMgbWVhbmluZyBvciB1cmdlbmN5LiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8tYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBuZXcgaW5mb3JtYXRpb24gb3IgYSBjaGFuZ2UgdGhhdCBkb2Vzbid0IHJlcXVpcmUgaW1tZWRpYXRlIGFjdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1pbmZvLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBuZXcgaW5mb3JtYXRpb24gb3IgYSBjaGFuZ2UgdGhhdCBkb2Vzbid0IHJlcXVpcmUgaW1tZWRpYXRlIGFjdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1pbmZvLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGFuIGluZm9ybWF0aW9uYWwgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBuZXcgaW5mb3JtYXRpb24gb3IgYSBjaGFuZ2UgdGhhdCBkb2Vzbid0IHJlcXVpcmUgaW1tZWRpYXRlIGFjdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3MgZmVlZGJhY2sgaXRlbSB3aGVuIGNvbmZpcm1pbmcgdGhlIHN1Y2Nlc3NmdWwgY29tcGxldGlvbiBvZiBhIHVzZXItaW5pdGlhdGVkIGFjdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdWNjZXNzLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stc3VjY2Vzcy10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stc3VjY2Vzcy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2std2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay13YXJuaW5nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBwb3RlbnRpYWwgaXNzdWUgb3Igc2Vuc2l0aXZlIGluZm9ybWF0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXdhcm5pbmctaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIHBvdGVudGlhbCBpc3N1ZSBvciBzZW5zaXRpdmUgaW5mb3JtYXRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBjcml0aWNhbCBpc3N1ZSB0aGF0IGhhcyBqdXN0IG9jY3VycmVkIGFuZCByZXF1aXJlcyBpbW1lZGlhdGUgYXR0ZW50aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWRhbmdlci10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBjcml0aWNhbCBpc3N1ZSB0aGF0IGhhcyBqdXN0IG9jY3VycmVkIGFuZCByZXF1aXJlcyBpbW1lZGlhdGUgYXR0ZW50aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWRhbmdlci1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBjcml0aWNhbCBpc3N1ZSB0aGF0IGhhcyBqdXN0IG9jY3VycmVkIGFuZCByZXF1aXJlcyBpbW1lZGlhdGUgYXR0ZW50aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJyYW5kLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBicmFuZC1yZWxhdGVkIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgaW5mb3JtYXRpb24gdGhhdCBwZXJ0YWlucyB0byBHaXRMYWIuICovXG4gIC0tZ2wtZmVlZGJhY2stYnJhbmQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBicmFuZC1yZWxhdGVkIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgaW5mb3JtYXRpb24gdGhhdCBwZXJ0YWlucyB0byBHaXRMYWIuICovXG4gIC0tZ2wtZmVlZGJhY2stYnJhbmQtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGJyYW5kLXJlbGF0ZWQgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBpbmZvcm1hdGlvbiB0aGF0IHBlcnRhaW5zIHRvIEdpdExhYi4gKi9cbiAgLS1nbC1mZWVkYmFjay1icmFuZC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgYnJhbmQtcmVsYXRlZCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIGluZm9ybWF0aW9uIHRoYXQgcGVydGFpbnMgdG8gR2l0TGFiLiAqL1xuICAtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBvdXRlciBjb2xvciBwb3J0aW9uIG9mIHRoZSBmb2N1cyByaW5nLiAqL1xuICAtLWdsLWhpZ2hsaWdodC1tYXRjaC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTsgLyoqIFVzZWQgZm9yIHRlbXBvcmFyeSB2aXN1YWwgZW1waGFzaXMgb2YgYmFja2dyb3VuZHMgb2YgbWF0Y2hlZCBzZWFyY2ggdGVybXMsIGZpbHRlcmVkIHJlc3VsdHMsIG9yIGF1dG9jb21wbGV0ZSBzdWdnZXN0aW9ucyB3aXRob3V0IGltcGx5aW5nIGFueSBwYXJ0aWN1bGFyIHN0YXRlIG9yIG1lYW5pbmcuICovXG4gIC0tZ2wtaGlnaGxpZ2h0LW1hdGNoLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRleHQgd2l0aGluIHRlbXBvcmFyaWx5IGhpZ2hsaWdodGVkIG1hdGNoZXMgdG8gbWFpbnRhaW4gcmVhZGFiaWxpdHkgd2hpbGUgZHJhd2luZyBhdHRlbnRpb24gd2l0aG91dCBjb252ZXlpbmcgc3RhdHVzLiAqL1xuICAtLWdsLWhpZ2hsaWdodC10YXJnZXQtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGVtcG9yYXJ5IHZpc3VhbCBlbXBoYXNpcyBmb3IgYmFja2dyb3VuZHMgb2YgcmVmZXJlbmNlZCBlbGVtZW50cyAoZm9yIGV4YW1wbGUgVVJMIGFuY2hvcnMsIGhvdmVyIHN0YXRlcykgb3IgdG8gc2hvdyByZWxhdGlvbnNoaXBzIGJldHdlZW4gY29udGVudCB3aXRob3V0IGltcGx5aW5nIHN0YXR1cyBvciByZXF1aXJpbmcgYWN0aW9uLiAqL1xuICAtLWdsLWhpZ2hsaWdodC10YXJnZXQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7IC8qKiBVc2VkIHRvIHByb3ZpZGUgYWRkaXRpb25hbCB2aXN1YWwgZW1waGFzaXMgZm9yIGJvcmRlcnMgb2YgdGVtcG9yYXJpbHkgdGFyZ2V0ZWQgZWxlbWVudHMgb3Igd2hlbiB2aXN1YWxpemluZyBjb25uZWN0aW9ucyBiZXR3ZWVuIHJlbGF0ZWQgY29udGVudCwgZGlzdGluY3QgZnJvbSBwZXJzaXN0ZW50IHN0YXRlcy4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWluZm86IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gYXNzb2NpYXRlZCB3aXRoIGluZm9ybWF0aW9uIG9yIGhlbHAuICovXG4gIC0tZ2wtc3RhdHVzLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIHN0YXR1cyBpdGVtIHdoZW4gdGhlIHN0YXR1cyBpcyBuZWl0aGVyIHBvc2l0aXZlIG5vciBuZWdhdGl2ZSwgb3Igd2hlbiBpbmRpY2F0aW5nIGEgc3BlY2lhbCBidXQgc3RhYmxlIHN0YXRlLiAqL1xuICAtLWdsLXN0YXR1cy1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBzdGF0dXMgaXRlbSB3aGVuIHRoZSBzdGF0dXMgaXMgbmVpdGhlciBwb3NpdGl2ZSBub3IgbmVnYXRpdmUsIG9yIHdoZW4gaW5kaWNhdGluZyBhIHNwZWNpYWwgYnV0IHN0YWJsZSBzdGF0ZS4gKi9cbiAgLS1nbC1zdGF0dXMtbmV1dHJhbC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgc3RhdHVzIGl0ZW0gd2hlbiB0aGUgc3RhdHVzIGlzIG5laXRoZXIgcG9zaXRpdmUgbm9yIG5lZ2F0aXZlLCBvciB3aGVuIGluZGljYXRpbmcgYSBzcGVjaWFsIGJ1dCBzdGFibGUgc3RhdGUuICovXG4gIC0tZ2wtc3RhdHVzLWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS04MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBub3Rld29ydGh5IG9uZ29pbmcgY29uZGl0aW9uIG9yIGEgc3RhdGUgb2YgYWN0aXZlIHByb2dyZXNzLiAqL1xuICAtLWdsLXN0YXR1cy1pbmZvLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgbm90ZXdvcnRoeSBvbmdvaW5nIGNvbmRpdGlvbiBvciBhIHN0YXRlIG9mIGFjdGl2ZSBwcm9ncmVzcy4gKi9cbiAgLS1nbC1zdGF0dXMtaW5mby1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhbiBpbmZvcm1hdGlvbmFsIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIG5vdGV3b3J0aHkgb25nb2luZyBjb25kaXRpb24gb3IgYSBzdGF0ZSBvZiBhY3RpdmUgcHJvZ3Jlc3MuICovXG4gIC0tZ2wtc3RhdHVzLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBwb3NpdGl2ZSBvdXRjb21lLCBjb21wbGV0aW9uLCBvciBkZXNpcmVkIHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1zdGF0dXMtc3VjY2Vzcy10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHBvc2l0aXZlIG91dGNvbWUsIGNvbXBsZXRpb24sIG9yIGRlc2lyZWQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIHBvc2l0aXZlIGNvbm5vdGF0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy1zdWNjZXNzLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3Mgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgcG9zaXRpdmUgb3V0Y29tZSwgY29tcGxldGlvbiwgb3IgZGVzaXJlZCBzdGF0ZS4gQ2xlYXJseSBjb252ZXlzIGEgcG9zaXRpdmUgY29ubm90YXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgc3RhdGUgdGhhdCByZXF1aXJlcyBoZWlnaHRlbmVkIGF3YXJlbmVzcyBvciBjYXV0aW9uLCBidXQgaXMgbm90IG5lY2Vzc2FyaWx5IHByb2JsZW1hdGljLiBSZXByZXNlbnRzIGEgc3RhdGUgdGhhdCB3YXJyYW50cyBleHRyYSBhdHRlbnRpb24gb3IgY2FyZSB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIGl0ZW0uICovXG4gIC0tZ2wtc3RhdHVzLXdhcm5pbmctdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHdhcm5pbmcgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgc3RhdGUgdGhhdCByZXF1aXJlcyBoZWlnaHRlbmVkIGF3YXJlbmVzcyBvciBjYXV0aW9uLCBidXQgaXMgbm90IG5lY2Vzc2FyaWx5IHByb2JsZW1hdGljLiBSZXByZXNlbnRzIGEgc3RhdGUgdGhhdCB3YXJyYW50cyBleHRyYSBhdHRlbnRpb24gb3IgY2FyZSB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIGl0ZW0uICovXG4gIC0tZ2wtc3RhdHVzLXdhcm5pbmctaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgc3RhdGUgdGhhdCByZXF1aXJlcyBoZWlnaHRlbmVkIGF3YXJlbmVzcyBvciBjYXV0aW9uLCBidXQgaXMgbm90IG5lY2Vzc2FyaWx5IHByb2JsZW1hdGljLiBSZXByZXNlbnRzIGEgc3RhdGUgdGhhdCB3YXJyYW50cyBleHRyYSBhdHRlbnRpb24gb3IgY2FyZSB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIGl0ZW0uICovXG4gIC0tZ2wtc3RhdHVzLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIGNyaXRpY2FsIG9yIHNldmVyZWx5IHByb2JsZW1hdGljIGN1cnJlbnQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLCByZXByZXNlbnRpbmcgYSBzZXJpb3VzLCBvbmdvaW5nIGlzc3VlIG9yIHVuZGVzaXJlZCBjb25kaXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLWRhbmdlci10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIGNyaXRpY2FsIG9yIHNldmVyZWx5IHByb2JsZW1hdGljIGN1cnJlbnQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLCByZXByZXNlbnRpbmcgYSBzZXJpb3VzLCBvbmdvaW5nIGlzc3VlIG9yIHVuZGVzaXJlZCBjb25kaXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLWRhbmdlci1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIGNyaXRpY2FsIG9yIHNldmVyZWx5IHByb2JsZW1hdGljIGN1cnJlbnQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLCByZXByZXNlbnRpbmcgYSBzZXJpb3VzLCBvbmdvaW5nIGlzc3VlIG9yIHVuZGVzaXJlZCBjb25kaXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLWJyYW5kLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBicmFuZC1yZWxhdGVkIHN0YXR1cyBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIHRoZSBzdGF0ZSBvZiB1bmlxdWUgZmVhdHVyZXMgb3IgZWxlbWVudHMgc3BlY2lmaWMgdG8gdGhlIEdpdExhYiBicmFuZCBpZGVudGl0eS4gSGVscHMgZGlzdGluZ3Vpc2ggYW5kIGVtcGhhc2l6ZSBicmFuZC1zcGVjaWZpYyBlbGVtZW50cyB3aXRoaW4gdGhlIGludGVyZmFjZS4gKi9cbiAgLS1nbC1zdGF0dXMtYnJhbmQtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGJyYW5kLXJlbGF0ZWQgc3RhdHVzIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgdGhlIHN0YXRlIG9mIHVuaXF1ZSBmZWF0dXJlcyBvciBlbGVtZW50cyBzcGVjaWZpYyB0byB0aGUgR2l0TGFiIGJyYW5kIGlkZW50aXR5LiBIZWxwcyBkaXN0aW5ndWlzaCBhbmQgZW1waGFzaXplIGJyYW5kLXNwZWNpZmljIGVsZW1lbnRzIHdpdGhpbiB0aGUgaW50ZXJmYWNlLiAqL1xuICAtLWdsLXN0YXR1cy1icmFuZC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgYnJhbmQtcmVsYXRlZCBzdGF0dXMgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyB0aGUgc3RhdGUgb2YgdW5pcXVlIGZlYXR1cmVzIG9yIGVsZW1lbnRzIHNwZWNpZmljIHRvIHRoZSBHaXRMYWIgYnJhbmQgaWRlbnRpdHkuIEhlbHBzIGRpc3Rpbmd1aXNoIGFuZCBlbXBoYXNpemUgYnJhbmQtc3BlY2lmaWMgZWxlbWVudHMgd2l0aGluIHRoZSBpbnRlcmZhY2UuICovXG4gIC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IHRleHQgY29sb3IuICovXG4gIC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHN1cHBsZW1lbnRhbCB0ZXh0IHRoYXQgZG9lc24ndCBuZWVkIHRvIGJlIGFzIHByb21pbmVudCBhcyBvdGhlciB0ZXh0LiAqL1xuICAtLWdsLXRleHQtY29sb3Itc3Ryb25nOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGV4dCB3aXRoIHRoZSBoaWdoZXN0IGNvbnRyYXN0LiAqL1xuICAtLWdsLXRleHQtY29sb3ItaGVhZGluZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIGhlYWRpbmdzIGxldmVsIDEtNi4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLWxpbms6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIGRlZmF1bHQgdGV4dCBsaW5rcy4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLXdhcm5pbmc6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0zMDApOyAvKiogVXNlZCBmb3IgdGV4dCB0aGF0IHJlcXVpcmVzIGNhdXRpb24gb3IgY2FyZWZ1bCBhdHRlbnRpb24uICovXG4gIC0tZ2wtdGV4dC1jb2xvci1kYW5nZXI6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApOyAvKiogVXNlZCBmb3IgdGV4dCBpbmRpY2F0aW5nIGEgcHJvYmxlbSwgY3JpdGljYWwgc3RhdGUsIGRlc3RydWN0aXZlIGFjdGlvbiwgZXJyb3IsIGZhaWx1cmUsIHJlbW92YWwsIHN0b3AsIG9yIGRlY2xpbmF0aW9uLiAqL1xuICAtLWdsLXRleHQtY29sb3Itc3VjY2VzczogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMzAwKTsgLyoqIFVzZWQgZm9yIHRleHQgaW5kaWNhdGluZyBzdWNjZXNzLCBjb21wbGV0aW9uLCBhcHByb3ZhbCwgYWRkaXRpb24sIG9yIHZhbGlkaXR5LiAqL1xuICAtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIGRpc2FibGVkIHRleHQuICovXG4gIC0tZ2wtaGVhZGluZy0xLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTcwMCk7XG4gIC0tZ2wtaGVhZGluZy0xLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTEtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS02MDApO1xuICAtLWdsLWhlYWRpbmctMi1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTMtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNTAwKTtcbiAgLS1nbC1oZWFkaW5nLTMtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS00MDApO1xuICAtLWdsLWhlYWRpbmctNC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtaGVhZGluZy01LWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTYtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMjAwKTtcbiAgLS1nbC1oZWFkaW5nLTYtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTEwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTIwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTQwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTUwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTYwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS03MDApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtODAwKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMTAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMzAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNDAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNTAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTcwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS04MDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtODAwKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctZGlzcGxheS1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTYpO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS03MDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTUwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNDAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS0zMDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTIwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1ib3JkZXItY29sb3Itc2VjdGlvbjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3IgdGhhdCBzdXJyb3VuZHMgY29udGVudCBvciBlbGVtZW50cyB3aGVuIHRoZXkgYXBwZWFyIGFzIGEgY2xvc2VkIGNvbnRhaW5lciBvciBjbG9zZWQgc2VjdGlvbiBvZiB0aGUgcGFnZS4gKi9cbiAgLS1nbC1ib3JkZXItcmFkaXVzLWRlZmF1bHQ6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbWQpO1xuICAtLWdsLWZvbnQtc2l6ZS1iYXNlOiB2YXIoLS1nbC1mb250LXNpemUtbWQpO1xuICAtLWdsLXNoYWRvdy1zbTogMCAwIDJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCAxcHggNHB4IDAgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3Igc3VyZmFjZXMgdGhhdCBuZWVkIHRvIGluZGljYXRlIHVzZXJzIGNhbiBtYW51YWxseSBpbnRlcmFjdCB3aXRoIHRoZW0uIEZvciBleGFtcGxlLCBjYXJkcyBpbiBpc3N1ZSBib2FyZC4gKi9cbiAgLS1nbC1zaGFkb3ctbWQ6IDAgMCAxcHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIDAgMCAycHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIDAgMnB4IDhweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHN1cmZhY2VzIHRoYXQgbmVlZCBib3VuZGFyeSBkZWZpbml0aW9uIGFuZCBhcHBlYXIgb24gaG92ZXIuIEZvciBleGFtcGxlLCBwb3BvdmVycy4gKi9cbiAgLS1nbC1zaGFkb3ctbGc6IDAgMCAycHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIDAgMCAycHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIDAgNHB4IDEycHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciBsYXJnZSBzdXJmYWNlcyB0aGF0IHByZXNlbnQgYWRkaXRpb25hbCBjb250ZXh0IHRvIHRoZSB1c2VyLiAqL1xuICAtLWdsLWFsZXJ0LWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgYWxlcnQgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1hbGVydC1uZXV0cmFsLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpOyAvKiogVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGEgbmV1dHJhbCBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1uZXV0cmFsLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtbmV1dHJhbC1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLW5ldXRyYWwtYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8tYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYW4gaW5mbyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBzdWNjZXNzIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgd2FybmluZyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC13YXJuaW5nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWRhbmdlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIGRhbmdlciBhbGVydC4gKi9cbiAgLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtbGc6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogQm9yZGVyIHJhZGl1cyBmb3Igc3F1YXJlIGF2YXRhcnMgYXQgbGFyZ2VyIHNpemVzICg0OHB4LCA2NHB4LCA5NnB4KS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1tdXRlZC1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXRpZXItdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWRhc2hlZC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFzaGVkIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhc2hlZC1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhc2hlZCBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1saW5rLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbWQpOyAvKiogVXNlZCBmb3IgbGluayBidXR0b24gYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLXRleHQtY29sb3ItbGluayk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGxpbmsgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtY2FyZC1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLXhsKTsgLyoqIFVzZWQgZm9yIGNhcmQgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1jaGFydC1heGlzLXRleHQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgdGV4dCBjb2xvciBvZiBheGlzIHRpdGxlcyBhbmQgbGFiZWxzLiAqL1xuICAtLWdsLWRhdGVwaWNrZXItZGF0ZS10ZXh0LWNvbG9yLXNlbGVjdGVkOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1zZWxlY3RlZCk7IC8qKiBVc2VkIGZvciB0aGUgZGF0ZXBpY2tlciBkYXRlIHRleHQgY29sb3Igc3RhdGUgaW5kaWNhdG9ycy4gKi9cbiAgLS1nbC1kcmF3ZXItYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy0yeGwpOyAvKiogVXNlZCBmb3IgZHJhd2VyIGJvcmRlciByYWRpdXMuICovXG4gIC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZHJvcGRvd24uICovXG4gIC0tZ2wtZHJvcGRvd24tYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZHJvcGRvd24uICovXG4gIC0tZ2wtZHJvcGRvd24tYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1sZyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIHJhZGl1cyBvZiBhIGRyb3Bkb3duLiAqL1xuICAtLWdsLWRyb3Bkb3duLWRpdmlkZXItY29sb3I6IHZhcigtLWdsLWJvcmRlci1jb2xvci1zdWJ0bGUpOyAvKiogVXNlZCBmb3IgdGhlIGRpdmlkZXIgb2YgYSBkcm9wZG93bi4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBkaXNhYmxlZCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24taW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBkcm9wZG93biBzZWxlY3RlZCBvcHRpb24gaW5kaWNhdG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtaG92ZXI6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZHJvcGRvd24gc2VsZWN0ZWQgb3B0aW9uIGluZGljYXRvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gdW5zZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiB1bnNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXM6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1tb2RhbC1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLTJ4bCk7IC8qKiBVc2VkIGZvciBtb2RhbCBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtcHJvZ3Jlc3MtYmFyLWluZGljYXRvci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1zdGF0dXMtaW5mby1pY29uLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgY29sb3IgZm9yIHRoZSBwcmltYXJ5IHByb2dyZXNzLWJhciB2YXJpYW50LiAqL1xuICAtLWdsLXByb2dyZXNzLWJhci1pbmRpY2F0b3ItY29sb3Itc3VjY2VzczogdmFyKC0tZ2wtc3RhdHVzLXN1Y2Nlc3MtaWNvbi1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgc3VjY2VzcyBwcm9ncmVzcy1iYXIgdmFyaWFudC4gKi9cbiAgLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLXdhcm5pbmc6IHZhcigtLWdsLXN0YXR1cy13YXJuaW5nLWljb24tY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGluZGljYXRvciBjb2xvciBmb3IgdGhlIHdhcm5pbmcgcHJvZ3Jlc3MtYmFyIHZhcmlhbnQuICovXG4gIC0tZ2wtcHJvZ3Jlc3MtYmFyLWluZGljYXRvci1jb2xvci1kYW5nZXI6IHZhcigtLWdsLXN0YXR1cy1kYW5nZXItaWNvbi1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgZGFuZ2VyIHByb2dyZXNzLWJhciB2YXJpYW50LiAqL1xuICAtLWdsLXRhYmxlLXJvdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1oaWdobGlnaHQtdGFyZ2V0LWJhY2tncm91bmQtY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0YWJsZSByb3cgaW4gaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtdGFibGUtc29ydGluZy1pY29uLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpOyAvKiogVXNlZCBmb3IgdGhlIGNvbG9yIG9mIHRoZSBzb3J0aW5nIGljb25zIGluIHRoZSBjb2x1bW4gaGVhZGVycy4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgZGlzYWJsZWQgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2guICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBkaXNhYmxlZCBjaGVja2VkIHRvZ2dsZSBzd2l0Y2gsIHdoaWNoIHN0YXlzIGZpbGxlZCBzbyB0aGUgY2hlY2tlZCBzdGF0ZSByZW1haW5zIGxlZ2libGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1sb2FkaW5nOiB2YXIoLS1nbC1hY3Rpb24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBsb2FkaW5nIHRvZ2dsZSBzd2l0Y2guIEEgbG9hZGluZyB0b2dnbGUgcmVuZGVycyBubyB0aHVtYiBhbmQgaXRzIHZhbHVlIGlzIHN0aWxsIGluIGZsaWdodCwgc28gdGhlIHRyYWNrIGNhcnJpZXMgbm8gY2hlY2tlZCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1ob3ZlcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBkaXNhYmxlZCB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaC4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBkaXNhYmxlZCB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYi4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYi4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGRpc2FibGVkIHRvZ2dsZSBzd2l0Y2guICovXG4gIC0tZ2wtdG9rZW4tZm9yZWdyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0b2tlbiBmb3JlZ3JvdW5kIGNvbG9yLiAqL1xuICAtLWdsLWFjdGlvbi1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLWxnKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgcmFkaXVzIG9mIGFuIGFjdGlvbi4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1czogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQgb24gZm9jdXMuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBiYWNrZ3JvdW5kIHdoZW4gZGlzYWJsZWQuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZXJyb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgaW52YWxpZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYm9yZGVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciBvbiBob3Zlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGRlZmF1bHQgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1jb250cm9sLXRleHQtY29sb3ItZXJyb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGFuZ2VyKTsgLyoqIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyBpbnZhbGlkLiAqL1xuICAtLWdsLWNvbnRyb2wtdGV4dC1jb2xvci12YWxpZDogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWNjZXNzKTsgLyoqIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyB2YWxpZC4gKi9cbiAgLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQpOyAvKiogVXNlZCBmb3IgZGlzYWJsZWQgY2hlY2tib3ggYW5kIHJhZGlvIGJ1dHRvbiBzdGF0ZSBpbmRpY2F0b3JzLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciByYWRpdXMgb2YgYSBmZWVkYmFjayBlbGVtZW50LiAqL1xuICAtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgaW5uZXIgbmV1dHJhbCBwb3J0aW9uIG9mIHRoZSBmb2N1cyByaW5nLiAqL1xuICAtLWdsLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IGljb24gY29sb3IuIENhbiBiZSBwYWlyZWQgd2l0aCBkZWZhdWx0IHRleHQuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdWJ0bGU6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgZm9yIGEgc3RhdGljIG9yIGRlY29yYXRpb25hbCBpY29uLiBDYW4gYmUgcGFpcmVkIHdpdGggc3VidGxlIHRleHQuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdHJvbmc6IHZhcigtLWdsLXRleHQtY29sb3Itc3Ryb25nKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gd2l0aCB0aGUgaGlnaGVzdCBjb250cmFzdC4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWRpc2FibGVkOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gd2l0aGluIGEgZGlzYWJsZWQgc2VjdGlvbi4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWxpbms6IHZhcigtLWdsLXRleHQtY29sb3ItbGluayk7IC8qKiBVc2VkIGZvciBhbiBpY29uIHdpdGhpbiBhIGxpbmsuICovXG4gIC0tZ2wtaWNvbi1jb2xvci13YXJuaW5nOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXdhcm5pbmcpOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggYSB3YXJuaW5nLiAqL1xuICAtLWdsLWljb24tY29sb3ItZGFuZ2VyOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRhbmdlcik7IC8qKiBVc2VkIGZvciBhbiBpY29uIGFzc29jaWF0ZWQgd2l0aCBhbiBlcnJvciBvciBkYW5nZXIuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdWNjZXNzOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXN1Y2Nlc3MpOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggc3VjY2VzcyBvciB2YWxpZGl0eS4gKi9cbiAgLS1nbC10ZXh0LXByaW1hcnk6IHZhcigtLWdsLXRleHQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2UgdGV4dC5jb2xvci5kZWZhdWx0IGluc3RlYWQuICovXG4gIC0tZ2wtdGV4dC1zZWNvbmRhcnk6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZSB0ZXh0LmNvbG9yLnN1YnRsZSBpbnN0ZWFkLiAqL1xuICAtLWdsLXRleHQtdGVydGlhcnk6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpOyAvKiogVXNlIHRleHQuY29sb3IuZGlzYWJsZWQgaW5zdGVhZC4gKi9cbiAgLS1nbC1oZWFkaW5nLTEtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMS1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy0xLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTEtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTItbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctMi1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy0yLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMy1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0zLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTMtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctMy1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy00LW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTUtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctNS1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy01LWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNi1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy02LW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTYtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctNi1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctZGlzcGxheS1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1kaXNwbGF5LW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTEtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMy1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctNC1maXhlZC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTUtZml4ZWQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNi1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQ6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7IC8qKiBCb3JkZXIgcmFkaXVzIGZvciBzcXVhcmUgYXZhdGFycyBhdCBzbWFsbGVyIHNpemVzICgxNnB4LCAyNHB4LCAzMnB4KS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGJyb2FkY2FzdCBiYW5uZXIgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1idXR0b24tYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXMpOyAvKiogVXNlZCBmb3IgYnV0dG9uIGJvcmRlciByYWRpdXMuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGxpbmsgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1jaGFydC1heGlzLXBvaW50ZXItY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgY29sb3Igb2YgdGhlIHJlZmVyZW5jZSBsaW5lIGFuZCBheGlzIHZhbHVlIHVuZGVyIG1vdXNlIHBvaW50ZXIuICovXG4gIC0tZ2wtY2hhcnQtem9vbS1oYW5kbGUtY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgaGFuZGxlIGNvbG9yIHdoZW4gem9vbWluZyBpbiBvbiBhIHNwZWNpZmljIGFyZWEgb2YgZGF0YS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24taW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkLWZvY3VzOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtYWN0aXZlOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hY3Rpb24tYm9yZGVyLXJhZGl1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIHJhZGl1cyBvZiBhIG5hdmlnYXRpb24gaXRlbSAqL1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBzZWxlY3RlZCBpbmRpY2F0b3Igb2YgYSB0YWIuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gVGhlIHRyYWNrIGlzIGRlbGliZXJhdGVseSB1bmNoYW5nZWQgZnJvbSB0aGUgZGVmYXVsdCBzdGF0ZTsgaG92ZXIgaXMgY2FycmllZCBieSB0aGUgdHJhY2sgYm9yZGVyIGFuZCB0aGUgdGh1bWIgc2l6ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBkaXNhYmxlZCBjaGVja2VkIHRvZ2dsZSBzd2l0Y2gsIHdoaWNoIG1hdGNoZXMgdGhlIHRyYWNrIGNvbG9yLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWxvYWRpbmc6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItbG9hZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgbG9hZGluZyB0b2dnbGUgc3dpdGNoLCB3aGljaCBtYXRjaGVzIHRoZSB0cmFjayBjb2xvciBzbyB0aGUgdHJhY2sgcmVhZHMgYXMgYSBzaW5nbGUgZmxhdCBmaWxsLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCk7IC8qKiBVc2UgdG9nZ2xlLnN3aXRjaC5iYWNrZ3JvdW5kLmNvbG9yLnVuY2hlY2tlZC5kaXNhYmxlZCBpbnN0ZWFkLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRva2VuLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0b2tlbiBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZm9jdXM6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1cyk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBib3JkZXIgb24gZm9jdXMuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZCk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBib3JkZXIgd2hlbiBkaXNhYmxlZC4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1mb2N1czogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBmb2N1cyBzdGF0ZS4gVGhlIHRyYWNrIGlzIGRlbGliZXJhdGVseSB1bmNoYW5nZWQgZnJvbSB0aGUgZGVmYXVsdCBzdGF0ZTsgZm9jdXMgaXMgY2FycmllZCBieSB0aGUgZm9jdXMgcmluZywgdGhlIHRyYWNrIGJvcmRlciBhbmQgdGhlIHRodW1iIHNpemUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG59XG5cbi8qXG4qIFNBU1MgcHJlc2VydmVzIHVuaXRzIGluIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4gRm9yIGV4YW1wbGU6XG4qIDEyZW0gKiAwID0gMGVtLiBUaGlzIGZ1bmN0aW9uIHJldHVybiB0aGUgdW5pdCBvZiBhIG51bWVyaWMgdmFsdWUuXG4qXG4qIEZvciBtb3JlIGV4YW1wbGVzLCBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9wYXVsZ3YvcGVuL1hXcnFNZ1FcbiovXG4vKlxuKiBTQVNTIHByZXNlcnZlcyB1bml0cyBpbiBhcml0aG1ldGljIG9wZXJhdGlvbnMuIEZvciBleGFtcGxlOlxuKiAxMmVtICogMCA9IDBlbS4gVGhpcyBmdW5jdGlvbiByZXR1cm4gdGhlIHVuaXQgb2YgYSBudW1lcmljIHZhbHVlLlxuKlxuKiBGb3IgbW9yZSBleGFtcGxlcywgc2VlOiBodHRwczovL2NvZGVwZW4uaW8vcGF1bGd2L3Blbi9YV3JxTWdRXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1lbmFibGUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG5ib2R5IHtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbi5oMSxcbi5oMixcbi5oMyxcbi5oNCxcbi5oNSxcbi5oNiB7XG4gIEBhcHBseSBnbC10ZXh0LWhlYWRpbmc7XG59XG5cbmEge1xuICBAYXBwbHkgZ2wtdGV4dC1saW5rIGdsLW5vLXVuZGVybGluZSBob3ZlcjpnbC10ZXh0LWxpbmsgaG92ZXI6Z2wtdW5kZXJsaW5lO1xufVxuXG5hOm5vdChbaHJlZl0pOm5vdChbY2xhc3NdKSB7XG4gIEBhcHBseSBnbC10ZXh0LWluaGVyaXQgZ2wtbm8tdW5kZXJsaW5lIGhvdmVyOmdsLXRleHQtaW5oZXJpdCBob3ZlcjpnbC1uby11bmRlcmxpbmU7XG59XG5cbmNhcHRpb24ge1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG5cbnByZSB7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbn1cblxua2JkIHtcbiAgQGFwcGx5IGdsLWJvcmRlciBnbC1pbmxpbmUtYmxvY2sgZ2wtYm9yZGVyLWItc3Ryb25nIGdsLWJnLXN1YnRsZSBnbC1sZWFkaW5nLTEgZ2wtdGV4dC1kZWZhdWx0O1xuICBmb250LXNpemU6IDg3LjUlO1xuICBwYWRkaW5nOiAzcHggNXB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdW5zZXQ7XG4gIGJvcmRlci1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCB2YXIoLS1nbC1ib3JkZXItY29sb3Itc3Ryb25nKTtcbn1cblxuLnRhYmxlIHtcbiAgQGFwcGx5IGdsLW1iLTMgZ2wtdy1mdWxsIGdsLWJnLXRyYW5zcGFyZW50IGdsLXRleHQtZGVmYXVsdDtcbn1cbi50YWJsZSB0aCxcbi50YWJsZSB0ZCB7XG4gIEBhcHBseSBnbC1ib3JkZXItdCBnbC1wLTQgZ2wtYWxpZ24tdG9wO1xufVxuLnRhYmxlIHRoZWFkIHRoIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iIGdsLWJvcmRlci1iLTIgZ2wtYWxpZ24tYm90dG9tO1xufVxuLnRhYmxlIHRib2R5ICsgdGJvZHkge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQgZ2wtYm9yZGVyLXQtMjtcbn1cblxuLmdsLWRpc2Nsb3N1cmUtZHJvcGRvd24uZ2wtbmV3LWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24taW5uZXIge1xuICBtYXgtaGVpZ2h0OiBub25lO1xufVxuLmdsLWRpc2Nsb3N1cmUtZHJvcGRvd24uZ2wtbmV3LWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50OmRpc2FibGVkLCAuZ2wtZGlzY2xvc3VyZS1kcm9wZG93bi5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnRbZGlzYWJsZWRdLCAuZ2wtZGlzY2xvc3VyZS1kcm9wZG93bi5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQuZGlzYWJsZWQge1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZGlzYWJsZWQpO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5nbC1rZXlzZXQtcGFnaW5hdGlvbi5idG4tZ3JvdXAgLmdsLWJ1dHRvbi5nbC1idXR0b24ge1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uZ2wtdG9rZW4tc2VsZWN0b3IuZ2wtdG9rZW4tc2VsZWN0b3ItZm9jdXMtZ2xvdyB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1cyksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC10b2tlbi1zZWxlY3Rvci5nbC10b2tlbi1zZWxlY3Rvci1mb2N1cy1nbG93IHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQgIWltcG9ydGFudDtcbiAgfVxufVxuLmdsLXRva2VuLXNlbGVjdG9yLmdsLXRva2VuLXNlbGVjdG9yLWZvY3VzLWdsb3cuaXMtaW52YWxpZCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1lcnJvciksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC10b2tlbi1zZWxlY3Rvci5nbC10b2tlbi1zZWxlY3Rvci1mb2N1cy1nbG93LmlzLWludmFsaWQge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dCAhaW1wb3J0YW50O1xuICB9XG59XG4uZ2wtdG9rZW4tc2VsZWN0b3IuZ2wtdG9rZW4tc2VsZWN0b3Itdmlldy1vbmx5IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXJlYWRvbmx5KSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5nbC10b2tlbi1zZWxlY3Rvci10b2tlbi1jb250YWluZXI6Zm9jdXMtdmlzaWJsZSAuZ2wtdG9rZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2tlbi1zZWxlY3Rvci10b2tlbi1jb250YWluZXItdG9rZW4tYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cblxuLmdsLXRva2VuLXNlbGVjdG9yLWlucHV0IHtcbiAgcGFkZGluZy10b3A6IDAuMzc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4zNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5nbC1jYXJkIHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNvbGlkO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgY29udHJhc3QtbW9yZTpnbC1ib3JkZXItc3Ryb25nO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICBAYXBwbHkgZ2wtYnJlYWstd29yZHM7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLXAtMjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtY2FyZC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmdsLWNhcmQtaGVhZGVyLFxuLmdsLWNhcmQtYm9keSB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5nbC1jYXJkLWhlYWRlciB7XG4gIEBhcHBseSBnbC1weC0zO1xuICBAYXBwbHkgZ2wtcHQtMjtcbiAgQGFwcGx5IGdsLXBiLTM7XG4gIEBhcHBseSBnbC1teS0xO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKHZhcigtLWdsLWNhcmQtYm9yZGVyLXJhZGl1cykgLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYyh2YXIoLS1nbC1jYXJkLWJvcmRlci1yYWRpdXMpIC0gMXB4KTtcbn1cbi5nbC1jYXJkLWhlYWRlciBoMixcbi5nbC1jYXJkLWhlYWRlciBoMyxcbi5nbC1jYXJkLWhlYWRlciBoNCxcbi5nbC1jYXJkLWhlYWRlciBoNSxcbi5nbC1jYXJkLWhlYWRlciBoNiB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC10ZXh0LWhlYWRpbmc7XG4gIEBhcHBseSBnbC1tLTA7XG59XG5cbi5nbC1jYXJkLWJvZHkge1xuICBAYXBwbHkgZ2wtZ3JvdztcbiAgQGFwcGx5IGdsLXAtMztcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBjb250cmFzdC1tb3JlOmdsLWJvcmRlcjtcbiAgQGFwcGx5IGZvcmNlZC1jb2xvcnM6Z2wtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLWdsLWNhcmQtYm9yZGVyLXJhZGl1cykgLSAwLjI1cmVtKTtcbn1cblxuLmdsLWNhcmQtZm9vdGVyIHtcbiAgQGFwcGx5IGdsLXB4LTM7XG4gIEBhcHBseSBnbC1wdC0zO1xuICBAYXBwbHkgZ2wtcGItMjtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYyh2YXIoLS1nbC1jYXJkLWJvcmRlci1yYWRpdXMpIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGModmFyKC0tZ2wtY2FyZC1ib3JkZXItcmFkaXVzKSAtIDFweCk7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cblxuLmdsLWNsZWFyLWljb24tYnV0dG9uIHtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG4gIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbn1cbi5nbC1jbGVhci1pY29uLWJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuXG4uZ2wtYWNjb3JkaW9uLWl0ZW0ge1xuICBAYXBwbHkgZ2wtbWItNTtcbn1cbi5nbC1hY2NvcmRpb24taXRlbSAuZ2wtYWNjb3JkaW9uLWl0ZW0taGVhZGVyIHtcbiAgQGFwcGx5IGdsLW0tMDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xufVxuLmdsLWFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtbWItMDtcbn1cbi5nbC1hY2NvcmRpb24taXRlbSAuY29sbGFwc2Uge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbn1cblxuLypcbiAqIC0tZ2wtYWxlcnQtcGFkZGluZy14XG4gKlxuICogV2F5IHRvIGhvb2sgaW50byBzcGFjaW5nIG9mIGdsLWFsZXJ0LlxuICogVGhpcyBpcyB1c2VkIGUuZy4gZm9yIHBhZ2Ugd2lkZSBjb250YWluZXJzXG4gKiBpbiBHaXRMYWIuXG4gKi9cbi5nbC1hbGVydCB7XG4gIEBhcHBseSBnbC1weS0zO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hbGVydC1ib3JkZXItcmFkaXVzKTtcbiAgcGFkZGluZy1pbmxpbmU6IGNhbGMoMnJlbSArIHZhcigtLWdsLWFsZXJ0LXBhZGRpbmcteCwgMHB4KSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG59XG4uZ2wtYWxlcnQtbm90LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogY2FsYygwLjc1cmVtICsgdmFyKC0tZ2wtYWxlcnQtcGFkZGluZy14LCAwcHgpKTtcbn1cbi5nbC1hbGVydCAuZ2wtbGluazpub3QoLmdsLWxhYmVsLWxpbmspIHtcbiAgQGFwcGx5IGdsLXVuZGVybGluZTtcbn1cbi5nbC1hbGVydC5nbC1hbGVydC1oYXMtYWN0aW9ucyB7XG4gIEBhcHBseSBnbC1wYi00O1xufVxuXG4uZ2wtYWxlcnQtc3RpY2t5IHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAwO1xufVxuXG4uZ2wtYWxlcnQtdGl0bGUge1xuICBAYXBwbHkgZ2wtaGVhZGluZy1zY2FsZS0zMDA7XG4gIEBhcHBseSBnbC1tYi0yO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbn1cblxuLmdsLWFsZXJ0LWljb24tY29udGFpbmVyIHtcbiAgQGFwcGx5IGdsLWFic29sdXRlO1xuICBAYXBwbHkgZ2wtdG9wLTM7XG4gIGxlZnQ6IGNhbGMoMC41cmVtICsgdmFyKC0tZ2wtYWxlcnQtcGFkZGluZy14LCAwcHgpKTtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIGhlaWdodDogMS4yNXJlbTtcbn1cblxuLmdsLWFsZXJ0LWJvZHkge1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cblxuLmdsLWFsZXJ0LWFjdGlvbnMge1xuICBAYXBwbHkgZ2wtZmxleCBnbC1mbGV4LWNvbCBnbC1mbGV4LXdyYXAgZ2wtZ2FwLXktMztcbiAgQGFwcGx5IGdsLW10LTM7XG59XG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtYWxlcnQtYWN0aW9ucyB7XG4gICAgQGFwcGx5IGdsLWZsZXgtcm93O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1hbGVydC1hY3Rpb25zIHtcbiAgICBAYXBwbHkgZ2wtZmxleC1yb3c7XG4gIH1cbn1cblxuLmdsLWFsZXJ0LWFjdGlvbiB7XG4gIEBhcHBseSBnbC1tci0wIGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xufVxuQGNvbnRhaW5lciAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWFsZXJ0LWFjdGlvbiB7XG4gICAgQGFwcGx5IGdsLW1yLTMgZ2wtdy1hdXRvO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1hbGVydC1hY3Rpb24ge1xuICAgIEBhcHBseSBnbC1tci0zIGdsLXctYXV0bztcbiAgfVxufVxuXG4uZ2wtZGlzbWlzcy1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygwLjVyZW0gLSAoMS41cmVtIC0gMS4yNXJlbSkgLyAyKTtcbiAgcmlnaHQ6IGNhbGMoMC4yNXJlbSArIHZhcigtLWdsLWFsZXJ0LXBhZGRpbmcteCwgMHB4KSk7XG59XG5cbi8qIFZhcmlhbnRzICovXG4uZ2wtYWxlcnQtZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtZGFuZ2VyLWJhY2tncm91bmQtY29sb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWFsZXJ0LWRhbmdlci1ib3JkZXItY29sb3IpO1xufVxuLmdsLWFsZXJ0LWRhbmdlciAuZ2wtYWxlcnQtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYWxlcnQtZGFuZ2VyLXRpdGxlLWNvbG9yKTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogbm9uZSkge1xuICAuZ2wtYWxlcnQtZGFuZ2VyIC5nbC1hbGVydC1pY29uIHtcbiAgICBjb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWljb24tY29sb3IpO1xuICB9XG59XG5cbi5nbC1hbGVydC13YXJuaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1hbGVydC13YXJuaW5nLWJvcmRlci1jb2xvcik7XG59XG4uZ2wtYWxlcnQtd2FybmluZyAuZ2wtYWxlcnQtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYWxlcnQtd2FybmluZy10aXRsZS1jb2xvcik7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IG5vbmUpIHtcbiAgLmdsLWFsZXJ0LXdhcm5pbmcgLmdsLWFsZXJ0LWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay13YXJuaW5nLWljb24tY29sb3IpO1xuICB9XG59XG5cbi5nbC1hbGVydC10aXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hbGVydC1uZXV0cmFsLWJhY2tncm91bmQtY29sb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWFsZXJ0LW5ldXRyYWwtYm9yZGVyLWNvbG9yKTtcbn1cbi5nbC1hbGVydC10aXAgLmdsLWFsZXJ0LXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWFsZXJ0LW5ldXRyYWwtdGl0bGUtY29sb3IpO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBub25lKSB7XG4gIC5nbC1hbGVydC10aXAgLmdsLWFsZXJ0LWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1uZXV0cmFsLWljb24tY29sb3IpO1xuICB9XG59XG5cbi5nbC1hbGVydC1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtaW5mby1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1hbGVydC1pbmZvLWJvcmRlci1jb2xvcik7XG59XG4uZ2wtYWxlcnQtaW5mbyAuZ2wtYWxlcnQtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYWxlcnQtaW5mby10aXRsZS1jb2xvcik7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IG5vbmUpIHtcbiAgLmdsLWFsZXJ0LWluZm8gLmdsLWFsZXJ0LWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1pbmZvLWljb24tY29sb3IpO1xuICB9XG59XG5cbi5nbC1hbGVydC1zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1hbGVydC1zdWNjZXNzLWJvcmRlci1jb2xvcik7XG59XG4uZ2wtYWxlcnQtc3VjY2VzcyAuZ2wtYWxlcnQtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYWxlcnQtc3VjY2Vzcy10aXRsZS1jb2xvcik7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IG5vbmUpIHtcbiAgLmdsLWFsZXJ0LXN1Y2Nlc3MgLmdsLWFsZXJ0LWljb24ge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1zdWNjZXNzLWljb24tY29sb3IpO1xuICB9XG59XG5cbi5nbC1hdHRyaWJ1dGUtbGlzdCB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLTE2O1xuICBAYXBwbHkgZ2wtZ3JpZDtcbiAgQGFwcGx5IGdsLWdhcC14LTc7XG59XG5cbkBjb250YWluZXIgKG1pbi13aWR0aDogMjVyZW0pIHtcbiAgLmdsLWF0dHJpYnV0ZS1saXN0LWhvcml6b250YWwtaXRlbXMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogZml0LWNvbnRlbnQoMTVyZW0pIDFmcjtcbiAgfVxuICAuZ2wtYXR0cmlidXRlLWxpc3QtaG9yaXpvbnRhbC1pdGVtcyAuZ2wtYXR0cmlidXRlLWxpc3QtaXRlbSB7XG4gICAgQGFwcGx5IGdsLWNvbC1zcGFuLTI7XG4gIH1cbn1cbkBjb250YWluZXIgKG1pbi13aWR0aDogNTRyZW0pIHtcbiAgLmdsLWF0dHJpYnV0ZS1saXN0LWhvcml6b250YWwtaXRlbXMge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogcmVwZWF0KDIsIGZpdC1jb250ZW50KDE1cmVtKSAxZnIpO1xuICAgIEBhcHBseSBnbC1ncmlkLWZsb3ctY29sO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KHZhcigtLWF0dHJpYnV0ZS1saXN0LXJvdy1jb3VudCksIGF1dG8pO1xuICB9XG59XG5cbkBjb250YWluZXIgKG1pbi13aWR0aDogNDByZW0pIHtcbiAgLmdsLWF0dHJpYnV0ZS1saXN0LXZlcnRpY2FsLWl0ZW1zIHtcbiAgICBAYXBwbHkgZ2wtZ3JpZC1jb2xzLTI7XG4gICAgQGFwcGx5IGdsLWdyaWQtZmxvdy1jb2w7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQodmFyKC0tYXR0cmlidXRlLWxpc3Qtcm93LWNvdW50KSwgYXV0byk7XG4gIH1cbn1cblxuLmdsLWF0dHJpYnV0ZS1saXN0LWl0ZW0ge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIEBhcHBseSBnbC1weS01O1xuICBAYXBwbHkgZ2wtZ2FwLTQ7XG4gIEBhcHBseSBnbC1ncmlkO1xuICBAYXBwbHkgZ2wtZ3JpZC1jb2xzLXN1YmdyaWQ7XG59XG5cbi5nbC1hdHRyaWJ1dGUtbGlzdC1pdGVtLWxhYmVsIHtcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWdhcC0zO1xufVxuXG4uZ2wtYXR0cmlidXRlLWxpc3QtaXRlbS1sYWJlbC1pY29uIHtcbiAgQGFwcGx5IGdsLWZsZXgtbm9uZTtcbn1cblxuLmdsLWF0dHJpYnV0ZS1saXN0LWl0ZW0tZGVzY3JpcHRpb24ge1xuICBAYXBwbHkgZ2wtbWItMDtcbiAgQGFwcGx5IGdsLW1pbi13LTA7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5nbC1hdmF0YXIge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC1zaHJpbmstMDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMTtcbiAgQGFwcGx5IGdsLW9iamVjdC1jb250YWluO1xuICBvdXRsaW5lOiAxcHggc29saWQgdmFyKC0tZ2wtYXZhdGFyLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgb3V0bGluZS1vZmZzZXQ6IC0xcHg7XG59XG5cbi5nbC1hdmF0YXItczE2IHtcbiAgQGFwcGx5IGdsLXctNTtcbiAgQGFwcGx5IGdsLWgtNTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7XG59XG5cbi5nbC1hdmF0YXItczI0IHtcbiAgQGFwcGx5IGdsLXctNjtcbiAgQGFwcGx5IGdsLWgtNjtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7XG59XG5cbi5nbC1hdmF0YXItczMyIHtcbiAgQGFwcGx5IGdsLXctNztcbiAgQGFwcGx5IGdsLWgtNztcbiAgZm9udC1zaXplOiBjbGFtcCgxLjEyNXJlbSwgMC45MDI3Nzc3Nzc4cmVtICsgMC40NjI5NjI5NjN2dywgMS4yNXJlbSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbn1cblxuLmdsLWF2YXRhci1zNDgge1xuICBAYXBwbHkgZ2wtdy05O1xuICBAYXBwbHkgZ2wtaC05O1xuICBmb250LXNpemU6IGNsYW1wKDEuMzEyNXJlbSwgMC44NjgwNTU1NTU2cmVtICsgMC45MjU5MjU5MjU5dncsIDEuNTYyNXJlbSk7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5nbC1hdmF0YXItczY0IHtcbiAgQGFwcGx5IGdsLXctMTE7XG4gIEBhcHBseSBnbC1oLTExO1xuICBmb250LXNpemU6IGNsYW1wKDEuNXJlbSwgMC44MzMzMzMzMzMzcmVtICsgMS4zODg4ODg4ODg5dncsIDEuODc1cmVtKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmdsLWF2YXRhci1zOTYge1xuICBAYXBwbHkgZ2wtdy0xMztcbiAgQGFwcGx5IGdsLWgtMTM7XG4gIGZvbnQtc2l6ZTogY2xhbXAoMS43NXJlbSwgMC44NjExMTExMTExcmVtICsgMS44NTE4NTE4NTE5dncsIDIuMjVyZW0pO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tYXZhdGFyLXMxNiB7XG4gICAgQGFwcGx5IGdsLXctNTtcbiAgICBAYXBwbHkgZ2wtaC01O1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXNtLWF2YXRhci1zMTYge1xuICAgIEBhcHBseSBnbC13LTU7XG4gICAgQGFwcGx5IGdsLWgtNTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQpO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1tZC1hdmF0YXItczE2IHtcbiAgICBAYXBwbHkgZ2wtdy01O1xuICAgIEBhcHBseSBnbC1oLTU7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtYXZhdGFyLXMxNiB7XG4gICAgQGFwcGx5IGdsLXctNTtcbiAgICBAYXBwbHkgZ2wtaC01O1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWxnLWF2YXRhci1zMTYge1xuICAgIEBhcHBseSBnbC13LTU7XG4gICAgQGFwcGx5IGdsLWgtNTtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQpO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1sZy1hdmF0YXItczE2IHtcbiAgICBAYXBwbHkgZ2wtdy01O1xuICAgIEBhcHBseSBnbC1oLTU7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tYXZhdGFyLXMyNCB7XG4gICAgQGFwcGx5IGdsLXctNjtcbiAgICBAYXBwbHkgZ2wtaC02O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXNtLWF2YXRhci1zMjQge1xuICAgIEBhcHBseSBnbC13LTY7XG4gICAgQGFwcGx5IGdsLWgtNjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQpO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1tZC1hdmF0YXItczI0IHtcbiAgICBAYXBwbHkgZ2wtdy02O1xuICAgIEBhcHBseSBnbC1oLTY7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtYXZhdGFyLXMyNCB7XG4gICAgQGFwcGx5IGdsLXctNjtcbiAgICBAYXBwbHkgZ2wtaC02O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWxnLWF2YXRhci1zMjQge1xuICAgIEBhcHBseSBnbC13LTY7XG4gICAgQGFwcGx5IGdsLWgtNjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQpO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1sZy1hdmF0YXItczI0IHtcbiAgICBAYXBwbHkgZ2wtdy02O1xuICAgIEBhcHBseSBnbC1oLTY7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tYXZhdGFyLXMzMiB7XG4gICAgQGFwcGx5IGdsLXctNztcbiAgICBAYXBwbHkgZ2wtaC03O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtc20tYXZhdGFyLXMzMiB7XG4gICAgQGFwcGx5IGdsLXctNztcbiAgICBAYXBwbHkgZ2wtaC03O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbWQtYXZhdGFyLXMzMiB7XG4gICAgQGFwcGx5IGdsLXctNztcbiAgICBAYXBwbHkgZ2wtaC03O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtYXZhdGFyLXMzMiB7XG4gICAgQGFwcGx5IGdsLXctNztcbiAgICBAYXBwbHkgZ2wtaC03O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbGctYXZhdGFyLXMzMiB7XG4gICAgQGFwcGx5IGdsLXctNztcbiAgICBAYXBwbHkgZ2wtaC03O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbGctYXZhdGFyLXMzMiB7XG4gICAgQGFwcGx5IGdsLXctNztcbiAgICBAYXBwbHkgZ2wtaC03O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tYXZhdGFyLXM0OCB7XG4gICAgQGFwcGx5IGdsLXctOTtcbiAgICBAYXBwbHkgZ2wtaC05O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4zMTI1cmVtLCAwLjg2ODA1NTU1NTZyZW0gKyAwLjkyNTkyNTkyNTl2dywgMS41NjI1cmVtKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtbGcpO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1zbS1hdmF0YXItczQ4IHtcbiAgICBAYXBwbHkgZ2wtdy05O1xuICAgIEBhcHBseSBnbC1oLTk7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjMxMjVyZW0sIDAuODY4MDU1NTU1NnJlbSArIDAuOTI1OTI1OTI1OXZ3LCAxLjU2MjVyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1sZyk7XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW1kLWF2YXRhci1zNDgge1xuICAgIEBhcHBseSBnbC13LTk7XG4gICAgQGFwcGx5IGdsLWgtOTtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuMzEyNXJlbSwgMC44NjgwNTU1NTU2cmVtICsgMC45MjU5MjU5MjU5dncsIDEuNTYyNXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtYXZhdGFyLXM0OCB7XG4gICAgQGFwcGx5IGdsLXctOTtcbiAgICBAYXBwbHkgZ2wtaC05O1xuICAgIGZvbnQtc2l6ZTogY2xhbXAoMS4zMTI1cmVtLCAwLjg2ODA1NTU1NTZyZW0gKyAwLjkyNTkyNTkyNTl2dywgMS41NjI1cmVtKTtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtbGcpO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1sZy1hdmF0YXItczQ4IHtcbiAgICBAYXBwbHkgZ2wtdy05O1xuICAgIEBhcHBseSBnbC1oLTk7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjMxMjVyZW0sIDAuODY4MDU1NTU1NnJlbSArIDAuOTI1OTI1OTI1OXZ3LCAxLjU2MjVyZW0pO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1sZyk7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWxnLWF2YXRhci1zNDgge1xuICAgIEBhcHBseSBnbC13LTk7XG4gICAgQGFwcGx5IGdsLWgtOTtcbiAgICBmb250LXNpemU6IGNsYW1wKDEuMzEyNXJlbSwgMC44NjgwNTU1NTU2cmVtICsgMC45MjU5MjU5MjU5dncsIDEuNTYyNXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tYXZhdGFyLXM2NCB7XG4gICAgQGFwcGx5IGdsLXctMTE7XG4gICAgQGFwcGx5IGdsLWgtMTE7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDAuODMzMzMzMzMzM3JlbSArIDEuMzg4ODg4ODg4OXZ3LCAxLjg3NXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtc20tYXZhdGFyLXM2NCB7XG4gICAgQGFwcGx5IGdsLXctMTE7XG4gICAgQGFwcGx5IGdsLWgtMTE7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDAuODMzMzMzMzMzM3JlbSArIDEuMzg4ODg4ODg4OXZ3LCAxLjg3NXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbWQtYXZhdGFyLXM2NCB7XG4gICAgQGFwcGx5IGdsLXctMTE7XG4gICAgQGFwcGx5IGdsLWgtMTE7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDAuODMzMzMzMzMzM3JlbSArIDEuMzg4ODg4ODg4OXZ3LCAxLjg3NXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtYXZhdGFyLXM2NCB7XG4gICAgQGFwcGx5IGdsLXctMTE7XG4gICAgQGFwcGx5IGdsLWgtMTE7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDAuODMzMzMzMzMzM3JlbSArIDEuMzg4ODg4ODg4OXZ3LCAxLjg3NXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbGctYXZhdGFyLXM2NCB7XG4gICAgQGFwcGx5IGdsLXctMTE7XG4gICAgQGFwcGx5IGdsLWgtMTE7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDAuODMzMzMzMzMzM3JlbSArIDEuMzg4ODg4ODg4OXZ3LCAxLjg3NXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbGctYXZhdGFyLXM2NCB7XG4gICAgQGFwcGx5IGdsLXctMTE7XG4gICAgQGFwcGx5IGdsLWgtMTE7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjVyZW0sIDAuODMzMzMzMzMzM3JlbSArIDEuMzg4ODg4ODg4OXZ3LCAxLjg3NXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tYXZhdGFyLXM5NiB7XG4gICAgQGFwcGx5IGdsLXctMTM7XG4gICAgQGFwcGx5IGdsLWgtMTM7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAwLjg2MTExMTExMTFyZW0gKyAxLjg1MTg1MTg1MTl2dywgMi4yNXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtc20tYXZhdGFyLXM5NiB7XG4gICAgQGFwcGx5IGdsLXctMTM7XG4gICAgQGFwcGx5IGdsLWgtMTM7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAwLjg2MTExMTExMTFyZW0gKyAxLjg1MTg1MTg1MTl2dywgMi4yNXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbWQtYXZhdGFyLXM5NiB7XG4gICAgQGFwcGx5IGdsLXctMTM7XG4gICAgQGFwcGx5IGdsLWgtMTM7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAwLjg2MTExMTExMTFyZW0gKyAxLjg1MTg1MTg1MTl2dywgMi4yNXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtYXZhdGFyLXM5NiB7XG4gICAgQGFwcGx5IGdsLXctMTM7XG4gICAgQGFwcGx5IGdsLWgtMTM7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAwLjg2MTExMTExMTFyZW0gKyAxLjg1MTg1MTg1MTl2dywgMi4yNXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbGctYXZhdGFyLXM5NiB7XG4gICAgQGFwcGx5IGdsLXctMTM7XG4gICAgQGFwcGx5IGdsLWgtMTM7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAwLjg2MTExMTExMTFyZW0gKyAxLjg1MTg1MTg1MTl2dywgMi4yNXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbGctYXZhdGFyLXM5NiB7XG4gICAgQGFwcGx5IGdsLXctMTM7XG4gICAgQGFwcGx5IGdsLWgtMTM7XG4gICAgZm9udC1zaXplOiBjbGFtcCgxLjc1cmVtLCAwLjg2MTExMTExMTFyZW0gKyAxLjg1MTg1MTg1MTl2dywgMi4yNXJlbSk7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbiAgfVxufVxuXG4uZ2wtYXZhdGFyLWNpcmNsZSB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWF2YXRhci1jaXJjbGUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTtcbn1cblxuLmdsLWF2YXRhci1pZGVudGljb24ge1xuICBAYXBwbHkgZ2wtdGV4dC1jZW50ZXI7XG4gIEBhcHBseSBnbC1hbGlnbi10b3A7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xufVxuXG4uZ2wtYXZhdGFyLWlkZW50aWNvbi1iZzEge1xuICBjb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItcmVkKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItcmVkKTtcbn1cblxuLmdsLWF2YXRhci1pZGVudGljb24tYmcyIHtcbiAgY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXB1cnBsZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLXB1cnBsZSk7XG59XG5cbi5nbC1hdmF0YXItaWRlbnRpY29uLWJnMyB7XG4gIGNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stdGV4dC1jb2xvci1wdXJwbGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1wdXJwbGUpO1xufVxuXG4uZ2wtYXZhdGFyLWlkZW50aWNvbi1iZzQge1xuICBjb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItYmx1ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLWJsdWUpO1xufVxuXG4uZ2wtYXZhdGFyLWlkZW50aWNvbi1iZzUge1xuICBjb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItZ3JlZW4pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ncmVlbik7XG59XG5cbi5nbC1hdmF0YXItaWRlbnRpY29uLWJnNiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stdGV4dC1jb2xvci1vcmFuZ2UpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1vcmFuZ2UpO1xufVxuXG4uZ2wtYXZhdGFyLWlkZW50aWNvbi1iZzcge1xuICBjb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItbmV1dHJhbCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLW5ldXRyYWwpO1xufVxuXG4uZ2wtYXZhdGFyLWxhYmVsZWQge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG59XG4uZ2wtYXZhdGFyLWxhYmVsZWQtbGFiZWxzIHtcbiAgQGFwcGx5IGdsLW1sLTM7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG59XG4uZ2wtYXZhdGFyLWxhYmVsZWQtbGFiZWxzLmlubGluZS1sYWJlbHMge1xuICBAYXBwbHkgZ2wtZmxleC1yb3c7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1nYXAtMjtcbn1cbi5nbC1hdmF0YXItbGFiZWxlZC1sYWJlbCB7XG4gIEBhcHBseSBnbC1mb250LWJvbGQ7XG4gIEBhcHBseSBnbC1wLTE7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbn1cbi5nbC1hdmF0YXItbGFiZWxlZC1zdWJsYWJlbCB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi5nbC1hdmF0YXItbGluayB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbn1cbi5nbC1hdmF0YXItbGluayAuZ2wtYXZhdGFyIHtcbiAgQGFwcGx5IGdsLXRyYW5zaXRpb24tYm9yZGVyLWNvbG9yO1xuICBAYXBwbHkgZ2wtZHVyYXRpb24tc2xvdztcbiAgQGFwcGx5IGdsLWVhc2UtZWFzZTtcbn1cbi5nbC1hdmF0YXItbGluazpob3ZlciB7XG4gIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG59XG4uZ2wtYXZhdGFyLWxpbms6aG92ZXIgLmdsLWF2YXRhciB7XG4gIG91dGxpbmU6IDFweCBzb2xpZCB2YXIoLS1nbC1hdmF0YXItYm9yZGVyLWNvbG9yLWhvdmVyKTtcbn1cbi5nbC1hdmF0YXItbGluazpob3ZlciAuZ2wtYXZhdGFyLWxhYmVsZWQtbGFiZWwge1xuICBAYXBwbHkgZ2wtdW5kZXJsaW5lO1xufVxuLmdsLWF2YXRhci1saW5rOmhvdmVyIC5nbC1hdmF0YXItbGFiZWxlZC1zdWJsYWJlbCB7XG4gIEBhcHBseSBnbC11bmRlcmxpbmU7XG59XG4uZ2wtYXZhdGFyLWxpbms6YWN0aXZlLCAuZ2wtYXZhdGFyLWxpbms6Zm9jdXMtdmlzaWJsZSwgLmdsLWF2YXRhci1saW5rOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG4uZ2wtYXZhdGFyLWxpbms6YWN0aXZlIC5nbC1hdmF0YXIsIC5nbC1hdmF0YXItbGluazpmb2N1cy12aXNpYmxlIC5nbC1hdmF0YXIsIC5nbC1hdmF0YXItbGluazpmb2N1cy12aXNpYmxlOmFjdGl2ZSAuZ2wtYXZhdGFyIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuXG4uZ2wtYXZhdGFycy1pbmxpbmUge1xuICAtLWF2YXRhci1zaXplOiAyNHB4O1xuICAtLWF2YXRhci1yYWRpdXM6IGNhbGModmFyKC0tYXZhdGFyLXNpemUpICogMC41KTtcbiAgLS1tYXNrLW9mZnNldDogY2FsYyh2YXIoLS1hdmF0YXItc2l6ZSkgKiAtMC4yNSk7XG4gIC0tbWFzay1jdXRvdXQ6IGNhbGModmFyKC0tYXZhdGFyLXJhZGl1cykgKyAxLjVweCk7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLXNtIHtcbiAgLS1hdmF0YXItc2l6ZTogMTZweDtcbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLW1kIHtcbiAgLS1hdmF0YXItc2l6ZTogMjRweDtcbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLWxnIHtcbiAgLS1hdmF0YXItc2l6ZTogMzJweDtcbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLWNoaWxkIHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xufVxuLmdsLWF2YXRhcnMtaW5saW5lLWNoaWxkOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tcmlnaHQ6IHZhcigtLW1hc2stb2Zmc2V0KTtcbiAgbWFzazogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSBhdCBjYWxjKHZhcigtLWF2YXRhci1zaXplKSAqIDEuMjUpIGNlbnRlciwgdHJhbnNwYXJlbnQgdmFyKC0tbWFzay1jdXRvdXQpLCB3aGl0ZSAwKTtcbn1cbi5nbC1hdmF0YXJzLWlubGluZS1jaGlsZDpub3QoOmxhc3QtY2hpbGQpOmhvdmVyICsgLmdsLWF2YXRhcnMtaW5saW5lLWNoaWxkID4gLmdsLWF2YXRhci1saW5rLCAuZ2wtYXZhdGFycy1pbmxpbmUtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKTpob3ZlciArIC5nbC1hdmF0YXJzLWlubGluZS1jaGlsZCA+IC5nbC1hdmF0YXJzLWlubGluZS1iYWRnZSB7XG4gIG1hc2s6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUgYXQgdmFyKC0tbWFzay1vZmZzZXQpIGNlbnRlciwgdHJhbnNwYXJlbnQgdmFyKC0tbWFzay1jdXRvdXQpLCB3aGl0ZSAwKTtcbn1cbi5nbC1hdmF0YXJzLWlubGluZS1jaGlsZDpub3QoOmxhc3QtY2hpbGQpOmhvdmVyLCAuZ2wtYXZhdGFycy1pbmxpbmUtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKTpmb2N1cy13aXRoaW4ge1xuICBAYXBwbHkgZ2wtei0xO1xuICBtYXNrOiBub25lO1xufVxuXG4uZ2wtYXZhdGFycy1pbmxpbmUtYmFkZ2Uge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgQGFwcGx5IGdsLXRleHQtc207XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXBpbGw7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXN0YXR1cy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3IpO1xuICBjb2xvcjogdmFyKC0tZ2wtc3RhdHVzLW5ldXRyYWwtdGV4dC1jb2xvcik7XG4gIGhlaWdodDogdmFyKC0tYXZhdGFyLXNpemUpO1xuICBtaW4td2lkdGg6IHZhcigtLWF2YXRhci1zaXplKTtcbn1cbi5nbC1hdmF0YXJzLWlubGluZS1iYWRnZS5sZyB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1yb3VuZGVkLTN4bDtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmaWxsOiBub25lICFpbXBvcnRhbnQ7XG4gIHN0cm9rZTogY3VycmVudENvbG9yICFpbXBvcnRhbnQ7XG59XG4uZ2wtYW5pbWF0ZWQtaWNvbiAqIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBjb2xvciwgZmlsbCwgb3BhY2l0eSwgdHJhbnNmb3JtLCByb3RhdGUsIHRyYW5zbGF0ZSwgc2NhbGUsIHN0cm9rZS1kYXNoYXJyYXksIHN0cm9rZS1kYXNob2Zmc2V0O1xuICBhbmltYXRpb24tZHVyYXRpb246IDAuNHM7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbikge1xuICAuZ2wtYW5pbWF0ZWQtaWNvbiAqIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXMgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7XG4gIC5nbC1hbmltYXRlZC1pY29uICoge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogMSAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbi1kZWxheTogMG1zICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogQ29sb3IgdmFyaWFudHMuXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuLmdsLWFuaW1hdGVkLWljb24tZGVmYXVsdCB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLWRlZmF1bHQpO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1zdWJ0bGUge1xuICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1zdWJ0bGUpO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1zdHJvbmcge1xuICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1zdHJvbmcpO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1kaXNhYmxlZCB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLWRpc2FibGVkKTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tbGluayB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLWxpbmspO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1pbmZvIHtcbiAgY29sb3I6IHZhcigtLWdsLWljb24tY29sb3ItaW5mbyk7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLXdhcm5pbmcge1xuICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci13YXJuaW5nKTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tZGFuZ2VyIHtcbiAgY29sb3I6IHZhcigtLWdsLWljb24tY29sb3ItZGFuZ2VyKTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tc3VjY2VzcyB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLXN1Y2Nlc3MpO1xufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF9jaGV2cm9uX2xnX3JpZ2h0X2Rvd25faWNvbi52dWVcbiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXG4uZ2wtYW5pbWF0ZWQtY2hldnJvbi1sZy1yaWdodC1kb3duLWFycm93IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLXJpZ2h0LWRvd24tYXJyb3cge1xuICByb3RhdGU6IDkwZGVnO1xufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1sZy1yaWdodC1kb3duLWFycm93IHtcbiAgcm90YXRlOiAwZGVnO1xufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF9jaGV2cm9uX3JpZ2h0X2Rvd25faWNvbi52dWVcbiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXG4uZ2wtYW5pbWF0ZWQtY2hldnJvbi1yaWdodC1kb3duLWFycm93IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1jaGV2cm9uLXJpZ2h0LWRvd24tYXJyb3cge1xuICByb3RhdGU6IDkwZGVnO1xufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1yaWdodC1kb3duLWFycm93IHtcbiAgcm90YXRlOiAwZGVnO1xufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF9jaGV2cm9uX2xnX2Rvd25fdXBfaWNvbi52dWVcbiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXG4vKiBvbiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWNoZXZyb24tbGctZG93bi11cC1hcnJvdy1sZWZ0LWxpbmUsXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1sZy1kb3duLXVwLWFycm93LXJpZ2h0LWxpbmUge1xuICB0cmFuc2xhdGU6IDUwJSAzMS4yJTtcbiAgc2NhbGU6IDEgMS4wMTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCBzY2FsZSAwLjJzIGxpbmVhcigxIDAlLCAtMjkgMTYlLCAxIDEwMCUpO1xufVxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWNoZXZyb24tbGctZG93bi11cC1hcnJvdy1sZWZ0LWxpbmUge1xuICByb3RhdGU6IDQ1ZGVnO1xufVxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWNoZXZyb24tbGctZG93bi11cC1hcnJvdy1yaWdodC1saW5lIHtcbiAgcm90YXRlOiAtNDVkZWc7XG59XG5cbi8qIG9mZiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lLFxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLWRvd24tdXAtYXJyb3ctcmlnaHQtbGluZSB7XG4gIHRyYW5zbGF0ZTogNTAlIDY4LjglO1xuICBzY2FsZTogMSAxO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIHNjYWxlIDAuMnMgbGluZWFyKDEgMCUsIDI5IDE2JSwgMSAxMDAlKTtcbn1cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1sZy1kb3duLXVwLWFycm93LWxlZnQtbGluZSB7XG4gIHJvdGF0ZTogMTM1ZGVnO1xufVxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLWRvd24tdXAtYXJyb3ctcmlnaHQtbGluZSB7XG4gIHJvdGF0ZTogLTEzNWRlZztcbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfY2hldnJvbl9kb3duX3VwX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1jaGV2cm9uLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lLFxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWNoZXZyb24tZG93bi11cC1hcnJvdy1yaWdodC1saW5lIHtcbiAgdHJhbnNsYXRlOiA1MCUgMzcuNiU7XG4gIHNjYWxlOiAxIDEuMDE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgc2NhbGUgMC4ycyBsaW5lYXIoMSAwJSwgLTI3IDE2JSwgMSAxMDAlKTtcbn1cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1jaGV2cm9uLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lIHtcbiAgcm90YXRlOiA0NWRlZztcbn1cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1jaGV2cm9uLWRvd24tdXAtYXJyb3ctcmlnaHQtbGluZSB7XG4gIHJvdGF0ZTogLTQ1ZGVnO1xufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1kb3duLXVwLWFycm93LWxlZnQtbGluZSxcbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1kb3duLXVwLWFycm93LXJpZ2h0LWxpbmUge1xuICB0cmFuc2xhdGU6IDUwJSA2Mi42JTtcbiAgc2NhbGU6IDEgMTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCBzY2FsZSAwLjJzIGxpbmVhcigxIDAlLCAyNyAxNiUsIDEgMTAwJSk7XG59XG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLWNoZXZyb24tZG93bi11cC1hcnJvdy1sZWZ0LWxpbmUge1xuICByb3RhdGU6IDEzNWRlZztcbn1cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1kb3duLXVwLWFycm93LXJpZ2h0LWxpbmUge1xuICByb3RhdGU6IC0xMzVkZWc7XG59XG5cbi8qICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICpcbiAqIGFuaW1hdGVkX2R1b19jaGF0X2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuLmdsLWFuaW1hdGVkLWR1by1jaGF0LXNtYWxsLXNwYXJrbGUsXG4uZ2wtYW5pbWF0ZWQtZHVvLWNoYXQtYmlnLXNwYXJrbGUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4vKiBvbiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWR1by1jaGF0LXNtYWxsLXNwYXJrbGUsXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtZHVvLWNoYXQtYmlnLXNwYXJrbGUge1xuICBhbmltYXRpb24tbmFtZTogZ2wtYW5pbWF0ZWQtZHVvLWNoYXQtc3BhcmtsZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1kdW8tY2hhdC1zbWFsbC1zcGFya2xlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC41cztcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWR1by1jaGF0LWJpZy1zcGFya2xlIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMS41cztcbn1cblxuQGtleWZyYW1lcyBnbC1hbmltYXRlZC1kdW8tY2hhdC1zcGFya2xlIHtcbiAgMCUge1xuICAgIHRyYW5zbGF0ZTogLTQ1JSAtNDUlO1xuICAgIHNjYWxlOiAwO1xuICB9XG4gIDIwJSwgNDUlIHtcbiAgICB0cmFuc2xhdGU6IC0zMSUgLTMxJTtcbiAgICBzY2FsZTogMTtcbiAgfVxuICA1MCUsIDgwJSB7XG4gICAgdHJhbnNsYXRlOiAwIC02JTtcbiAgICBzY2FsZTogMC44O1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zbGF0ZTogMCAtNiU7XG4gICAgc2NhbGU6IDA7XG4gIH1cbn1cbi8qIG9mZiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWR1by1jaGF0LXNtYWxsLXNwYXJrbGUge1xuICB0cmFuc2xhdGU6IDAgLTYlO1xuICBzY2FsZTogMC44O1xufVxuXG4uZ2wtYW5pbWF0ZWQtZHVvLWNoYXQtYmlnLXNwYXJrbGUge1xuICB0cmFuc2xhdGU6IC0zMSUgLTMxJTtcbiAgc2NhbGU6IDE7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbikge1xuICAuZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtZHVvLWNoYXQtc21hbGwtc3BhcmtsZSxcbiAgLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWR1by1jaGF0LWJpZy1zcGFya2xlIHtcbiAgICBhbmltYXRpb24tbmFtZTogbm9uZTtcbiAgfVxufVxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfbG9hZGVyX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWxvYWRlci1zaGFwZSB7XG4gIGFuaW1hdGlvbjogZ2wtYW5pbWF0ZWQtbG9hZGVyLW9uIDEuOHMgZWFzZSBpbmZpbml0ZTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWxvYWRlci1zaGFwZS0xIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjE1cztcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWxvYWRlci1zaGFwZS0yIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xufVxuXG5Aa2V5ZnJhbWVzIGdsLWFuaW1hdGVkLWxvYWRlci1vbiB7XG4gIDMwJSB7XG4gICAgdHJhbnNsYXRlOiAwIC0zMCU7XG4gIH1cbiAgNjAlIHtcbiAgICB0cmFuc2xhdGU6IDAgMiU7XG4gIH1cbiAgNjUlIHtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxufVxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfbm90aWZpY2F0aW9uc19pY29uLnZ1ZVxuICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi9cbi8qIG9uIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtbm90aWZpY2F0aW9ucy1ib3R0b20tcGFydCB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDgwJSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogLTQzJTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLW5vdGlmaWNhdGlvbnMtdG9wLXBhcnQge1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLW5vdGlmaWNhdGlvbnMtbGluZSB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDExNSUgMTIwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG59XG5cbi8qIG9mZiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1ub3RpZmljYXRpb25zLWJvdHRvbS1wYXJ0IHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMTQ1JSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1ub3RpZmljYXRpb25zLXRvcC1wYXJ0IHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMTAwJSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1ub3RpZmljYXRpb25zLWxpbmUge1xuICBzdHJva2UtZGFzaGFycmF5OiAxMTUlIDEyMCU7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiAtMTExJTtcbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfc2lkZWJhcl9pY29uLnZ1ZVxuICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi9cbi8qIG9uIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc2lkZWJhci1saW5lIHtcbiAgdHJhbnNsYXRlOiAxJSAwO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyKDAgMCUsIDUgNjAlLCAxIDEwMCUpO1xufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc2lkZWJhci1saW5lIHtcbiAgdHJhbnNsYXRlOiAtMSUgMDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcigwIDAlLCA1IDYwJSwgMSAxMDAlKTtcbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfc21pbGVfaWNvbi52dWVcbiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXG4uZ2wtYW5pbWF0ZWQtc21pbGUtYmlnLXNtaWxlIHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDcwJTtcbn1cblxuLmdsLWFuaW1hdGVkLXNtaWxlLWV5ZXMgY2lyY2xlIHtcbiAgZmlsbDogY3VycmVudENvbG9yICFpbXBvcnRhbnQ7XG59XG5cbi8qIG9uIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc21pbGUtZXllcyB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIoMCAwJSwgLTEgMjAlLCAxIDEwMCUpO1xuICB0cmFuc2xhdGU6IDAgLTYlO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc21pbGUtYmlnLXNtaWxlIHtcbiAgc2NhbGU6IDE7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zbWlsZS1zbGlnaHQtc21pbGUge1xuICBzdHJva2UtZGFzaGFycmF5OiAxMCUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC04JTtcbn1cblxuLyogb2ZmIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNtaWxlLWV5ZXMge1xuICB0cmFuc2xhdGU6IDAgMDtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1zbWlsZS1iaWctc21pbGUge1xuICBzY2FsZTogMC4xO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNtaWxlLXNsaWdodC1zbWlsZSB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDMwJSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfc29ydF9pY29uLnZ1ZVxuICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi9cbi5nbC1hbmltYXRlZC1zb3J0LWljb24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLyogb2ZmIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGdsLWFuaW1hdGVkLXN0YXItb2ZmO1xufVxuXG4uZ2wtYW5pbWF0ZWQtc29ydC1hcnJvdy1sZWZ0LFxuLmdsLWFuaW1hdGVkLXNvcnQtYXJyb3ctcmlnaHQge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAxOC43JSA2LjclO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNvcnQtYXJyb3ctbGVmdCxcbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc29ydC1hcnJvdy1yaWdodCB7XG4gIHJvdGF0ZTogMGRlZztcbiAgdHJhbnNsYXRlOiAwIDEwJTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1zb3J0LWxvbmctbGluZS1vZmYsXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNvcnQtbWVkaXVtLWxpbmUtb2ZmLFxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1zb3J0LXNob3J0LWxpbmUtb2ZmIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1kZWxheTogLTFzO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNvcnQtbG9uZy1saW5lLW9uIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNXM7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc29ydC1tZWRpdW0tbGluZS1vbiB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc29ydC1zaG9ydC1saW5lLW9uIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xNXM7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc29ydC1saW5lIHtcbiAgdHJhbnNsYXRlOiAwIC03JTtcbn1cblxuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zb3J0LWFycm93LWxlZnQge1xuICByb3RhdGU6IDkwZGVnO1xuICB0cmFuc2xhdGU6IDAgNzclO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc29ydC1hcnJvdy1yaWdodCB7XG4gIHJvdGF0ZTogLTkwZGVnO1xuICB0cmFuc2xhdGU6IDAgNzclO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc29ydC1sb25nLWxpbmUtb24sXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc29ydC1tZWRpdW0tbGluZS1vbixcbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zb3J0LXNob3J0LWxpbmUtb24ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAtMXM7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zb3J0LWxvbmctbGluZS1vZmYge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjE1cztcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXNvcnQtbWVkaXVtLWxpbmUtb2ZmIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXNvcnQtc2hvcnQtbGluZS1vZmYge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjA1cztcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXNvcnQtbGluZSB7XG4gIHRyYW5zbGF0ZTogMCAwO1xufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF9zdGFyX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuLmdsLWFuaW1hdGVkLXN0YXItc2hhcGUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4vKiBvbiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXN0YXItc2hhcGUge1xuICBhbmltYXRpb24tbmFtZTogZ2wtYW5pbWF0ZWQtc3Rhci1vbjtcbn1cblxuQGtleWZyYW1lcyBnbC1hbmltYXRlZC1zdGFyLW9uIHtcbiAgMCUsIDI1JSB7XG4gICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgNTAlIHtcbiAgICBmaWxsOiBjdXJyZW50Q29sb3I7XG4gIH1cbiAgMTAwJSB7XG4gICAgZmlsbDogY3VycmVudENvbG9yO1xuICB9XG4gIDAlLCAxMDAlIHtcbiAgICBzY2FsZTogMTtcbiAgfVxuICAyNSUge1xuICAgIHNjYWxlOiAwLjc7XG4gIH1cbiAgNTAlIHtcbiAgICBzY2FsZTogMS4xO1xuICB9XG59XG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc3Rhci1zaGFwZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBnbC1hbmltYXRlZC1zdGFyLW9mZjtcbn1cblxuQGtleWZyYW1lcyBnbC1hbmltYXRlZC1zdGFyLW9mZiB7XG4gIDAlLCAyNSUge1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgfVxuICA1MCUge1xuICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICB9XG4gIDEwMCUge1xuICAgIGZpbGw6IHRyYW5zcGFyZW50O1xuICB9XG4gIDAlLCAxMDAlIHtcbiAgICBzY2FsZTogMTtcbiAgfVxuICAyNSUge1xuICAgIHNjYWxlOiAwLjc7XG4gIH1cbiAgNTAlIHtcbiAgICBzY2FsZTogMS4xO1xuICB9XG59XG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF90b2RvX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC10b2RvLWJveCB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDI0MCUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xOSU7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC10b2RvLXBsdXMtbGluZSB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDAlIDEwMCU7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiAtMTQlO1xuICB0cmFuc2xhdGU6IDE0JSA3JTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXRvZG8tY2hlY2sge1xuICBzdHJva2UtZGFzaGFycmF5OiA3NiUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG59XG5cbi8qIG9mZiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC10b2RvLWJveCB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDIxNSUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xMiU7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtdG9kby1wbHVzLWxpbmUge1xuICBzdHJva2UtZGFzaGFycmF5OiAzMCUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG4gIHRyYW5zbGF0ZTogMCAwO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXRvZG8tY2hlY2sge1xuICBzdHJva2UtZGFzaGFycmF5OiA3NiUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC03NiU7XG59XG5cbi8qICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICpcbiAqIGFuaW1hdGVkX3VwbG9hZF9pY29uLnZ1ZVxuICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi9cbi5nbC1hbmltYXRlZC11cGxvYWQtbGluZSB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDcwJSAxMDAlO1xufVxuXG4vKiBvbiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXVwbG9hZC1saW5lIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGdsLWFuaW1hdGVkLXVwbG9hZC1saW5lO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuQGtleWZyYW1lcyBnbC1hbmltYXRlZC11cGxvYWQtbGluZSB7XG4gIDAlLCA2MCUsIDEwMCUge1xuICAgIHRyYW5zbGF0ZTogMCAwO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICB9XG4gIDEwJSB7XG4gICAgdHJhbnNsYXRlOiAwJSAyMCU7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0yMCU7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2xhdGU6IDAgLTEwJTtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxuICA1NSUge1xuICAgIHRyYW5zbGF0ZTogMCA1JTtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogLTUlO1xuICB9XG59XG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtdXBsb2FkLWFycm93IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGdsLWFuaW1hdGVkLXVwbG9hZC1hcnJvdztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgZ2wtYW5pbWF0ZWQtdXBsb2FkLWFycm93IHtcbiAgMCUsIDYwJSwgMTAwJSB7XG4gICAgdHJhbnNsYXRlOiAwIDA7XG4gIH1cbiAgMTAlIHtcbiAgICB0cmFuc2xhdGU6IDAgMjAlO1xuICB9XG4gIDQwJSB7XG4gICAgdHJhbnNsYXRlOiAwIC04JTtcbiAgfVxuICA1NSUge1xuICAgIHRyYW5zbGF0ZTogMCA4JTtcbiAgfVxufVxuLyogQmFzaWMgYmFkZ2Ugc3R5bGVzICovXG4uZ2wtYmFkZ2Uge1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIC8qXG4gICAgQ1NTIEdyaWQgaXMgdXNlZCBoZXJlIHRvIGRlYWwgd2l0aCAzIGNhc2VzOlxuICAgICAgKiBCYWRnZSBzaG91bGRuJ3Qgc2hyaW5rIGluc2lkZSBmbGV4IGNvbnRhaW5lcnMgYnkgZGVmYXVsdFxuICAgICAgKiBDb250ZW50IGluc2lkZSB0aGUgYmFkZ2Ugc2hvdWxkIHNocmluayB3aGVuIGdsLXRleHQtdHJ1bmNhdGUgY2xhc3MgaXMgdXNlZCBvbiB0aGUgY29udGVudHNcbiAgICAgICogQmFkZ2Ugc2hvdWxkIGhhdmUgYSBtaW5pbWFsIHdpZHRoIG9mIDIwIHBpeGVscyAoZm9yIGV4YW1wbGUgd2hlbiBgMWAgaXMgcGFzc2VkIGluc2lkZSB0aGUgc2xvdClcbiAgICovXG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZ2FwOiAwLjI1cmVtO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjM3NXJlbTtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJvcmRlci1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm94LXNoYWRvdyAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbikge1xuICAuZ2wtYmFkZ2Uge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBtcyAhaW1wb3J0YW50O1xuICB9XG59XG4uZ2wtYmFkZ2U6aGFzKC5nbC10cnVuY2F0ZSwgLmdsLXRleHQtdHJ1bmNhdGUpIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWJhZGdlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgfVxufVxuLmdsLWJhZGdlIC5nbC1iYWRnZS1pY29uIHtcbiAgQGFwcGx5IGdsLWgtNTtcbiAgQGFwcGx5IGdsLXctNTtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuICB0b3A6IGF1dG87XG59XG4uZ2wtYmFkZ2UgLmdsLWJhZGdlLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLXdpZHRoOiAwLjVyZW07XG59XG5cbmEuZ2wtYmFkZ2UuZGlzYWJsZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4vKiBWYXJpYW50cyAqL1xuLmdsLWJhZGdlLmJhZGdlLW5ldXRyYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtYmFkZ2UuYmFkZ2UtbmV1dHJhbCAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLWljb24tY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGluaGVyaXQ7XG59XG5cbmEuZ2wtYmFkZ2UuYmFkZ2UtbmV1dHJhbDpub3QoLmRpc2FibGVkKTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1ib3JkZXItY29sb3ItaG92ZXIpO1xuICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xufVxuYS5nbC1iYWRnZS5iYWRnZS1uZXV0cmFsOm5vdCguZGlzYWJsZWQpOmhvdmVyIC5nbC1iYWRnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1ob3Zlcik7XG59XG5hLmdsLWJhZGdlLmJhZGdlLW5ldXRyYWw6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS1uZXV0cmFsOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUgLmdsLWJhZGdlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWZvY3VzKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtbmV1dHJhbDpub3QoLmRpc2FibGVkKS5hY3RpdmUsIGEuZ2wtYmFkZ2UuYmFkZ2UtbmV1dHJhbDpub3QoLmRpc2FibGVkKTphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS1uZXV0cmFsOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSAuZ2wtYmFkZ2UtaWNvbiwgYS5nbC1iYWRnZS5iYWRnZS1uZXV0cmFsOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLWljb24tY29sb3ItYWN0aXZlKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtbmV1dHJhbDpub3QoLmRpc2FibGVkKTphY3RpdmUsIGEuZ2wtYmFkZ2UuYmFkZ2UtbmV1dHJhbDpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlLCBhLmdsLWJhZGdlLmJhZGdlLW5ldXRyYWw6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG5cbi5nbC1iYWRnZS5iYWRnZS1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLWJhZGdlLmJhZGdlLWluZm8gLmdsLWJhZGdlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby1pY29uLWNvbG9yLWRlZmF1bHQpO1xuICB0cmFuc2l0aW9uOiBpbmhlcml0O1xufVxuXG5hLmdsLWJhZGdlLmJhZGdlLWluZm86bm90KC5kaXNhYmxlZCk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWhvdmVyKTtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtaW5mbzpub3QoLmRpc2FibGVkKTpob3ZlciAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItaG92ZXIpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS1pbmZvOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtaW5mbzpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlIC5nbC1iYWRnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1mb2N1cyk7XG59XG5hLmdsLWJhZGdlLmJhZGdlLWluZm86bm90KC5kaXNhYmxlZCkuYWN0aXZlLCBhLmdsLWJhZGdlLmJhZGdlLWluZm86bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtaW5mbzpub3QoLmRpc2FibGVkKS5hY3RpdmUgLmdsLWJhZGdlLWljb24sIGEuZ2wtYmFkZ2UuYmFkZ2UtaW5mbzpub3QoLmRpc2FibGVkKTphY3RpdmUgLmdsLWJhZGdlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby1pY29uLWNvbG9yLWFjdGl2ZSk7XG59XG5hLmdsLWJhZGdlLmJhZGdlLWluZm86bm90KC5kaXNhYmxlZCk6YWN0aXZlLCBhLmdsLWJhZGdlLmJhZGdlLWluZm86bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSwgYS5nbC1iYWRnZS5iYWRnZS1pbmZvOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuXG4uZ2wtYmFkZ2UuYmFkZ2Utc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1iYWRnZS5iYWRnZS1zdWNjZXNzIC5nbC1iYWRnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtaWNvbi1jb2xvci1kZWZhdWx0KTtcbiAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbn1cblxuYS5nbC1iYWRnZS5iYWRnZS1zdWNjZXNzOm5vdCguZGlzYWJsZWQpOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1ob3Zlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1ob3Zlcik7XG4gIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG59XG5hLmdsLWJhZGdlLmJhZGdlLXN1Y2Nlc3M6bm90KC5kaXNhYmxlZCk6aG92ZXIgLmdsLWJhZGdlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWhvdmVyKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2Utc3VjY2Vzczpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1mb2N1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG59XG5hLmdsLWJhZGdlLmJhZGdlLXN1Y2Nlc3M6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItZm9jdXMpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS1zdWNjZXNzOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgYS5nbC1iYWRnZS5iYWRnZS1zdWNjZXNzOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItYWN0aXZlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG59XG5hLmdsLWJhZGdlLmJhZGdlLXN1Y2Nlc3M6bm90KC5kaXNhYmxlZCkuYWN0aXZlIC5nbC1iYWRnZS1pY29uLCBhLmdsLWJhZGdlLmJhZGdlLXN1Y2Nlc3M6bm90KC5kaXNhYmxlZCk6YWN0aXZlIC5nbC1iYWRnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtaWNvbi1jb2xvci1hY3RpdmUpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS1zdWNjZXNzOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSwgYS5nbC1iYWRnZS5iYWRnZS1zdWNjZXNzOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUsIGEuZ2wtYmFkZ2UuYmFkZ2Utc3VjY2Vzczpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cblxuLmdsLWJhZGdlLmJhZGdlLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtYmFkZ2UuYmFkZ2Utd2FybmluZyAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLWljb24tY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGluaGVyaXQ7XG59XG5cbmEuZ2wtYmFkZ2UuYmFkZ2Utd2FybmluZzpub3QoLmRpc2FibGVkKTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy1ib3JkZXItY29sb3ItaG92ZXIpO1xuICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xufVxuYS5nbC1iYWRnZS5iYWRnZS13YXJuaW5nOm5vdCguZGlzYWJsZWQpOmhvdmVyIC5nbC1iYWRnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1ob3Zlcik7XG59XG5hLmdsLWJhZGdlLmJhZGdlLXdhcm5pbmc6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS13YXJuaW5nOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUgLmdsLWJhZGdlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWZvY3VzKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2Utd2FybmluZzpub3QoLmRpc2FibGVkKS5hY3RpdmUsIGEuZ2wtYmFkZ2UuYmFkZ2Utd2FybmluZzpub3QoLmRpc2FibGVkKTphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy10ZXh0LWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS13YXJuaW5nOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSAuZ2wtYmFkZ2UtaWNvbiwgYS5nbC1iYWRnZS5iYWRnZS13YXJuaW5nOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLWljb24tY29sb3ItYWN0aXZlKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2Utd2FybmluZzpub3QoLmRpc2FibGVkKTphY3RpdmUsIGEuZ2wtYmFkZ2UuYmFkZ2Utd2FybmluZzpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlLCBhLmdsLWJhZGdlLmJhZGdlLXdhcm5pbmc6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG5cbi5nbC1iYWRnZS5iYWRnZS1kYW5nZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLWJhZGdlLmJhZGdlLWRhbmdlciAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1kZWZhdWx0KTtcbiAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbn1cblxuYS5nbC1iYWRnZS5iYWRnZS1kYW5nZXI6bm90KC5kaXNhYmxlZCk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyKTtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtZGFuZ2VyOm5vdCguZGlzYWJsZWQpOmhvdmVyIC5nbC1iYWRnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWhvdmVyKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtZGFuZ2VyOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG59XG5hLmdsLWJhZGdlLmJhZGdlLWRhbmdlcjpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlIC5nbC1iYWRnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWZvY3VzKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtZGFuZ2VyOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSwgYS5nbC1iYWRnZS5iYWRnZS1kYW5nZXI6bm90KC5kaXNhYmxlZCk6YWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG59XG5hLmdsLWJhZGdlLmJhZGdlLWRhbmdlcjpub3QoLmRpc2FibGVkKS5hY3RpdmUgLmdsLWJhZGdlLWljb24sIGEuZ2wtYmFkZ2UuYmFkZ2UtZGFuZ2VyOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1hY3RpdmUpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS1kYW5nZXI6bm90KC5kaXNhYmxlZCk6YWN0aXZlLCBhLmdsLWJhZGdlLmJhZGdlLWRhbmdlcjpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlLCBhLmdsLWJhZGdlLmJhZGdlLWRhbmdlcjpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cblxuLmdsLWJhZGdlLmJhZGdlLXRpZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtYmFkZ2UuYmFkZ2UtdGllciAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGluaGVyaXQ7XG59XG5cbmEuZ2wtYmFkZ2UuYmFkZ2UtdGllcjpub3QoLmRpc2FibGVkKTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItaG92ZXIpO1xuICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xufVxuYS5nbC1iYWRnZS5iYWRnZS10aWVyOm5vdCguZGlzYWJsZWQpOmhvdmVyIC5nbC1iYWRnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItaWNvbi1jb2xvci1ob3Zlcik7XG59XG5hLmdsLWJhZGdlLmJhZGdlLXRpZXI6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS10aWVyOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUgLmdsLWJhZGdlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWZvY3VzKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtdGllcjpub3QoLmRpc2FibGVkKS5hY3RpdmUsIGEuZ2wtYmFkZ2UuYmFkZ2UtdGllcjpub3QoLmRpc2FibGVkKTphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xufVxuYS5nbC1iYWRnZS5iYWRnZS10aWVyOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSAuZ2wtYmFkZ2UtaWNvbiwgYS5nbC1iYWRnZS5iYWRnZS10aWVyOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSAuZ2wtYmFkZ2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItYWN0aXZlKTtcbn1cbmEuZ2wtYmFkZ2UuYmFkZ2UtdGllcjpub3QoLmRpc2FibGVkKTphY3RpdmUsIGEuZ2wtYmFkZ2UuYmFkZ2UtdGllcjpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlLCBhLmdsLWJhZGdlLmJhZGdlLXRpZXI6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG5cbi5nbC1idXR0b24gLmdsLWJhZGdlIHtcbiAgdG9wOiAwO1xuICBAYXBwbHkgZ2wtcHktMDtcbiAgQGFwcGx5IGdsLXB4LTI7XG59XG5cbi5nbC1uZXctZHJvcGRvd24tY29udGVudHMgLmdsLWJhZGdlLFxuLmdsLXRhYi1uYXYtaXRlbSAuZ2wtYmFkZ2Uge1xuICBAYXBwbHkgLWdsLW15LTE7XG59XG5cbi5nbC1icmVhZGNydW1icyB7XG4gIEBhcHBseSBnbC1mbGV4O1xufVxuXG4uZ2wtYnJlYWRjcnVtYi1saXN0IHtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtaXRlbXMtc3RhcnQ7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLW0tMDtcbiAgQGFwcGx5IGdsLWZsZXgtbm93cmFwO1xuICBAYXBwbHkgZ2wtbWF4LXctZnVsbDtcbn1cblxuLmdsLWJyZWFkY3J1bWItaXRlbSB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG59XG4uZ2wtYnJlYWRjcnVtYi1pdGVtOm5vdCg6bGFzdC1jaGlsZCwgOmhhcygrIC5nbC1icmVhZGNydW1iLWNsaXBib2FyZC1idXR0b24pKTo6YWZ0ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYnJlYWRjcnVtYi1zZXBhcmF0b3ItY29sb3IpO1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgY29udGVudDogXCIvXCI7XG59XG4uZ2wtYnJlYWRjcnVtYi1pdGVtID4gYSB7XG4gIEBhcHBseSBnbC1pbmxpbmUtYmxvY2s7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTEpO1xufVxuLmdsLWJyZWFkY3J1bWItaXRlbSA+IGE6aG92ZXIge1xuICBAYXBwbHkgZ2wtdW5kZXJsaW5lO1xufVxuLmdsLWJyZWFkY3J1bWItaXRlbSA+IGE6YWN0aXZlLCAuZ2wtYnJlYWRjcnVtYi1pdGVtID4gYTpmb2N1cy12aXNpYmxlLCAuZ2wtYnJlYWRjcnVtYi1pdGVtID4gYTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbi5nbC1icmVhZGNydW1iLWl0ZW0gLmdsLW5ldy1kcm9wZG93bi1pY29uLW9ubHkuZ2wtYnV0dG9uLmJ0bi1pY29uIHtcbiAgbWluLWhlaWdodDogYXV0bztcbn1cblxuLmdsLWJyZWFkY3J1bWItaXRlbTpsYXN0LWNoaWxkID4gYSxcbi5nbC1icmVhZGNydW1iLWl0ZW06aGFzKCsgLmdsLWJyZWFkY3J1bWItY2xpcGJvYXJkLWJ1dHRvbikgPiBhIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbn1cblxuLmdsLWJyZWFkY3J1bWItaXRlbS1zbSB7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBAYXBwbHkgZ2wtaC02O1xufVxuXG4uZ2wtYnJlYWRjcnVtYi1pdGVtLW1kIHtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWgtNztcbn1cblxuLmdsLWJyZWFkY3J1bWItaXRlbSB7XG4gIC8qKlxuICAgKiBJZiB0aGUgbGFzdC9vbmx5IGl0ZW0sIHdoaWNoIGlzIGFsd2F5cyB2aXNpYmxlLCBoYXMgYSB2ZXJ5IGxvbmcgdGl0bGUsXG4gICAqIGl0IGNvdWxkIG92ZXJmbG93IHRoZSBicmVhZGNydW1iIGNvbXBvbmVudC4gVGhpcyBDU1MgbWFrZXMgc3VyZSBpdFxuICAgKiBzaG93cyBhbiBlbGxpcHNpcyBpbnN0ZWFkLlxuICAgKiBCdXQgdGhpcyBDU1MgY2Fubm90IGJlIGFjdGl2ZSB3aGlsZSB3ZSBkbyB0aGUgc2l6ZSBjYWxjdWxhdGlvbiwgYXMgdGhhdFxuICAgKiB3b3VsZCB0aGVuIG5vdCB0YWtlIHRoZSByZWFsIHVuc2hydW5rIHdpZHRoIG9mIHRoYXQgaXRlbSBpbnRvIGFjY291bnQuXG4gICAqL1xufVxuLmdsLWJyZWFkY3J1bWItaXRlbS5nbC1icmVhZGNydW1iLW9ubHktaXRlbSB7XG4gIEBhcHBseSBnbC1zaHJpbms7XG4gIG1heC13aWR0aDogdmFyKC0tZ2wtYnJlYWRjcnVtYi10cnVuY2F0ZWQtaXRlbS1tYXgtd2lkdGgsIDEwMCUpO1xufVxuLmdsLWJyZWFkY3J1bWItaXRlbS5nbC1icmVhZGNydW1iLW9ubHktaXRlbSBhIHtcbiAgQGFwcGx5IGdsLW1heC13LWZ1bGwgZ2wtb3ZlcmZsb3ctaGlkZGVuIGdsLXRleHQtZWxsaXBzaXMgZ2wtdGV4dC1ub3dyYXA7XG59XG5cbi5nbC1icmVhZGNydW1iLWNsaXBib2FyZC1idXR0b24ge1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1zaHJpbmstMDtcbn1cblxuLmdsLWJhbm5lciB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWZlZWRiYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYW5uZXItcHJvbW8tYmFja2dyb3VuZC1jb2xvcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYmFubmVyLXByb21vLWJvcmRlci1jb2xvcik7XG59XG5cbi5nbC1iYW5uZXItaWxsdXN0cmF0aW9uIHtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuICBAYXBwbHkgZ2wtbXItNjtcbn1cbi5nbC1iYW5uZXItaWxsdXN0cmF0aW9uIGltZyB7XG4gIG1heC13aWR0aDogNy41cmVtO1xufVxuQGNvbnRhaW5lciAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtYmFubmVyLWlsbHVzdHJhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1iYW5uZXItaWxsdXN0cmF0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5nbC1iYW5uZXItdGl0bGUge1xuICBAYXBwbHkgZ2wtaGVhZGluZy1zY2FsZS01MDA7XG4gIEBhcHBseSBnbC1tYi0zO1xufVxuXG4uZ2wtYmFubmVyLWNsb3NlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuNXJlbTtcbiAgcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmdsLWJhbm5lci1pbnRyb2R1Y3Rpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1pbmZvLWJhY2tncm91bmQtY29sb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJhbm5lci1pbnRyby1ib3JkZXItY29sb3IpO1xufVxuXG4vKlxuICogLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1wYWRkaW5nLXhcbiAqXG4gKiBXYXkgdG8gaG9vayBpbnRvIHNwYWNpbmcgb2YgZ2wtYWxlcnQuXG4gKiBUaGlzIGlzIHVzZWQgZS5nLiBmb3IgcGFnZSB3aWRlIGNvbnRhaW5lcnNcbiAqIGluIEdpdExhYi5cbiAqL1xuLmdsLWJyb2FkY2FzdC1tZXNzYWdlIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWJldHdlZW47XG4gIEBhcHBseSBnbC1pdGVtcy1zdGFydDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG4gIHBhZGRpbmctbGVmdDogY2FsYygxcmVtICsgdmFyKC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtcGFkZGluZy14LCAwcHgpKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygwLjc1cmVtICsgdmFyKC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtcGFkZGluZy14LCAwcHgpKTtcbiAgQGFwcGx5IGdsLXB5LTU7XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2UuaW5kaWdvIHtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1iZy1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWluZGlnbyk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1pbmRpZ28pO1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1pbmRpZ28pO1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24tY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1pbmRpZ28pO1xufVxuLmdsLWJyb2FkY2FzdC1tZXNzYWdlLmxpZ2h0LWluZGlnbyB7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYmctY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodGluZGlnbyk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodGluZGlnbyk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtdGV4dC1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0aW5kaWdvKTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHRpbmRpZ28pO1xufVxuLmdsLWJyb2FkY2FzdC1tZXNzYWdlLmJsdWUge1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJnLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItYmx1ZSk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1ibHVlKTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS10ZXh0LWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItYmx1ZSk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWJsdWUpO1xufVxuLmdsLWJyb2FkY2FzdC1tZXNzYWdlLmxpZ2h0LWJsdWUge1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJnLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRibHVlKTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0Ymx1ZSk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtdGV4dC1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0Ymx1ZSk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0Ymx1ZSk7XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2UuZ3JlZW4ge1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJnLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItZ3JlZW4pO1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZ3JlZW4pO1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1ncmVlbik7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWdyZWVuKTtcbn1cbi5nbC1icm9hZGNhc3QtbWVzc2FnZS5saWdodC1ncmVlbiB7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYmctY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodGdyZWVuKTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0Z3JlZW4pO1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodGdyZWVuKTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHRncmVlbik7XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2UucmVkIHtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1iZy1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLXJlZCk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1yZWQpO1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1yZWQpO1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24tY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1yZWQpO1xufVxuLmdsLWJyb2FkY2FzdC1tZXNzYWdlLmxpZ2h0LXJlZCB7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYmctY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodHJlZCk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodHJlZCk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtdGV4dC1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0cmVkKTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHRyZWQpO1xufVxuLmdsLWJyb2FkY2FzdC1tZXNzYWdlLmRhcmsge1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJnLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItZGFyayk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1kYXJrKTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS10ZXh0LWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItZGFyayk7XG4gIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWRhcmspO1xufVxuLmdsLWJyb2FkY2FzdC1tZXNzYWdlLmxpZ2h0IHtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1iZy1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0KTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0KTtcbiAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS10ZXh0LWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHQpO1xuICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24tY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodCk7XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2UuYmFubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYmctY29sb3IpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCAwIHZhcigtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcik7XG4gIGNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtbWVzc2FnZS10ZXh0LWNvbG9yKTtcbn1cbi5nbC1icm9hZGNhc3QtbWVzc2FnZS5iYW5uZXIgLmdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbi1jb2xvcik7XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2Uubm90aWZpY2F0aW9uIHtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLXNoYWRvdy1tZDtcbiAgQGFwcGx5IGdsLWJnLW92ZXJsYXA7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIG1heC13aWR0aDogMTguNzVyZW07XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtY29udGVudCB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtY29udGVudCBhIHtcbiAgQGFwcGx5IGdsLXRleHQtaW5oZXJpdDtcbiAgQGFwcGx5IGdsLXVuZGVybGluZTtcbn1cbi5nbC1icm9hZGNhc3QtbWVzc2FnZS1jb250ZW50IHA6bGFzdC1vZi10eXBlIHtcbiAgQGFwcGx5IGdsLW1iLTA7XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbiB7XG4gIEBhcHBseSBnbC1tci01O1xuICBsaW5lLWhlaWdodDogMXJlbTtcbn1cbi5nbC1icm9hZGNhc3QtbWVzc2FnZS1pY29uID4gc3ZnIHtcbiAgQGFwcGx5IGdsLWFsaWduLWJvdHRvbTtcbn1cbi5nbC1icm9hZGNhc3QtbWVzc2FnZS10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuMTI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC4xMjVyZW07XG4gIEBhcHBseSBnbC1oeXBoZW5zLWF1dG8gZ2wtYnJlYWstYW55d2hlcmU7XG59XG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtZGlzbWlzcyB7XG4gIEBhcHBseSAtZ2wtbXktMjtcbiAgQGFwcGx5IGdsLW1sLTU7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG59XG5cbi8qIVxuICogUGlrYWRheVxuICogQ29weXJpZ2h0IMKpIDIwMTQgRGF2aWQgQnVzaGVsbCB8IEJTRCAmIE1JVCBsaWNlbnNlIHwgaHR0cHM6Ly9kYnVzaGVsbC5jb20vXG4gKi9cbi5waWthLXNpbmdsZSB7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1kYXRlcGlja2VyLWJhY2tncm91bmQtY29sb3IpO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cbi5waWthLXNpbmdsZS5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnBpa2Etc2luZ2xlLmlzLWJvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3gtc2hhZG93OiAwIDVweCAxNXB4IC01cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuXG4ucGlrYS1zaW5nbGUge1xuICAqem9vbTogMTtcbn1cbi5waWthLXNpbmdsZTpiZWZvcmUsIC5waWthLXNpbmdsZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cbi5waWthLXNpbmdsZTphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4ucGlrYS1sZW5kYXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI0MHB4O1xuICBtYXJnaW46IDhweDtcbn1cblxuLnBpa2EtdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5waWthLXRpdGxlIHNlbGVjdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiA5OTk4O1xuICBtYXJnaW46IDA7XG4gIGxlZnQ6IDA7XG4gIHRvcDogNXB4O1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5waWthLWxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAqZGlzcGxheTogaW5saW5lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogNXB4IDNweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xufVxuXG4ucGlrYS1wcmV2LFxuLnBpa2EtbmV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICB0ZXh0LWluZGVudDogMjBweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNzUlIDc1JTtcbiAgb3BhY2l0eTogMC41O1xuICAqcG9zaXRpb246IGFic29sdXRlO1xuICAqdG9wOiAwO1xufVxuLnBpa2EtcHJldjpob3Zlcixcbi5waWthLW5leHQ6aG92ZXIge1xuICBvcGFjaXR5OiAxO1xufVxuLnBpa2EtcHJldi5pcy1kaXNhYmxlZCxcbi5waWthLW5leHQuaXMtZGlzYWJsZWQge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG9wYWNpdHk6IDAuMjtcbn1cblxuLnBpa2EtcHJldixcbi5pcy1ydGwgLnBpa2EtbmV4dCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVWtsRVFWUjQydTNWTVFvQUlCQURRZjhQZ2orT0Q5aEcyQ3RPTkpCMnltUWtLZTBIYndBUDB4dWNEaVFXQVJJVElERUJFbk1nTVE4UzgrQXFCSWw2a0tnSGlYcVFxQWVKZXBCby96MzhKL1UwdUFIbGFCa0JsOUk0R3dBQUFBQkpSVTVFcmtKZ2dnPT1cIik7XG4gICpsZWZ0OiAwO1xufVxuXG4ucGlrYS1uZXh0LFxuLmlzLXJ0bCAucGlrYS1wcmV2IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVTBsRVFWUjQydTNWT3dvQU1BZ0UwZHdmQW5OalUyNmJZa0JDRkd3ZmlMOVZWV29PK0JKNEdmM2d0c0VLS29GQk5UQ29DQVlWd2FBaUdOUUdNVUhNa2pHYmdqazJtSU9OdVhvMG5DOFhuQ2YxSlhnQXJWSVpBUWg1VEtZQUFBQUFTVVZPUks1Q1lJST1cIik7XG4gICpyaWdodDogMDtcbn1cblxuLnBpa2Etc2VsZWN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAqZGlzcGxheTogaW5saW5lO1xufVxuXG4ucGlrYS10YWJsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuLnBpa2EtdGFibGUgdGgsXG4ucGlrYS10YWJsZSB0ZCB7XG4gIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbiAgcGFkZGluZzogMDtcbn1cbi5waWthLXRhYmxlIHRoIHtcbiAgY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMjVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5waWthLXRhYmxlIGFiYnIge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbi5waWthLWJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiA1cHg7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4uaXMtdG9kYXkgLnBpa2EtYnV0dG9uIHtcbiAgY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGVmYXVsdCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmlzLXNlbGVjdGVkIC5waWthLWJ1dHRvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1kYXRlcGlja2VyLWRhdGUtdGV4dC1jb2xvci1zZWxlY3RlZCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDNweCB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cbi5pcy1kaXNhYmxlZCAucGlrYS1idXR0b24sIC5pcy1vdXRzaWRlLWN1cnJlbnQtbW9udGggLnBpa2EtYnV0dG9uIHtcbiAgY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpO1xuICBvcGFjaXR5OiAwLjM7XG59XG4uaXMtZGlzYWJsZWQgLnBpa2EtYnV0dG9uIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5waWthLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuLnBpa2EtYnV0dG9uIC5pcy1zZWxlY3Rpb24tZGlzYWJsZWQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4ucGlrYS13ZWVrIHtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGUpO1xufVxuXG4uaXMtaW5yYW5nZSAucGlrYS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjRDVFOUY3O1xufVxuXG4uaXMtc3RhcnRyYW5nZSAucGlrYS1idXR0b24ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzZDQjMxRDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuXG4uaXMtZW5kcmFuZ2UgLnBpa2EtYnV0dG9uIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMzM2FhZmY7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cblxuLmdsLWRhdGVwaWNrZXItYWN0aW9ucyB7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLW5vbmU7XG4gIEBhcHBseSBnbC1weC0yO1xufVxuLmdsLWRhdGVwaWNrZXItYWN0aW9ucyAuZ2wtYnV0dG9uLmdsLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLW1kO1xufVxuXG4uZ2wtZGF0ZXBpY2tlci10aGVtZSB7XG4gIEBhcHBseSBnbC1mb250LXJlZ3VsYXI7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgQGFwcGx5IGdsLW10LTM7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kYXRlcGlja2VyLWJhY2tncm91bmQtY29sb3IpO1xufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUuaXMtYm91bmQge1xuICBAYXBwbHkgZ2wtc2hhZG93LW1kO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWRhdGVwaWNrZXItdGhlbWUuaXMtYm91bmQge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICB9XG59XG4uZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1sZW5kYXIge1xuICBAYXBwbHkgZ2wtbS0wO1xuICBAYXBwbHkgZ2wtcHQtNTtcbiAgQGFwcGx5IGdsLXB4LTM7XG4gIEBhcHBseSBnbC1wYi0zO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtdGl0bGUge1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1tYi01O1xuICBAYXBwbHkgZ2wtaC01O1xufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtbmV4dCxcbi5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLXByZXYge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1zbWFsbDtcbiAgQGFwcGx5IGdsLXctNTtcbiAgQGFwcGx5IGdsLWgtNTtcbn1cbi5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLW5leHQuaXMtZGlzYWJsZWQsXG4uZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1wcmV2LmlzLWRpc2FibGVkIHtcbiAgQGFwcGx5IGdsLWN1cnNvci1ub3QtYWxsb3dlZDtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogbm9uZSkge1xuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1uZXh0LFxuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1wcmV2IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBvcGFjaXR5OiAxMDAlO1xuICB9XG4gIC5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLW5leHQ6OmJlZm9yZSxcbiAgLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtcHJldjo6YmVmb3JlIHtcbiAgICAvKiBBcHBseSBhIHNsaWdodGx5IGxhcmdlciBib3JkZXItcmFkaXVzIHRvIHRoZSA6OmJlZm9yZSBwc2V1ZG8tZWxlbWVudFxuICAgIHRvIHByZXZlbnQgYmFja2dyb3VuZCBjb2xvciBzaGltbWVyIGlzc3VlIGluIFNhZmFyaS5cbiAgICBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIHRoZSBwYXJlbnQgZWxlbWVudCAod2hpY2ggYWxyZWFkeSBoYXMgYSBib3JkZXItcmFkaXVzKVxuICAgIHJlcXVpcmVzIHRoZSA6OmJlZm9yZSBlbGVtZW50IHRvIGV4dGVuZCBiZXlvbmQgaXRzIGVkZ2VzIHRvIGVuc3VyZSBwcm9wZXIgY292ZXJhZ2UuICovXG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtbGc7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIH1cbiAgLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtbmV4dDpub3QoLmlzLWRpc2FibGVkKTpob3ZlcixcbiAgLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtcHJldjpub3QoLmlzLWRpc2FibGVkKTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gIH1cbiAgLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtbmV4dDpub3QoLmlzLWRpc2FibGVkKTpob3Zlcjo6YmVmb3JlLFxuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1wcmV2Om5vdCguaXMtZGlzYWJsZWQpOmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICB9XG4gIC5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLW5leHQ6bm90KC5pcy1kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSxcbiAgLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtcHJldjpub3QoLmlzLWRpc2FibGVkKTpmb2N1cy12aXNpYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgfVxuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1uZXh0Om5vdCguaXMtZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6OmJlZm9yZSxcbiAgLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtcHJldjpub3QoLmlzLWRpc2FibGVkKTpmb2N1cy12aXNpYmxlOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICB9XG4gIC5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLW5leHQ6bm90KC5pcy1kaXNhYmxlZCk6YWN0aXZlLFxuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1wcmV2Om5vdCguaXMtZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICB9XG4gIC5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLW5leHQ6bm90KC5pcy1kaXNhYmxlZCk6YWN0aXZlOjpiZWZvcmUsXG4gIC5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLXByZXY6bm90KC5pcy1kaXNhYmxlZCk6YWN0aXZlOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgfVxuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1uZXh0LmlzLWRpc2FibGVkOjpiZWZvcmUsXG4gIC5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLXByZXYuaXMtZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3IpO1xuICB9XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1uZXh0LFxuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1wcmV2IHtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgfVxufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtbmV4dDo6YmVmb3JlIHtcbiAgbWFzay1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMTAuNzA3IDcuMjkzYTEgMSAwIDAgMSAwIDEuNDE0bC0zIDNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDguNTg2IDggNi4yOTMgNS43MDdhMSAxIDAgMCAxIDEuNDE0LTEuNDE0bDMgM3pcIi8+PC9zdmc+Jyk7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1uZXh0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgdmlld0JveD1cIjAgMCAxNiAxNlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk0xMC43MDcgNy4yOTNhMSAxIDAgMCAxIDAgMS40MTRsLTMgM2ExIDEgMCAwIDEtMS40MTQtMS40MTRMOC41ODYgOCA2LjI5MyA1LjcwN2ExIDEgMCAwIDEgMS40MTQtMS40MTRsMyAzelwiLz48L3N2Zz4nKTtcbiAgfVxufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtcHJldjo6YmVmb3JlIHtcbiAgbWFzay1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNS4yOTMgNy4yOTNhMSAxIDAgMCAwIDAgMS40MTRsMyAzYTEgMSAwIDAgMCAxLjQxNC0xLjQxNEw3LjQxNCA4bDIuMjkzLTIuMjkzYTEgMSAwIDAgMC0xLjQxNC0xLjQxNGwtMyAzelwiLz48L3N2Zz4nKTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLXByZXYge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTUuMjkzIDcuMjkzYTEgMSAwIDAgMCAwIDEuNDE0bDMgM2ExIDEgMCAwIDAgMS40MTQtMS40MTRMNy40MTQgOGwyLjI5My0yLjI5M2ExIDEgMCAwIDAtMS40MTQtMS40MTRsLTMgM3pcIi8+PC9zdmc+Jyk7XG4gIH1cbn1cbi5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLWxhYmVsIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtc21hbGw7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1weS0wO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLWxhYmVsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZGF0ZXBpY2tlci10aGVtZSAucGlrYS1sYWJlbCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gIH1cbn1cbi5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLXNlbGVjdCB7XG4gIHRvcDogMDtcbiAgQGFwcGx5IGdsLWgtNTtcbn1cbi5nbC1kYXRlcGlja2VyLXRoZW1lIHRoIHtcbiAgQGFwcGx5IGdsLXBiLTM7XG4gIEBhcHBseSBnbC1mb250LWJvbGQ7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbn1cbi5nbC1kYXRlcGlja2VyLXRoZW1lIGFiYnJbdGl0bGVdIHtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgQGFwcGx5IGdsLWN1cnNvci1kZWZhdWx0O1xufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXMpO1xuICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG4gIEBhcHBseSBnbC1weS0yO1xuICBAYXBwbHkgZ2wtdGV4dC1jZW50ZXI7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXctNztcbiAgQGFwcGx5IGdsLWgtNztcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNvbGlkO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXRyYW5zcGFyZW50O1xufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUgLnBpa2EtYnV0dG9uOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWhvdmVyKTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1kYXRlcGlja2VyLXRoZW1lIC5waWthLWJ1dHRvbiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gIH1cbn1cbi5nbC1kYXRlcGlja2VyLXRoZW1lIC5pcy10b2RheSA+IC5waWthLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1mb250LWJvbGQ7XG4gIEBhcHBseSBnbC1ib3JkZXItc3Ryb25nO1xufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUgLmlzLXNlbGVjdGVkID4gLnBpa2EtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xufVxuLmdsLWRhdGVwaWNrZXItdGhlbWUgLmlzLXNlbGVjdGVkID4gLnBpa2EtYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWdsLWRhdGVwaWNrZXItZGF0ZS10ZXh0LWNvbG9yLXNlbGVjdGVkKTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5nbC1kYXRlcGlja2VyLXRoZW1lIC5pcy1zZWxlY3RlZC5pcy10b2RheSA+IC5waWthLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1mb250LWJvbGQ7XG4gIEBhcHBseSBnbC1ib3JkZXItdHJhbnNwYXJlbnQ7XG59XG4uZ2wtZGF0ZXBpY2tlci10aGVtZSAuaXMtZGlzYWJsZWQge1xuICBAYXBwbHkgZ2wtY3Vyc29yLW5vdC1hbGxvd2VkO1xufVxuXG4uZ2wtZGF0ZXJhbmdlLXBpY2tlciB7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWZvbnQtcmVndWxhcjtcbn1cbi5nbC1kYXRlcmFuZ2UtcGlja2VyIGxhYmVsIHtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xufVxuLmdsLWRhdGVyYW5nZS1waWNrZXIgLmdsLWRhdGVyYW5nZS1waWNrZXItaW5kaWNhdG9yIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LXJvdztcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLXNlbGYtZW5kO1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG4gIEBhcHBseSBnbC1oLTc7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cblxuLmdsLWRyYXdlciB7XG4gIEBhcHBseSBnbC1iZy1vdmVybGFwO1xuICByaWdodDogMDtcbiAgQGFwcGx5IGdsLXRyYW5zaXRpb24tYWxsO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIEBhcHBseSBnbC1oLWZ1bGw7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy15LWF1dG87XG4gIEBhcHBseSBnbC1zaGFkb3ctbGc7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tZ2wtZHJhd2VyLWJvcmRlci1yYWRpdXMpO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1nbC1kcmF3ZXItYm9yZGVyLXJhZGl1cyk7XG59XG4uZ2wtZHJhd2VyIC5nbC1kcmF3ZXItaGVhZGVyLXN0aWNreSB7XG4gIEBhcHBseSBnbC1iZy1vdmVybGFwO1xuICB0b3A6IDA7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1kcmF3ZXItZGVmYXVsdCB7XG4gICAgd2lkdGg6IDQwMHB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1kcmF3ZXItZGVmYXVsdCB7XG4gICAgd2lkdGg6IDQwMHB4O1xuICB9XG59XG4uZ2wtZHJhd2VyLWRlZmF1bHQgLmdsLWRyYXdlci1oZWFkZXIsXG4uZ2wtZHJhd2VyLWRlZmF1bHQgLmdsLWRyYXdlci1ib2R5ID4gKiB7XG4gIEBhcHBseSBnbC1wLTU7XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1kcmF3ZXItc2lkZWJhciB7XG4gICAgd2lkdGg6IDI5MHB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1kcmF3ZXItc2lkZWJhciB7XG4gICAgd2lkdGg6IDI5MHB4O1xuICB9XG59XG4uZ2wtZHJhd2VyLXNpZGViYXIgLmdsLWRyYXdlci1oZWFkZXIsXG4uZ2wtZHJhd2VyLXNpZGViYXIgLmdsLWRyYXdlci1ib2R5ID4gKiB7XG4gIEBhcHBseSBnbC1weS01O1xufVxuLmdsLWRyYXdlci1zaWRlYmFyIC5nbC1kcmF3ZXItYm9keSA+ICoge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIEBhcHBseSBnbC1teC01O1xufVxuLmdsLWRyYXdlci1zaWRlYmFyIC5nbC1kcmF3ZXItYm9keSA+ICo6bGFzdC1jaGlsZCB7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbn1cbi5nbC1kcmF3ZXItc2lkZWJhciAuZ2wtZHJhd2VyLWhlYWRlciB7XG4gIEBhcHBseSBnbC1weC01O1xufVxuXG4uZ2wtZHJhd2VyLWZvb3RlciB7XG4gIEBhcHBseSBnbC1iZy1vdmVybGFwO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gIEBhcHBseSBnbC1wLTU7XG59XG5cbi5nbC1kcmF3ZXItYm9keS1zY3JpbS1vbi1mb290ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHZhcigtLWdsLWNvbG9yLWFscGhhLTApLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApKTtcbiAgdG9wOiAtMXB4O1xuICBAYXBwbHkgLWdsLXRyYW5zbGF0ZS15LWZ1bGw7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLW5vbmU7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1oLTc7XG59XG5cbi5nbC1kcmF3ZXItZm9vdGVyLXN0aWNreSB7XG4gIGJvdHRvbTogMDtcbiAgcG9zaXRpb246IHN0aWNreTtcbn1cblxuLmdsLWRyYXdlci1oZWFkZXIge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG59XG5cbi5nbC1kcmF3ZXItdGl0bGUge1xuICBAYXBwbHkgZ2wtdGV4dC1oZWFkaW5nO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWp1c3RpZnktYmV0d2Vlbjtcbn1cbi5nbC1kcmF3ZXItdGl0bGUgc3ZnIHtcbiAgQGFwcGx5IGdsLXctNTtcbiAgQGFwcGx5IGdsLWgtNTtcbiAgQGFwcGx5IGdsLWFsaWduLW1pZGRsZTtcbn1cblxuLmdsLWRyYXdlci1jbG9zZS1idXR0b24ge1xuICBAYXBwbHkgZ2wtc2VsZi1zdGFydDtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG59XG5cbi5nbC1kcmF3ZXItYm9keSB7XG4gIEBhcHBseSBnbC1ncm93O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uZ2wtZHJhd2VyLWJvZHktc2hyaW5rIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmdsLWRyYXdlci1ib2R5LXNjcmltOjphZnRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHZhcigtLWdsLWNvbG9yLWFscGhhLTApLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApKTtcbiAgY29udGVudDogXCJcIjtcbiAgYm90dG9tOiAwO1xuICBAYXBwbHkgZ2wtcG9pbnRlci1ldmVudHMtbm9uZTtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBAYXBwbHkgZ2wtaC03O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiB2YXIoLS1nbC1kcmF3ZXItYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5nbC1kcmF3ZXItZW50ZXItdG8ge1xuICBAYXBwbHkgZ2wtdHJhbnNsYXRlLXgtMDtcbn1cblxuLmdsLWRyYXdlci1lbnRlcixcbi5nbC1kcmF3ZXItbGVhdmUtdG8ge1xuICBAYXBwbHkgZ2wtdHJhbnNsYXRlLXgtZnVsbDtcbn1cblxuLmdsLWRyYXdlci1lbnRlci1hY3RpdmUsXG4uZ2wtZHJhd2VyLWxlYXZlLWFjdGl2ZSB7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLWFsbDtcbn1cblxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IHtcbiAgQGFwcGx5IGdsLWJvcmRlci0xIGdsLWJvcmRlci1kcm9wZG93bjtcbiAgQGFwcGx5IGdsLWJnLWRyb3Bkb3duO1xuICBAYXBwbHkgZ2wtbXQtMjtcbiAgQGFwcGx5IGdsLW1iLTI7XG4gIEBhcHBseSBnbC1wLTA7XG4gIEBhcHBseSBnbC1zaGFkb3cteDAteTItYjQtczA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWRyb3Bkb3duLWJvcmRlci1yYWRpdXMpO1xuICB3aWR0aDogMTVyZW07XG59XG4uZ2wtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmdsLXNlYXJjaC1ib3gtYnktdHlwZSB7XG4gIEBhcHBseSBnbC1tLTM7XG59XG4uZ2wtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgbGkge1xuICBAYXBwbHkgZ2wtcC0wO1xufVxuLmdsLWRyb3Bkb3duIC5nbC1kcm9wZG93bi1pbm5lciB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIG1heC1oZWlnaHQ6IDE5LjVyZW07XG59XG4uZ2wtZHJvcGRvd24gLmdsLWRyb3Bkb3duLWlubmVyID4gOmZpcnN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLXB0LTM7XG59XG4uZ2wtZHJvcGRvd24gLmdsLWRyb3Bkb3duLWlubmVyID4gOmxhc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtcGItMztcbn1cbi5nbC1kcm9wZG93biAuZ2wtZHJvcGRvd24tY29udGVudHMge1xuICBAYXBwbHkgZ2wtZ3JvdztcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbi5nbC1kcm9wZG93biAuZ2wtZHJvcGRvd24taGVhZGVyLXRvcCB7XG4gIEBhcHBseSBnbC1ib3JkZXItMSBnbC1ib3JkZXItZHJvcGRvd24tZGl2aWRlciBnbC1ib3JkZXItYi1zb2xpZDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgQGFwcGx5IGdsLWp1c3RpZnktY2VudGVyO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1tLTA7XG4gIEBhcHBseSBnbC1tYi0zO1xuICBAYXBwbHkgZ2wtcGItMztcbiAgQGFwcGx5IGdsLXB4LTU7XG59XG4uZ2wtZHJvcGRvd24gLmdsLWRyb3Bkb3duLWhlYWRlciB7XG4gIEBhcHBseSBnbC1ib3JkZXItYi0xIGdsLWJvcmRlci1iLWRyb3Bkb3duLWRpdmlkZXIgZ2wtYm9yZGVyLWItc29saWQ7XG59XG4uZ2wtZHJvcGRvd24gLmdsLWRyb3Bkb3duLWZvb3RlciB7XG4gIEBhcHBseSBnbC1ib3JkZXItdC0xIGdsLWJvcmRlci10LWRyb3Bkb3duLWRpdmlkZXIgZ2wtYm9yZGVyLXQtc29saWQ7XG4gIEBhcHBseSBnbC1weS0zO1xufVxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGU6OmFmdGVyIHtcbiAgQGFwcGx5IGdsLWhpZGRlbjtcbn1cbi5nbC1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlLmdsLWJ1dHRvbiwgLmdsLWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUuZ2wtYnV0dG9uLmJ0bi1ibG9jayB7XG4gIEBhcHBseSBnbC1wci0zO1xufVxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUuZ2wtYnV0dG9uLmJ0bi1zbSwgLmdsLWRyb3Bkb3duIC5idG4tZ3JvdXAtc20gPiAuZHJvcGRvd24tdG9nZ2xlLmdsLWJ1dHRvbi5idG4sIC5nbC1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlLmdsLWJ1dHRvbi5idG4tYmxvY2suYnRuLXNtIHtcbiAgQGFwcGx5IGdsLXByLTI7XG59XG4uZ2wtZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZS5kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQsIC5nbC1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlLmRyb3Bkb3duLXRvZ2dsZS1uby1jYXJldC5idG4tc20ge1xuICBAYXBwbHkgZ2wtcC0zO1xufVxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUuZHJvcGRvd24tdG9nZ2xlLW5vLWNhcmV0IC5kcm9wZG93bi1jaGV2cm9uLCAuZ2wtZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZS5kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQuYnRuLXNtIC5kcm9wZG93bi1jaGV2cm9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5nbC1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0OjphZnRlciB7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgY29udGVudDogXCJcIjtcbiAgQGFwcGx5IGdsLWJsb2NrO1xuICBAYXBwbHkgZ2wtdy01O1xuICBAYXBwbHkgZ2wtaC01O1xuICBAYXBwbHkgZ2wtYmctY3VycmVudDtcbiAgbWFzay1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNNy4yOTMgMTAuNzA3YTEgMSAwIDAgMCAxLjQxNCAwbDMtM2ExIDEgMCAwIDAtMS40MTQtMS40MTRMOCA4LjU4NiA1LjcwNyA2LjI5M2ExIDEgMCAwIDAtMS40MTQgMS40MTRsMyAzelwiLz48L3N2Zz4nKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICBtYXNrLXNpemU6IGNvdmVyO1xufVxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUtc3BsaXQuZ2wtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXB4LTA7XG59XG4uZ2wtZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdC5nbC1idXR0b24uYnRuLXNtLCAuZ2wtZHJvcGRvd24gLmJ0bi1ncm91cC1zbSA+IC5kcm9wZG93bi10b2dnbGUtc3BsaXQuZ2wtYnV0dG9uLmJ0biB7XG4gIEBhcHBseSBnbC1weC0wO1xufVxuLmdsLWRyb3Bkb3duIC5nbC1kcm9wZG93bi10b2dnbGUuYnRuLWJsb2NrIHtcbiAgQGFwcGx5IGdsLWp1c3RpZnktYmV0d2Vlbjtcbn1cbi5nbC1kcm9wZG93biAuZ2wtZHJvcGRvd24tdG9nZ2xlIC5nbC1idXR0b24tdGV4dCB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbn1cbi5nbC1kcm9wZG93biAuZ2wtZHJvcGRvd24tYnV0dG9uLXRleHQge1xuICBAYXBwbHkgZ2wtbXItYXV0bztcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWhpZGRlbjtcbiAgQGFwcGx5IGdsLXRleHQtZWxsaXBzaXM7XG59XG4uZ2wtZHJvcGRvd24uZHJvcGRvd24uc2hvdyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdGwtbm9uZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmwtbm9uZTtcbn1cbi5nbC1kcm9wZG93bi5kcm9wZG93bi5idG4tc20gLmdsLWljb24sIC5idG4tZ3JvdXAtc20gPiAuZ2wtZHJvcGRvd24uZHJvcGRvd24uYnRuIC5nbC1pY29uIHtcbiAgQGFwcGx5IGdsLW10LTA7XG4gIEBhcHBseSBnbC1tYi0wO1xufVxuLmdsLWRyb3Bkb3duLmRyb3Bkb3duLmJ0bi1zbSAuZ2wtaWNvbi5kcm9wZG93bi1jaGV2cm9uLCAuYnRuLWdyb3VwLXNtID4gLmdsLWRyb3Bkb3duLmRyb3Bkb3duLmJ0biAuZ2wtaWNvbi5kcm9wZG93bi1jaGV2cm9uIHtcbiAgQGFwcGx5IGdsLWgtNTtcbiAgQGFwcGx5IGdsLXctNTtcbn1cbi5nbC1kcm9wZG93bi5kcm9wZG93biAuZ2wtYnV0dG9uIC5kcm9wZG93bi1jaGV2cm9uLFxuLmdsLWRyb3Bkb3duLmRyb3Bkb3duIC5nbC1idXR0b24uYnRuLWJsb2NrIC5kcm9wZG93bi1jaGV2cm9uLFxuLmdsLWRyb3Bkb3duLmRyb3Bkb3duIC5kcm9wZG93bi1jaGV2cm9uIHtcbiAgQGFwcGx5IGdsLW1sLTI7XG4gIEBhcHBseSBnbC1tci0wO1xufVxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi1pY29uIHtcbiAgQGFwcGx5IGdsLW1yLTI7XG59XG4uZ2wtZHJvcGRvd24gLmRyb3Bkb3duLWljb24tdGV4dCxcbi5nbC1kcm9wZG93biAuZHJvcGRvd24taWNvbi1vbmx5IHtcbiAgQGFwcGx5IGdsLXBsLTM7XG59XG4uZ2wtZHJvcGRvd24gLmRyb3Bkb3duLWljb24tb25seS5kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQge1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG4uZ2wtZHJvcGRvd24gLmRyb3Bkb3duLWljb24tb25seSAuZHJvcGRvd24taWNvbixcbi5nbC1kcm9wZG93biAuZHJvcGRvd24taWNvbi1vbmx5IC5nbC1idXR0b24taWNvbi5nbC1idXR0b24taWNvbiB7XG4gIEBhcHBseSBnbC1tci0wO1xufVxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi1pY29uLW9ubHkuYnRuLXNtIC5kcm9wZG93bi1jaGV2cm9uLCAuZ2wtZHJvcGRvd24gLmJ0bi1ncm91cC1zbSA+IC5kcm9wZG93bi1pY29uLW9ubHkuYnRuIC5kcm9wZG93bi1jaGV2cm9uIHtcbiAgQGFwcGx5IGdsLW14LTA7XG59XG4uZ2wtZHJvcGRvd24gLnNwbGl0LWNvbnRlbnQtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXB4LTQ7XG59XG4uZ2wtZHJvcGRvd24gLmljb24tc3BsaXQtY29udGVudC1idXR0b24ge1xuICBAYXBwbHkgZ2wtcGwtMztcbn1cbi5nbC1kcm9wZG93biAuaWNvbi1zcGxpdC1jb250ZW50LWJ1dHRvbiAuZHJvcGRvd24taWNvbiB7XG4gIEBhcHBseSBnbC1tci0wO1xufVxuXG4vKiBTdHlsaW5nIHdoZW4gdGhlIGNvbXBvbmVudCBpcyB1c2VkIG9uIGl0cyBvd24gKi9cbi5nbC1kcm9wZG93bi1kaXZpZGVyIHtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWhpZGRlbjtcbiAgQGFwcGx5IGdsLWgtMDtcbiAgQGFwcGx5IGdsLW15LTI7XG4gIEBhcHBseSBnbC1teC0wO1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQtMSBnbC1ib3JkZXItdC1kcm9wZG93bi1kaXZpZGVyIGdsLWJvcmRlci10LXNvbGlkO1xufVxuXG4vKiBTdHlsaW5nIHRvIG92ZXJyaWRlIHRoZSB2dWUtYm9vdHN0cmFwIENTUyBpbmNsdWRlZCBpbiBHaXRMYWIgQ1NTICovXG4uZ2wtZHJvcGRvd24gLmdsLWRyb3Bkb3duLWRpdmlkZXIge1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICBAYXBwbHkgZ2wtaC0wO1xuICBAYXBwbHkgZ2wtbXktMjtcbiAgQGFwcGx5IGdsLW14LTA7XG4gIEBhcHBseSBnbC1wLTA7XG4gIEBhcHBseSBnbC1ib3JkZXItdC0xIGdsLWJvcmRlci10LWRyb3Bkb3duLWRpdmlkZXIgZ2wtYm9yZGVyLXQtc29saWQ7XG59XG5cbi8qIFN0eWxpbmcgd2hlbiB0aGUgY29tcG9uZW50IGlzIHVzZWQgb24gaXRzIG93biAqL1xuLmdsLWRyb3Bkb3duLXNlY3Rpb24taGVhZGVyIC5kcm9wZG93bi1oZWFkZXIge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1weC00O1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3JtYWw7XG59XG5cbi8qIFN0eWxpbmcgdG8gb3ZlcnJpZGUgdGhlIHZ1ZS1ib290c3RyYXAgQ1NTIGluY2x1ZGVkIGluIEdpdExhYiBDU1MgKi9cbi5nbC1kcm9wZG93biAuZ2wtZHJvcGRvd24tc2VjdGlvbi1oZWFkZXIgLmRyb3Bkb3duLWhlYWRlciB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICBAYXBwbHkgZ2wtcHktMztcbiAgQGFwcGx5IGdsLXB4LTQ7XG4gIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vcm1hbDtcbn1cblxuLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW0ge1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtcHgtNTtcbiAgQGFwcGx5IGdsLXB5LTA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbm9uZTtcbiAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZGVmYXVsdCk7XG4gIEBhcHBseSBnbC10ZXh0LWxlZnQ7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vcm1hbDtcbiAgQGFwcGx5IGdsLWN1cnNvci1wb2ludGVyO1xufVxuLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW0gLmdsLWF2YXRhciB7XG4gIEBhcHBseSBnbC1zaHJpbmstMDtcbiAgQGFwcGx5IGdsLW1yLTM7XG59XG4uZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbSAuZ2wtZHJvcGRvd24taXRlbS1jaGVjay1pY29uIHtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuICBAYXBwbHkgZ2wtbXItMztcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG59XG4uZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbSAuZ2wtZHJvcGRvd24taXRlbS1pY29uIHtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuICBAYXBwbHkgZ2wtbXItMztcbn1cbi5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtIC5nbC1kcm9wZG93bi1pdGVtLXRleHQtcHJpbWFyeSB7XG4gIEBhcHBseSBnbC1tLTA7XG59XG4uZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbSAuZ2wtZHJvcGRvd24taXRlbS10ZXh0LXNlY29uZGFyeSB7XG4gIEBhcHBseSBnbC1tLTA7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cbi5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtIC5nbC1kcm9wZG93bi1pdGVtLXRleHQtd3JhcHBlciB7XG4gIEBhcHBseSBnbC1taW4tdy0wO1xuICBAYXBwbHkgZ2wtZ3JvdztcbiAgQGFwcGx5IGdsLW1yLTM7XG4gIEBhcHBseSBnbC1weS0zO1xufVxuLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW0udGV4dC1kYW5nZXIge1xuICBAYXBwbHkgZ2wtdGV4dC1kYW5nZXI7XG59XG4uZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbS5kaXNhYmxlLWhvdmVyIHtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbn1cbi5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtOmRpc2FibGVkIHtcbiAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG59XG4uZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY2hlY2staWNvbiB7XG4gIEBhcHBseSBnbC10ZXh0LWluaGVyaXQ7XG59XG4uZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTpkaXNhYmxlZCAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tdGV4dC1zZWNvbmRhcnkge1xuICBAYXBwbHkgZ2wtdGV4dC1pbmhlcml0O1xufVxuLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06ZGlzYWJsZWQgLmdsLWF2YXRhciB7XG4gIEBhcHBseSBnbC1vcGFjaXR5LTc7XG59XG4uZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTpub3QoLmRpc2FibGUtaG92ZXIpOmhvdmVyLCAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTphY3RpdmUsIC5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtOmZvY3VzLXZpc2libGUsIC5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtLmlzLWZvY3VzZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWhvdmVyKTtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlLWhvdmVyKTpob3Zlci50ZXh0LWRhbmdlciwgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06YWN0aXZlLnRleHQtZGFuZ2VyLCAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTpmb2N1cy12aXNpYmxlLnRleHQtZGFuZ2VyLCAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbS5pcy1mb2N1c2VkLnRleHQtZGFuZ2VyIHtcbiAgQGFwcGx5IGdsLXRleHQtZGFuZ2VyO1xufVxuLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06YWN0aXZlLCAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTpmb2N1cy12aXNpYmxlLCAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTphY3RpdmUsIC5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtOmZvY3VzLXZpc2libGUsIC5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cblxuLmdsLWRyb3Bkb3duLXRleHQgLmItZHJvcGRvd24tdGV4dCB7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1weC01O1xuICBAYXBwbHkgZ2wtcHktMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1ub25lO1xuICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG4gIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLXdoaXRlc3BhY2Utbm9ybWFsO1xuICBAYXBwbHkgZ2wtcHktMztcbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC1zY3JvbGxhYmxlLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZ3JvdztcbiAgQGFwcGx5IGdsLWJhc2lzLTA7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1weS0yO1xuICBAYXBwbHkgZ2wtcGwtNDtcbiAgQGFwcGx5IGdsLXByLTc7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtY29udHJvbDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCArIC5nbC1maWx0ZXJlZC1zZWFyY2gtc2Nyb2xsYWJsZS1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1sLW5vbmU7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtc2Nyb2xsYWJsZS1jb250YWluZXItd2l0aC1zZWFyY2gtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtci1ub25lO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXNjcm9sbGFibGUge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LXktYXV0bztcbiAgQGFwcGx5IGdsLXctZnVsbDtcbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC1pdGVtIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1weC0xO1xufVxuLmdsLWZpbHRlcmVkLXNlYXJjaC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLXBsLTA7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtbGFzdC1pdGVtIC5nbC1maWx0ZXJlZC1zZWFyY2gtdGVybS12YWx1ZSB7XG4gIEBhcHBseSBnbC1oLWZ1bGw7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG59XG4uZ2wtZmlsdGVyZWQtc2VhcmNoLWxhc3QtaXRlbSB7XG4gIEBhcHBseSBnbC1ncm93O1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtcGwtMTtcbiAgQGFwcGx5IGdsLWgtNjtcbiAgbWluLXdpZHRoOiA1cmVtO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXZpZXctb25seSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kaXNhYmxlZCk7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gIEBhcHBseSBnbC1wLTA7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbi1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtb3V0bGluZS1ub25lO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvciksIGluc2V0IDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWZpbHRlcmVkLXNlYXJjaC1zdWdnZXN0aW9uLWFjdGl2ZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0O1xuICB9XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbi1saXN0LmRyb3Bkb3duLW1lbnUge1xuICBAYXBwbHkgZ2wtYmxvY2s7XG4gIHdpZHRoOiAxNXJlbTtcbiAgQGFwcGx5IGdsLXAtMjtcbiAgQGFwcGx5IGdsLWJnLWRyb3Bkb3duO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWRyb3Bkb3duO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1sZztcbiAgQGFwcGx5IGdsLXNoYWRvdy1tZDtcbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC1zdWdnZXN0aW9uLWxpc3Qge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy15LWF1dG87XG4gIG1heC1oZWlnaHQ6IDE5LjVyZW07XG59XG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXN1Z2dlc3Rpb24tbGlzdCAuZ2wtZmlsdGVyZWQtc2VhcmNoLXN1Z2dlc3Rpb24sXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXN1Z2dlc3Rpb24tbGlzdCAuZ2wtZmlsdGVyZWQtc2VhcmNoLXN1Z2dlc3Rpb24gPiBhLFxuLmdsLWZpbHRlcmVkLXNlYXJjaC1zdWdnZXN0aW9uLWxpc3QgLmdsLWZpbHRlcmVkLXNlYXJjaC1zdWdnZXN0aW9uID4gYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuLmdsLWZpbHRlcmVkLXNlYXJjaC1zdWdnZXN0aW9uLWxpc3QgLmdsLWRyb3Bkb3duLWRpdmlkZXIge1xuICBAYXBwbHkgLWdsLW14LTI7XG59XG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXN1Z2dlc3Rpb24tbGlzdCAuZ2wtc3Bpbm5lci1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtbXktMjtcbn1cbi5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbi1saXN0IC5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gIEBhcHBseSBnbC1wLTA7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtdGVybSAuZ2wtZmlsdGVyZWQtc2VhcmNoLXRlcm0tdG9rZW4ge1xuICBAYXBwbHkgZ2wtY3Vyc29yLXRleHQ7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtdGVybS1pbnB1dCB7XG4gIEBhcHBseSBnbC1wLTA7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuICBAYXBwbHkgZ2wtb3V0bGluZS1ub25lO1xuICBAYXBwbHkgZ2wtaC02O1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBtaW4td2lkdGg6IDE1cmVtO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRlcm0taWNvbiB7XG4gIEBhcHBseSBnbC1tci0yO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1hY3RpdmUge1xuICBAYXBwbHkgZ2wtY3Vyc29yLWRlZmF1bHQ7XG59XG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuIHtcbiAgQGFwcGx5IGdsLWgtNjtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3dyYXA7XG4gIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbn1cbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWhvdmVyOmhvdmVyIC5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi10eXBlLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xufVxuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4taG92ZXI6aG92ZXIgLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1kYXRhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG59XG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1ob3Zlcjpob3ZlciAuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xufVxuXG4uZ2wtdG9rZW4ge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1ub25lO1xufVxuLmdsLXRva2VuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi10eXBlIHtcbiAgQGFwcGx5IGdsLWgtNjtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdHItbm9uZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYnItbm9uZTtcbiAgQGFwcGx5IGdsLXB5LTI7XG4gIEBhcHBseSBnbC1weC0zO1xuICBAYXBwbHkgZ2wtbXItMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC10b2tlbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tb3BlcmF0b3Ige1xuICBAYXBwbHkgZ2wtaC02O1xuICBAYXBwbHkgZ2wtbXItMTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtdG9rZW4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEge1xuICBAYXBwbHkgZ2wtaC02O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tZGF0YS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFyKC0tZ2wtdG9rZW4tYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1nbC10b2tlbi1ib3JkZXItcmFkaXVzKTtcbn1cbi5nbC10b2tlbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tZGF0YSAuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtY29udGVudCB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1kZXNjcmlwdGlvbiB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgQGFwcGx5IGdsLW1sLWF1dG87XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tc2VnbWVudCB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLWgtNjtcbiAgQGFwcGx5IGdsLXdoaXRlc3BhY2Utbm93cmFwO1xuICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG59XG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXNlZ21lbnQuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXNlZ21lbnQtYWN0aXZlIHtcbiAgQGFwcGx5IGdsLWN1cnNvci1kZWZhdWx0O1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXNlZ21lbnQtaW5wdXQge1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgQGFwcGx5IGdsLW91dGxpbmUtbm9uZTtcbiAgbWluLXdpZHRoOiAxNXJlbTtcbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1zZWdtZW50LWlucHV0LmdsLWZvcm0tZGF0ZSBpbnB1dDpub3QoLmZvcm0tY29udHJvbC1wbGFpbnRleHQpIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbm9uZTtcbiAgQGFwcGx5IGdsLXAtMDtcbiAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1zZWdtZW50LWlucHV0LmdsLWZvcm0tZGF0ZSBpbnB1dDpub3QoLmZvcm0tY29udHJvbC1wbGFpbnRleHQpOmhvdmVyLCAuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXNlZ21lbnQtaW5wdXQuZ2wtZm9ybS1kYXRlIGlucHV0Om5vdCguZm9ybS1jb250cm9sLXBsYWludGV4dCk6Zm9jdXMge1xuICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tc2VnbWVudC1pbnB1dC1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tc2VnbWVudC1pY29uIHtcbiAgQGFwcGx5IGdsLW1yLTI7XG59XG5cbi5nbC1mb3JtLWRhdGUgaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAtMnB4O1xufVxuXG5pbnB1dFt0eXBlPWNvbG9yXS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW07XG59XG5cbmlucHV0W3R5cGU9Y29sb3JdLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4uaW5wdXQtZ3JvdXAtc20gaW5wdXRbdHlwZT1jb2xvcl0uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgMC41cmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbTtcbn1cblxuaW5wdXRbdHlwZT1jb2xvcl0uZm9ybS1jb250cm9sLmZvcm0tY29udHJvbC1sZyxcbi5pbnB1dC1ncm91cC1sZyBpbnB1dFt0eXBlPWNvbG9yXS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbTtcbn1cblxuaW5wdXRbdHlwZT1jb2xvcl0uZm9ybS1jb250cm9sOmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc0NzI3MztcbiAgb3BhY2l0eTogMC42NTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMSAxIGF1dG87XG4gIHdpZHRoOiAxJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tcmFuZ2UgKyAuZm9ybS1jb250cm9sLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZSArIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZSArIC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZSArIC5jdXN0b20tcmFuZ2UsXG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXJhbmdlICsgLmN1c3RvbS1maWxlIHtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG59XG4uaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sICsgLmN1c3RvbS1yYW5nZSxcbi5pbnB1dC1ncm91cCA+IC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0ICsgLmN1c3RvbS1yYW5nZSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tc2VsZWN0ICsgLmN1c3RvbS1yYW5nZSxcbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tcmFuZ2UgKyAuY3VzdG9tLXJhbmdlLFxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1maWxlICsgLmN1c3RvbS1yYW5nZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZTpmb2N1cyB7XG4gIHotaW5kZXg6IDM7XG59XG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXJhbmdlOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXJhbmdlOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbn1cbi5pbnB1dC1ncm91cCA+IC5jdXN0b20tcmFuZ2Uge1xuICBwYWRkaW5nOiAwIDAuNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4YTg4ODg7XG4gIGhlaWdodDogMzJweDtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IDAuMTVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZTpmb2N1cyB7XG4gIGNvbG9yOiAjM2EzODNkO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXItY29sb3I6IHJnYigxMjcuNSwgMTg5LCAyNTUpO1xuICBvdXRsaW5lOiAwO1xuICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XG59XG4uaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXJhbmdlOmRpc2FibGVkLCAuaW5wdXQtZ3JvdXAgPiAuY3VzdG9tLXJhbmdlW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3ZjU7XG59XG5cbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tcmFuZ2Uge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAxcmVtICsgMnB4KTtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwLjNyZW07XG59XG5cbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tcmFuZ2Uge1xuICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAwLjVyZW0gKyAycHgpO1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMC4ycmVtO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmN1c3RvbS1yYW5nZTp2YWxpZCwgLmlucHV0LWdyb3VwIC5jdXN0b20tcmFuZ2UuaXMtdmFsaWQge1xuICBib3JkZXItY29sb3I6ICMwYzcyNjU7XG59XG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmN1c3RvbS1yYW5nZTp2YWxpZDpmb2N1cywgLmlucHV0LWdyb3VwIC5jdXN0b20tcmFuZ2UuaXMtdmFsaWQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMwYzcyNjU7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEyLCAxMTQsIDEwMSwgMC4yNSk7XG59XG5cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6dmFsaWQ6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1iLCAuY3VzdG9tLXJhbmdlLmlzLXZhbGlkOmZvY3VzOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAwLjJyZW0gcmdiKDY5LjA3MTQyODU3MTQsIDIzNS40Mjg1NzE0Mjg2LCAyMTQuMjI2MTkwNDc2Mik7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOnZhbGlkOmZvY3VzOjotbW96LXJhbmdlLXRodW1iLCAuY3VzdG9tLXJhbmdlLmlzLXZhbGlkOmZvY3VzOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMnJlbSByZ2IoNjkuMDcxNDI4NTcxNCwgMjM1LjQyODU3MTQyODYsIDIxNC4yMjYxOTA0NzYyKTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6dmFsaWQ6Zm9jdXM6Oi1tcy10aHVtYiwgLmN1c3RvbS1yYW5nZS5pcy12YWxpZDpmb2N1czo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMnJlbSByZ2IoNjkuMDcxNDI4NTcxNCwgMjM1LjQyODU3MTQyODYsIDIxNC4yMjYxOTA0NzYyKTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6dmFsaWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iLCAuY3VzdG9tLXJhbmdlLmlzLXZhbGlkOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzcyNjU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOnZhbGlkOjotd2Via2l0LXNsaWRlci10aHVtYjphY3RpdmUsIC5jdXN0b20tcmFuZ2UuaXMtdmFsaWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig2OS4wNzE0Mjg1NzE0LCAyMzUuNDI4NTcxNDI4NiwgMjE0LjIyNjE5MDQ3NjIpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1yYW5nZTp2YWxpZDo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC5jdXN0b20tcmFuZ2UuaXMtdmFsaWQ6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMiwgMTE0LCAxMDEsIDAuMzUpO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1yYW5nZTp2YWxpZDo6LW1vei1yYW5nZS10aHVtYiwgLmN1c3RvbS1yYW5nZS5pcy12YWxpZDo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzcyNjU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOnZhbGlkOjotbW96LXJhbmdlLXRodW1iOmFjdGl2ZSwgLmN1c3RvbS1yYW5nZS5pcy12YWxpZDo6LW1vei1yYW5nZS10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoNjkuMDcxNDI4NTcxNCwgMjM1LjQyODU3MTQyODYsIDIxNC4yMjYxOTA0NzYyKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6dmFsaWQ6Oi1tb3otcmFuZ2UtdHJhY2ssIC5jdXN0b20tcmFuZ2UuaXMtdmFsaWQ6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDEyLCAxMTQsIDEwMSwgMC4zNSk7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOnZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1yYW5nZTp2YWxpZCB+IC52YWxpZC10b29sdGlwLCAuY3VzdG9tLXJhbmdlLmlzLXZhbGlkIH4gLnZhbGlkLWZlZWRiYWNrLFxuLmN1c3RvbS1yYW5nZS5pcy12YWxpZCB+IC52YWxpZC10b29sdGlwIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOnZhbGlkOjotbXMtdGh1bWIsIC5jdXN0b20tcmFuZ2UuaXMtdmFsaWQ6Oi1tcy10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYzcyNjU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOnZhbGlkOjotbXMtdGh1bWI6YWN0aXZlLCAuY3VzdG9tLXJhbmdlLmlzLXZhbGlkOjotbXMtdGh1bWI6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDY5LjA3MTQyODU3MTQsIDIzNS40Mjg1NzE0Mjg2LCAyMTQuMjI2MTkwNDc2Mik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOnZhbGlkOjotbXMtdHJhY2stbG93ZXIsIC5jdXN0b20tcmFuZ2UuaXMtdmFsaWQ6Oi1tcy10cmFjay1sb3dlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTIsIDExNCwgMTAxLCAwLjM1KTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6dmFsaWQ6Oi1tcy10cmFjay11cHBlciwgLmN1c3RvbS1yYW5nZS5pcy12YWxpZDo6LW1zLXRyYWNrLXVwcGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxMiwgMTE0LCAxMDEsIDAuMzUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuaW5wdXQtZ3JvdXAgLmN1c3RvbS1yYW5nZTppbnZhbGlkLCAuaW5wdXQtZ3JvdXAgLmN1c3RvbS1yYW5nZS5pcy1pbnZhbGlkIHtcbiAgYm9yZGVyLWNvbG9yOiAjYzUyMDQyO1xufVxuLndhcy12YWxpZGF0ZWQgLmlucHV0LWdyb3VwIC5jdXN0b20tcmFuZ2U6aW52YWxpZDpmb2N1cywgLmlucHV0LWdyb3VwIC5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogI2M1MjA0MjtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMTk3LCAzMiwgNjYsIDAuMjUpO1xufVxuXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOmludmFsaWQ6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1iLCAuY3VzdG9tLXJhbmdlLmlzLWludmFsaWQ6Zm9jdXM6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMnJlbSByZ2IoMjQwLjY3Njg1NTg5NTIsIDE2Ni44MjMxNDQxMDQ4LCAxODIuMDQxNDg0NzE2Mik7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOmludmFsaWQ6Zm9jdXM6Oi1tb3otcmFuZ2UtdGh1bWIsIC5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZDpmb2N1czo6LW1vei1yYW5nZS10aHVtYiB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZmZmLCAwIDAgMCAwLjJyZW0gcmdiKDI0MC42NzY4NTU4OTUyLCAxNjYuODIzMTQ0MTA0OCwgMTgyLjA0MTQ4NDcxNjIpO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1yYW5nZTppbnZhbGlkOmZvY3VzOjotbXMtdGh1bWIsIC5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZDpmb2N1czo6LW1zLXRodW1iIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4ICNmZmYsIDAgMCAwIDAuMnJlbSByZ2IoMjQwLjY3Njg1NTg5NTIsIDE2Ni44MjMxNDQxMDQ4LCAxODIuMDQxNDg0NzE2Mik7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOmludmFsaWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iLCAuY3VzdG9tLXJhbmdlLmlzLWludmFsaWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MjA0MjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6aW52YWxpZDo6LXdlYmtpdC1zbGlkZXItdGh1bWI6YWN0aXZlLCAuY3VzdG9tLXJhbmdlLmlzLWludmFsaWQ6Oi13ZWJraXQtc2xpZGVyLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDAuNjc2ODU1ODk1MiwgMTY2LjgyMzE0NDEwNDgsIDE4Mi4wNDE0ODQ3MTYyKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6aW52YWxpZDo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2ssIC5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZDo6LXdlYmtpdC1zbGlkZXItcnVubmFibGUtdHJhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE5NywgMzIsIDY2LCAwLjM1KTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6aW52YWxpZDo6LW1vei1yYW5nZS10aHVtYiwgLmN1c3RvbS1yYW5nZS5pcy1pbnZhbGlkOjotbW96LXJhbmdlLXRodW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MjA0MjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6aW52YWxpZDo6LW1vei1yYW5nZS10aHVtYjphY3RpdmUsIC5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZDo6LW1vei1yYW5nZS10aHVtYjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQwLjY3Njg1NTg5NTIsIDE2Ni44MjMxNDQxMDQ4LCAxODIuMDQxNDg0NzE2Mik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOmludmFsaWQ6Oi1tb3otcmFuZ2UtdHJhY2ssIC5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZDo6LW1vei1yYW5nZS10cmFjayB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTk3LCAzMiwgNjYsIDAuMzUpO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1yYW5nZTppbnZhbGlkIH4gLmludmFsaWQtZmVlZGJhY2ssXG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOmludmFsaWQgfiAuaW52YWxpZC10b29sdGlwLCAuY3VzdG9tLXJhbmdlLmlzLWludmFsaWQgfiAuaW52YWxpZC1mZWVkYmFjayxcbi5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZCB+IC5pbnZhbGlkLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6aW52YWxpZDo6LW1zLXRodW1iLCAuY3VzdG9tLXJhbmdlLmlzLWludmFsaWQ6Oi1tcy10aHVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNTIwNDI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4ud2FzLXZhbGlkYXRlZCAuY3VzdG9tLXJhbmdlOmludmFsaWQ6Oi1tcy10aHVtYjphY3RpdmUsIC5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZDo6LW1zLXRodW1iOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDAuNjc2ODU1ODk1MiwgMTY2LjgyMzE0NDEwNDgsIDE4Mi4wNDE0ODQ3MTYyKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbi53YXMtdmFsaWRhdGVkIC5jdXN0b20tcmFuZ2U6aW52YWxpZDo6LW1zLXRyYWNrLWxvd2VyLCAuY3VzdG9tLXJhbmdlLmlzLWludmFsaWQ6Oi1tcy10cmFjay1sb3dlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTk3LCAzMiwgNjYsIDAuMzUpO1xufVxuLndhcy12YWxpZGF0ZWQgLmN1c3RvbS1yYW5nZTppbnZhbGlkOjotbXMtdHJhY2stdXBwZXIsIC5jdXN0b20tcmFuZ2UuaXMtaW52YWxpZDo6LW1zLXRyYWNrLXVwcGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgxOTcsIDMyLCA2NiwgMC4zNSk7XG59XG5cbi5nbC1mb3JtLWlucHV0LFxuLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWNvbnRyb2w7XG4gIEBhcHBseSBnbC1mb250LXJlZ3VsYXI7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1weC00O1xuICBAYXBwbHkgZ2wtaC1hdXRvO1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG59XG4uZ2wtZm9ybS1pbnB1dDpmb2N1cy12aXNpYmxlLFxuLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogIzNhMzgzZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTI3LjUsIDE4OSwgMjU1KTtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHJnYmEoMCwgMTIzLCAyNTUsIDAuMjUpO1xufVxuLmdsLWZvcm0taW5wdXQsXG4uZ2wtZm9ybS1pbnB1dC5mb3JtLWNvbnRyb2wge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWZvcm0taW5wdXQsXG4gIC5nbC1mb3JtLWlucHV0LmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gIH1cbn1cbi5nbC1mb3JtLWlucHV0OmhvdmVyLFxuLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWhvdmVyKTtcbn1cbi5nbC1mb3JtLWlucHV0Om5vdCguZ2wtZm9ybS1pbnB1dC1ub3QtcmVhZG9ubHkpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZm9ybS1jb250cm9sLXBsYWludGV4dCk6bm90KFt0eXBlPWNvbG9yXSk6cmVhZC1vbmx5LFxuLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sOm5vdCguZ2wtZm9ybS1pbnB1dC1ub3QtcmVhZG9ubHkpOm5vdCg6ZGlzYWJsZWQpOm5vdCguZm9ybS1jb250cm9sLXBsYWludGV4dCk6bm90KFt0eXBlPWNvbG9yXSk6cmVhZC1vbmx5IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXJlYWRvbmx5KTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5nbC1mb3JtLWlucHV0OmRpc2FibGVkLFxuLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sOmRpc2FibGVkIHtcbiAgQGFwcGx5IGdsLWN1cnNvci1ub3QtYWxsb3dlZDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRpc2FibGVkKTtcbiAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG59XG4uZ2wtZm9ybS1pbnB1dDpub3QoLmZvcm0tY29udHJvbC1wbGFpbnRleHQpOmZvY3VzLXZpc2libGUsXG4uZ2wtZm9ybS1pbnB1dC5mb3JtLWNvbnRyb2w6bm90KC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0KTpmb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZm9jdXMpLCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksIDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1mb3JtLWlucHV0Om5vdCguZm9ybS1jb250cm9sLXBsYWludGV4dCk6Zm9jdXMtdmlzaWJsZSxcbiAgLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sOm5vdCguZm9ybS1jb250cm9sLXBsYWludGV4dCk6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0O1xuICB9XG59XG4uZ2wtZm9ybS1pbnB1dC5pcy1pbnZhbGlkLFxuLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sLmlzLWludmFsaWQge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZXJyb3IpO1xufVxuLmdsLWZvcm0taW5wdXQuaXMtaW52YWxpZDpmb2N1cy12aXNpYmxlLFxuLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sLmlzLWludmFsaWQ6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1lcnJvciksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWZvcm0taW5wdXQuaXMtaW52YWxpZDpmb2N1cy12aXNpYmxlLFxuICAuZ2wtZm9ybS1pbnB1dC5mb3JtLWNvbnRyb2wuaXMtaW52YWxpZDpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1mb3JtLWlucHV0OjpwbGFjZWhvbGRlcixcbi5nbC1mb3JtLWlucHV0LmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcik7XG59XG4uZ2wtZm9ybS1pbnB1dC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuLmdsLWZvcm0taW5wdXQuZm9ybS1jb250cm9sLmZvcm0tY29udHJvbC1wbGFpbnRleHQge1xuICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG59XG5cbi5nbC1mb3JtLWlucHV0LXhzIHtcbiAgbWF4LXdpZHRoOiA1cmVtO1xufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tZm9ybS1pbnB1dC14cyB7XG4gICAgbWF4LXdpZHRoOiA1cmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1zbS1mb3JtLWlucHV0LXhzIHtcbiAgICBtYXgtd2lkdGg6IDVyZW07XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW1kLWZvcm0taW5wdXQteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtZm9ybS1pbnB1dC14cyB7XG4gICAgbWF4LXdpZHRoOiA1cmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1sZy1mb3JtLWlucHV0LXhzIHtcbiAgICBtYXgtd2lkdGg6IDVyZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWxnLWZvcm0taW5wdXQteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXhsLWZvcm0taW5wdXQteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXhsLWZvcm0taW5wdXQteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuXG4uZ2wtZm9ybS1pbnB1dC1zbSB7XG4gIG1heC13aWR0aDogMTByZW07XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1zbS1mb3JtLWlucHV0LXNtIHtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1zbS1mb3JtLWlucHV0LXNtIHtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1tZC1mb3JtLWlucHV0LXNtIHtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1tZC1mb3JtLWlucHV0LXNtIHtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1sZy1mb3JtLWlucHV0LXNtIHtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1sZy1mb3JtLWlucHV0LXNtIHtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wteGwtZm9ybS1pbnB1dC1zbSB7XG4gICAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXhsLWZvcm0taW5wdXQtc20ge1xuICAgIG1heC13aWR0aDogMTByZW07XG4gIH1cbn1cblxuLmdsLWZvcm0taW5wdXQtbWQge1xuICBtYXgtd2lkdGg6IDE1cmVtO1xufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tZm9ybS1pbnB1dC1tZCB7XG4gICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtc20tZm9ybS1pbnB1dC1tZCB7XG4gICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbWQtZm9ybS1pbnB1dC1tZCB7XG4gICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtZm9ybS1pbnB1dC1tZCB7XG4gICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbGctZm9ybS1pbnB1dC1tZCB7XG4gICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbGctZm9ybS1pbnB1dC1tZCB7XG4gICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXhsLWZvcm0taW5wdXQtbWQge1xuICAgIG1heC13aWR0aDogMTVyZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC14bC1mb3JtLWlucHV0LW1kIHtcbiAgICBtYXgtd2lkdGg6IDE1cmVtO1xuICB9XG59XG5cbi5nbC1mb3JtLWlucHV0LWxnIHtcbiAgbWF4LXdpZHRoOiAyMHJlbTtcbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXNtLWZvcm0taW5wdXQtbGcge1xuICAgIG1heC13aWR0aDogMjByZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXNtLWZvcm0taW5wdXQtbGcge1xuICAgIG1heC13aWR0aDogMjByZW07XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW1kLWZvcm0taW5wdXQtbGcge1xuICAgIG1heC13aWR0aDogMjByZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW1kLWZvcm0taW5wdXQtbGcge1xuICAgIG1heC13aWR0aDogMjByZW07XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWxnLWZvcm0taW5wdXQtbGcge1xuICAgIG1heC13aWR0aDogMjByZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWxnLWZvcm0taW5wdXQtbGcge1xuICAgIG1heC13aWR0aDogMjByZW07XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC14bC1mb3JtLWlucHV0LWxnIHtcbiAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wteGwtZm9ybS1pbnB1dC1sZyB7XG4gICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgfVxufVxuXG4uZ2wtZm9ybS1pbnB1dC14bCB7XG4gIG1heC13aWR0aDogMzVyZW07XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1zbS1mb3JtLWlucHV0LXhsIHtcbiAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1zbS1mb3JtLWlucHV0LXhsIHtcbiAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1tZC1mb3JtLWlucHV0LXhsIHtcbiAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1tZC1mb3JtLWlucHV0LXhsIHtcbiAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1sZy1mb3JtLWlucHV0LXhsIHtcbiAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1sZy1mb3JtLWlucHV0LXhsIHtcbiAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wteGwtZm9ybS1pbnB1dC14bCB7XG4gICAgbWF4LXdpZHRoOiAzNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXhsLWZvcm0taW5wdXQteGwge1xuICAgIG1heC13aWR0aDogMzVyZW07XG4gIH1cbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSA+IC5idG4ge1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bi1ncm91cCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG5cbi5nbC1mb3JtLXBhc3N3b3JkLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xufVxuLmdsLWZvcm0tcGFzc3dvcmQtaW5wdXQgaW5wdXRbdHlwZT1wYXNzd29yZF06Oi1tcy1yZXZlYWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZ2wtZm9ybS1wYXNzd29yZC1pbnB1dC1maWVsZC5nbC1mb3JtLWlucHV0IHtcbiAgQGFwcGx5IGdsLXBlLTc7XG59XG5cbi5nbC1mb3JtLXBhc3N3b3JkLWlucHV0LXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIEBhcHBseSBnbC1lbmQtMjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uZ2wtZm9ybS1jaGVja2JveC1ncm91cCB7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbn1cblxuLmdsLWZvcm0tY2hlY2tib3gsXG4uZ2wtZm9ybS1yYWRpbyB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cbi5nbC1mb3JtLWNoZWNrYm94LmZvcm0tY2hlY2ssXG4uZ2wtZm9ybS1yYWRpby5mb3JtLWNoZWNrIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1wbC0wO1xufVxuLmdsLWZvcm0tY2hlY2tib3guZm9ybS1jaGVjay1pbmxpbmUsXG4uZ2wtZm9ybS1yYWRpby5mb3JtLWNoZWNrLWlubGluZSB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbn1cbi5nbC1mb3JtLWNoZWNrYm94IC5mb3JtLWNoZWNrLWlucHV0LFxuLmdsLWZvcm0tcmFkaW8gLmZvcm0tY2hlY2staW5wdXQge1xuICBAYXBwbHkgZ2wtbXQtMTtcbiAgQGFwcGx5IGdsLW1sLTA7XG4gIEBhcHBseSBnbC1zZWxmLXN0YXJ0O1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBAYXBwbHkgZ2wtaC1hdXRvO1xuICBAYXBwbHkgZ2wtbXItMDtcbn1cbi5nbC1mb3JtLWNoZWNrYm94IC5mb3JtLWNoZWNrLWlucHV0OmFjdGl2ZSwgLmdsLWZvcm0tY2hlY2tib3ggLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMtdmlzaWJsZSwgLmdsLWZvcm0tY2hlY2tib3ggLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMtdmlzaWJsZTphY3RpdmUsXG4uZ2wtZm9ybS1yYWRpbyAuZm9ybS1jaGVjay1pbnB1dDphY3RpdmUsXG4uZ2wtZm9ybS1yYWRpbyAuZm9ybS1jaGVjay1pbnB1dDpmb2N1cy12aXNpYmxlLFxuLmdsLWZvcm0tcmFkaW8gLmZvcm0tY2hlY2staW5wdXQ6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uZ2wtZm9ybS1jaGVja2JveCAuZm9ybS1jaGVjay1sYWJlbCxcbi5nbC1mb3JtLXJhZGlvIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgQGFwcGx5IGdsLXBsLTM7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbn1cbi5nbC1mb3JtLWNoZWNrYm94IC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkLFxuLmdsLWZvcm0tY2hlY2tib3ggLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCxcbi5nbC1mb3JtLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCxcbi5nbC1mb3JtLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCxcbi5nbC1mb3JtLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCA+IC5oZWxwLXRleHQsXG4uZ2wtZm9ybS1yYWRpbyAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCxcbi5nbC1mb3JtLXJhZGlvIC5mb3JtLWNoZWNrLWlucHV0OmRpc2FibGVkIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4uZ2wtZm9ybS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQsXG4uZ2wtZm9ybS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsXG4uZ2wtZm9ybS1yYWRpbyAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwgPiAuaGVscC10ZXh0IHtcbiAgQGFwcGx5IGdsLWN1cnNvci1ub3QtYWxsb3dlZDtcbiAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG59XG4uZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCxcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIHtcbiAgQGFwcGx5IGdsLXBsLTU7XG59XG4uZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsXG4uZ2wtZm9ybS1yYWRpby5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG4gIEBhcHBseSBnbC1wbC0zO1xuICBAYXBwbHkgZ2wtbWItMztcbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLCAuZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0IH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uZ2wtZm9ybS1yYWRpby5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAtMXJlbTtcbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0IH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6aG92ZXIgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpob3ZlciB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmZvY3VzLXZpc2libGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4uZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gIC5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IExpbmtUZXh0O1xuICAgIGJvcmRlci1jb2xvcjogTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcixcbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcixcbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcixcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcixcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcixcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQ6IDUwJSA1MCUgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1zZWxlY3RlZCk7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG4uZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIsXG4uZ2wtZm9ybS1yYWRpby5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1zZWxlY3RlZCk7XG4gIG1hc2staW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD1cIjEwXCIgaGVpZ2h0PVwiOFwiIHZpZXdCb3g9XCIwIDAgMTAgOFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiJTNFJTNDcGF0aCBkPVwiTTAuNzUgNC43NjI4OUwzLjE1MzEyIDcuMjQ2NzhMOS4yNSAxLjE0OTlcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLyUzRSUzQy9zdmclM0UlMEEnKTtcbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcixcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkKTtcbiAgbWFzay1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPVwiMTBcIiBoZWlnaHQ9XCIyXCIgdmlld0JveD1cIjAgMCAxMCAyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIlM0UlM0NwYXRoIGQ9XCJNMS43NSAxSDguMjVcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLyUzRSUzQy9zdmclM0UlMEEnKTtcbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcixcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPXJhZGlvXTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkKTtcbiAgbWFzay1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPVwiNlwiIGhlaWdodD1cIjZcIiB2aWV3Qm94PVwiMCAwIDYgNlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiJTNFJTNDY2lyY2xlIGN4PVwiM1wiIGN5PVwiM1wiIHI9XCIzXCIgZmlsbD1cIndoaXRlXCIvJTNFJTNDL3N2ZyUzRSUwQScpO1xufVxuLmdsLWZvcm0tY2hlY2tib3guY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6aG92ZXI6OmJlZm9yZSxcbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpob3ZlcjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uZ2wtZm9ybS1yYWRpby5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDpob3Zlcjo6YmVmb3JlLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmhvdmVyOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3Zlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xufVxuLmdsLWZvcm0tY2hlY2tib3guY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1mb2N1cyk7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDpob3Zlcjo6YmVmb3JlLFxuICAuZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6aG92ZXI6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuICAuZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gIC5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmhvdmVyOjpiZWZvcmUsXG4gIC5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpob3ZlcjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4gIC5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpmb2N1cy12aXNpYmxlOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogTGlua1RleHQ7XG4gICAgYm9yZGVyLWNvbG9yOiBMaW5rVGV4dDtcbiAgfVxufVxuLmdsLWZvcm0tY2hlY2tib3guY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0OmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IExpbmtUZXh0O1xuICAgIGJvcmRlci1jb2xvcjogTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDpob3Zlcjo6YmVmb3JlLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTtcbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uZ2wtZm9ybS1yYWRpby5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1mb2N1cyk7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbC5jdXN0b20tY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6aG92ZXI6OmJlZm9yZSxcbiAgLmdsLWZvcm0tY2hlY2tib3guY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpmb2N1cy12aXNpYmxlOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wuY3VzdG9tLWNoZWNrYm94IC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmhvdmVyOjpiZWZvcmUsXG4gIC5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sLmN1c3RvbS1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IExpbmtUZXh0O1xuICAgIGJvcmRlci1jb2xvcjogTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCxcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIEBhcHBseSBnbC1jdXJzb3Itbm90LWFsbG93ZWQ7XG59XG4uZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLWF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kaXNhYmxlZCk7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1jaGVja2JveC5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbiAgLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDAuNTtcbiAgfVxufVxuLmdsLWZvcm0tY2hlY2tib3guY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlOmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUsXG4uZ2wtZm9ybS1yYWRpby5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0W3R5cGU9Y2hlY2tib3hdOmluZGV0ZXJtaW5hdGU6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGlzYWJsZWQpO1xufVxuLmdsLWZvcm0tY2hlY2tib3guY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyLFxuLmdsLWZvcm0tY2hlY2tib3guY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0W3R5cGU9Y2hlY2tib3hdOmluZGV0ZXJtaW5hdGU6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyLFxuLmdsLWZvcm0tcmFkaW8uY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0W3R5cGU9Y2hlY2tib3hdOmluZGV0ZXJtaW5hdGU6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3ItZGlzYWJsZWQpO1xuICAvKiBFbnN1cmUgc3RhdGUgaW5kaWNhdG9ycyAobGlrZSB0aGUgY2hlY2ttYXJrIGZvciBjaGVja2VkIG9yXG4gICAgdGhlIGRhc2ggZm9yIGluZGV0ZXJtaW5hdGUpIGFyZSB2aXNpYmxlIGluIFdpbmRvd3MgSGlnaFxuICAgIENvbnRyYXN0IE1vZGUuXG4gICovXG59XG5AbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1mb3JtLWNoZWNrYm94LmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkOmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlcixcbiAgLmdsLWZvcm0tY2hlY2tib3guY3VzdG9tLWNvbnRyb2wgLmN1c3RvbS1jb250cm9sLWlucHV0W3R5cGU9Y2hlY2tib3hdOmluZGV0ZXJtaW5hdGU6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyLFxuICAuZ2wtZm9ybS1yYWRpby5jdXN0b20tY29udHJvbCAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YWZ0ZXIsXG4gIC5nbC1mb3JtLXJhZGlvLmN1c3RvbS1jb250cm9sIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPWNoZWNrYm94XTppbmRldGVybWluYXRlOmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgZm9yY2VkLWNvbG9yLWFkanVzdDogbm9uZTtcbiAgICAvKiBzeXN0ZW0gY29sb3IgcmVmZXJlbmNlIGZvciBkaXNhYmxlZCB0ZXh0IGFwcGxpZWQgdG9cbiAgICAgIGJhY2tncm91bmQgaGVyZS5cbiAgICAqL1xuICAgIGJhY2tncm91bmQtY29sb3I6IEdyYXlUZXh0O1xuICB9XG59XG4uZ2wtZm9ybS1jaGVja2JveCAuaGVscC10ZXh0LFxuLmdsLWZvcm0tcmFkaW8gLmhlbHAtdGV4dCB7XG4gIEBhcHBseSBnbC1tdC0yO1xuICBAYXBwbHkgZ2wtbWItMDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG5cbi5nbC1mb3JtLWdyb3VwIHtcbiAgQGFwcGx5IGdsLW1iLTU7XG59XG4uZ2wtZm9ybS1ncm91cCAuY29sLWZvcm0tbGFiZWwge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1wdC0wO1xuICBAYXBwbHkgZ2wtcGItMztcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xufVxuLmdsLWZvcm0tZ3JvdXAgLmNvbC1mb3JtLWxhYmVsID4gLmxhYmVsLWRlc2NyaXB0aW9uIHtcbiAgQGFwcGx5IGdsLW10LTI7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cbi5nbC1mb3JtLWdyb3VwIC5vcHRpb25hbC1sYWJlbCxcbi5nbC1mb3JtLWdyb3VwIC5sYWJlbC1kZXNjcmlwdGlvbiB7XG4gIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbn1cbi5nbC1mb3JtLWdyb3VwIC5pbnZhbGlkLWZlZWRiYWNrIHtcbiAgY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtdGV4dC1jb2xvci1lcnJvcik7XG59XG4uZ2wtZm9ybS1ncm91cCAudmFsaWQtZmVlZGJhY2sge1xuICBjb2xvcjogdmFyKC0tZ2wtY29udHJvbC10ZXh0LWNvbG9yLXZhbGlkKTtcbn1cbi5nbC1mb3JtLWdyb3VwIC5pbnZhbGlkLWZlZWRiYWNrLFxuLmdsLWZvcm0tZ3JvdXAgLnZhbGlkLWZlZWRiYWNrLFxuLmdsLWZvcm0tZ3JvdXAgLnRleHQtbXV0ZWQsXG4uZ2wtZm9ybS1ncm91cCAuZ2wtdGV4dC1zZWNvbmRhcnkge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG59XG4uZ2wtZm9ybS1ncm91cCAudGV4dC1tdXRlZCB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZSAhaW1wb3J0YW50O1xufVxuLmdsLWZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCArIC5pbnZhbGlkLWZlZWRiYWNrLFxuLmdsLWZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCArIC52YWxpZC1mZWVkYmFjayxcbi5nbC1mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wgKyAuZ2wtdGV4dC1zZWNvbmRhcnksXG4uZ2wtZm9ybS1ncm91cCAuZm9ybS1jb250cm9sICsgLnRleHQtbXV0ZWQsIC5nbC1mb3JtLWdyb3VwIC5mb3JtLWNvbnRyb2wuaXMtdmFsaWQgKyAuaW52YWxpZC1mZWVkYmFjayArIC50ZXh0LW11dGVkLCAuZ2wtZm9ybS1ncm91cCAuZm9ybS1jb250cm9sLmlzLXZhbGlkICsgLmludmFsaWQtZmVlZGJhY2sgKyAuZ2wtdGV4dC1zZWNvbmRhcnkge1xuICBAYXBwbHkgZ2wtbXQtMztcbn1cbi5nbC1mb3JtLWdyb3VwIGxlZ2VuZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5nbC1mb3JtLXJhZGlvLWdyb3VwIHtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xufVxuXG4vKlxuVGhpcyBpcyBhIHRlbXBvcmFyeSBtZWFzdXJlIHRvIGVuc3VyZSBjdXN0b20gc2VsZWN0IHN0eWxlcyBhcmUgbm90IGFmZmVjdGVkIGJ5IG91clxubGFjayBvZiBhbiBhdXRvcHJlZml4ZXIgdG9vbCBmb3IgY29tcGlsaW5nIGJvb3RzdHJhcC5cblxuVE9ETzogUmVtb3ZlIG9uY2UgYm9vdHN0cmFwIGlzIGluY2x1ZGVkIGluIEdpdExhYiBVSSBvciB3ZSBpbmNsdWRlIGFuIGF1dG9wcmVmaXhlclxub24gZ2l0bGFiXG5TZWU6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi9pc3N1ZXMvMzAwNTVcbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4ICovXG4uZ2wtZm9ybS1zZWxlY3Qge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuICBAYXBwbHkgZ2wtb3BhY2l0eS0xMDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtcHktMztcbiAgQGFwcGx5IGdsLXBsLTQ7XG4gIEBhcHBseSBnbC1oLWF1dG87XG4gIEBhcHBseSBnbC10cnVuY2F0ZTtcbiAgQGFwcGx5IGdsLWJnLW5vLXJlcGVhdDtcbiAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1jb250cm9sO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgcGFkZGluZy1yaWdodDogMS43NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWZvcm0tc2VsZWN0IHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICB9XG59XG4uZ2wtZm9ybS1zZWxlY3Q6aG92ZXIge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItaG92ZXIpO1xufVxuLmdsLWZvcm0tc2VsZWN0OmZvY3VzLXZpc2libGUsIC5nbC1mb3JtLXNlbGVjdDpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1cyksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1mb3JtLXNlbGVjdDpmb2N1cy12aXNpYmxlLCAuZ2wtZm9ybS1zZWxlY3Q6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dCAhaW1wb3J0YW50O1xuICB9XG59XG4uZ2wtZm9ybS1zZWxlY3Q6ZGlzYWJsZWQge1xuICBAYXBwbHkgZ2wtY3Vyc29yLW5vdC1hbGxvd2VkO1xuICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRpc2FibGVkKTtcbn1cbi5nbC1mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOm5vdCg6ZGlzYWJsZWQpIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWVycm9yKTtcbn1cbi5nbC1mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOm5vdCg6ZGlzYWJsZWQpOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWVycm9yKTtcbn1cbi5nbC1mb3JtLXNlbGVjdC5pcy1pbnZhbGlkOm5vdCg6ZGlzYWJsZWQpOmZvY3VzLXZpc2libGUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZXJyb3IpLCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksIDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1zZWxlY3QuaXMtaW52YWxpZDpub3QoOmRpc2FibGVkKTpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZ2wtZm9ybS1zZWxlY3Qtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbi5nbC1mb3JtLXNlbGVjdC13cmFwcGVyOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWljb24tY29sb3ItZGVmYXVsdCk7XG4gIG1hc2staW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD1cIjhcIiBoZWlnaHQ9XCI1XCIgdmlld0JveD1cIjAgMCA4IDVcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiUzRSUzQ3BhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTAuMjE5NjcgMC4yMTk2N0MwLjUxMjU2MyAtMC4wNzMyMjMyIDAuOTg3NDM3IC0wLjA3MzIyMzIgMS4yODAzMyAwLjIxOTY3TDQgMi45MzkzNEw2LjcxOTY3IDAuMjE5NjdDNy4wMTI1NiAtMC4wNzMyMjMgNy40ODc0NCAtMC4wNzMyMjI5IDcuNzgwMzMgMC4yMTk2N0M4LjA3MzIyIDAuNTEyNTYzIDguMDczMjIgMC45ODc0MzcgNy43ODAzMyAxLjI4MDMzTDQuNTMwMzMgNC41MzAzM0M0LjIzNzQ0IDQuODIzMjIgMy43NjI1NiA0LjgyMzIyIDMuNDY5NjcgNC41MzAzM0wwLjIxOTY3IDEuMjgwMzNDLTAuMDczMjIzMyAwLjk4NzQzNyAtMC4wNzMyMjMzIDAuNTEyNTYzIDAuMjE5NjcgMC4yMTk2N1pcIiBmaWxsPVwiJTIzNjY2NjY2XCIvJTNFJTNDL3N2ZyUzRSUwQScpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDAuNzVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgaGVpZ2h0OiA1cHg7XG4gIHdpZHRoOiA4cHg7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1zZWxlY3Qtd3JhcHBlcjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IENhbnZhc1RleHQ7XG4gIH1cbn1cbi5nbC1mb3JtLXNlbGVjdC13cmFwcGVyOmhhcyg+IC5nbC1mb3JtLXNlbGVjdDpkaXNhYmxlZCk6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1kaXNhYmxlZCk7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1zZWxlY3Qtd3JhcHBlcjpoYXMoPiAuZ2wtZm9ybS1zZWxlY3Q6ZGlzYWJsZWQpOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogR3JheVRleHQ7XG4gIH1cbn1cblxuLmdsLWZvcm0tc2VsZWN0LXhzIHtcbiAgbWF4LXdpZHRoOiA1cmVtO1xufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tZm9ybS1zZWxlY3QteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtc20tZm9ybS1zZWxlY3QteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbWQtZm9ybS1zZWxlY3QteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtZm9ybS1zZWxlY3QteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbGctZm9ybS1zZWxlY3QteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbGctZm9ybS1zZWxlY3QteHMge1xuICAgIG1heC13aWR0aDogNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXhsLWZvcm0tc2VsZWN0LXhzIHtcbiAgICBtYXgtd2lkdGg6IDVyZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC14bC1mb3JtLXNlbGVjdC14cyB7XG4gICAgbWF4LXdpZHRoOiA1cmVtO1xuICB9XG59XG5cbi5nbC1mb3JtLXNlbGVjdC1zbSB7XG4gIG1heC13aWR0aDogMTByZW07XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1zbS1mb3JtLXNlbGVjdC1zbSB7XG4gICAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtc20tZm9ybS1zZWxlY3Qtc20ge1xuICAgIG1heC13aWR0aDogMTByZW07XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW1kLWZvcm0tc2VsZWN0LXNtIHtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1tZC1mb3JtLXNlbGVjdC1zbSB7XG4gICAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbGctZm9ybS1zZWxlY3Qtc20ge1xuICAgIG1heC13aWR0aDogMTByZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWxnLWZvcm0tc2VsZWN0LXNtIHtcbiAgICBtYXgtd2lkdGg6IDEwcmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wteGwtZm9ybS1zZWxlY3Qtc20ge1xuICAgIG1heC13aWR0aDogMTByZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC14bC1mb3JtLXNlbGVjdC1zbSB7XG4gICAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgfVxufVxuXG4uZ2wtZm9ybS1zZWxlY3QtbWQge1xuICBtYXgtd2lkdGg6IDE1cmVtO1xufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtc20tZm9ybS1zZWxlY3QtbWQge1xuICAgIG1heC13aWR0aDogMTVyZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXNtLWZvcm0tc2VsZWN0LW1kIHtcbiAgICBtYXgtd2lkdGg6IDE1cmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1tZC1mb3JtLXNlbGVjdC1tZCB7XG4gICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbWQtZm9ybS1zZWxlY3QtbWQge1xuICAgIG1heC13aWR0aDogMTVyZW07XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWxnLWZvcm0tc2VsZWN0LW1kIHtcbiAgICBtYXgtd2lkdGg6IDE1cmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1sZy1mb3JtLXNlbGVjdC1tZCB7XG4gICAgbWF4LXdpZHRoOiAxNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXhsLWZvcm0tc2VsZWN0LW1kIHtcbiAgICBtYXgtd2lkdGg6IDE1cmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wteGwtZm9ybS1zZWxlY3QtbWQge1xuICAgIG1heC13aWR0aDogMTVyZW07XG4gIH1cbn1cblxuLmdsLWZvcm0tc2VsZWN0LWxnIHtcbiAgbWF4LXdpZHRoOiAyMHJlbTtcbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXNtLWZvcm0tc2VsZWN0LWxnIHtcbiAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1zbS1mb3JtLXNlbGVjdC1sZyB7XG4gICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbWQtZm9ybS1zZWxlY3QtbGcge1xuICAgIG1heC13aWR0aDogMjByZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW1kLWZvcm0tc2VsZWN0LWxnIHtcbiAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1sZy1mb3JtLXNlbGVjdC1sZyB7XG4gICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtbGctZm9ybS1zZWxlY3QtbGcge1xuICAgIG1heC13aWR0aDogMjByZW07XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC14bC1mb3JtLXNlbGVjdC1sZyB7XG4gICAgbWF4LXdpZHRoOiAyMHJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXhsLWZvcm0tc2VsZWN0LWxnIHtcbiAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICB9XG59XG5cbi5nbC1mb3JtLXNlbGVjdC14bCB7XG4gIG1heC13aWR0aDogMzVyZW07XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1zbS1mb3JtLXNlbGVjdC14bCB7XG4gICAgbWF4LXdpZHRoOiAzNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtc20tZm9ybS1zZWxlY3QteGwge1xuICAgIG1heC13aWR0aDogMzVyZW07XG4gIH1cbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW1kLWZvcm0tc2VsZWN0LXhsIHtcbiAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1tZC1mb3JtLXNlbGVjdC14bCB7XG4gICAgbWF4LXdpZHRoOiAzNXJlbTtcbiAgfVxufVxuXG5AY29udGFpbmVyICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtbGctZm9ybS1zZWxlY3QteGwge1xuICAgIG1heC13aWR0aDogMzVyZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWxnLWZvcm0tc2VsZWN0LXhsIHtcbiAgICBtYXgtd2lkdGg6IDM1cmVtO1xuICB9XG59XG5cbkBjb250YWluZXIgKHdpZHRoID49IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wteGwtZm9ybS1zZWxlY3QteGwge1xuICAgIG1heC13aWR0aDogMzVyZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC14bC1mb3JtLXNlbGVjdC14bCB7XG4gICAgbWF4LXdpZHRoOiAzNXJlbTtcbiAgfVxufVxuXG4vKiBzdHlsZWxpbnQtZW5hYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbi5nbC1mb3JtLWNvbWJvYm94IC5nbC1mb3JtLWNvbWJvYm94LWlubmVyIHtcbiAgbWF4LWhlaWdodDogMTkuNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtZ3JvdztcbiAgQGFwcGx5IGdsLW92ZXJmbG93LXktYXV0bztcbiAgQGFwcGx5IGdsLXBsLTA7XG4gIEBhcHBseSBnbC1tYi0wO1xuICBAYXBwbHkgZ2wtcHktMjtcbiAgQGFwcGx5IGdsLWxpc3Qtbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG59XG4uZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lcjpmb2N1cy12aXNpYmxlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgdWwge1xuICBAYXBwbHkgZ2wtbGlzdC1ub25lO1xufVxuLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0ge1xuICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtbXktMTtcbn1cbi5nbC1mb3JtLWNvbWJvYm94IC5nbC1mb3JtLWNvbWJvYm94LWlubmVyIC5nbC1kcm9wZG93bi1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLW10LTA7XG59XG4uZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbTpsYXN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLW1iLTA7XG59XG4uZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbSB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJveC1zaGFkb3cgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgQGFwcGx5IGdsLXB5LTA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3JtYWw7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBtcyAhaW1wb3J0YW50O1xuICB9XG59XG4uZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbSAuZ2wtZHJvcGRvd24taXRlbS10ZXh0LXdyYXBwZXIge1xuICBAYXBwbHkgZ2wtbWluLXctMDtcbiAgQGFwcGx5IGdsLWdyb3c7XG4gIEBhcHBseSBnbC1weS0zO1xufVxuLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlLWhvdmVyKTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1ob3Zlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtaG92ZXIpO1xufVxuLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1mb2N1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtZm9jdXMpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvciksIGluc2V0IDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0O1xuICB9XG59XG4uZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTpmb2N1cy12aXNpYmxlIHtcbiAgei1pbmRleDogMTtcbn1cbi5nbC1mb3JtLWNvbWJvYm94IC5nbC1mb3JtLWNvbWJvYm94LWlubmVyIC5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSwgLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItYWN0aXZlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1hY3RpdmUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvciksIGluc2V0IDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06YWN0aXZlLCAuZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0O1xuICB9XG59XG4uZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbS5hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXMpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtZm9jdXMpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbS5hY3RpdmUge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dDtcbiAgfVxufVxuLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW0uYWN0aXZlIHtcbiAgei1pbmRleDogMTtcbn1cbi5nbC1mb3JtLWNvbWJvYm94IC5nbC1mb3JtLWNvbWJvYm94LWlubmVyIC5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtLmlzLWZvY3VzZWQge1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXMpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtZm9jdXMpICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbSAuZHJvcGRvd24taXRlbS5pcy1mb2N1c2VkIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1mb3JtLWNvbWJvYm94IC5nbC1mb3JtLWNvbWJvYm94LWlubmVyIC5nbC1kcm9wZG93bi1pdGVtIC5kcm9wZG93bi1pdGVtLmlzLWZvY3VzZWQge1xuICB6LWluZGV4OiAxO1xufVxuLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW0gLmRyb3Bkb3duLWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbVthcmlhLXNlbGVjdGVkPXRydWVdIC5kcm9wZG93bi1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG59XG4uZ2wtZm9ybS1jb21ib2JveCAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciAuZ2wtZHJvcGRvd24taXRlbVthcmlhLXNlbGVjdGVkPXRydWVdIC5kcm9wZG93bi1pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xufVxuLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW1bYXJpYS1zZWxlY3RlZD10cnVlXSAuZHJvcGRvd24taXRlbTpmb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpO1xufVxuLmdsLWZvcm0tY29tYm9ib3ggLmdsLWZvcm0tY29tYm9ib3gtaW5uZXIgLmdsLWRyb3Bkb3duLWl0ZW1bYXJpYS1zZWxlY3RlZD10cnVlXSAuZHJvcGRvd24taXRlbTphY3RpdmUsIC5nbC1mb3JtLWNvbWJvYm94IC5nbC1mb3JtLWNvbWJvYm94LWlubmVyIC5nbC1kcm9wZG93bi1pdGVtW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0gLmRyb3Bkb3duLWl0ZW06Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1hY3RpdmUpO1xufVxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1jb25jYXRlbmF0aW9uKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1jb250cm9sO1xufVxuXG4uZ2wtaWNvbi5zOCB7XG4gIHdpZHRoOiA4cHg7XG4gIGhlaWdodDogOHB4O1xufVxuLmdsLWljb24uczEyIHtcbiAgd2lkdGg6IDEycHg7XG4gIGhlaWdodDogMTJweDtcbn1cbi5nbC1pY29uLnMxNCB7XG4gIHdpZHRoOiAxNHB4O1xuICBoZWlnaHQ6IDE0cHg7XG59XG4uZ2wtaWNvbi5zMTYge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xufVxuLmdsLWljb24uczI0IHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbi5nbC1pY29uLnMzMiB7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG59XG4uZ2wtaWNvbi5zNDgge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuLmdsLWljb24uczcyIHtcbiAgd2lkdGg6IDcycHg7XG4gIGhlaWdodDogNzJweDtcbn1cblxuLmdsLWluZmluaXRlLXNjcm9sbC1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3cteC1oaWRkZW47XG4gIEBhcHBseSBnbC1vdmVyZmxvdy15LWF1dG87XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG59XG5cbi5nbC1pbmZpbml0ZS1zY3JvbGwtbGVnZW5kIHtcbiAgQGFwcGx5IGdsLXRleHQtY2VudGVyO1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBAYXBwbHkgZ2wtbXQtMztcbn1cblxuLmdsLWxhYmVsIHtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtcGlsbDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtbWF4LXctZnVsbDtcbiAgQGFwcGx5IGdsLXRleHQtc207XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgYm94LXNoYWRvdzogdmFyKC0tbGFiZWwtaW5zZXQtYm9yZGVyKSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLWxhYmVsIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZDtcbiAgfVxufVxuLmdsLWxhYmVsOm5vdCguZ2wtbGFiZWwtc2NvcGVkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLWJhY2tncm91bmQtY29sb3IpO1xufVxuLmdsLWxhYmVsOmhhcygqOmZpcnN0LWNoaWxkOmZvY3VzLXZpc2libGUpIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWxhYmVsLWJhY2tncm91bmQtY29sb3IsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpLCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksIDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtbGFiZWw6aGFzKCo6Zmlyc3QtY2hpbGQ6Zm9jdXMtdmlzaWJsZSkge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dCAhaW1wb3J0YW50O1xuICB9XG59XG4uZ2wtbGFiZWwgLmdsLWxhYmVsLWxpbmsge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICBAYXBwbHkgZ2wtdGV4dC1pbmhlcml0O1xuICBAYXBwbHkgZ2wtbWF4LXctZnVsbDtcbn1cbi5nbC1sYWJlbCAuZ2wtbGFiZWwtbGluazpob3ZlciwgLmdsLWxhYmVsIC5nbC1sYWJlbC1saW5rOmZvY3VzLXZpc2libGUsIC5nbC1sYWJlbCAuZ2wtbGFiZWwtbGluazpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC10ZXh0LWluaGVyaXQ7XG4gIEBhcHBseSBnbC1zaGFkb3ctbm9uZTtcbiAgQGFwcGx5IGdsLW91dGxpbmUtbm9uZTtcbn1cbi5nbC1sYWJlbCAuZ2wtbGFiZWwtbGluay11bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZ2wtbGFiZWwgLmdsLWxhYmVsLWxpbmstdW5kZXJsaW5lOmhvdmVyIC5nbC1sYWJlbC10ZXh0LFxuLmdsLWxhYmVsIC5nbC1sYWJlbC1saW5rLXVuZGVybGluZTpob3ZlciAuZ2wtbGFiZWwtdGV4dC1zY29wZWQsIC5nbC1sYWJlbCAuZ2wtbGFiZWwtbGluay11bmRlcmxpbmU6Zm9jdXMtdmlzaWJsZSAuZ2wtbGFiZWwtdGV4dCxcbi5nbC1sYWJlbCAuZ2wtbGFiZWwtbGluay11bmRlcmxpbmU6Zm9jdXMtdmlzaWJsZSAuZ2wtbGFiZWwtdGV4dC1zY29wZWQsIC5nbC1sYWJlbCAuZ2wtbGFiZWwtbGluay11bmRlcmxpbmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUgLmdsLWxhYmVsLXRleHQsXG4uZ2wtbGFiZWwgLmdsLWxhYmVsLWxpbmstdW5kZXJsaW5lOmZvY3VzLXZpc2libGU6YWN0aXZlIC5nbC1sYWJlbC10ZXh0LXNjb3BlZCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmdsLWxhYmVsIC5nbC1sYWJlbC10ZXh0LFxuLmdsLWxhYmVsIC5nbC1sYWJlbC10ZXh0LXNjb3BlZCB7XG4gIEBhcHBseSBnbC1ibG9jaztcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zNzVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdy14OiBjbGlwO1xuICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLmdsLWxhYmVsID4gLmdsLWxhYmVsLWNsb3NlLmdsLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIHdpZHRoOiAwLjg3NXJlbTtcbiAgaGVpZ2h0OiAwLjg3NXJlbTtcbiAgbWluLWhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW07XG4gIG1hcmdpbi1yaWdodDogMC4xODc1cmVtO1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1mdWxsO1xuICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG59XG4uZ2wtbGFiZWwgPiAuZ2wtbGFiZWwtY2xvc2UuZ2wtYnV0dG9uOmZvY3VzLXZpc2libGUsIC5nbC1sYWJlbCA+IC5nbC1sYWJlbC1jbG9zZS5nbC1idXR0b246YWN0aXZlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLmdsLWxhYmVsID4gLmdsLWxhYmVsLWNsb3NlLmdsLWJ1dHRvbiAuZ2wtaWNvbiB7XG4gIHZlcnRpY2FsLWFsaWduOiAtMXB4O1xufVxuXG4uZ2wtbGFiZWwtdGV4dC1kYXJrIHtcbiAgY29sb3I6IHZhcigtLWdsLWxhYmVsLWxpZ2h0LXRleHQtY29sb3IpO1xufVxuLmdsLWxhYmVsLXRleHQtZGFyayAuZ2wtbGFiZWwtY2xvc2UuZ2wtYnV0dG9uIHtcbiAgY29sb3I6IHZhcigtLWdsLWxhYmVsLWxpZ2h0LWJ1dHRvbi1pY29uLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1sYWJlbC1saWdodC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1sYWJlbC10ZXh0LWRhcmsgLmdsLWxhYmVsLWNsb3NlLmdsLWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuZ2wtbGFiZWwtdGV4dC1kYXJrIC5nbC1sYWJlbC1jbG9zZS5nbC1idXR0b246aG92ZXIge1xuICBjb2xvcjogdmFyKC0tbGFiZWwtYmFja2dyb3VuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWxhYmVsLWxpZ2h0LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbn1cblxuLmdsLWxhYmVsLXRleHQtbGlnaHQge1xuICBjb2xvcjogdmFyKC0tZ2wtbGFiZWwtZGFyay10ZXh0LWNvbG9yKTtcbn1cbi5nbC1sYWJlbC10ZXh0LWxpZ2h0IC5nbC1sYWJlbC1jbG9zZS5nbC1idXR0b24ge1xuICBjb2xvcjogdmFyKC0tZ2wtbGFiZWwtZGFyay1idXR0b24taWNvbi1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1sYWJlbC10ZXh0LWxpZ2h0IC5nbC1sYWJlbC1jbG9zZS5nbC1idXR0b246Zm9jdXMtdmlzaWJsZSwgLmdsLWxhYmVsLXRleHQtbGlnaHQgLmdsLWxhYmVsLWNsb3NlLmdsLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1sYWJlbC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG59XG5cbi5nbC1sYWJlbC1zY29wZWQgLmdsLWxhYmVsLWNsb3NlLmdsLWJ1dHRvbiB7XG4gIG1hcmdpbi1sZWZ0OiAtMC4zNzVyZW07XG4gIGNvbG9yOiB2YXIoLS1nbC1sYWJlbC1zY29wZWQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtbGFiZWwtc2NvcGVkIC5nbC1sYWJlbC1jbG9zZS5nbC1idXR0b246Zm9jdXMtdmlzaWJsZSwgLmdsLWxhYmVsLXNjb3BlZCAuZ2wtbGFiZWwtY2xvc2UuZ2wtYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLWxhYmVsLXNjb3BlZC1idXR0b24taWNvbi1jb2xvci1ob3Zlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWxhYmVsLXNjb3BlZC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG59XG4uZ2wtbGFiZWwtc2NvcGVkIC5nbC1sYWJlbC10ZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtYmFja2dyb3VuZC1jb2xvcik7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtbGFiZWwtc2NvcGVkIC5nbC1sYWJlbC10ZXh0IHtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcbiAgfVxufVxuLmdsLWxhYmVsLXNjb3BlZCAuZ2wtbGFiZWwtdGV4dC1zY29wZWQge1xuICBjb2xvcjogdmFyKC0tZ2wtbGFiZWwtc2NvcGVkLXRleHQtY29sb3IpO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmdsLWxhYmVsLXRvb2x0aXAtdGl0bGUge1xuICBAYXBwbHkgZ2wtYmxvY2s7XG4gIEBhcHBseSBnbC10ZXh0LWZlZWRiYWNrLXN0cm9uZztcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbn1cblxuLmdsLWxpbmsge1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMSk7XG59XG4uZ2wtbGluazpob3ZlciB7XG4gIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbn1cbi5nbC1saW5rLCAuZ2wtbGluazpob3ZlciwgLmdsLWxpbms6YWN0aXZlLCAuZ2wtbGluazpmb2N1cy12aXNpYmxlIHtcbiAgQGFwcGx5IGdsLXRleHQtbGluaztcbn1cbi5nbC1saW5rOmFjdGl2ZSwgLmdsLWxpbms6Zm9jdXMtdmlzaWJsZSwgLmdsLWxpbms6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtdW5kZXJsaW5lO1xuICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcik7XG4gIG91dGxpbmUtb2Zmc2V0OiAycHg7XG59XG5cbi5nbC1saW5rLWlubGluZSB7XG4gIEBhcHBseSBnbC11bmRlcmxpbmU7XG59XG4uZ2wtbGluay1pbmxpbmU6aG92ZXIge1xuICBAYXBwbHkgZ2wtdW5kZXJsaW5lO1xufVxuXG4uZ2wtbGluay1leHRlcm5hbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiDihpdcIi9hdHRyKGRhdGEtYWx0KTtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi5nbC1saW5rLW1ldGEge1xuICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xufVxuLmdsLWxpbmstbWV0YTpob3ZlciB7XG4gIEBhcHBseSBnbC11bmRlcmxpbmU7XG59XG4uZ2wtbGluay1tZXRhLCAuZ2wtbGluay1tZXRhOmhvdmVyLCAuZ2wtbGluay1tZXRhOmZvY3VzLXZpc2libGUsIC5nbC1saW5rLW1ldGE6Zm9jdXMtdmlzaWJsZTpob3ZlciB7XG4gIEBhcHBseSBnbC10ZXh0LWluaGVyaXQ7XG59XG5cbi5nbC1saW5rLW1lbnRpb24sXG4uZ2wtbGluay1tZW50aW9uLWN1cnJlbnQge1xuICBAYXBwbHkgZ2wtcHgtMTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbn1cbi5nbC1saW5rLW1lbnRpb246aG92ZXIsXG4uZ2wtbGluay1tZW50aW9uLWN1cnJlbnQ6aG92ZXIge1xuICBAYXBwbHkgZ2wtdW5kZXJsaW5lO1xufVxuLmdsLWxpbmstbWVudGlvbjphY3RpdmUsIC5nbC1saW5rLW1lbnRpb246Zm9jdXMtdmlzaWJsZSwgLmdsLWxpbmstbWVudGlvbjpmb2N1cy12aXNpYmxlOmFjdGl2ZSxcbi5nbC1saW5rLW1lbnRpb24tY3VycmVudDphY3RpdmUsXG4uZ2wtbGluay1tZW50aW9uLWN1cnJlbnQ6Zm9jdXMtdmlzaWJsZSxcbi5nbC1saW5rLW1lbnRpb24tY3VycmVudDpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG59XG5cbi5nbC1saW5rLW1lbnRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1saW5rLW1lbnRpb24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1saW5rLW1lbnRpb24sIC5nbC1saW5rLW1lbnRpb246aG92ZXIsIC5nbC1saW5rLW1lbnRpb246YWN0aXZlLCAuZ2wtbGluay1tZW50aW9uOmZvY3VzLXZpc2libGUsIC5nbC1saW5rLW1lbnRpb246Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtbGluay1tZW50aW9uLXRleHQtY29sb3ItZGVmYXVsdCk7XG59XG5cbi5nbC1saW5rLW1lbnRpb24tY3VycmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWxpbmstbWVudGlvbi1iYWNrZ3JvdW5kLWNvbG9yLWN1cnJlbnQpO1xufVxuLmdsLWxpbmstbWVudGlvbi1jdXJyZW50LCAuZ2wtbGluay1tZW50aW9uLWN1cnJlbnQ6aG92ZXIsIC5nbC1saW5rLW1lbnRpb24tY3VycmVudDphY3RpdmUsIC5nbC1saW5rLW1lbnRpb24tY3VycmVudDpmb2N1cy12aXNpYmxlLCAuZ2wtbGluay1tZW50aW9uLWN1cnJlbnQ6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtbGluay1tZW50aW9uLXRleHQtY29sb3ItY3VycmVudCk7XG59XG5cbi5nbC1zcGlubmVyLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1sZWFkaW5nLTA7XG4gIEBhcHBseSBnbC10ZXh0LWNlbnRlcjtcbn1cblxuLmdsLXNwaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZnVsbDtcbiAgQGFwcGx5IGdsLWJvcmRlci1zb2xpZDtcbiAgQGFwcGx5IGdsLW14LWF1dG87XG4gIEBhcHBseSBnbC1teS0wO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtYW5pbWF0ZS1zcGluO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBib3JkZXItd2lkdGg6IDJweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJSBjYWxjKDFyZW0gLyAyICsgMnB4KTtcbn1cbi5nbC1zcGlubmVyLmdsLXNwaW5uZXItbWQge1xuICB3aWR0aDogMS41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCUgY2FsYygxLjVyZW0gLyAyICsgM3B4KTtcbn1cbi5nbC1zcGlubmVyLmdsLXNwaW5uZXItbGcge1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBib3JkZXItd2lkdGg6IDNweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJSBjYWxjKDJyZW0gLyAyICsgM3B4KTtcbn1cbi5nbC1zcGlubmVyLmdsLXNwaW5uZXIteGwge1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiA0cmVtO1xuICBib3JkZXItd2lkdGg6IDRweDtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJSBjYWxjKDRyZW0gLyAyICsgNHB4KTtcbn1cbi5nbC1zcGlubmVyLmdsLXNwaW5uZXItZGFyayB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtc3Bpbm5lci10cmFjay1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ2wtc3Bpbm5lci1zZWdtZW50LWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLXNwaW5uZXIuZ2wtc3Bpbm5lci1saWdodCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtc3Bpbm5lci10cmFjay1jb2xvci1saWdodCk7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1saWdodCk7XG59XG5cbi5nbC1kb3RzLWxvYWRlciB7XG4gIEBhcHBseSBnbC1sZWFkaW5nLTA7XG4gIEBhcHBseSBnbC10ZXh0LWNlbnRlcjtcbn1cblxuLmdsLWRvdHMtbG9hZGVyOjpiZWZvcmUsXG4uZ2wtZG90cy1sb2FkZXIgPiBzcGFuLCAuZ2wtZG90cy1sb2FkZXI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBhbmltYXRpb246IGdsLWRvdHMtbG9hZGVyLWFuaW1hdGlvbiAxNDAwbXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG59XG4uZ2wtZG90cy1sb2FkZXI6OmJlZm9yZSB7XG4gIGFuaW1hdGlvbi1kZWxheTogLTAuM3M7XG59XG4uZ2wtZG90cy1sb2FkZXIgPiBzcGFuIHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAtMC4xNXM7XG59XG4uZ2wtZG90cy1sb2FkZXI6OmFmdGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG4uZ2wtZG90cy1sb2FkZXI6OmJlZm9yZSxcbi5nbC1kb3RzLWxvYWRlciA+IHNwYW4sIC5nbC1kb3RzLWxvYWRlcjo6YWZ0ZXIge1xuICB3aWR0aDogMC4zNzVyZW07XG4gIGhlaWdodDogMC4zNzVyZW07XG4gIG1hcmdpbi1yaWdodDogY2FsYygwLjM3NXJlbSAvIDIpO1xufVxuLmdsLWRvdHMtbG9hZGVyLmdsLWRvdHMtbG9hZGVyOjpiZWZvcmUsXG4uZ2wtZG90cy1sb2FkZXIuZ2wtZG90cy1sb2FkZXIgPiBzcGFuLCAuZ2wtZG90cy1sb2FkZXIuZ2wtZG90cy1sb2FkZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1zdWJ0bGUpO1xufVxuLmdsLWRvdHMtbG9hZGVyLmdsLWRvdHMtbG9hZGVyLW1kOjpiZWZvcmUsXG4uZ2wtZG90cy1sb2FkZXIuZ2wtZG90cy1sb2FkZXItbWQgPiBzcGFuLCAuZ2wtZG90cy1sb2FkZXIuZ2wtZG90cy1sb2FkZXItbWQ6OmFmdGVyIHtcbiAgd2lkdGg6IDAuNXJlbTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogY2FsYygwLjVyZW0gLyAyKTtcbn1cbi5nbC1kb3RzLWxvYWRlci5nbC1kb3RzLWxvYWRlci1sZzo6YmVmb3JlLFxuLmdsLWRvdHMtbG9hZGVyLmdsLWRvdHMtbG9hZGVyLWxnID4gc3BhbiwgLmdsLWRvdHMtbG9hZGVyLmdsLWRvdHMtbG9hZGVyLWxnOjphZnRlciB7XG4gIHdpZHRoOiAwLjc1cmVtO1xuICBoZWlnaHQ6IDAuNzVyZW07XG4gIG1hcmdpbi1yaWdodDogY2FsYygwLjc1cmVtIC8gMik7XG59XG4uZ2wtZG90cy1sb2FkZXIuZ2wtZG90cy1sb2FkZXIteGw6OmJlZm9yZSxcbi5nbC1kb3RzLWxvYWRlci5nbC1kb3RzLWxvYWRlci14bCA+IHNwYW4sIC5nbC1kb3RzLWxvYWRlci5nbC1kb3RzLWxvYWRlci14bDo6YWZ0ZXIge1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoMXJlbSAvIDIpO1xufVxuXG5Aa2V5ZnJhbWVzIGdsLWRvdHMtbG9hZGVyLWFuaW1hdGlvbiB7XG4gIDAlLCA4MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG4uZ2wtbWFya2Rvd24ge1xuICBAYXBwbHkgZ2wtdGV4dC1sZztcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjQ7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1mb250LXJlZ3VsYXI7XG4gIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbn1cbi5nbC1tYXJrZG93biA6Zmlyc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtbXQtMDtcbn1cbi5nbC1tYXJrZG93biBoMSxcbi5nbC1tYXJrZG93biAuZ2wtaDEge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0xO1xuICBAYXBwbHkgZ2wtbXQtNztcbn1cbi5nbC1tYXJrZG93biBoMixcbi5nbC1tYXJrZG93biAuZ2wtaDIge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0yO1xuICBAYXBwbHkgZ2wtbXQtNjtcbn1cbi5nbC1tYXJrZG93biBoMyxcbi5nbC1tYXJrZG93biAuZ2wtaDMge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0zO1xuICBAYXBwbHkgZ2wtbXQtNjtcbn1cbi5nbC1tYXJrZG93biBoNCxcbi5nbC1tYXJrZG93biAuZ2wtaDQge1xuICBAYXBwbHkgZ2wtaGVhZGluZy00O1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5nbC1tYXJrZG93biBoNSxcbi5nbC1tYXJrZG93biAuZ2wtaDUge1xuICBAYXBwbHkgZ2wtaGVhZGluZy01O1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5nbC1tYXJrZG93biBoNixcbi5nbC1tYXJrZG93biAuZ2wtaDYge1xuICBAYXBwbHkgZ2wtaGVhZGluZy02O1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5nbC1tYXJrZG93biBwLFxuLmdsLW1hcmtkb3duIC5nbC1wYXJhZ3JhcGgge1xuICBAYXBwbHkgZ2wtbXQtMDtcbiAgQGFwcGx5IGdsLW1iLTA7XG59XG4uZ2wtbWFya2Rvd24gcCArIHAsXG4uZ2wtbWFya2Rvd24gcCArIC5nbC1wYXJhZ3JhcGgsXG4uZ2wtbWFya2Rvd24gLmdsLXBhcmFncmFwaCArIHAsXG4uZ2wtbWFya2Rvd24gLmdsLXBhcmFncmFwaCArIC5nbC1wYXJhZ3JhcGgge1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5nbC1tYXJrZG93biBwLnNtLFxuLmdsLW1hcmtkb3duIC5nbC1wYXJhZ3JhcGguc20ge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbn1cbi5nbC1tYXJrZG93biAuc20ge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbn1cbi5nbC1tYXJrZG93biAubW9ub3NwYWNlLFxuLmdsLW1hcmtkb3duIGNvZGUge1xuICBAYXBwbHkgZ2wtZm9udC1tb25vc3BhY2U7XG59XG4uZ2wtbWFya2Rvd24gYmxvY2txdW90ZSB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1wbC02O1xuICBAYXBwbHkgZ2wtbXktMztcbiAgQGFwcGx5IGdsLW14LTA7XG4gIGJveC1zaGFkb3c6IGluc2V0IDRweCAwIDAgMCB2YXIoLS1nbC1ib3JkZXItY29sb3Itc3Ryb25nKTtcbn1cbi5nbC1tYXJrZG93biAuaWRpZmYge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1weC0yO1xufVxuLmdsLW1hcmtkb3duIC5kZWxldGlvbiB7XG4gIEBhcHBseSBnbC1iZy1zdGF0dXMtZGFuZ2VyO1xufVxuLmdsLW1hcmtkb3duIC5hZGRpdGlvbiB7XG4gIEBhcHBseSBnbC1iZy1zdGF0dXMtc3VjY2Vzcztcbn1cbi5nbC1tYXJrZG93biBjb2RlIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xuICBAYXBwbHkgZ2wtcHgtMjtcbiAgQGFwcGx5IGdsLXB5LTE7XG59XG4uZ2wtbWFya2Rvd24gcHJlIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1weC00O1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtbXktNztcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWF1dG87XG59XG4uZ2wtbWFya2Rvd24gcHJlIGNvZGUge1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbm9uZTtcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xuICBAYXBwbHkgZ2wtcC0wO1xufVxuLmdsLW1hcmtkb3duIC5hdWRpby1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbn1cbi5nbC1tYXJrZG93biAuYXVkaW8tY29udGFpbmVyIGF1ZGlvIHtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbn1cbi5nbC1tYXJrZG93biAuYXVkaW8tY29udGFpbmVyIGEge1xuICBAYXBwbHkgZ2wtbXQtMztcbn1cbi5nbC1tYXJrZG93biAuYXVkaW8tY29udGFpbmVyIGE6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1tci0yO1xuICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIGNvbnRlbnQ6IFwi8J+TjlwiO1xufVxuLmdsLW1hcmtkb3duIHRhYmxlIHtcbiAgQGFwcGx5IGdsLW15LTc7XG59XG4uZ2wtbWFya2Rvd24gdGFibGUgdGgsXG4uZ2wtbWFya2Rvd24gdGFibGUgdGQge1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgQGFwcGx5IGdsLXB5LTQ7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIDAgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtYWxpZ24tdG9wO1xufVxuLmdsLW1hcmtkb3duIHRhYmxlIHRoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCAwIHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KSwgaW5zZXQgMCAtMXB4IDAgMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIEBhcHBseSBnbC1mb250LWJvbGQ7XG59XG4uZ2wtbWFya2Rvd24gdGFibGUgdGhlYWQge1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xufVxuLmdsLW1hcmtkb3duIHRhYmxlIHRyOm50aC1jaGlsZChldmVuKSB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG5cbi5nbC1jb21wYWN0LW1hcmtkb3duIHtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG59XG4uZ2wtY29tcGFjdC1tYXJrZG93biBoMSxcbi5nbC1jb21wYWN0LW1hcmtkb3duIC5nbC1oMSB7XG4gIEBhcHBseSBnbC1oZWFkaW5nLTEtZml4ZWQ7XG4gIEBhcHBseSBnbC1tdC03O1xufVxuLmdsLWNvbXBhY3QtbWFya2Rvd24gaDIsXG4uZ2wtY29tcGFjdC1tYXJrZG93biAuZ2wtaDIge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0yLWZpeGVkO1xuICBAYXBwbHkgZ2wtbXQtNjtcbn1cbi5nbC1jb21wYWN0LW1hcmtkb3duIGgzLFxuLmdsLWNvbXBhY3QtbWFya2Rvd24gLmdsLWgzIHtcbiAgQGFwcGx5IGdsLWhlYWRpbmctMy1maXhlZDtcbiAgQGFwcGx5IGdsLW10LTY7XG59XG4uZ2wtY29tcGFjdC1tYXJrZG93biBoNCxcbi5nbC1jb21wYWN0LW1hcmtkb3duIC5nbC1oNCB7XG4gIEBhcHBseSBnbC1oZWFkaW5nLTQtZml4ZWQ7XG4gIEBhcHBseSBnbC1tdC01O1xufVxuLmdsLWNvbXBhY3QtbWFya2Rvd24gaDUsXG4uZ2wtY29tcGFjdC1tYXJrZG93biAuZ2wtaDUge1xuICBAYXBwbHkgZ2wtaGVhZGluZy01LWZpeGVkO1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5nbC1jb21wYWN0LW1hcmtkb3duIGg2LFxuLmdsLWNvbXBhY3QtbWFya2Rvd24gLmdsLWg2IHtcbiAgQGFwcGx5IGdsLWhlYWRpbmctNi1maXhlZDtcbiAgQGFwcGx5IGdsLW10LTU7XG59XG4uZ2wtY29tcGFjdC1tYXJrZG93biAuc20ge1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbn1cbi5nbC1jb21wYWN0LW1hcmtkb3duIC5tb25vc3BhY2UsXG4uZ2wtY29tcGFjdC1tYXJrZG93biBjb2RlIHtcbiAgQGFwcGx5IGdsLWZvbnQtbW9ub3NwYWNlO1xufVxuLmdsLWNvbXBhY3QtbWFya2Rvd24gdGFibGUgdGgsXG4uZ2wtY29tcGFjdC1tYXJrZG93biB0YWJsZSB0ZCB7XG4gIEBhcHBseSBnbC1weS0zO1xufVxuXG5ib2R5Lm1vZGFsLW9wZW4ge1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xufVxuXG4uZ2wtbW9kYWwge1xuICBAYXBwbHkgZ2wtQGNvbnRhaW5lci9nbC1tb2RhbDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkge1xuICAuZ2wtbW9kYWwgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBjYWxjKDEwMCUgLSA4cmVtKTtcbiAgfVxufVxuLmdsLW1vZGFsIC5tb2RhbC1zbSB7XG4gIG1heC13aWR0aDogMzJyZW07XG59XG4uZ2wtbW9kYWwgLm1vZGFsLW1kIHtcbiAgbWF4LXdpZHRoOiA0OHJlbTtcbn1cbi5nbC1tb2RhbCAubW9kYWwtbGcge1xuICBtYXgtd2lkdGg6IDYxLjg3NXJlbTtcbn1cbi5nbC1tb2RhbCAubW9kYWwteGwge1xuICBtYXgtd2lkdGg6IDk4JTtcbn1cbi5nbC1tb2RhbCAubW9kYWwtY29udGVudCB7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgQGFwcGx5IGdsLXNoYWRvdy1sZztcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJnLW92ZXJsYXA7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLW1vZGFsLWJvcmRlci1yYWRpdXMpO1xufVxuLmdsLW1vZGFsIC5tb2RhbC1jb250ZW50ID4gOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFyKC0tZ2wtbW9kYWwtYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YXIoLS1nbC1tb2RhbC1ib3JkZXItcmFkaXVzKTtcbn1cbi5nbC1tb2RhbCAubW9kYWwtY29udGVudCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tZ2wtbW9kYWwtYm9yZGVyLXJhZGl1cyk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1nbC1tb2RhbC1ib3JkZXItcmFkaXVzKTtcbn1cbi5nbC1tb2RhbCAubW9kYWwtaGVhZGVyIHtcbiAgQGFwcGx5IGdsLXBiLTM7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbn1cbi5nbC1tb2RhbCAubW9kYWwtaGVhZGVyIC5tb2RhbC10aXRsZSB7XG4gIEBhcHBseSBnbC1oZWFkaW5nLXNjYWxlLTUwMDtcbn1cbi5nbC1tb2RhbCAubW9kYWwtYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDgwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLXAtNTtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC10ZXh0LWxlZnQ7XG4gIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG59XG4uZ2wtbW9kYWwgLm1vZGFsLWZvb3RlciB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1yb3c7XG4gIEBhcHBseSBnbC1wLTU7XG4gIEBhcHBseSBnbC1wdC0zO1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG59XG4uZ2wtbW9kYWwgLm1vZGFsLWZvb3RlciAuYnRuIHtcbiAgQGFwcGx5IGdsLW0tMDtcbn1cbi5nbC1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4gKyAuYnRuOm5vdCguZHJvcGRvd24tdG9nZ2xlLXNwbGl0KSxcbi5nbC1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4gKyAuYnRuLWdyb3VwLFxuLmdsLW1vZGFsIC5tb2RhbC1mb290ZXIgLmJ0bi1ncm91cCArIC5idG4ge1xuICBAYXBwbHkgZ2wtbWwtMztcbn1cbi5nbC1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuZ2wtbW9kYWwgLm1vZGFsLWZvb3RlciB7XG4gICAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICB9XG4gIC5nbC1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4gKyAuYnRuOm5vdCguZHJvcGRvd24tdG9nZ2xlLXNwbGl0KSxcbiAgLmdsLW1vZGFsIC5tb2RhbC1mb290ZXIgLmJ0biArIC5idG4tZ3JvdXAsXG4gIC5nbC1tb2RhbCAubW9kYWwtZm9vdGVyIC5idG4tZ3JvdXAgKyAuYnRuIHtcbiAgICBAYXBwbHkgZ2wtbWwtMDtcbiAgICBAYXBwbHkgZ2wtbXQtMztcbiAgfVxuICAuZ2wtbW9kYWwgLm1vZGFsLWZvb3RlciAuYnRuLWdyb3VwIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgICBAYXBwbHkgZ2wtbXQtMDtcbiAgfVxufVxuLmdsLW1vZGFsIH4gLm1vZGFsLWJhY2tkcm9wIHtcbiAgQGFwcGx5IGdsLWJnLW92ZXJsYXk7XG4gIG9wYWNpdHk6IDE7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmdsLW1vZGFsIC5tb2RhbC1kaWFsb2cge1xuICAgIEBhcHBseSBnbC1teC1hdXRvO1xuICAgIEBhcHBseSBnbC1teS0wO1xuICAgIEBhcHBseSBnbC1mbGV4O1xuICAgIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDAlIC0gMXJlbSk7XG4gIH1cbn1cblxuLmdsLW5hdi1pdGVtIHtcbiAgQGFwcGx5IGdsLXJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWdhcC0zO1xuICBAYXBwbHkgZ2wtcHktMTtcbiAgQGFwcGx5IGdsLXB4LTM7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gIEBhcHBseSBnbC10ZXh0LWxlZnQ7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgQGFwcGx5IGdsLWN1cnNvci1wb2ludGVyO1xuICBAYXBwbHkgZ2wtYXBwZWFyYW5jZS1ub25lO1xuICBAYXBwbHkgZm9jdXMtdmlzaWJsZTpnbC1mb2N1cy1pbnNldDtcbiAgbWluLWhlaWdodDogMS43NXJlbTtcbiAgbWluLXdpZHRoOiAxLjc1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1uYXYtaXRlbS1ib3JkZXItcmFkaXVzKTtcbiAgZm9udC1zaXplOiB2YXIoLS1nbC1uYXYtaXRlbS1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9udC13ZWlnaHQpO1xuICBjb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1uYXYtaXRlbS5nbC1uYXYtaXRlbS1oYXMtc3RhcnQtc2xvdCB7XG4gIEBhcHBseSBnbC1wbC0yO1xufVxuLmdsLW5hdi1pdGVtLmdsLW5hdi1pdGVtLWhhcy1lbmQtc2xvdCB7XG4gIEBhcHBseSBnbC1wci0yO1xufVxuLmdsLW5hdi1pdGVtLmdsLW5hdi1pdGVtLWlzLWljb24tb25seSB7XG4gIEBhcHBseSBnbC1weC0xO1xufVxuLmdsLW5hdi1pdGVtOmhvdmVyIHtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbn1cbi5nbC1uYXYtaXRlbTpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbn1cbi5nbC1uYXYtaXRlbTphY3RpdmUsIC5nbC1uYXYtaXRlbTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbn1cbi5nbC1uYXYtaXRlbS5zZWxlY3RlZCB7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb250LXdlaWdodCk7XG4gIGNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLW5hdi1pdGVtLnNlbGVjdGVkOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbn1cbi5nbC1uYXYtaXRlbS5zZWxlY3RlZDpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbn1cbi5nbC1uYXYtaXRlbS5zZWxlY3RlZDphY3RpdmUsIC5nbC1uYXYtaXRlbS5zZWxlY3RlZDpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbn1cblxuLmdsLW5hdi1pdGVtLnNlbGVjdGVkOjpiZWZvcmUge1xuICBAYXBwbHkgZ2wtYWJzb2x1dGU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWluZGljYXRvci1jb2xvcik7XG59XG5cbi5nbC1uYXYtaXRlbS1pbmRpY2F0b3ItbGVmdC5zZWxlY3RlZDo6YmVmb3JlIHtcbiAgQGFwcGx5IC1nbC1sZWZ0LTM7XG4gIEBhcHBseSBnbC10b3AtMjtcbiAgQGFwcGx5IGdsLWJvdHRvbS0yO1xuICBAYXBwbHkgZ2wtdy0xO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1yLWRlZmF1bHQ7XG59XG5cbi5nbC1uYXYtaXRlbS1pbmRpY2F0b3ItcmlnaHQuc2VsZWN0ZWQ6OmJlZm9yZSB7XG4gIEBhcHBseSAtZ2wtcmlnaHQtMztcbiAgQGFwcGx5IGdsLXRvcC0yO1xuICBAYXBwbHkgZ2wtYm90dG9tLTI7XG4gIEBhcHBseSBnbC13LTE7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWwtZGVmYXVsdDtcbn1cblxuLmdsLW5hdi1pdGVtLWluZGljYXRvci1ib3R0b20uc2VsZWN0ZWQ6OmJlZm9yZSB7XG4gIEBhcHBseSAtZ2wtYm90dG9tLTM7XG4gIEBhcHBseSBnbC1sZWZ0LTI7XG4gIEBhcHBseSBnbC1yaWdodC0yO1xuICBAYXBwbHkgZ2wtaC0xO1xuICBAYXBwbHkgZ2wtcm91bmRlZC10LWRlZmF1bHQ7XG59XG5cbi5nbC1uYXYtaXRlbS1zbG90IHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgQGFwcGx5IGdsLWgtNjtcbiAgQGFwcGx5IGdsLXctNjtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xufVxuXG4uZ2wtbmF2LWl0ZW0tbGFiZWwge1xuICBAYXBwbHkgZ2wtZ3Jvdztcbn1cblxuLmdsLW5hdi1pdGVtLWNoZXZyb24ge1xuICBAYXBwbHkgZ2wtbS1hdXRvO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG5cbi8qXG4gKiBCdXR0b24tc3BlY2lmaWMgdXRpbGl0aWVzXG4gKi9cbi5nbC1idXR0b24ge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG59XG5cbi5nbC1idXR0b246bm90KC5idG4tbGluayk6Zm9jdXMtdmlzaWJsZSwgLmdsLWJ1dHRvbjpub3QoLmJ0bi1saW5rKTphY3RpdmUsIC5nbC1idXR0b246bm90KC5idG4tbGluayk6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xufVxuXG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcbiAgQGFwcGx5IGdsLXB4LTQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtZmlsbC1jdXJyZW50O1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1weS0wO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgbWluLWhlaWdodDogMnJlbTtcbiAgbWluLXdpZHRoOiAycmVtO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm9yZGVyLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCBib3gtc2hhZG93IDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCB0ZXh0LWRlY29yYXRpb24tY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLmdsLWJ1dHRvbi5nbC1idXR0b24ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBtcyAhaW1wb3J0YW50O1xuICB9XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uIC5nbC1idXR0b24tdGV4dCB7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC10ZXh0LWVsbGlwc2lzO1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3dyYXA7XG4gIHBhZGRpbmctdG9wOiAxcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxcHg7XG4gIG1hcmdpbi10b3A6IC0xcHg7XG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbiAuZ2wtYnV0dG9uLWljb24ge1xuICBAYXBwbHkgZ2wtaC01O1xuICBAYXBwbHkgZ2wtdy01O1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG4gIEBhcHBseSBnbC1tci0yO1xuICB0b3A6IGF1dG87XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbiAuZ2wtYnV0dG9uLWNvdW50IHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBAYXBwbHkgZ2wtZm9udC1ub3JtYWw7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLW1sLTI7XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtcHktMDtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuICBAYXBwbHkgZ2wtYm9yZGVyLTE7XG4gIEBhcHBseSBnbC1ib3JkZXItc29saWQ7XG4gIEBhcHBseSBnbC1ib3JkZXItdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWZ1bGw7XG4gIEBhcHBseSBnbC1taW4tdy0zO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY291bnQtYmFja2dyb3VuZC1jb2xvcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbiBnbC1lbW9qaSB7XG4gIEBhcHBseSBnbC1tci0yO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBhcHBseSBnbC10ZXh0LWxnO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0OjpiZWZvcmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJvcmRlci1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0OmhvdmVyLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnk6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWZvY3VzKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0OmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQuYWN0aXZlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnk6YWN0aXZlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnkuYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmUpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQ6YWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdDphY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LmFjdGl2ZSA6Zm9jdXMtdmlzaWJsZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQuYWN0aXZlOmZvY3VzLXZpc2libGU6YWN0aXZlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnk6YWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnk6YWN0aXZlOmZvY3VzLXZpc2libGU6YWN0aXZlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnkuYWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnkuYWN0aXZlOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQuc2VsZWN0ZWQsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeS5zZWxlY3RlZCB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC5zZWxlY3RlZDo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnkuc2VsZWN0ZWQ6OmJlZm9yZSB7XG4gIHdpZHRoOiAycHggIWltcG9ydGFudDtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LnNlbGVjdGVkOjpiZWZvcmUsXG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC5zZWxlY3RlZCArIC5nbC1idXR0b246OmJlZm9yZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQtc2Vjb25kYXJ5LnNlbGVjdGVkOjpiZWZvcmUsXG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnkuc2VsZWN0ZWQgKyAuZ2wtYnV0dG9uOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQuc2VsZWN0ZWQsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeS5zZWxlY3RlZCB7XG4gIGJvcmRlci13aWR0aDogMXB4O1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQuc2VsZWN0ZWQ6aG92ZXIsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeS5zZWxlY3RlZDpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXIpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQuc2VsZWN0ZWQ6aG92ZXI6OmJlZm9yZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQuc2VsZWN0ZWQ6aG92ZXIgKyAuZ2wtYnV0dG9uOjpiZWZvcmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeS5zZWxlY3RlZDpob3Zlcjo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnkuc2VsZWN0ZWQ6aG92ZXIgKyAuZ2wtYnV0dG9uOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LnNlbGVjdGVkOmZvY3VzLXZpc2libGUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeS5zZWxlY3RlZDpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xuICBAYXBwbHkgZ2wtZm9jdXM7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC5zZWxlY3RlZDpmb2N1cy12aXNpYmxlOjpiZWZvcmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LnNlbGVjdGVkOmZvY3VzLXZpc2libGUgKyAuZ2wtYnV0dG9uOjpiZWZvcmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeS5zZWxlY3RlZDpmb2N1cy12aXNpYmxlOjpiZWZvcmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeS5zZWxlY3RlZDpmb2N1cy12aXNpYmxlICsgLmdsLWJ1dHRvbjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC5zZWxlY3RlZDphY3RpdmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LnNlbGVjdGVkLmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQtc2Vjb25kYXJ5LnNlbGVjdGVkOmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQtc2Vjb25kYXJ5LnNlbGVjdGVkLmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1hY3RpdmUpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LnNlbGVjdGVkOmFjdGl2ZTo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC5zZWxlY3RlZC5hY3RpdmU6OmJlZm9yZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQuc2VsZWN0ZWQ6YWN0aXZlICsgLmdsLWJ1dHRvbjo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC5zZWxlY3RlZC5hY3RpdmUgKyAuZ2wtYnV0dG9uOjpiZWZvcmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeS5zZWxlY3RlZDphY3RpdmU6OmJlZm9yZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQtc2Vjb25kYXJ5LnNlbGVjdGVkLmFjdGl2ZTo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnkuc2VsZWN0ZWQ6YWN0aXZlICsgLmdsLWJ1dHRvbjo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC1zZWNvbmRhcnkuc2VsZWN0ZWQuYWN0aXZlICsgLmdsLWJ1dHRvbjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1hY3RpdmUpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLXJlc2V0OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXRlcnRpYXJ5IHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQtdGVydGlhcnk6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm9yZGVyLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQtdGVydGlhcnk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC10ZXJ0aWFyeTpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZm9jdXMpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQtdGVydGlhcnk6YWN0aXZlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC10ZXJ0aWFyeS5hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC10ZXJ0aWFyeTphY3RpdmUgOmZvY3VzLXZpc2libGUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXRlcnRpYXJ5OmFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRlZmF1bHQtdGVydGlhcnkuYWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGVmYXVsdC10ZXJ0aWFyeS5hY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm9yZGVyLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm06aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybTpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXMpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm06YWN0aXZlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybS5hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybTphY3RpdmUgOmZvY3VzLXZpc2libGUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtOmFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm0uYWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybS5hY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybS1zZWNvbmRhcnkge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybS1zZWNvbmRhcnk6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJvcmRlci1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXNlY29uZGFyeTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXNlY29uZGFyeTpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZm9jdXMpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm0tc2Vjb25kYXJ5OmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm0tc2Vjb25kYXJ5LmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItYWN0aXZlKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXNlY29uZGFyeTphY3RpdmUgOmZvY3VzLXZpc2libGUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXNlY29uZGFyeTphY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXNlY29uZGFyeS5hY3RpdmUgOmZvY3VzLXZpc2libGUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXNlY29uZGFyeS5hY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybS10ZXJ0aWFyeSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXRlcnRpYXJ5OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJvcmRlci1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXRlcnRpYXJ5OmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXIpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm0tdGVydGlhcnk6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXRlcnRpYXJ5OmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm0tdGVydGlhcnkuYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmUpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm0tdGVydGlhcnk6YWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybS10ZXJ0aWFyeTphY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1jb25maXJtLXRlcnRpYXJ5LmFjdGl2ZSA6Zm9jdXMtdmlzaWJsZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm0tdGVydGlhcnkuYWN0aXZlOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kYW5nZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJvcmRlci1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kYW5nZXI6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyOmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci5hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyOmFjdGl2ZSA6Zm9jdXMtdmlzaWJsZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlcjphY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kYW5nZXIuYWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLmFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kYW5nZXItc2Vjb25kYXJ5IHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci1zZWNvbmRhcnk6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm9yZGVyLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci1zZWNvbmRhcnk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXNlY29uZGFyeTpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZm9jdXMpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci1zZWNvbmRhcnk6YWN0aXZlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXNlY29uZGFyeS5hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXNlY29uZGFyeTphY3RpdmUgOmZvY3VzLXZpc2libGUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kYW5nZXItc2Vjb25kYXJ5OmFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci1zZWNvbmRhcnkuYWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXNlY29uZGFyeS5hY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXRlcnRpYXJ5IHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci10ZXJ0aWFyeTo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJvcmRlci1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kYW5nZXItdGVydGlhcnk6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXRlcnRpYXJ5OmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXRlcnRpYXJ5OmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci10ZXJ0aWFyeS5hY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSk7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXRlcnRpYXJ5OmFjdGl2ZSA6Zm9jdXMtdmlzaWJsZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci10ZXJ0aWFyeTphY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kYW5nZXItdGVydGlhcnkuYWN0aXZlIDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXRlcnRpYXJ5LmFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXNlY29uZGFyeSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWNvbmZpcm0tc2Vjb25kYXJ5LCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tZGFuZ2VyLXNlY29uZGFyeSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLXJlc2V0LXNlY29uZGFyeSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLXJlc2V0LXRlcnRpYXJ5IHtcbiAgICBjb2xvcjogTGlua1RleHQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1kZWZhdWx0LXRlcnRpYXJ5LCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tY29uZmlybS10ZXJ0aWFyeSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWRhbmdlci10ZXJ0aWFyeSB7XG4gICAgY29sb3I6IExpbmtUZXh0O1xuICAgIG1peC1ibGVuZC1tb2RlOiBpbml0aWFsO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLXNtLCAuYnRuLWdyb3VwLXNtID4gLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuIHtcbiAgQGFwcGx5IGdsLXB4LTM7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgbWluLWhlaWdodDogMS41cmVtO1xuICBtaW4td2lkdGg6IDEuNXJlbTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1zbSBnbC1lbW9qaSwgLmJ0bi1ncm91cC1zbSA+IC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0biBnbC1lbW9qaSB7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWljb24ge1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1wLTA7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4taWNvbiAuZ2wtYnV0dG9uLWljb24ge1xuICBAYXBwbHkgZ2wtbXItMDtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ1dHRvbi1lbGxpcHNpcy1ob3Jpem9udGFsLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idXR0b24tZWxsaXBzaXMtaG9yaXpvbnRhbC5idG4tc20ge1xuICBAYXBwbHkgZ2wtcHgtMjtcbiAgbWluLWhlaWdodDogYXV0bztcbiAgbWluLXdpZHRoOiBhdXRvO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnV0dG9uLWVsbGlwc2lzLWhvcml6b250YWwgc3ZnLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idXR0b24tZWxsaXBzaXMtaG9yaXpvbnRhbC5idG4tc20gc3ZnIHtcbiAgQGFwcGx5IGdsLWgtNTtcbiAgQGFwcGx5IGdsLXctNTtcbiAgQGFwcGx5IGdsLW0tMDtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1sYWJlbCwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWxhYmVsOmhvdmVyLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tbGFiZWw6Zm9jdXMtdmlzaWJsZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWxhYmVsOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIEBhcHBseSBnbC1jdXJzb3ItZGVmYXVsdDtcbiAgdXNlci1zZWxlY3Q6IHRleHQ7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tbGluayB7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1weC0wO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1idXR0b24tbGluay1ib3JkZXItcmFkaXVzKTtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZGVmYXVsdCk7XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG4gIG1pbi13aWR0aDogYXV0bztcbiAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogYXV0bztcbiAgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBzb2xpZDtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1saW5rOmhvdmVyIHtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1ob3Zlcik7XG4gIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1ob3Zlcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tbGluazphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1hY3RpdmUpO1xuICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItYWN0aXZlKTtcbn1cbi5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1saW5rOmFjdGl2ZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWxpbms6Zm9jdXMtdmlzaWJsZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWxpbms6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tbGluayB7XG4gICAgY29sb3I6IExpbmtUZXh0O1xuICB9XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tYmxvY2sge1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gIEBhcHBseSBnbC1tdC0yO1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uZGlzYWJsZWQsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5kaXNhYmxlZDpmb2N1cy12aXNpYmxlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5kaXNhYmxlZDphY3RpdmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uLmRpc2FibGVkLnNlbGVjdGVkLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbltkaXNhYmxlZF0sIC5nbC1idXR0b24uZ2wtYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmdsLWJ1dHRvbi5nbC1idXR0b25bZGlzYWJsZWRdOmZvY3VzLXZpc2libGUsIC5nbC1idXR0b24uZ2wtYnV0dG9uW2Rpc2FibGVkXTphY3RpdmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uW2Rpc2FibGVkXS5zZWxlY3RlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgb3BhY2l0eTogMTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uZGlzYWJsZWQ6OmJlZm9yZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uZGlzYWJsZWQ6aG92ZXI6OmJlZm9yZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5kaXNhYmxlZDphY3RpdmU6OmJlZm9yZSwgLmdsLWJ1dHRvbi5nbC1idXR0b24uZGlzYWJsZWQuc2VsZWN0ZWQ6OmJlZm9yZSwgLmdsLWJ1dHRvbi5nbC1idXR0b25bZGlzYWJsZWRdOjpiZWZvcmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uW2Rpc2FibGVkXTpob3Zlcjo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbltkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZTo6YmVmb3JlLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbltkaXNhYmxlZF06YWN0aXZlOjpiZWZvcmUsIC5nbC1idXR0b24uZ2wtYnV0dG9uW2Rpc2FibGVkXS5zZWxlY3RlZDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRpc2FibGVkLWJvcmRlci1jb2xvcik7XG59XG4uZ2wtYnV0dG9uLmdsLWJ1dHRvbi5kaXNhYmxlZFtjbGFzcyo9LXRlcnRpYXJ5XSwgLmdsLWJ1dHRvbi5nbC1idXR0b25bZGlzYWJsZWRdW2NsYXNzKj0tdGVydGlhcnldLCAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tbGluay5kaXNhYmxlZCwgLmdsLWJ1dHRvbi5nbC1idXR0b24uYnRuLWxpbmtbZGlzYWJsZWRdIHtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xufVxuLmdsLWJ1dHRvbi5nbC1idXR0b24uZGlzYWJsZWRbY2xhc3MqPS10ZXJ0aWFyeV06bm90KDpmb2N1cy12aXNpYmxlKSwgLmdsLWJ1dHRvbi5nbC1idXR0b25bZGlzYWJsZWRdW2NsYXNzKj0tdGVydGlhcnldOm5vdCg6Zm9jdXMtdmlzaWJsZSksIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1saW5rLmRpc2FibGVkOm5vdCg6Zm9jdXMtdmlzaWJsZSksIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1saW5rW2Rpc2FibGVkXTpub3QoOmZvY3VzLXZpc2libGUpIHtcbiAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xufVxuXG4uZ2wtYnV0dG9uLXRleHQ6aGFzKC5nbC1zci1vbmx5KSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSxcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbiksXG4uZ2wtZHJvcGRvd24uYnRuLWdyb3VwIHtcbiAgQGFwcGx5IGdsLXJlbGF0aXZlO1xufVxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1idXR0b246bm90KDpmaXJzdC1jaGlsZCksXG4uZ2wtYnV0dG9uLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4uZ2wtYnV0dG9uLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLW5ldy1kcm9wZG93bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4uYnRuLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgPiAuZ2wtYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmdsLWRyb3Bkb3duLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuLmdsLWRyb3Bkb3duLmJ0bi1ncm91cCA+IC5nbC1uZXctZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbC1ub25lIGdsLWJvcmRlci1sLTA7XG59XG4uZ2wtYnV0dG9uLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5nbC1idXR0b24tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1uZXctZHJvcGRvd246bm90KDpsYXN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4uYnRuLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuLmJ0bi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1uZXctZHJvcGRvd246bm90KDpsYXN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4uZ2wtZHJvcGRvd24uYnRuLWdyb3VwID4gLmdsLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuLmdsLWRyb3Bkb3duLmJ0bi1ncm91cCA+IC5nbC1uZXctZHJvcGRvd246bm90KDpsYXN0LWNoaWxkKSA+IC5nbC1idXR0b24ge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1yLW5vbmUgZ2wtYm9yZGVyLXItMDtcbn1cbi5nbC1idXR0b24tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgPiAuZ2wtYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1uZXctZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuLmJ0bi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1idXR0b246bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4uYnRuLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLW5ldy1kcm9wZG93bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4uZ2wtZHJvcGRvd24uYnRuLWdyb3VwID4gLmdsLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZSBnbC1pc29sYXRlIGdsLW1sLVsxcHhdO1xufVxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1idXR0b246bm90KDpmaXJzdC1jaGlsZCk6OmJlZm9yZSxcbi5nbC1idXR0b24tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbjo6YmVmb3JlLFxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1uZXctZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uOjpiZWZvcmUsXG4uYnRuLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKTo6YmVmb3JlLFxuLmJ0bi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uOjpiZWZvcmUsXG4uYnRuLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLW5ldy1kcm9wZG93bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b246OmJlZm9yZSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgPiAuZ2wtYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpOjpiZWZvcmUsXG4uZ2wtZHJvcGRvd24uYnRuLWdyb3VwID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b246OmJlZm9yZSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgQGFwcGx5IGdsLWFic29sdXRlIGdsLWJvdHRvbS1bLTFweF0gZ2wtbGVmdC1bLTFweF0gZ2wtdG9wLVstMXB4XSBnbC1ibG9jayBnbC13LVsxcHhdO1xuICB6LWluZGV4OiA0O1xufVxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1idXR0b246Zm9jdXMtdmlzaWJsZSwgLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1idXR0b246YWN0aXZlLCAuZ2wtYnV0dG9uLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLWJ1dHRvbi5hY3RpdmUsXG4uYnRuLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pID4gLmdsLWJ1dHRvbjpmb2N1cy12aXNpYmxlLFxuLmJ0bi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1idXR0b246YWN0aXZlLFxuLmJ0bi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSA+IC5nbC1idXR0b24uYWN0aXZlLFxuLmdsLWRyb3Bkb3duLmJ0bi1ncm91cCA+IC5nbC1idXR0b246Zm9jdXMtdmlzaWJsZSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgPiAuZ2wtYnV0dG9uOmFjdGl2ZSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgPiAuZ2wtYnV0dG9uLmFjdGl2ZSB7XG4gIHotaW5kZXg6IDM7XG59XG4uZ2wtYnV0dG9uLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pIC5idG4tY29uZmlybTpub3QoLmRpc2FibGVkKTpub3QoW2Rpc2FibGVkXSk6OmJlZm9yZSxcbi5nbC1idXR0b24tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgLmJ0bi1kYW5nZXI6bm90KC5kaXNhYmxlZCk6bm90KFtkaXNhYmxlZF0pOjpiZWZvcmUsXG4uYnRuLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pIC5idG4tY29uZmlybTpub3QoLmRpc2FibGVkKTpub3QoW2Rpc2FibGVkXSk6OmJlZm9yZSxcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgLmJ0bi1kYW5nZXI6bm90KC5kaXNhYmxlZCk6bm90KFtkaXNhYmxlZF0pOjpiZWZvcmUsXG4uZ2wtZHJvcGRvd24uYnRuLWdyb3VwIC5idG4tY29uZmlybTpub3QoLmRpc2FibGVkKTpub3QoW2Rpc2FibGVkXSk6OmJlZm9yZSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgLmJ0bi1kYW5nZXI6bm90KC5kaXNhYmxlZCk6bm90KFtkaXNhYmxlZF0pOjpiZWZvcmUge1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG59XG4uZ2wtYnV0dG9uLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pIC5nbC1idXR0b24uYnRuLWljb24gLmdsLWJ1dHRvbi10ZXh0IC5nbC1idXR0b24taWNvbixcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgLmdsLWJ1dHRvbi5idG4taWNvbiAuZ2wtYnV0dG9uLXRleHQgLmdsLWJ1dHRvbi1pY29uLFxuLmdsLWRyb3Bkb3duLmJ0bi1ncm91cCAuZ2wtYnV0dG9uLmJ0bi1pY29uIC5nbC1idXR0b24tdGV4dCAuZ2wtYnV0dG9uLWljb24ge1xuICBAYXBwbHkgZ2wtbXItWy0xcHhdO1xufVxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKS5kaXNhYmxlZDo6YmVmb3JlLCAuZ2wtYnV0dG9uLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pW2Rpc2FibGVkXTo6YmVmb3JlLFxuLmJ0bi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKS5kaXNhYmxlZDo6YmVmb3JlLFxuLmJ0bi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKVtkaXNhYmxlZF06OmJlZm9yZSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAuZGlzYWJsZWQ6OmJlZm9yZSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXBbZGlzYWJsZWRdOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbn1cbi5nbC1idXR0b24tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgLmJ0bi1jb25maXJtLXNlY29uZGFyeTpub3QoLmRpc2FibGVkKTpub3QoW2Rpc2FibGVkXSk6OmJlZm9yZSxcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgLmJ0bi1jb25maXJtLXNlY29uZGFyeTpub3QoLmRpc2FibGVkKTpub3QoW2Rpc2FibGVkXSk6OmJlZm9yZSxcbi5nbC1kcm9wZG93bi5idG4tZ3JvdXAgLmJ0bi1jb25maXJtLXNlY29uZGFyeTpub3QoLmRpc2FibGVkKTpub3QoW2Rpc2FibGVkXSk6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG4uZ2wtYnV0dG9uLWdyb3VwOm5vdCguZ2wta2V5c2V0LXBhZ2luYXRpb24pIC5idG4tZGFuZ2VyLXNlY29uZGFyeTpub3QoLmRpc2FibGVkKTpub3QoW2Rpc2FibGVkXSk6OmJlZm9yZSxcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbikgLmJ0bi1kYW5nZXItc2Vjb25kYXJ5Om5vdCguZGlzYWJsZWQpOm5vdChbZGlzYWJsZWRdKTo6YmVmb3JlLFxuLmdsLWRyb3Bkb3duLmJ0bi1ncm91cCAuYnRuLWRhbmdlci1zZWNvbmRhcnk6bm90KC5kaXNhYmxlZCk6bm90KFtkaXNhYmxlZF0pOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG5cbi5nbC1idXR0b24tZ3JvdXAtdmVydGljYWwsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgQGFwcGx5IGdsLWZsZXgtY29sIGdsLWl0ZW1zLXN0YXJ0IGdsLWp1c3RpZnktY2VudGVyO1xufVxuLmdsLWJ1dHRvbi1ncm91cC12ZXJ0aWNhbCA+IC5nbC1idXR0b24sXG4uZ2wtYnV0dG9uLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cCxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuZ2wtYnV0dG9uLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXAge1xuICBAYXBwbHkgZ2wtcmVsYXRpdmUgZ2wtdy1mdWxsO1xufVxuLmdsLWJ1dHRvbi1ncm91cC12ZXJ0aWNhbCA+IC5nbC1idXR0b246bm90KDpmaXJzdC1jaGlsZCksXG4uZ2wtYnV0dG9uLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4uZ2wtYnV0dG9uLWdyb3VwLXZlcnRpY2FsID4gLmdsLW5ldy1kcm9wZG93bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmdsLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXQtbm9uZSBnbC1ib3JkZXItdC0wO1xufVxuLmdsLWJ1dHRvbi1ncm91cC12ZXJ0aWNhbCA+IC5nbC1idXR0b246bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uZ2wtYnV0dG9uLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbi5nbC1idXR0b24tZ3JvdXAtdmVydGljYWwgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6bGFzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5nbC1idXR0b246bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6bGFzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYi1ub25lIGdsLWJvcmRlci1iLTA7XG59XG4uZ2wtYnV0dG9uLWdyb3VwLXZlcnRpY2FsID4gLmdsLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbi5nbC1idXR0b24tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbi5nbC1idXR0b24tZ3JvdXAtdmVydGljYWwgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuZ2wtYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5nbC1uZXctZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXJlbGF0aXZlIGdsLW10LVsxcHhdO1xufVxuLmdsLWJ1dHRvbi1ncm91cC12ZXJ0aWNhbCA+IC5nbC1idXR0b246bm90KDpmaXJzdC1jaGlsZCk6OmJlZm9yZSxcbi5nbC1idXR0b24tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbjo6YmVmb3JlLFxuLmdsLWJ1dHRvbi1ncm91cC12ZXJ0aWNhbCA+IC5nbC1uZXctZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uOjpiZWZvcmUsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmdsLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKTo6YmVmb3JlLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uOjpiZWZvcmUsXG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmdsLW5ldy1kcm9wZG93bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZSBnbC1sZWZ0LVstMXB4XSBnbC1yaWdodC1bLTFweF0gZ2wtdG9wLVstMXB4XSBnbC1ibG9jayBnbC1oLVsxcHhdO1xuICB6LWluZGV4OiA0O1xufVxuLmdsLWJ1dHRvbi1ncm91cC12ZXJ0aWNhbCAuYnRuLWNvbmZpcm06bm90KC5kaXNhYmxlZCk6bm90KFtkaXNhYmxlZF0pOjpiZWZvcmUsXG4uZ2wtYnV0dG9uLWdyb3VwLXZlcnRpY2FsIC5idG4tZGFuZ2VyOm5vdCguZGlzYWJsZWQpOm5vdChbZGlzYWJsZWRdKTo6YmVmb3JlLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCAuYnRuLWNvbmZpcm06bm90KC5kaXNhYmxlZCk6bm90KFtkaXNhYmxlZF0pOjpiZWZvcmUsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIC5idG4tZGFuZ2VyOm5vdCguZGlzYWJsZWQpOm5vdChbZGlzYWJsZWRdKTo6YmVmb3JlIHtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xufVxuXG4uZ2wtcGFnaW5hdGlvbiB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC10ZXh0LW5vd3JhcDtcbn1cbi5nbC1wYWdpbmF0aW9uIHVsIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXMpO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLW0tMDtcbiAgQGFwcGx5IGdsLXBsLTA7XG4gIEBhcHBseSBnbC1saXN0LW5vbmU7XG59XG4uZ2wtcGFnaW5hdGlvbiBhIHtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG5cbi5nbC1wYWdpbmF0aW9uLWl0ZW0ge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hY3Rpb24tYm9yZGVyLXJhZGl1cyk7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCBib3JkZXItY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJveC1zaGFkb3cgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gIEBhcHBseSBnbC1wLTM7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgQGFwcGx5IGdsLW1pbi13LTc7XG4gIEBhcHBseSBnbC10ZXh0LWNlbnRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNvbGlkO1xuICBAYXBwbHkgZ2wtYWN0aW9uLW5ldXRyYWwtY29sb3JzO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7XG4gIC5nbC1wYWdpbmF0aW9uLWl0ZW0ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBtcyAhaW1wb3J0YW50O1xuICB9XG59XG4uZ2wtcGFnaW5hdGlvbi1pdGVtOmhvdmVyIHtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbn1cbi5nbC1wYWdpbmF0aW9uLWl0ZW06Zm9jdXMtdmlzaWJsZSwgLmdsLXBhZ2luYXRpb24taXRlbTphY3RpdmU6Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbi5nbC1wYWdpbmF0aW9uLWl0ZW06YWN0aXZlIHtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbn1cbi5nbC1wYWdpbmF0aW9uLWl0ZW06bm90KC5kaXNhYmxlZCkuYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLXBhZ2luYXRpb24taXRlbTpub3QoLmRpc2FibGVkKS5hY3RpdmU6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZ2wtcGFnaW5hdGlvbi1pdGVtOm5vdCguZGlzYWJsZWQpLmFjdGl2ZTpmb2N1cy12aXNpYmxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZm9jdXMpO1xufVxuLmdsLXBhZ2luYXRpb24taXRlbTpub3QoLmRpc2FibGVkKS5hY3RpdmU6YWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1hY3RpdmUpO1xufVxuXG4uZ2wtcGFnaW5hdGlvbiAuZGlzYWJsZWQgLmdsLXBhZ2luYXRpb24taXRlbSB7XG4gIEBhcHBseSBnbC1ib3JkZXItdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yKTtcbn1cblxuLmdsLXBhdGgtbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtZmxleDtcbn1cbi5nbC1wYXRoLW5hdiAuZ2wtcGF0aC1uYXYtbGlzdCB7XG4gIEBhcHBseSBnbC1wLTE7XG4gIEBhcHBseSBnbC1tLTA7XG4gIEBhcHBseSBnbC1saXN0LW5vbmU7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWhpZGRlbjtcbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5nbC1wYXRoLW5hdiAuZ2wtcGF0aC1uYXYtbGlzdC1pdGVtIHtcbiAgQGFwcGx5IGdsLW1pbi13LWZpdDtcbiAgcGFkZGluZy10b3A6IDFweDtcbiAgcGFkZGluZy1ib3R0b206IDFweDtcbn1cbi5nbC1wYXRoLW5hdiAuZ2wtcGF0aC1uYXYtbGlzdC1pdGVtOmZpcnN0LW9mLXR5cGUge1xuICBwYWRkaW5nLWxlZnQ6IDFweDtcbn1cbi5nbC1wYXRoLW5hdiAuZ2wtcGF0aC1idXR0b24ge1xuICBAYXBwbHkgZ2wtcGwtNTtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtei0wO1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXRsLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJsLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIG1hcmdpbi1yaWdodDogMC44NzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZ2wtcGF0aC1uYXYgLmdsLXBhdGgtYnV0dG9uOjpiZWZvcmUsIC5nbC1wYXRoLW5hdiAuZ2wtcGF0aC1idXR0b246OmFmdGVyIHtcbiAgQGFwcGx5IGdsLWJnLWluaGVyaXQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICByaWdodDogLTAuNzVyZW07XG4gIHdpZHRoOiAxLjVyZW07XG4gIHotaW5kZXg6IC0xO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHNrZXcoMTRkZWcsIDE0ZGVnKTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC42MjVyZW07XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwLjYyNXJlbTtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMTI1cmVtO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oMTAwJSAwLCAwIDAsIDEwMCUgMTAwJSk7XG59XG4uZ2wtcGF0aC1uYXYgLmdsLXBhdGgtYnV0dG9uOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogMjtcbiAgcmlnaHQ6IGNhbGMoLTAuNzVyZW0gKyAxcHgpO1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksIDAuNXB4IC0wLjVweCAwIDIuNXB4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpO1xuICBjbGlwLXBhdGg6IHBvbHlnb24oMCUgMCUsIDAlIC0zMCUsIDE2MCUgMCUsIDc1JSAxMzAlLCAxMDAlIDEwMCUpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgc2tldygxNGRlZywgMTRkZWcpIHNjYWxlKDAuOTkpO1xufVxuLmdsLXBhdGgtbmF2IC5nbC1wYXRoLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG59XG4uZ2wtcGF0aC1uYXYgLmdsLXBhdGgtYnV0dG9uOmZvY3VzLXZpc2libGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xufVxuLmdsLXBhdGgtbmF2IC5nbC1wYXRoLWJ1dHRvbjphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG59XG4uZ2wtcGF0aC1uYXYgLmdsLXBhdGgtYnV0dG9uOmFjdGl2ZSwgLmdsLXBhdGgtbmF2IC5nbC1wYXRoLWJ1dHRvbjpmb2N1cy12aXNpYmxlLCAuZ2wtcGF0aC1uYXYgLmdsLXBhdGgtYnV0dG9uOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgYm94LXNoYWRvdzogNXB4IC0zcHggMCAtMnB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCA1cHggM3B4IDAgLTJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxcHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxcHg7XG59XG4uZ2wtcGF0aC1uYXYgLmdsLXBhdGgtYnV0dG9uOmFjdGl2ZTo6YmVmb3JlLCAuZ2wtcGF0aC1uYXYgLmdsLXBhdGgtYnV0dG9uOmZvY3VzLXZpc2libGU6OmJlZm9yZSwgLmdsLXBhdGgtbmF2IC5nbC1wYXRoLWJ1dHRvbjpmb2N1cy12aXNpYmxlOmFjdGl2ZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZ2wtcGF0aC1uYXYgLmdsLXBhdGgtYnV0dG9uLmdsLXBhdGgtYWN0aXZlLWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLXBhdGgtbmF2IC5nbC1wYXRoLWJ1dHRvbjpkaXNhYmxlZCB7XG4gIEBhcHBseSBnbC1jdXJzb3Itbm90LWFsbG93ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApO1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3IpO1xufVxuLmdsLXBhdGgtbmF2IC5nbC1wYXRoLWJ1dHRvbjpkaXNhYmxlZDo6YmVmb3JlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5nbC1wYXRoLW5hdiAuZ2wtcGF0aC1mYWRlIHtcbiAgQGFwcGx5IGdsLXctODtcbiAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgQGFwcGx5IGdsLXotMjtcbiAgYm90dG9tOiAwO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5nbC1wYXRoLW5hdiAuZ2wtcGF0aC1mYWRlLWxlZnQge1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSwgdmFyKC0tcGF0aC1iZy1jb2xvcikgMzMlKTtcbn1cbi5nbC1wYXRoLW5hdiAuZ2wtcGF0aC1mYWRlLXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG4gIEBhcHBseSBnbC10ZXh0LXJpZ2h0O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIHZhcigtLXBhdGgtYmctY29sb3IpIDMzJSk7XG59XG4uZ2wtcGF0aC1uYXYgLmdsLWNsZWFyLWljb24tYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXAtMDtcbiAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTtcbn1cbi5nbC1wYXRoLW5hdiAuZ2wtY2xlYXItaWNvbi1idXR0b24gLmdsLWljb24ge1xuICBAYXBwbHkgZ2wtYWxpZ24tbWlkZGxlO1xufVxuXG4uZ2wtcG9wb3ZlciB7XG4gIG1heC13aWR0aDogMTcuNXJlbTtcbiAgQGFwcGx5IGdsLWJnLW92ZXJsYXA7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgQGFwcGx5IGdsLWRyb3Atc2hhZG93LW1kO1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZmVlZGJhY2s7XG59XG4uZ2wtcG9wb3ZlciAucG9wb3Zlci1ib2R5IHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cbi5nbC1wb3BvdmVyLmJzLXBvcG92ZXItdG9wLCAuZ2wtcG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXRvcF0ge1xuICAvKiBXaGVuIHBvcG92ZXIgcG9zaXRpb24gaXMgdG9wLCB0aGUgYXJyb3cgaXMgdHJhbnNsYXRlZCAxIHBpeGVsXG4gICogIGR1ZSB0byB0aGUgYm94LXNoYWRvdyBpbmNsdWRlIGluIG91ciBjdXN0b20gc3R5bGVzLlxuICAqL1xufVxuLmdsLXBvcG92ZXIuYnMtcG9wb3Zlci10b3AgPiAuYXJyb3c6OmJlZm9yZSwgLmdsLXBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdID4gLmFycm93OjpiZWZvcmUge1xuICBib3R0b206IDFweDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTtcbn1cbi5nbC1wb3BvdmVyLmJzLXBvcG92ZXItdG9wID4gLmFycm93OjphZnRlciwgLmdsLXBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj10b3BdID4gLmFycm93OjphZnRlciB7XG4gIGJvdHRvbTogMnB4O1xuICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApO1xufVxuLmdsLXBvcG92ZXIuYnMtcG9wb3Zlci1ib3R0b20gPiAuYXJyb3c6OmJlZm9yZSwgLmdsLXBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dID4gLmFycm93OjpiZWZvcmUge1xuICB0b3A6IDFweDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTtcbn1cbi5nbC1wb3BvdmVyLmJzLXBvcG92ZXItYm90dG9tID4gLmFycm93OjphZnRlciwgLmdsLXBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dID4gLmFycm93OjphZnRlciB7XG4gIHRvcDogMnB4O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApO1xufVxuLmdsLXBvcG92ZXIuYnMtcG9wb3Zlci1ib3R0b20gPiAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSwgLmdsLXBvcG92ZXIuYnMtcG9wb3Zlci1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dID4gLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcCk7XG59XG4uZ2wtcG9wb3Zlci5icy1wb3BvdmVyLXJpZ2h0ID4gLmFycm93OjpiZWZvcmUsIC5nbC1wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49cmlnaHRdID4gLmFycm93OjpiZWZvcmUge1xuICBsZWZ0OiAxcHg7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTtcbn1cbi5nbC1wb3BvdmVyLmJzLXBvcG92ZXItcmlnaHQgPiAuYXJyb3c6OmFmdGVyLCAuZ2wtcG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSA+IC5hcnJvdzo6YWZ0ZXIge1xuICBsZWZ0OiAycHg7XG4gIGJvcmRlci1yaWdodC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTtcbn1cbi5nbC1wb3BvdmVyLmJzLXBvcG92ZXItbGVmdCA+IC5hcnJvdzo6YmVmb3JlLCAuZ2wtcG9wb3Zlci5icy1wb3BvdmVyLWF1dG9beC1wbGFjZW1lbnRePWxlZnRdID4gLmFycm93OjpiZWZvcmUge1xuICByaWdodDogMXB4O1xuICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTtcbn1cbi5nbC1wb3BvdmVyLmJzLXBvcG92ZXItbGVmdCA+IC5hcnJvdzo6YWZ0ZXIsIC5nbC1wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49bGVmdF0gPiAuYXJyb3c6OmFmdGVyIHtcbiAgcmlnaHQ6IDJweDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcCk7XG59XG4uZ2wtcG9wb3ZlciAucG9wb3Zlci1oZWFkZXIge1xuICBAYXBwbHkgZ2wtaGVhZGluZy1zY2FsZS0yMDA7XG4gIEBhcHBseSBnbC1ib3JkZXItYi0wO1xuICBAYXBwbHkgZ2wtcGItMDtcbn1cbi5nbC1wb3BvdmVyLmhhcy10aXRsZSAucG9wb3Zlci1oZWFkZXIge1xuICBAYXBwbHkgZ2wtaHlwaGVucy1hdXRvIGdsLWJyZWFrLWFueXdoZXJlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLmdsLXBvcG92ZXIuaGFzLWNsb3NlLWJ1dHRvbjpub3QoLmhhcy10aXRsZSkgLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG59XG4uZ2wtcG9wb3ZlciAucG9wb3Zlci1ib2R5IHtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1weC00O1xufVxuLmdsLXBvcG92ZXIgLnBvcG92ZXItYm9keSA+IC5wb3BvdmVyLWhyIHtcbiAgQGFwcGx5IGdsLW15LTU7XG4gIEBhcHBseSBnbC1teC0wO1xufVxuXG4uZ2wtcHJvZ3Jlc3MtYmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtcHJvZ3Jlc3MtYmFyLXRyYWNrLWNvbG9yKTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZnVsbDtcbn1cblxuLmdsLXByb2dyZXNzIHtcbiAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC10ZXh0LWNlbnRlcjtcbiAgQGFwcGx5IGdsLXdoaXRlc3BhY2Utbm93cmFwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC42cyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG59XG5cbi5nbC1wcm9ncmVzcy1iYXItcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXByb2dyZXNzLWJhci1pbmRpY2F0b3ItY29sb3ItZGVmYXVsdCk7XG59XG5cbi5nbC1wcm9ncmVzcy1iYXItc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXByb2dyZXNzLWJhci1pbmRpY2F0b3ItY29sb3Itc3VjY2Vzcyk7XG59XG5cbi5nbC1wcm9ncmVzcy1iYXItd2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXByb2dyZXNzLWJhci1pbmRpY2F0b3ItY29sb3Itd2FybmluZyk7XG59XG5cbi5nbC1wcm9ncmVzcy1iYXItZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtcHJvZ3Jlc3MtYmFyLWluZGljYXRvci1jb2xvci1kYW5nZXIpO1xufVxuXG4uZ2wtc2VhcmNoLWJveC1ieS10eXBlLXNlYXJjaC1pY29uIHtcbiAgQGFwcGx5IGdsLXctNTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwLjVyZW07XG4gIHRvcDogY2FsYyg1MCUgLSAxNnB4IC8gMik7XG59XG5cbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2wtc2VhcmNoLWJveC1ieS10eXBlLWxvYWRpbmctaWNvbiB7XG4gIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xuICBAYXBwbHkgZ2wtdy01O1xuICBAYXBwbHkgZ2wtbXItMjtcbn1cblxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1jbGVhciB7XG4gIEBhcHBseSBnbC16LTM7XG59XG5cbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQsXG4uZ2wtc2VhcmNoLWJveC1ieS10eXBlLWlucHV0LmdsLWZvcm0taW5wdXQge1xuICBAYXBwbHkgZ2wtaC03O1xuICBAYXBwbHkgZ2wtcHItNztcbiAgcGFkZGluZy1sZWZ0OiAxLjc1cmVtO1xufVxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1pbnB1dDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQuZ2wtZm9ybS1pbnB1dDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1oaWRkZW47XG59XG5cbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQtYm9yZGVybGVzcyxcbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQtYm9yZGVybGVzcy5nbC1mb3JtLWlucHV0IHtcbiAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtaC1hdXRvO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1wbC03O1xuICBAYXBwbHkgZ2wtcHktNDtcbiAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBwYWRkaW5nLXJpZ2h0OiBjYWxjKDEuNXJlbSArIDAuMjVyZW0pO1xufVxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1pbnB1dC1ib3JkZXJsZXNzOm5vdCguZm9ybS1jb250cm9sLXBsYWludGV4dCk6Zm9jdXMtdmlzaWJsZSxcbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQtYm9yZGVybGVzcy5nbC1mb3JtLWlucHV0Om5vdCguZm9ybS1jb250cm9sLXBsYWludGV4dCk6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtc2VhcmNoLWJveC1ieS10eXBlLWlucHV0LWJvcmRlcmxlc3M6bm90KC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0KTpmb2N1cy12aXNpYmxlLFxuICAuZ2wtc2VhcmNoLWJveC1ieS10eXBlLWlucHV0LWJvcmRlcmxlc3MuZ2wtZm9ybS1pbnB1dDpub3QoLmZvcm0tY29udHJvbC1wbGFpbnRleHQpOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dDtcbiAgfVxufVxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1pbnB1dC1ib3JkZXJsZXNzOjpwbGFjZWhvbGRlcixcbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQtYm9yZGVybGVzcy5nbC1mb3JtLWlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yKTtcbn1cbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQtYm9yZGVybGVzczo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQtYm9yZGVybGVzcy5nbC1mb3JtLWlucHV0Ojotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLWhpZGRlbjtcbn1cblxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1yaWdodC1pY29ucyB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0wO1xuICByaWdodDogMC4yNXJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xufVxuXG4uZ2wtc2VhcmNoLWJveC1ieS1jbGljayB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG59XG4uZ2wtc2VhcmNoLWJveC1ieS1jbGljayAuZ2wtc2VhcmNoLWJveC1ieS1jbGljay1oaXN0b3J5ID4gLmdsLWJ1dHRvbiB7XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLmdsLXNlYXJjaC1ib3gtYnktY2xpY2sgLmdsLXNlYXJjaC1ib3gtYnktY2xpY2staGlzdG9yeSA+IC5nbC1idXR0b24sXG4uZ2wtc2VhcmNoLWJveC1ieS1jbGljayAuZ2wtc2VhcmNoLWJveC1ieS1jbGljay1zZWFyY2gtYnV0dG9uLmdsLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KSAhaW1wb3J0YW50O1xufVxuLmdsLXNlYXJjaC1ib3gtYnktY2xpY2sgLmdsLXNlYXJjaC1ib3gtYnktY2xpY2staGlzdG9yeSA+IC5nbC1idXR0b246ZGlzYWJsZWQsXG4uZ2wtc2VhcmNoLWJveC1ieS1jbGljayAuZ2wtc2VhcmNoLWJveC1ieS1jbGljay1zZWFyY2gtYnV0dG9uLmdsLWJ1dHRvbjpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGlzYWJsZWQpICFpbXBvcnRhbnQ7XG59XG4uZ2wtc2VhcmNoLWJveC1ieS1jbGljayAuZ2wtc2VhcmNoLWJveC1ieS1jbGljay1pbnB1dDo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1oaWRkZW47XG59XG4uZ2wtc2VhcmNoLWJveC1ieS1jbGljayAuZ2wtc2VhcmNoLWJveC1ieS1jbGljay1jbGVhci1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC4yNXJlbTtcbiAgcmlnaHQ6IDAuMjVyZW07XG4gIEBhcHBseSBnbC1tci0yO1xuICBAYXBwbHkgZ2wtei0zO1xufVxuXG4uZ2wtc2VhcmNoLWJveC1ieS1jbGljay13aXRoLXNlYXJjaC1idXR0b24gLmdsLXNlYXJjaC1ib3gtYnktY2xpY2staW5wdXQge1xuICBAYXBwbHkgZ2wtcHItNztcbn1cbi5nbC1zZWFyY2gtYm94LWJ5LWNsaWNrLXdpdGgtc2VhcmNoLWJ1dHRvbiAuZ2wtc2VhcmNoLWJveC1ieS1jbGljay1jbGVhci1idXR0b24ge1xuICByaWdodDogMnJlbTtcbn1cblxuLmdsLXNrZWxldG9uLWxvYWRlci1kZWZhdWx0LWNvbnRhaW5lciB7XG4gIHdpZHRoOiAyMzVweDtcbn1cblxuLmdsLXNrZWxldG9uLWxvYWRlci1maWxsLWJhY2tncm91bmQtY29sb3Ige1xuICBmaWxsOiB2YXIoLS1nbC1za2VsZXRvbi1sb2FkZXItYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi5nbC1za2VsZXRvbi1sb2FkZXIgc3RvcCB7XG4gIEBhcHBseSBnbC1vcGFjaXR5LTEwO1xufVxuLmdsLXNrZWxldG9uLWxvYWRlciAuYmFja2dyb3VuZC1zdG9wIHtcbiAgc3RvcC1jb2xvcjogdmFyKC0tZ2wtc2tlbGV0b24tbG9hZGVyLWJhY2tncm91bmQtY29sb3IpO1xufVxuLmdsLXNrZWxldG9uLWxvYWRlciAuc2hpbW1lci1zdG9wIHtcbiAgc3RvcC1jb2xvcjogdmFyKC0tZ2wtc2tlbGV0b24tbG9hZGVyLXNoaW1tZXItY29sb3IpO1xufVxuXG4uZ2wtdGFicy13cmFwcGVyIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iIGdsLXJlbGF0aXZlIGdsLWZsZXggZ2wtZmxleC13cmFwO1xufVxuXG4uZ2wtdGFicy1uYXYge1xuICBAYXBwbHkgZ2wtZ3Jvdztcbn1cblxuLmdsLXRhYi1uYXYtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLXB4LTQ7XG4gIEBhcHBseSBnbC1weS01O1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC1oLWZ1bGw7XG4gIEBhcHBseSBnbC1hY3Rpb24tbmV1dHJhbC1jb2xvcnM7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJvcmRlci1yYWRpdXMgMC4xcyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG4uZ2wtdGFiLW5hdi1pdGVtOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdHJhbnNsYXRlOiAwIDJweDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWJvdHRvbSAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgdHJhbnNsYXRlIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xuICBib3R0b206IC0xcHg7XG4gIGxlZnQ6IC0xcHg7XG4gIHJpZ2h0OiAtMXB4O1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmdsLXRhYi1uYXYtaXRlbSwgLmdsLXRhYi1uYXYtaXRlbTo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXM7XG4gIH1cbn1cbi5nbC10YWItbmF2LWl0ZW06aG92ZXI6bm90KC5nbC10YWItbmF2LWl0ZW0tYWN0aXZlKTo6YmVmb3JlIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLXN0cm9uZyk7XG4gIHRyYW5zbGF0ZTogMDtcbn1cbi5nbC10YWItbmF2LWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWRlZmF1bHQ7XG59XG4uZ2wtdGFiLW5hdi1pdGVtLmRpc2FibGVkIHtcbiAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLWF1dG87XG4gIEBhcHBseSBnbC1jdXJzb3Itbm90LWFsbG93ZWQ7XG4gIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tZGlzYWJsZWQtZm9yZWdyb3VuZC1jb2xvcik7XG59XG4uZ2wtdGFiLW5hdi1pdGVtLmRpc2FibGVkOmhvdmVyIHtcbiAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xufVxuLmdsLXRhYi1uYXYtaXRlbSA+IC5nbC10YWItY291bnRlci1iYWRnZSB7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBAYXBwbHkgZ2wtbWwtMjtcbn1cblxuLmdsLXRhYi1jb250ZW50IHtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cblxuLmdsLXRhYi1uYXYtaXRlbS1hY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICB6LWluZGV4OiAxO1xufVxuLmdsLXRhYi1uYXYtaXRlbS1hY3RpdmU6YWN0aXZlLCAuZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItYWN0aXZlKSwgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTphY3RpdmUsIC5nbC10YWItbmF2LWl0ZW0tYWN0aXZlOmZvY3VzLXZpc2libGUsIC5nbC10YWItbmF2LWl0ZW0tYWN0aXZlOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1zY3JvbGxhYmxlLXRhYnMtbmF2IC5nbC10YWItbmF2LWl0ZW0tYWN0aXZlOmFjdGl2ZSwgLmdsLXNjcm9sbGFibGUtdGFicy1uYXYgLmdsLXRhYi1uYXYtaXRlbS1hY3RpdmU6Zm9jdXMtdmlzaWJsZSwgLmdsLXNjcm9sbGFibGUtdGFicy1uYXYgLmdsLXRhYi1uYXYtaXRlbS1hY3RpdmU6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvciksIGluc2V0IDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLXNjcm9sbGFibGUtdGFicy1uYXYgLmdsLXRhYi1uYXYtaXRlbS1hY3RpdmU6YWN0aXZlLCAuZ2wtc2Nyb2xsYWJsZS10YWJzLW5hdiAuZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuZ2wtc2Nyb2xsYWJsZS10YWJzLW5hdiAuZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0O1xuICB9XG59XG4uZ2wtc2Nyb2xsYWJsZS10YWJzLW5hdiAuZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTphY3RpdmU6OmJlZm9yZSwgLmdsLXNjcm9sbGFibGUtdGFicy1uYXYgLmdsLXRhYi1uYXYtaXRlbS1hY3RpdmU6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlLCAuZ2wtc2Nyb2xsYWJsZS10YWJzLW5hdiAuZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZTo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDFweCAxcHg7XG4gIGxlZnQ6IDNweDtcbiAgcmlnaHQ6IDNweDtcbiAgYm90dG9tOiAzcHg7XG59XG4uZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTphY3RpdmU6OmJlZm9yZSwgLmdsLXRhYi1uYXYtaXRlbS1hY3RpdmU6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlLCAuZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZTo6YmVmb3JlIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDJweCAycHg7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuLmdsLXRhYi1uYXYtaXRlbS1hY3RpdmU6OmJlZm9yZSB7XG4gIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWdsLXRhYi1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zbGF0ZTogMDtcbn1cblxuLmdsLWFjdGlvbnMtdGFicy1zdGFydCB7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIEBhcHBseSBnbC1ncm93LTA7XG4gIEBhcHBseSBnbC1tdC0zO1xuICBAYXBwbHkgQG1kOmdsLWhpZGRlbjtcbn1cblxuLmdsLWFjdGlvbnMtdGFicy1lbmQge1xuICBAYXBwbHkgZ2wtaGlkZGVuO1xuICBAYXBwbHkgZ2wtZ3Jvdy0wO1xuICBAYXBwbHkgZ2wtanVzdGlmeS1lbmQ7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1mbGV4LXJvdztcbiAgQGFwcGx5IGdsLW10LTA7XG4gIEBhcHBseSBAbWQ6Z2wtZmxleDtcbn1cblxuLmdsLWFjdGlvbnMtdGFicy1zdGFydCBidXR0b24sXG4uZ2wtYWN0aW9ucy10YWJzLWVuZCBidXR0b24ge1xuICBAYXBwbHkgZ2wtbWItMztcbiAgQGFwcGx5IEBtZDpnbC1tci0zO1xuICBAYXBwbHkgQG1kOmdsLW1iLTA7XG59XG4uZ2wtYWN0aW9ucy10YWJzLXN0YXJ0IGJ1dHRvbjpsYXN0LWNoaWxkLFxuLmdsLWFjdGlvbnMtdGFicy1lbmQgYnV0dG9uOmxhc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtbS0wO1xufVxuXG4uZ2wtdGFicy1mYWRlIHtcbiAgQGFwcGx5IGdsLWFic29sdXRlIGdsLWJvdHRvbS0wIGdsLXRvcC0wIGdsLXotMjtcbiAgQGFwcGx5IGdsLXctODtcbiAgQGFwcGx5IGdsLXAtMjtcbiAgQGFwcGx5IGdsLWZsZXg7XG59XG5cbi5nbC10YWJzLWZhZGUtbGVmdCB7XG4gIEBhcHBseSBnbC1sZWZ0LTA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBsZWZ0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpIDMzJSk7XG59XG5cbi5nbC10YWJzLWZhZGUtcmlnaHQge1xuICBAYXBwbHkgZ2wtcmlnaHQtMCBnbC1qdXN0aWZ5LWVuZDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpIDMzJSk7XG59XG5cbi5nbC10YWJzLWZhZGUtaWNvbi1idXR0b24ge1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBAYXBwbHkgZ2wtYWN0aW9uLW5ldXRyYWwtY29sb3JzO1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xufVxuXG4uZ2wtc2Nyb2xsYWJsZS10YWJzLW5hdiB7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLWZsZXgtbm93cmFwO1xufVxuXG4vKlxuICogVGhlc2Ugc3R5bGVzIGFyZSBzcGVjaWZpYyB0byB0aGUgZ2wtdG9hc3QgY29tcG9uZW50LlxuICogRG9jdW1lbnRhdGlvbjogaHR0cHM6Ly9kZXNpZ24uZ2l0bGFiLmNvbS9jb21wb25lbnRzL3RvYXN0XG4gKi9cbi5iLXRvYXN0ZXIge1xuICB6LWluZGV4OiAxMTAwO1xufVxuLmItdG9hc3Rlci5iLXRvYXN0ZXItYm90dG9tLWxlZnQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5iLXRvYXN0ZXIuYi10b2FzdGVyLWJvdHRvbS1sZWZ0IC5iLXRvYXN0ZXItc2xvdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWF4LXdpZHRoOiAzNi42MjVyZW07XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgQGFwcGx5IGdsLXctYXV0bztcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgQGFwcGx5IGdsLWdhcC00O1xuICBib3R0b206IDEuNXJlbTtcbiAgbGVmdDogMS41cmVtO1xuICByaWdodDogYXV0bztcbiAgdmlldy10cmFuc2l0aW9uLW5hbWU6IGdsLXRvYXN0O1xufVxuQHN1cHBvcnRzICgtbW96LWFwcGVhcmFuY2U6IG5vbmUpIHtcbiAgLmItdG9hc3Rlci5iLXRvYXN0ZXItYm90dG9tLWxlZnQgLmItdG9hc3Rlci1zbG90IHtcbiAgICB2aWV3LXRyYW5zaXRpb24tbmFtZTogdW5zZXQ7XG4gIH1cbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAuYi10b2FzdGVyLmItdG9hc3Rlci1ib3R0b20tbGVmdCAuYi10b2FzdGVyLXNsb3Qge1xuICAgIEBhcHBseSBnbC13LWZ1bGw7XG4gICAgQGFwcGx5IGdsLXB4LTM7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgfVxufVxuLmItdG9hc3RlciAuYi10b2FzdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMzYuNjI1cmVtO1xufVxuQHN1cHBvcnRzICgtbW96LWFwcGVhcmFuY2U6IG5vbmUpIHtcbiAgLmItdG9hc3RlciAuYi10b2FzdCB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xuICB9XG59XG4uYi10b2FzdGVyIC5nbC10b2FzdCB7XG4gIG9wYWNpdHk6IDE7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1weS01O1xuICBAYXBwbHkgZ2wtcHgtNjtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWp1c3RpZnktYmV0d2VlbjtcbiAgQGFwcGx5IGdsLXNoYWRvdy1tZDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZmVlZGJhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy10ZXh0LWNvbG9yKTtcbn1cbi5iLXRvYXN0ZXIgLmdsLXRvYXN0LmZhZGU6bm90KC5zaG93KSB7XG4gIG9wYWNpdHk6IDA7XG59XG4uYi10b2FzdGVyIC50b2FzdC1ib2R5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBhcHBseSBnbC1mb250LTMwMDtcbiAgQGFwcGx5IGdsLXByLTM7XG4gIG9yZGVyOiAxO1xufVxuLmItdG9hc3RlciAudG9hc3QtaGVhZGVyIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIG9yZGVyOiAyO1xufVxuLmItdG9hc3RlciAuZ2wtdG9hc3QtYWN0aW9uIHtcbiAgQGFwcGx5IGdsLXAtMztcbiAgQGFwcGx5IGdsLW0tMDtcbiAgQGFwcGx5IGdsLW1sLTU7XG4gIEBhcHBseSBnbC1ub3JtYWwtY2FzZTtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLXdoaXRlc3BhY2Utbm93cmFwO1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1zdHJvbmctbGluay1jb2xvcik7XG59XG4uYi10b2FzdGVyIC5nbC10b2FzdC1jbG9zZS1idXR0b24ge1xuICBAYXBwbHkgZ2wtbWwtNTtcbiAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbn1cblxuOjp2aWV3LXRyYW5zaXRpb24tZ3JvdXAoZ2wtdG9hc3QpIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG5cbnRhYmxlLmdsLXRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG50YWJsZS5nbC10YWJsZSB0ciB0aCxcbnRhYmxlLmdsLXRhYmxlIHRyIHRkIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLTEgZ2wtYmctdHJhbnNwYXJlbnQgZ2wtcC01IGdsLWJvcmRlci1iLXNvbGlkO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWFsaWduLXRvcDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xufVxudGFibGUuZ2wtdGFibGUgdHI6Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxudGFibGUuZ2wtdGFibGUudGFibGUtYm9yZGVybGVzcyB0ciB0ZCB7XG4gIEBhcHBseSBnbC1ib3JkZXItYi0wO1xufVxudGFibGUuZ2wtdGFibGUgdGhlYWQgdHIgdGgge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkIGdsLXRleHQtaGVhZGluZztcbn1cbnRhYmxlLmdsLXRhYmxlIHRoZWFkIHRyIHRoIC5nbC10YWJsZS10aC1zb3J0LWljb24td3JhcHBlciB7XG4gIEBhcHBseSBnbC1tbC0yO1xufVxudGFibGUuZ2wtdGFibGUgdGhlYWQgdHIgdGguZ2wtdGFibGUtdGgtYWxpZ24tcmlnaHQgPiBkaXYge1xuICBAYXBwbHkgZ2wtZmxleC1yb3ctcmV2ZXJzZTtcbn1cbnRhYmxlLmdsLXRhYmxlIHRoZWFkIHRyIHRoLmdsLXRhYmxlLXRoLWFsaWduLXJpZ2h0ID4gZGl2IC5nbC10YWJsZS10aC1zb3J0LWljb24td3JhcHBlciB7XG4gIEBhcHBseSBnbC1tbC0wIGdsLW1yLTI7XG59XG50YWJsZS5nbC10YWJsZSB0aGVhZCB0ciB0aCBbbmFtZT1zb3J0LWljb25dIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGNvbG9yOiB2YXIoLS1nbC10YWJsZS1zb3J0aW5nLWljb24tY29sb3IpO1xufVxudGFibGUuZ2wtdGFibGUtLXN0aWNreS1oZWFkZXIgdGhlYWQgdHIge1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB0b3A6IC0xcHg7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG50YWJsZS5nbC10YWJsZSAudGFibGUtcHJpbWFyeSxcbnRhYmxlLmdsLXRhYmxlIC50YWJsZS1wcmltYXJ5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cbnRhYmxlLmdsLXRhYmxlIC50YWJsZS1wcmltYXJ5ID4gdGQsXG50YWJsZS5nbC10YWJsZSAudGFibGUtcHJpbWFyeTpob3ZlciA+IHRkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cbnRhYmxlLmdsLXRhYmxlIGNhcHRpb24ge1xuICBAYXBwbHkgZ2wtcHQtMjtcbn1cbnRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkIHRib2R5ID4gdHI6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgQGFwcGx5IGdsLWgtNjtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLWJsb2NrO1xufVxudGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdLFxudGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1sLTEgZ2wtYm9yZGVyLXItMSBnbC1ib3JkZXItbC1zb2xpZCBnbC1ib3JkZXItci1zb2xpZDtcbn1cbnRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTo6YmVmb3JlLFxudGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xufVxudGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOmZpcnN0LWNoaWxkLFxudGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOmZpcnN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLWJvcmRlci10LTEgZ2wtYm9yZGVyLXQtc29saWQ7XG59XG50YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06bm90KDpmaXJzdC1jaGlsZCksXG50YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZCB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06bm90KDpmaXJzdC1jaGlsZCkge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQtMDtcbn1cbnRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkIHRib2R5ID4gdHIgZGl2IHtcbiAgQGFwcGx5IGdsLXRleHQtcmlnaHQ7XG4gIEBhcHBseSBnbC1icmVhay13b3Jkcztcbn1cbkBjb250YWluZXIgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0cjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgQGFwcGx5IGdsLWgtNjtcbiAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuICAgIEBhcHBseSBnbC1ibG9jaztcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF0sXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1sLTEgZ2wtYm9yZGVyLXItMSBnbC1ib3JkZXItbC1zb2xpZCBnbC1ib3JkZXItci1zb2xpZDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06OmJlZm9yZSxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICAgIEBhcHBseSBnbC10ZXh0LWxlZnQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOmZpcnN0LWNoaWxkLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06Zmlyc3QtY2hpbGQge1xuICAgIEBhcHBseSBnbC1ib3JkZXItdC0xIGdsLWJvcmRlci10LXNvbGlkO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTpub3QoOmZpcnN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQtMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyIGRpdiB7XG4gICAgQGFwcGx5IGdsLXRleHQtcmlnaHQ7XG4gICAgQGFwcGx5IGdsLWJyZWFrLXdvcmRzO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0cjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgQGFwcGx5IGdsLWgtNjtcbiAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuICAgIEBhcHBseSBnbC1ibG9jaztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF0sXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1sLTEgZ2wtYm9yZGVyLXItMSBnbC1ib3JkZXItbC1zb2xpZCBnbC1ib3JkZXItci1zb2xpZDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06OmJlZm9yZSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICAgIEBhcHBseSBnbC10ZXh0LWxlZnQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOmZpcnN0LWNoaWxkLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06Zmlyc3QtY2hpbGQge1xuICAgIEBhcHBseSBnbC1ib3JkZXItdC0xIGdsLWJvcmRlci10LXNvbGlkO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTpub3QoOmZpcnN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQtMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyIGRpdiB7XG4gICAgQGFwcGx5IGdsLXRleHQtcmlnaHQ7XG4gICAgQGFwcGx5IGdsLWJyZWFrLXdvcmRzO1xuICB9XG59XG5AY29udGFpbmVyICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBhcHBseSBnbC1oLTY7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICBAYXBwbHkgZ2wtYmxvY2s7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF0ge1xuICAgIEBhcHBseSBnbC1ib3JkZXItbC0xIGdsLWJvcmRlci1yLTEgZ2wtYm9yZGVyLWwtc29saWQgZ2wtYm9yZGVyLXItc29saWQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOjpiZWZvcmUsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTpmaXJzdC1jaGlsZCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOmZpcnN0LWNoaWxkIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQtMSBnbC1ib3JkZXItdC1zb2xpZDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06bm90KDpmaXJzdC1jaGlsZCksXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci10LTA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0ciBkaXYge1xuICAgIEBhcHBseSBnbC10ZXh0LXJpZ2h0O1xuICAgIEBhcHBseSBnbC1icmVhay13b3JkcztcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBhcHBseSBnbC1oLTY7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICBAYXBwbHkgZ2wtYmxvY2s7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF0ge1xuICAgIEBhcHBseSBnbC1ib3JkZXItbC0xIGdsLWJvcmRlci1yLTEgZ2wtYm9yZGVyLWwtc29saWQgZ2wtYm9yZGVyLXItc29saWQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOjpiZWZvcmUsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTpmaXJzdC1jaGlsZCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOmZpcnN0LWNoaWxkIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQtMSBnbC1ib3JkZXItdC1zb2xpZDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06bm90KDpmaXJzdC1jaGlsZCksXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci10LTA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0ciBkaXYge1xuICAgIEBhcHBseSBnbC10ZXh0LXJpZ2h0O1xuICAgIEBhcHBseSBnbC1icmVhay13b3JkcztcbiAgfVxufVxuQGNvbnRhaW5lciAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBAYXBwbHkgZ2wtaC02O1xuICAgIEBhcHBseSBnbC13LWZ1bGw7XG4gICAgQGFwcGx5IGdsLWJsb2NrO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXSxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWwtMSBnbC1ib3JkZXItci0xIGdsLWJvcmRlci1sLXNvbGlkIGdsLWJvcmRlci1yLXNvbGlkO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTo6YmVmb3JlLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06OmJlZm9yZSB7XG4gICAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06Zmlyc3QtY2hpbGQsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTpmaXJzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci10LTEgZ2wtYm9yZGVyLXQtc29saWQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIEBhcHBseSBnbC1ib3JkZXItdC0wO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgZGl2IHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1yaWdodDtcbiAgICBAYXBwbHkgZ2wtYnJlYWstd29yZHM7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBAYXBwbHkgZ2wtaC02O1xuICAgIEBhcHBseSBnbC13LWZ1bGw7XG4gICAgQGFwcGx5IGdsLWJsb2NrO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWwtMSBnbC1ib3JkZXItci0xIGdsLWJvcmRlci1sLXNvbGlkIGdsLWJvcmRlci1yLXNvbGlkO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTo6YmVmb3JlLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06OmJlZm9yZSB7XG4gICAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06Zmlyc3QtY2hpbGQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTpmaXJzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci10LTEgZ2wtYm9yZGVyLXQtc29saWQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIEBhcHBseSBnbC1ib3JkZXItdC0wO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgZGl2IHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1yaWdodDtcbiAgICBAYXBwbHkgZ2wtYnJlYWstd29yZHM7XG4gIH1cbn1cbkBjb250YWluZXIgKHdpZHRoIDwgMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsIHRib2R5ID4gdHI6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIEBhcHBseSBnbC1oLTY7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICBAYXBwbHkgZ2wtYmxvY2s7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF0ge1xuICAgIEBhcHBseSBnbC1ib3JkZXItbC0xIGdsLWJvcmRlci1yLTEgZ2wtYm9yZGVyLWwtc29saWQgZ2wtYm9yZGVyLXItc29saWQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOjpiZWZvcmUsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTpmaXJzdC1jaGlsZCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdOmZpcnN0LWNoaWxkIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQtMSBnbC1ib3JkZXItdC1zb2xpZDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06bm90KDpmaXJzdC1jaGlsZCksXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci10LTA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgdGJvZHkgPiB0ciBkaXYge1xuICAgIEBhcHBseSBnbC10ZXh0LXJpZ2h0O1xuICAgIEBhcHBseSBnbC1icmVhay13b3JkcztcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCB0Ym9keSA+IHRyOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBAYXBwbHkgZ2wtaC02O1xuICAgIEBhcHBseSBnbC13LWZ1bGw7XG4gICAgQGFwcGx5IGdsLWJsb2NrO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgdGJvZHkgPiB0ciA+IHRoW2RhdGEtbGFiZWxdIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWwtMSBnbC1ib3JkZXItci0xIGdsLWJvcmRlci1sLXNvbGlkIGdsLWJvcmRlci1yLXNvbGlkO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXTo6YmVmb3JlLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06OmJlZm9yZSB7XG4gICAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF06Zmlyc3QtY2hpbGQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsIHRib2R5ID4gdHIgPiB0aFtkYXRhLWxhYmVsXTpmaXJzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci10LTEgZ2wtYm9yZGVyLXQtc29saWQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQteGwgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC14bCB0Ym9keSA+IHRyID4gdGhbZGF0YS1sYWJlbF06bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIEBhcHBseSBnbC1ib3JkZXItdC0wO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXhsIHRib2R5ID4gdHIgZGl2IHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1yaWdodDtcbiAgICBAYXBwbHkgZ2wtYnJlYWstd29yZHM7XG4gIH1cbn1cbnRhYmxlLmdsLXRhYmxlLnRhYmxlLWhvdmVyIHRib2R5IHRyOmhvdmVyLCB0YWJsZS5nbC10YWJsZS50YWJsZS1ob3ZlciB0ZC50YWJsZS1zZWNvbmRhcnk6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10YWJsZS1yb3ctYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG59XG50YWJsZS5nbC10YWJsZSB0aGVhZCB0aDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG50YWJsZS5nbC10YWJsZSB0aGVhZCB0aDpob3ZlciBbbmFtZT1zb3J0LWljb25dIHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xufVxuXG4udGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi50YWJsZS5iLXRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiBbYXJpYS1zb3J0XTpub3QoLmItdGFibGUtc29ydC1pY29uLWxlZnQpLFxuLnRhYmxlLmItdGFibGUgPiB0Zm9vdCA+IHRyID4gW2FyaWEtc29ydF06bm90KC5iLXRhYmxlLXNvcnQtaWNvbi1sZWZ0KSB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG5cbi8qKlxuKiBUb2dnbGUgYnV0dG9uXG4qXG4qIEB1c2FnZVxuKiAgIyMjIEFjdGl2ZSBhbmQgSW5hY3RpdmUgdGV4dCBzaG91bGQgYmUgcHJvdmlkZWQgYXMgZGF0YSBhdHRyaWJ1dGVzOlxuKiAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJwcm9qZWN0LWZlYXR1cmUtdG9nZ2xlXCIgZGF0YS1lbmFibGVkLXRleHQ9XCJFbmFibGVkXCIgZGF0YS1kaXNhYmxlZC10ZXh0PVwiRGlzYWJsZWRcIj5cbiogIDxpIGNsYXNzPVwiZmEgZmEtc3Bpbm5lciBmYS1zcGluIGxvYWRpbmctaWNvbiBoaWRkZW5cIj48L2k+XG4qICA8L2J1dHRvbj5cblxuKiAgIyMjIENoZWNrZWQgc2hvdWxkIGhhdmUgYGlzLWNoZWNrZWRgIGNsYXNzXG4qICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInByb2plY3QtZmVhdHVyZS10b2dnbGUgaXMtY2hlY2tlZFwiIGRhdGEtZW5hYmxlZC10ZXh0PVwiRW5hYmxlZFwiIGRhdGEtZGlzYWJsZWQtdGV4dD1cIkRpc2FibGVkXCI+XG4qICA8aSBjbGFzcz1cImZhIGZhLXNwaW5uZXIgZmEtc3BpbiBsb2FkaW5nLWljb24gaGlkZGVuXCI+PC9pPlxuKiAgPC9idXR0b24+XG5cbiogICMjIyBEaXNhYmxlZCBzaG91bGQgaGF2ZSBgaXMtZGlzYWJsZWRgIGNsYXNzXG4qICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInByb2plY3QtZmVhdHVyZS10b2dnbGUgaXMtZGlzYWJsZWRcIiBkYXRhLWVuYWJsZWQtdGV4dD1cIkVuYWJsZWRcIiBkYXRhLWRpc2FibGVkLXRleHQ9XCJEaXNhYmxlZFwiIGRpc2FibGVkPVwidHJ1ZVwiPlxuKiAgPGkgY2xhc3M9XCJmYSBmYS1zcGlubmVyIGZhLXNwaW4gbG9hZGluZy1pY29uIGhpZGRlblwiPjwvaT5cbiogIDwvYnV0dG9uPlxuKi9cbi5nbC10b2dnbGUtd3JhcHBlciB7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG59XG5cbi5nbC1kZXNjcmlwdGlvbi1sYWJlbCB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cblxuLmdsLWhlbHAtbGFiZWwge1xuICBAYXBwbHkgZ2wtbXQtMztcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG5cbi5nbC10b2dnbGUtbGFiZWwtaW5saW5lIHtcbiAgQGFwcGx5IGdsLWZsZXgtcm93O1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xufVxuLmdsLXRvZ2dsZS1sYWJlbC1pbmxpbmUgLmdsLXRvZ2dsZS1sYWJlbCB7XG4gIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vd3JhcDtcbiAgQGFwcGx5IGdsLW1iLTA7XG4gIEBhcHBseSBnbC1tci0zO1xufVxuLmdsLXRvZ2dsZS1sYWJlbC1pbmxpbmUgLmdsLWhlbHAtbGFiZWwge1xuICBAYXBwbHkgZ2wtbXQtMDtcbiAgQGFwcGx5IGdsLW1sLTM7XG59XG5cbi5nbC10b2dnbGUtbGFiZWwge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG59XG5cbi5nbC10b2dnbGUge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1kZWZhdWx0KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMi4yNXJlbTtcbiAgaGVpZ2h0OiAxLjI1cmVtO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtcGlsbDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm94LXNoYWRvdyAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbikge1xuICAuZ2wtdG9nZ2xlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXMgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLXRvZ2dsZSB7XG4gICAgb3V0bGluZTogMXB4IHNvbGlkIENhbnZhc1RleHQgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lLW9mZnNldDogLTFweDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZ2wtdG9nZ2xlOjpzZWxlY3Rpb24sIC5nbC10b2dnbGU6OmJlZm9yZTo6c2VsZWN0aW9uLCAuZ2wtdG9nZ2xlOjphZnRlcjo6c2VsZWN0aW9uIHtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xufVxuLmdsLXRvZ2dsZTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtaG92ZXIpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWhvdmVyKTtcbn1cbi5nbC10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtZm9jdXMpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzKSwgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcikgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLXRvZ2dsZTpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQgIWltcG9ydGFudDtcbiAgfVxufVxuLmdsLXRvZ2dsZTphY3RpdmUge1xuICBjb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLXVuY2hlY2tlZC1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1hY3RpdmUpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWFjdGl2ZSksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC10b2dnbGU6YWN0aXZlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQgIWltcG9ydGFudDtcbiAgfVxufVxuLmdsLXRvZ2dsZTpob3ZlciAudG9nZ2xlLWljb246OmJlZm9yZSwgLmdsLXRvZ2dsZTpmb2N1cy12aXNpYmxlIC50b2dnbGUtaWNvbjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjg3NSk7XG59XG4uZ2wtdG9nZ2xlIC50b2dnbGUtbG9hZGluZyB7XG4gIEBhcHBseSBnbC1oLTU7XG59XG4uZ2wtdG9nZ2xlIC50b2dnbGUtaWNvbiB7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLXctNTtcbiAgQGFwcGx5IGdsLWgtNTtcbiAgQGFwcGx5IGdsLWxlZnQtMTtcbiAgQGFwcGx5IGdsLXRvcC0xO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLmdsLXRvZ2dsZSAudG9nZ2xlLWljb24ge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBtcyAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtdG9nZ2xlIC50b2dnbGUtaWNvbiB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmdsLXRvZ2dsZSAudG9nZ2xlLWljb246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLWluc2V0LTA7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWZ1bGw7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbikge1xuICAuZ2wtdG9nZ2xlIC50b2dnbGUtaWNvbjo6YmVmb3JlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXMgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLXRvZ2dsZSAudG9nZ2xlLWljb246OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQ2FudmFzVGV4dDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG59XG4uZ2wtdG9nZ2xlIC50b2dnbGUtaWNvbiA+IHN2ZyB7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLXctNDtcbiAgQGFwcGx5IGdsLWgtNDtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtdG9nZ2xlIC50b2dnbGUtaWNvbiA+IHN2ZyB7XG4gICAgY29sb3I6IENhbnZhcztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmdsLXRvZ2dsZS5pcy1jaGVja2VkIHtcbiAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZGVmYXVsdCk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWRlZmF1bHQpO1xufVxuLmdsLXRvZ2dsZS5pcy1jaGVja2VkOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWhvdmVyKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtaG92ZXIpO1xufVxuLmdsLXRvZ2dsZS5pcy1jaGVja2VkOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWNoZWNrZWQtZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZm9jdXMpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1mb2N1cyksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC10b2dnbGUuaXMtY2hlY2tlZDpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQgIWltcG9ydGFudDtcbiAgfVxufVxuLmdsLXRvZ2dsZS5pcy1jaGVja2VkOmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtYWN0aXZlKTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtYWN0aXZlKSwgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcikgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLXRvZ2dsZS5pcy1jaGVja2VkOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC10b2dnbGUuaXMtY2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQ2FudmFzVGV4dCAhaW1wb3J0YW50O1xuICB9XG4gIC5nbC10b2dnbGUuaXMtY2hlY2tlZCBzdmcge1xuICAgIGNvbG9yOiBDYW52YXNUZXh0O1xuICB9XG59XG4uZ2wtdG9nZ2xlLmlzLWNoZWNrZWQgLnRvZ2dsZS1pY29uIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDFyZW0pO1xufVxuLmdsLXRvZ2dsZS5pcy1jaGVja2VkIC50b2dnbGUtaWNvbjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZGVmYXVsdCk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uZ2wtdG9nZ2xlLmlzLWRpc2FibGVkIHtcbiAgQGFwcGx5IGdsLWN1cnNvci1ub3QtYWxsb3dlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtZGlzYWJsZWQpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWRpc2FibGVkKTtcbn1cbi5nbC10b2dnbGUuaXMtZGlzYWJsZWQgLnRvZ2dsZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1kaXNhYmxlZCk7XG59XG4uZ2wtdG9nZ2xlLmlzLWRpc2FibGVkIC50b2dnbGUtaWNvbjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCk7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtdG9nZ2xlLmlzLWRpc2FibGVkIC50b2dnbGUtaWNvbjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBHcmF5VGV4dDtcbiAgfVxufVxuLmdsLXRvZ2dsZS5pcy1kaXNhYmxlZDpob3ZlciAudG9nZ2xlLWljb246OmJlZm9yZSwgLmdsLXRvZ2dsZS5pcy1kaXNhYmxlZDpmb2N1cy12aXNpYmxlIC50b2dnbGUtaWNvbjo6YmVmb3JlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbn1cbi5nbC10b2dnbGUuaXMtZGlzYWJsZWQ6YWN0aXZlLCAuZ2wtdG9nZ2xlLmlzLWRpc2FibGVkOmZvY3VzLXZpc2libGUsIC5nbC10b2dnbGUuaXMtZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWRpc2FibGVkKSwgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcikgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLXRvZ2dsZS5pcy1kaXNhYmxlZDphY3RpdmUsIC5nbC10b2dnbGUuaXMtZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSwgLmdsLXRvZ2dsZS5pcy1kaXNhYmxlZDpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5nbC10b2dnbGUuaXMtY2hlY2tlZC5pcy1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1kaXNhYmxlZCk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWRpc2FibGVkKTtcbn1cbi5nbC10b2dnbGUuaXMtY2hlY2tlZC5pcy1kaXNhYmxlZCAudG9nZ2xlLWljb246OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWRpc2FibGVkKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5nbC10b2dnbGUuaXMtY2hlY2tlZC5pcy1kaXNhYmxlZDpob3ZlciAudG9nZ2xlLWljb246OmJlZm9yZSwgLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWRpc2FibGVkOmZvY3VzLXZpc2libGUgLnRvZ2dsZS1pY29uOjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWRpc2FibGVkOmFjdGl2ZSwgLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWRpc2FibGVkOmZvY3VzLXZpc2libGUsIC5nbC10b2dnbGUuaXMtY2hlY2tlZC5pcy1kaXNhYmxlZDpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWRpc2FibGVkKSwgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcikgIWltcG9ydGFudDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWRpc2FibGVkOmFjdGl2ZSwgLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWRpc2FibGVkOmZvY3VzLXZpc2libGUsIC5nbC10b2dnbGUuaXMtY2hlY2tlZC5pcy1kaXNhYmxlZDpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC10b2dnbGUuaXMtY2hlY2tlZC5pcy1kaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogR3JheVRleHQgIWltcG9ydGFudDtcbiAgfVxufVxuLmdsLXRvZ2dsZS5pcy1sb2FkaW5nLCAuZ2wtdG9nZ2xlLmlzLWNoZWNrZWQuaXMtbG9hZGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItbG9hZGluZyk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1sb2FkaW5nKTtcbn1cbi5nbC10b2dnbGUuaXMtbG9hZGluZzphY3RpdmUsIC5nbC10b2dnbGUuaXMtbG9hZGluZzpmb2N1cy12aXNpYmxlLCAuZ2wtdG9nZ2xlLmlzLWxvYWRpbmc6Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5nbC10b2dnbGUuaXMtY2hlY2tlZC5pcy1sb2FkaW5nOmFjdGl2ZSwgLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWxvYWRpbmc6Zm9jdXMtdmlzaWJsZSwgLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWxvYWRpbmc6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItbG9hZGluZyksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC10b2dnbGUuaXMtbG9hZGluZzphY3RpdmUsIC5nbC10b2dnbGUuaXMtbG9hZGluZzpmb2N1cy12aXNpYmxlLCAuZ2wtdG9nZ2xlLmlzLWxvYWRpbmc6Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5nbC10b2dnbGUuaXMtY2hlY2tlZC5pcy1sb2FkaW5nOmFjdGl2ZSwgLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWxvYWRpbmc6Zm9jdXMtdmlzaWJsZSwgLmdsLXRvZ2dsZS5pcy1jaGVja2VkLmlzLWxvYWRpbmc6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nbC10b2tlbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC10b2tlbi1mb3JlZ3JvdW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9rZW4tYmFja2dyb3VuZC1jb2xvcik7XG4gIEBhcHBseSBnbC1wbC0zO1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgQGFwcGx5IGdsLWp1c3RpZnktY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC10b2tlbi1ib3JkZXItcmFkaXVzKTtcbn1cbi5nbC10b2tlbi5nbC10b2tlbi12aWV3LW9ubHkge1xuICBAYXBwbHkgZ2wtcHktMjtcbiAgQGFwcGx5IGdsLXByLTM7XG59XG5cbi5nbC10b2tlbi1zZWFyY2gtdHlwZS12YXJpYW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9rZW4tYmFja2dyb3VuZC1jb2xvcik7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXRyLW5vbmU7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJyLW5vbmU7XG59XG5cbi5nbC10b2tlbi1zZWFyY2gtdmFsdWUtdmFyaWFudCB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXRsLW5vbmU7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJsLW5vbmU7XG59XG5cbi5nbC10b2tlbi1jb250ZW50IHtcbiAgQGFwcGx5IGdsLXRleHQtc207XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC10ZXh0LWluaGVyaXQ7XG59XG4uZ2wtdG9rZW4tY29udGVudCA+IC5nbC1hdmF0YXI6Zmlyc3QtY2hpbGQsXG4uZ2wtdG9rZW4tY29udGVudCA+IC5nbC1zcGlubmVyLWNvbnRhaW5lcjpmaXJzdC1jaGlsZCB7XG4gIEBhcHBseSBnbC1tci0yO1xufVxuXG4uZ2wtdG9rZW4tY2xvc2Uge1xuICBAYXBwbHkgZ2wtbWwtMjtcbiAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cblxuLmdsLXRvb2x0aXAge1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgQGFwcGx5IGdsLXAtMjtcbn1cbi5nbC10b29sdGlwIC50b29sdGlwLWlubmVyIHtcbiAgQGFwcGx5IGdsLWRyb3Atc2hhZG93LW1kO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1weC00O1xuICBAYXBwbHkgZ2wtcm91bmRlZC1mZWVkYmFjaztcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3IpO1xuICBjb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stc3Ryb25nLXRleHQtY29sb3IpO1xuICAtLWdsLXRleHQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC10b29sdGlwLXRleHQtY29sb3Itc3VidGxlKTtcbn1cbi5nbC10b29sdGlwIC5hcnJvdyB7XG4gIEBhcHBseSBnbC1oLTM7XG4gIEBhcHBseSBnbC13LTI7XG59XG4uZ2wtdG9vbHRpcCAuYXJyb3c6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1ib3JkZXItNDtcbn1cblxuLmdsLXRvb2x0aXAuYnMtdG9vbHRpcC10b3AgLmFycm93LCAuZ2wtdG9vbHRpcC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93LFxuLmdsLXRvb2x0aXAuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93LFxuLmdsLXRvb2x0aXAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1ib3R0b21dIC5hcnJvdyB7XG4gIEBhcHBseSBnbC13LTM7XG4gIEBhcHBseSBnbC1oLTI7XG59XG5cbi5nbC10b29sdGlwLmJzLXRvb2x0aXAtdG9wIC5hcnJvdzo6YmVmb3JlLCAuZ2wtdG9vbHRpcC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXRvcF0gLmFycm93OjpiZWZvcmUge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWItMDtcbiAgYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3IpO1xufVxuXG4uZ2wtdG9vbHRpcC5icy10b29sdGlwLXJpZ2h0IC5hcnJvdzo6YmVmb3JlLCAuZ2wtdG9vbHRpcC5icy10b29sdGlwLWF1dG9beC1wbGFjZW1lbnRePXJpZ2h0XSAuYXJyb3c6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1ib3JkZXItbC0wO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cblxuLmdsLXRvb2x0aXAuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUsIC5nbC10b29sdGlwLmJzLXRvb2x0aXAtYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAuYXJyb3c6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1ib3JkZXItdC0wO1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1zdHJvbmctYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi5nbC10b29sdGlwLmJzLXRvb2x0aXAtbGVmdCAuYXJyb3c6OmJlZm9yZSwgLmdsLXRvb2x0aXAuYnMtdG9vbHRpcC1hdXRvW3gtcGxhY2VtZW50Xj1sZWZ0XSAuYXJyb3c6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1ib3JkZXItci0wO1xuICBib3JkZXItbGVmdC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3IpO1xufVxuXG4uZ2wtaGVhdG1hcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5nbC1oZWF0bWFwIC5nbC1sZWdlbmQtaW5saW5lLXNlcmllcyB7XG4gIEBhcHBseSBnbC1wb2ludGVyLWV2ZW50cy1ub25lO1xufVxuXG4uZ2wtbGVnZW5kIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZ2wtbGVnZW5kLWlubGluZS1zZXJpZXMsXG4uZ2wtbGVnZW5kLXRhYnVsYXItcm93IHtcbiAgZm9udDogaW5oZXJpdDtcbiAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1wLTA7XG4gIEBhcHBseSBnbC10ZXh0LWxlZnQ7XG59XG5cbi5nbC1jaGFydC1oLWF1dG8gLmdsLWxlZ2VuZC1pbmxpbmUge1xuICBtYXgtaGVpZ2h0OiA2Ljc1cmVtO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctYXV0bztcbn1cblxuLmdsLWxlZ2VuZC10YWJ1bGFyLmdsLWxlZ2VuZC1iLWZhZGU6OmFmdGVyLFxuLmdsLWNoYXJ0LWgtYXV0byAuZ2wtbGVnZW5kLWlubGluZS5nbC1sZWdlbmQtYi1mYWRlOjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCksIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xuICBib3R0b206IDA7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIEBhcHBseSBnbC1ibG9jaztcbiAgQGFwcGx5IGdsLWgtNDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xufVxuXG4uZ2wtbGVnZW5kLWlubGluZSB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC13cmFwO1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG59XG4uZ2wtbGVnZW5kLWlubGluZSAuZ2wtbGVnZW5kLWlubGluZS1zZXJpZXMge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuICBAYXBwbHkgZ2wtanVzdGlmeS1iZXR3ZWVuO1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtcHItNTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZGVmYXVsdDtcbn1cbi5nbC1sZWdlbmQtaW5saW5lIC5nbC1sZWdlbmQtaW5saW5lLXNlcmllczpob3ZlciB7XG4gIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbiAgQGFwcGx5IGdsLXVuZGVybGluZTtcbn1cbi5nbC1sZWdlbmQtaW5saW5lIC5nbC1sZWdlbmQtaW5saW5lLXNlcmllczpmb2N1cy12aXNpYmxlIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpLCBpbnNldCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksIGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5nbC1sZWdlbmQtaW5saW5lIC5nbC1sZWdlbmQtaW5saW5lLXNlcmllczpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1sZWdlbmQtaW5saW5lIC5nbC1sZWdlbmQtaW5saW5lLXNlcmllcyAuZ2wtbGVnZW5kLWlubGluZS1zZXJpZXMtbGFiZWwge1xuICBAYXBwbHkgZ2wtbXItMztcbn1cblxuLmdsLWxlZ2VuZC10YWJ1bGFyIC5nbC1sZWdlbmQtdGFidWxhci1oZWFkZXIge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWp1c3RpZnktZW5kO1xufVxuLmdsLWxlZ2VuZC10YWJ1bGFyIC5nbC1sZWdlbmQtdGFidWxhci1oZWFkZXItY2VsbCxcbi5nbC1sZWdlbmQtdGFidWxhciAuZ2wtbGVnZW5kLXRhYnVsYXItZGV0YWlscy1jZWxsIHtcbiAgQGFwcGx5IGdsLXdoaXRlc3BhY2Utbm93cmFwO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICBAYXBwbHkgZ2wtdGV4dC1lbGxpcHNpcztcbiAgQGFwcGx5IGdsLXRleHQtcmlnaHQ7XG4gIEBhcHBseSBnbC13LTEvODtcbn1cbi5nbC1sZWdlbmQtdGFidWxhciAuZ2wtbGVnZW5kLXRhYnVsYXItaGVhZGVyLWNlbGwge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yNDtcbiAgQGFwcGx5IGdsLXB4LTM7XG59XG4uZ2wtbGVnZW5kLXRhYnVsYXIgLmdsLWxlZ2VuZC10YWJ1bGFyLWJvZHkge1xuICBoZWlnaHQ6IDUuMjVyZW07XG4gIEBhcHBseSBnbC1vdmVyZmxvdy15LWF1dG87XG59XG4uZ2wtbGVnZW5kLXRhYnVsYXIgLmdsLWxlZ2VuZC10YWJ1bGFyLXJvdyB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xufVxuLmdsLWxlZ2VuZC10YWJ1bGFyIC5nbC1sZWdlbmQtdGFidWxhci1yb3c6bnRoLWNoaWxkKG9kZCkge1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xufVxuLmdsLWxlZ2VuZC10YWJ1bGFyIC5nbC1sZWdlbmQtdGFidWxhci1yb3c6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtbGVnZW5kLXRhYnVsYXIgLmdsLWxlZ2VuZC10YWJ1bGFyLXJvdzpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1sZWdlbmQtdGFidWxhciAuZ2wtbGVnZW5kLXRhYnVsYXItdGl0bGUtY2VsbCxcbi5nbC1sZWdlbmQtdGFidWxhciAuZ2wtbGVnZW5kLXRhYnVsYXItZGV0YWlscy1jZWxsIHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjQ7XG4gIEBhcHBseSBnbC1weC0zO1xufVxuLmdsLWxlZ2VuZC10YWJ1bGFyIC5nbC1sZWdlbmQtdGFidWxhci10aXRsZS1jZWxsIHtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWhpZGRlbjtcbiAgQGFwcGx5IGdsLXctMS8yO1xufVxuXG4uZ2wtc2VyaWVzLWxhYmVsLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICBAYXBwbHkgZ2wtYnJlYWstd29yZHM7XG59XG5cbi5nbC1zZXJpZXMtbGFiZWwtY29sb3Ige1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG4gIEBhcHBseSBnbC1tci0zO1xufVxuLmdsLXNlcmllcy1sYWJlbC1jb2xvciBzdmcge1xuICBAYXBwbHkgZ2wtYmxvY2s7XG59XG5cbi5nbC1zZXJpZXMtbGFiZWwtdGV4dCB7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC1icmVhay13b3Jkcztcbn1cblxuLmdsLXNpbmdsZS1zdGF0IHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMTtcbn1cbi5nbC1zaW5nbGUtc3RhdDpob3Zlclt0YWJpbmRleD1cIjBcIl0ge1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xufVxuLmdsLXNpbmdsZS1zdGF0IC5nbC1zaW5nbGUtc3RhdC1udW1iZXIge1xuICBmb250LXNpemU6IGNsYW1wKDEuNXJlbSwgMC44MzMzMzMzMzMzcmVtICsgMS4zODg4ODg4ODg5dncsIDEuODc1cmVtKTtcbn1cbi5nbC1zaW5nbGUtc3RhdCAuZ2wtc2luZ2xlLXN0YXQtY29udGVudCAuZ2wtYmFkZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTAuMTI1ZW07XG59XG5cbi5nbC1jaGFydC10b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmdsLWNoYXJ0LXRvb2x0aXAgLnBvcG92ZXIge1xuICBAYXBwbHkgZ2wtbWluLXctMDtcbiAgQGFwcGx5IGdsLXctbWF4O1xuICBtYXgtd2lkdGg6IDMycmVtO1xufVxuXG4uZ2wtY2hhcnRzLXRvb2x0aXAtZGVmYXVsdC1mb3JtYXQtc2VyaWVzIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWJldHdlZW47XG59XG4uZ2wtY2hhcnRzLXRvb2x0aXAtZGVmYXVsdC1mb3JtYXQtc2VyaWVzLWxhYmVsLCAuZ2wtY2hhcnRzLXRvb2x0aXAtZGVmYXVsdC1mb3JtYXQtc2VyaWVzLXZhbHVlIHtcbiAgQGFwcGx5IGdsLXRleHQtc207XG59XG4uZ2wtY2hhcnRzLXRvb2x0aXAtZGVmYXVsdC1mb3JtYXQtc2VyaWVzLWxhYmVsIHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtbXItNztcbn1cbi5nbC1jaGFydHMtdG9vbHRpcC1kZWZhdWx0LWZvcm1hdC1zZXJpZXMtdmFsdWUge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xufVxuXG4vKipcbiAqIGdyaWRzdGFjayBTQVNTIHN0eWxlcyAxMi42LjBcbiAqIENvcHlyaWdodCAoYykgMjAyMS0yMDI1IEFsYWluIER1bWVzbnkgLSBzZWUgR3JpZFN0YWNrIHJvb3QgbGljZW5zZVxuICovXG4uZ3JpZC1zdGFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmdyaWQtc3RhY2stcnRsIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG59XG5cbi5ncmlkLXN0YWNrLXJ0bCA+IC5ncmlkLXN0YWNrLWl0ZW0ge1xuICBkaXJlY3Rpb246IHJ0bDtcbn1cblxuLmdyaWQtc3RhY2stcGxhY2Vob2xkZXIgPiAucGxhY2Vob2xkZXItY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5ncmlkLXN0YWNrID4gLmdyaWQtc3RhY2staXRlbSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogMDtcbiAgdG9wOiAwO1xuICB3aWR0aDogdmFyKC0tZ3MtY29sdW1uLXdpZHRoKTtcbiAgaGVpZ2h0OiB2YXIoLS1ncy1jZWxsLWhlaWdodCk7XG59XG5cbi5ncmlkLXN0YWNrID4gLmdyaWQtc3RhY2staXRlbSA+IC5ncmlkLXN0YWNrLWl0ZW0tY29udGVudCB7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuXG4uZ3JpZC1zdGFjayA+IC5ncmlkLXN0YWNrLWl0ZW0uc2l6ZS10by1jb250ZW50Om5vdCguc2l6ZS10by1jb250ZW50LW1heCkgPiAuZ3JpZC1zdGFjay1pdGVtLWNvbnRlbnQge1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi5ncmlkLXN0YWNrOm5vdCguZ3JpZC1zdGFjay1ydGwpID4gLmdyaWQtc3RhY2staXRlbSB7XG4gIGxlZnQ6IDA7XG59XG5cbi5ncmlkLXN0YWNrLmdyaWQtc3RhY2stcnRsID4gLmdyaWQtc3RhY2staXRlbSB7XG4gIHJpZ2h0OiAwO1xufVxuXG4uZ3JpZC1zdGFjayA+IC5ncmlkLXN0YWNrLWl0ZW0gPiAuZ3JpZC1zdGFjay1pdGVtLWNvbnRlbnQsXG4uZ3JpZC1zdGFjayA+IC5ncmlkLXN0YWNrLXBsYWNlaG9sZGVyID4gLnBsYWNlaG9sZGVyLWNvbnRlbnQge1xuICB0b3A6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLXRvcCk7XG4gIHJpZ2h0OiB2YXIoLS1ncy1pdGVtLW1hcmdpbi1yaWdodCk7XG4gIGJvdHRvbTogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tYm90dG9tKTtcbiAgbGVmdDogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tbGVmdCk7XG59XG5cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZm9udC1zaXplOiAwLjFweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC1tcy10b3VjaC1hY3Rpb246IG5vbmU7XG4gIHRvdWNoLWFjdGlvbjogbm9uZTtcbn1cblxuLmdyaWQtc3RhY2staXRlbS51aS1yZXNpemFibGUtZGlzYWJsZWQgPiAudWktcmVzaXphYmxlLWhhbmRsZSwgLmdyaWQtc3RhY2staXRlbS51aS1yZXNpemFibGUtYXV0b2hpZGUgPiAudWktcmVzaXphYmxlLWhhbmRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLW5lLFxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtbncsXG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1zZSxcbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLXN3IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIiUyMzY2NlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCI+PHBhdGggZD1cIm0xMCAzIDIgMkg4bDItMnYxNGwtMi0yaDRsLTIgMlwiLz48L3N2Zz4nKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuXG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1uZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cblxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtc3cge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG5cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLW53IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cblxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtc2Uge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuXG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1udyB7XG4gIGN1cnNvcjogbnctcmVzaXplO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB0b3A6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLXRvcCk7XG4gIGxlZnQ6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLWxlZnQpO1xufVxuXG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1uIHtcbiAgY3Vyc29yOiBuLXJlc2l6ZTtcbiAgaGVpZ2h0OiAxMHB4O1xuICB0b3A6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLXRvcCk7XG4gIGxlZnQ6IDI1cHg7XG4gIHJpZ2h0OiAyNXB4O1xufVxuXG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1uZSB7XG4gIGN1cnNvcjogbmUtcmVzaXplO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICB0b3A6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLXRvcCk7XG4gIHJpZ2h0OiB2YXIoLS1ncy1pdGVtLW1hcmdpbi1yaWdodCk7XG59XG5cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLWUge1xuICBjdXJzb3I6IGUtcmVzaXplO1xuICB3aWR0aDogMTBweDtcbiAgdG9wOiAxNXB4O1xuICBib3R0b206IDE1cHg7XG4gIHJpZ2h0OiB2YXIoLS1ncy1pdGVtLW1hcmdpbi1yaWdodCk7XG59XG5cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLXNlIHtcbiAgY3Vyc29yOiBzZS1yZXNpemU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJvdHRvbTogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tYm90dG9tKTtcbiAgcmlnaHQ6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLXJpZ2h0KTtcbn1cblxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtcyB7XG4gIGN1cnNvcjogcy1yZXNpemU7XG4gIGhlaWdodDogMTBweDtcbiAgbGVmdDogMjVweDtcbiAgYm90dG9tOiB2YXIoLS1ncy1pdGVtLW1hcmdpbi1ib3R0b20pO1xuICByaWdodDogMjVweDtcbn1cblxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtc3cge1xuICBjdXJzb3I6IHN3LXJlc2l6ZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgYm90dG9tOiB2YXIoLS1ncy1pdGVtLW1hcmdpbi1ib3R0b20pO1xuICBsZWZ0OiB2YXIoLS1ncy1pdGVtLW1hcmdpbi1sZWZ0KTtcbn1cblxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtdyB7XG4gIGN1cnNvcjogdy1yZXNpemU7XG4gIHdpZHRoOiAxMHB4O1xuICB0b3A6IDE1cHg7XG4gIGJvdHRvbTogMTVweDtcbiAgbGVmdDogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tbGVmdCk7XG59XG5cbi5ncmlkLXN0YWNrLWl0ZW0udWktZHJhZ2dhYmxlLWRyYWdnaW5nID4gLnVpLXJlc2l6YWJsZS1oYW5kbGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5ncmlkLXN0YWNrLWl0ZW0udWktZHJhZ2dhYmxlLWRyYWdnaW5nIHtcbiAgd2lsbC1jaGFuZ2U6IGxlZnQsIHJpZ2h0LCB0b3A7XG59XG5cbi5ncmlkLXN0YWNrLWl0ZW0udWktcmVzaXphYmxlLXJlc2l6aW5nIHtcbiAgd2lsbC1jaGFuZ2U6IHdpZHRoLCBoZWlnaHQ7XG59XG5cbi51aS1kcmFnZ2FibGUtZHJhZ2dpbmcsXG4udWktcmVzaXphYmxlLXJlc2l6aW5nIHtcbiAgei1pbmRleDogMTAwMDA7XG59XG5cbi51aS1kcmFnZ2FibGUtZHJhZ2dpbmcgPiAuZ3JpZC1zdGFjay1pdGVtLWNvbnRlbnQsXG4udWktcmVzaXphYmxlLXJlc2l6aW5nID4gLmdyaWQtc3RhY2staXRlbS1jb250ZW50IHtcbiAgYm94LXNoYWRvdzogMXB4IDRweCA2cHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi5ncmlkLXN0YWNrLWFuaW1hdGUsXG4uZ3JpZC1zdGFjay1hbmltYXRlIC5ncmlkLXN0YWNrLWl0ZW0ge1xuICB0cmFuc2l0aW9uOiBsZWZ0IDAuM3MsIHJpZ2h0IDAuM3MsIHRvcCAwLjNzLCBoZWlnaHQgMC4zcywgd2lkdGggMC4zcztcbn1cblxuLmdyaWQtc3RhY2stYW5pbWF0ZSAuZ3JpZC1zdGFjay1pdGVtLnVpLWRyYWdnYWJsZS1kcmFnZ2luZyxcbi5ncmlkLXN0YWNrLWFuaW1hdGUgLmdyaWQtc3RhY2staXRlbS51aS1yZXNpemFibGUtcmVzaXppbmcsXG4uZ3JpZC1zdGFjay1hbmltYXRlIC5ncmlkLXN0YWNrLWl0ZW0uZ3JpZC1zdGFjay1wbGFjZWhvbGRlciB7XG4gIHRyYW5zaXRpb246IGxlZnQgMHMsIHJpZ2h0IDBzLCB0b3AgMHMsIGhlaWdodCAwcywgd2lkdGggMHM7XG59XG5cbi5ncmlkLXN0YWNrID4gLmdyaWQtc3RhY2staXRlbVtncy15PVwiMFwiXSB7XG4gIHRvcDogMHB4O1xufVxuXG4uZ3JpZC1zdGFjazpub3QoLmdyaWQtc3RhY2stcnRsKSA+IC5ncmlkLXN0YWNrLWl0ZW1bZ3MteD1cIjBcIl0ge1xuICBsZWZ0OiAwJTtcbn1cblxuLmdyaWQtc3RhY2suZ3JpZC1zdGFjay1ydGwgPiAuZ3JpZC1zdGFjay1pdGVtW2dzLXg9XCIwXCJdIHtcbiAgcmlnaHQ6IDAlO1xufVxuXG4uZ2wtdHJ1bmNhdGUtY29tcG9uZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmdsLXRydW5jYXRlLXN0YXJ0LFxuLmdsLXRydW5jYXRlLWVuZCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBtaW4td2lkdGg6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93LXg6IGNsaXA7XG4gIG92ZXJmbG93LXk6IHZpc2libGU7XG59XG5cbi5nbC10cnVuY2F0ZS1zdGFydCB7XG4gIGRpcmVjdGlvbjogcnRsO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LW92ZXJmbG93OiBcIlwiO1xufVxuXG4uZ2wtdHJ1bmNhdGUtZW5kIHtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi8qKlxuICBOb3RlOiBhbHRob3VnaCB2ZW5kb3ItcHJlZml4ZXMgYXJlIHVzZWQgaGVyZSwgdGhlc2UgcHJvcGVydGllcyBhcmUgc3VwcG9ydGVkIGJ5IGFsbCBicm93c2Vycy5cbiAgU2VlIGh0dHBzOi8vY2FuaXVzZS5jb20vY3NzLWxpbmUtY2xhbXBcbioqL1xuLmdsLXRydW5jYXRlLXRleHQge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgLXdlYmtpdC1saW5lLWNsYW1wOiB2YXIoLS1tb2JpbGUtbGluZXMpO1xuICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xufVxuQGNvbnRhaW5lciAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXRydW5jYXRlLXRleHQge1xuICAgIC13ZWJraXQtbGluZS1jbGFtcDogdmFyKC0tbGluZXMpO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC10cnVuY2F0ZS10ZXh0IHtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IHZhcigtLWxpbmVzKTtcbiAgfVxufVxuXG4uZ2wtbmV3LWRyb3Bkb3duIHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtYWxpZ24tbWlkZGxlO1xufVxuLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLWN1c3RvbS10b2dnbGUgPiAqOmZpcnN0LWNoaWxkOm5vdCg6ZGlzYWJsZWQpIHtcbiAgQGFwcGx5IGdsLWN1cnNvci1wb2ludGVyO1xufVxuLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLWN1c3RvbS10b2dnbGUgPiAqOmZpcnN0LWNoaWxkOmZvY3VzLXZpc2libGUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uZ2wtbmV3LWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlLmdsLWJ1dHRvbjpub3QoLmdsLW5ldy1kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQsIC5idG4taWNvbikge1xuICBAYXBwbHkgZ2wtcHItMztcbn1cbi5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi10b2dnbGUuZ2wtYnV0dG9uOm5vdCguZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZS1uby1jYXJldCwgLmJ0bi1pY29uKS5idG4tc20sIC5nbC1uZXctZHJvcGRvd24gLmJ0bi1ncm91cC1zbSA+IC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlLmdsLWJ1dHRvbi5idG46bm90KC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlLW5vLWNhcmV0LCAuYnRuLWljb24pIHtcbiAgQGFwcGx5IGdsLXByLTI7XG59XG4uZ2wtbmV3LWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlLmdsLW5ldy1kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQgLmdsLW5ldy1kcm9wZG93bi1jaGV2cm9uIHtcbiAgQGFwcGx5IGdsLWhpZGRlbjtcbn1cbi5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi10b2dnbGUgLmdsLWJ1dHRvbi10ZXh0IHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xufVxuLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZSAuZ2wtYnV0dG9uLXRleHQ6aGFzKC5nbC1zci1vbmx5KSB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZS5pcy1pbnZhbGlkIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1jb250cm9sLWVycm9yO1xufVxuLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZS5pcy1pbnZhbGlkOmZvY3VzIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1jb250cm9sLWVycm9yO1xufVxuLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLWJ1dHRvbi10ZXh0IHtcbiAgQGFwcGx5IGdsLW1yLWF1dG87XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC10ZXh0LWVsbGlwc2lzO1xufVxuLmdsLW5ldy1kcm9wZG93bi5idG4tc20gLmdsLWljb24sIC5idG4tZ3JvdXAtc20gPiAuZ2wtbmV3LWRyb3Bkb3duLmJ0biAuZ2wtaWNvbiB7XG4gIEBhcHBseSBnbC1teS0wO1xufVxuLmdsLW5ldy1kcm9wZG93bi5idG4tc20gLmdsLWljb24uZ2wtbmV3LWRyb3Bkb3duLWNoZXZyb24sIC5idG4tZ3JvdXAtc20gPiAuZ2wtbmV3LWRyb3Bkb3duLmJ0biAuZ2wtaWNvbi5nbC1uZXctZHJvcGRvd24tY2hldnJvbiB7XG4gIEBhcHBseSBnbC1oLTU7XG4gIEBhcHBseSBnbC13LTU7XG59XG4uZ2wtbmV3LWRyb3Bkb3duIC5nbC1idXR0b246bm90KC5nbC1uZXctZHJvcGRvd24tY2FyZXQtb25seSkgLmdsLWJ1dHRvbi1pY29uLmdsLW5ldy1kcm9wZG93bi1jaGV2cm9uIHtcbiAgQGFwcGx5IGdsLW1sLTI7XG4gIEBhcHBseSBnbC1tci0wO1xufVxuLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLWljb24tb25seS5nbC1idXR0b246bm90KC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlLW5vLWNhcmV0KSB7XG4gIEBhcHBseSBnbC1wci0yO1xuICBAYXBwbHkgZ2wtcGwtMztcbn1cbi5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1pY29uLW9ubHkuZ2wtYnV0dG9uOm5vdCguZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZS1uby1jYXJldCkuYnRuLXNtLCAuZ2wtbmV3LWRyb3Bkb3duIC5idG4tZ3JvdXAtc20gPiAuZ2wtbmV3LWRyb3Bkb3duLWljb24tb25seS5nbC1idXR0b24uYnRuOm5vdCguZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZS1uby1jYXJldCkge1xuICBAYXBwbHkgZ2wtcHItMDtcbn1cbi5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1pY29uLW9ubHkgLmdsLWJ1dHRvbi1pY29uLmdsLWJ1dHRvbi1pY29uIHtcbiAgQGFwcGx5IGdsLW1yLTA7XG59XG4uZ2wtbmV3LWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24taWNvbi1vbmx5IC5nbC1idXR0b24taWNvbi5nbC1idXR0b24taWNvbi5nbC1idXR0b24tbG9hZGluZy1pbmRpY2F0b3Ige1xuICBAYXBwbHkgZ2wtbXItMjtcbn1cbi5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1pY29uLW9ubHkuYnRuLXNtIC5nbC1uZXctZHJvcGRvd24tY2hldnJvbiwgLmdsLW5ldy1kcm9wZG93biAuYnRuLWdyb3VwLXNtID4gLmdsLW5ldy1kcm9wZG93bi1pY29uLW9ubHkuYnRuIC5nbC1uZXctZHJvcGRvd24tY2hldnJvbiB7XG4gIEBhcHBseSBnbC1teC0wO1xufVxuLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLWNhcmV0LW9ubHkge1xuICBAYXBwbHkgZ2wtcGwtMjtcbn1cbi5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1jYXJldC1vbmx5LmJ0bi1zbSwgLmdsLW5ldy1kcm9wZG93biAuYnRuLWdyb3VwLXNtID4gLmdsLW5ldy1kcm9wZG93bi1jYXJldC1vbmx5LmJ0biB7XG4gIEBhcHBseSBnbC1wbC0wO1xufVxuXG4uZ2wtbmV3LWRyb3Bkb3duLWNvbnRhaW5lciAuZ2wtbmV3LWRyb3Bkb3duLWFycm93IHtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWRyb3Bkb3duLWJhY2tncm91bmQtY29sb3IpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcik7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHZhcigtLWdsLWRyb3Bkb3duLWJhY2tncm91bmQtY29sb3IpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWNvbnRhaW5lciAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsIHtcbiAgQGFwcGx5IGdsLWhpZGRlbjtcbiAgQGFwcGx5IGdsLWJnLWRyb3Bkb3duO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1kcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgQGFwcGx5IGdsLWRyb3Atc2hhZG93LW1kO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDA7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWNvbnRhaW5lciAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsLWZsdWlkLXdpZHRoIHtcbiAgbWluLXdpZHRoOiAxNS41cmVtO1xuICBtYXgtd2lkdGg6IDI4LjVyZW07XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWNvbnRhaW5lciAuZ2wtbmV3LWRyb3Bkb3duLWlubmVyIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgbWF4LWhlaWdodDogMTkuNXJlbTtcbn1cbi5nbC1uZXctZHJvcGRvd24tY29udGFpbmVyIC5nbC1uZXctZHJvcGRvd24tY29udGVudHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBhcHBseSBnbC1ncm93O1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3cteS1hdXRvO1xuICBAYXBwbHkgZ2wtcGwtMDtcbiAgQGFwcGx5IGdsLW1iLTA7XG4gIEBhcHBseSBnbC1weS0yO1xuICBAYXBwbHkgZ2wtbGlzdC1ub25lO1xufVxuLmdsLW5ldy1kcm9wZG93bi1jb250YWluZXIgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50czpmb2N1cy12aXNpYmxlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLmdsLW5ldy1kcm9wZG93bi1jb250YWluZXIgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50cyB1bCB7XG4gIEBhcHBseSBnbC1saXN0LW5vbmU7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWNvbnRhaW5lciAuZ2wtbmV3LWRyb3Bkb3duLWNvbnRlbnRzLXdpdGgtc2NyaW0tb3ZlcmxheSB7XG4gIHBhZGRpbmc6IDA7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWNvbnRhaW5lciAuZ2wtbmV3LWRyb3Bkb3duLWNvbnRlbnRzIC50b3Atc2NyaW0td3JhcHBlcixcbi5nbC1uZXctZHJvcGRvd24tY29udGFpbmVyIC5nbC1uZXctZHJvcGRvd24tY29udGVudHMgLmJvdHRvbS1zY3JpbS13cmFwcGVyIHtcbiAgaGVpZ2h0OiAwLjI1cmVtO1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogc3RpY2t5O1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGxlZnQ6IDFweDtcbiAgcmlnaHQ6IDFweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcztcbn1cbi5nbC1uZXctZHJvcGRvd24tY29udGFpbmVyIC5nbC1uZXctZHJvcGRvd24tY29udGVudHMgLnRvcC1zY3JpbS13cmFwcGVyIHtcbiAgdG9wOiAwO1xufVxuLmdsLW5ldy1kcm9wZG93bi1jb250YWluZXIgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50cyAudG9wLXNjcmltLXdyYXBwZXIgLnRvcC1zY3JpbSB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xufVxuLmdsLW5ldy1kcm9wZG93bi1jb250YWluZXIgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50cyAudG9wLXNjcmltLXdyYXBwZXIgLnRvcC1zY3JpbS50b3Atc2NyaW0tbGlnaHQge1xuICBoZWlnaHQ6IDIuMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtIDAuMzc1cmVtIDAgMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcikgMCUsIHZhcigtLWdsLWNvbG9yLWFscGhhLTApKTtcbn1cbi5nbC1uZXctZHJvcGRvd24tY29udGFpbmVyIC5nbC1uZXctZHJvcGRvd24tY29udGVudHMgLnRvcC1zY3JpbS13cmFwcGVyIC50b3Atc2NyaW0udG9wLXNjcmltLWRhcmsge1xuICBoZWlnaHQ6IDAuMjVyZW07XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSAwJSwgdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCkgMTAwJSk7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWNvbnRhaW5lciAuZ2wtbmV3LWRyb3Bkb3duLWNvbnRlbnRzIC5ib3R0b20tc2NyaW0td3JhcHBlciB7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiAwLjI1cmVtO1xufVxuLmdsLW5ldy1kcm9wZG93bi1jb250YWluZXIgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50cyAuYm90dG9tLXNjcmltLXdyYXBwZXIgLmJvdHRvbS1zY3JpbSB7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IGNhbGMoLTIuMjVyZW0gKyAwLjI1cmVtKTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAuMzc1cmVtIDAuMzc1cmVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKSAwJSwgdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcikpO1xufVxuLmdsLW5ldy1kcm9wZG93bi1jb250YWluZXIgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50cy50b3Atc2NyaW0tdmlzaWJsZSAudG9wLXNjcmltLXdyYXBwZXIsIC5nbC1uZXctZHJvcGRvd24tY29udGFpbmVyIC5nbC1uZXctZHJvcGRvd24tY29udGVudHMuYm90dG9tLXNjcmltLXZpc2libGUgLmJvdHRvbS1zY3JpbS13cmFwcGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5nbC1uZXctZHJvcGRvd24tY29udGFpbmVyIC5nbC1uZXctZHJvcGRvd24tY29udGVudHMuYm90dG9tLXNjcmltLXZpc2libGUgLmJvdHRvbS1zY3JpbSB7XG4gIGhlaWdodDogMi4yNXJlbTtcbn1cblxuLmJ0bi1ncm91cCAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6bGFzdC1jaGlsZCkgLmdsLW5ldy1kcm9wZG93bi10b2dnbGUge1xuICBAYXBwbHkgZ2wtcm91bmRlZC10ci1ub25lO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1ici1ub25lO1xufVxuLmJ0bi1ncm91cCAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6Zmlyc3QtY2hpbGQpIC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdGwtbm9uZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmwtbm9uZTtcbn1cbi5idG4tZ3JvdXAgLmdsLW5ldy1kcm9wZG93bjpob3ZlciAuZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBhcHBseSBnbC16LTE7XG59XG4uYnRuLWdyb3VwIC5nbC1uZXctZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbi5idG4tZ3JvdXAgLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZTphY3RpdmUge1xuICBAYXBwbHkgZ2wtei0xO1xufVxuXG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW0ge1xuICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtbXktMTtcbiAgLyogd2hlbiB0aGVyZSBpcyBhIHNjcmltIGBsaWAgaXRlbXMgaW5zaWRlIHRoZSBsaXN0LCB0aGUgZmlyc3QgYW5kIGxhc3QgcmVhbCBpdGVtc1xuICBkbyBub3QgbWF0Y2ggdGhlIHNlbGVjdG9yIGA6Zmlyc3QtY2hpbGRgIGFuZCBgOmxhc3QtY2hpbGRgLFxuICB0aGF0J3Mgd2h5IHdlIGhhdmUgdG8gdGFyZ2V0IHRoZW0gd2l0aCBhIGRpZmZlcmVudCBzZWxlY3RvciAqL1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtOmZpcnN0LWNoaWxkLCAuZ2wtbmV3LWRyb3Bkb3duLWNvbnRlbnRzLXdpdGgtc2NyaW0tb3ZlcmxheSA+IC5nbC1uZXctZHJvcGRvd24taXRlbTpudGgtY2hpbGQoMyk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIEBhcHBseSBnbC1tdC0wO1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtOmxhc3QtY2hpbGQsIC5nbC1uZXctZHJvcGRvd24tY29udGVudHMtd2l0aC1zY3JpbS1vdmVybGF5ID4gLmdsLW5ldy1kcm9wZG93bi1pdGVtOm50aC1sYXN0LWNoaWxkKDMpOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgQGFwcGx5IGdsLW1iLTA7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6aG92ZXIgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWhvdmVyKTtcbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbTpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1mb2N1cyk7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6YWN0aXZlIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50LCAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTphY3RpdmUgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItYWN0aXZlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1hY3RpdmUpO1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0gLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbVthcmlhLXNlbGVjdGVkPXRydWVdLmRpc2FibGVkIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW1bYXJpYS1zZWxlY3RlZD10cnVlXTpub3QoLmRpc2FibGVkKTpob3ZlciAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTtcbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbVthcmlhLXNlbGVjdGVkPXRydWVdOm5vdCguZGlzYWJsZWQpOmhvdmVyIC5nbC1uZXctZHJvcGRvd24taXRlbS1jaGVjay1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV06bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbVthcmlhLXNlbGVjdGVkPXRydWVdOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNoZWNrLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1mb2N1cyk7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW1bYXJpYS1zZWxlY3RlZD10cnVlXTpub3QoLmRpc2FibGVkKTphY3RpdmUgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQsIC5nbC1uZXctZHJvcGRvd24taXRlbVthcmlhLXNlbGVjdGVkPXRydWVdOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6YWN0aXZlIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtYWN0aXZlKTtcbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbVthcmlhLXNlbGVjdGVkPXRydWVdOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY2hlY2staWNvbiwgLmdsLW5ldy1kcm9wZG93bi1pdGVtW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV06bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTphY3RpdmUgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNoZWNrLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1hY3RpdmUpO1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiBub25lO1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCwgLmdsLW5ldy1kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQsIC5nbC1uZXctZHJvcGRvd24taXRlbTpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlOmFjdGl2ZSAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6YWN0aXZlIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50LCAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW06bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCwgLmdsLW5ldy1kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6YWN0aXZlIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbTpmb2N1cy12aXNpYmxlIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgei1pbmRleDogMTtcbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbS5nbC1uZXctZHJvcGRvd24taXRlbS1oaWdobGlnaHRlZCAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1mb2N1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtZm9jdXMpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvciksIGluc2V0IDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLmdsLW5ldy1kcm9wZG93bi1pdGVtLWhpZ2hsaWdodGVkIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbS5kaXNhYmxlZCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtLmRpc2FibGVkIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbS5kaXNhYmxlZCAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY2hlY2staWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLWRpc2FibGVkKTtcbn1cbi5nbC1uZXctZHJvcGRvd24taXRlbSAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4xcyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJveC1zaGFkb3cgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgQGFwcGx5IGdsLXB5LTA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3JtYWw7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLmdsLW5ldy1kcm9wZG93bi1pdGVtIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXMgIWltcG9ydGFudDtcbiAgfVxufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IC5nbC1uZXctZHJvcGRvd24taXRlbS1jaGVjay1pY29uIHtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuICBAYXBwbHkgZ2wtbXItMztcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW0gLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWljb24ge1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG4gIEBhcHBseSBnbC1tci0yO1xuICBAYXBwbHkgZ2wtaW5saW5lLWJsb2NrO1xuICBAYXBwbHkgZ2wtaC01O1xuICBAYXBwbHkgZ2wtdy01O1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IC5nbC1uZXctZHJvcGRvd24taXRlbS1pY29uIC5nbC1pY29uIHtcbiAgdmVydGljYWwtYWxpZ246IC0zcHg7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW0gLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQgLmdsLW5ldy1kcm9wZG93bi1pdGVtLXRleHQtd3JhcHBlciB7XG4gIEBhcHBseSBnbC1taW4tdy0wO1xuICBAYXBwbHkgZ2wtZ3JvdztcbiAgQGFwcGx5IGdsLXB5LTM7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW0uZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tZGFuZ2VyIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtLmdsLW5ldy1kcm9wZG93bi1pdGVtLWRhbmdlcjpob3ZlciAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudDpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xufVxuLmdsLW5ldy1kcm9wZG93bi1pdGVtLmdsLW5ldy1kcm9wZG93bi1pdGVtLWRhbmdlcjpmb2N1cy12aXNpYmxlIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG59XG4uZ2wtbmV3LWRyb3Bkb3duLWl0ZW0uZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tZGFuZ2VyOmFjdGl2ZSAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCwgLmdsLW5ldy1kcm9wZG93bi1pdGVtLmdsLW5ldy1kcm9wZG93bi1pdGVtLWRhbmdlcjpmb2N1cy12aXNpYmxlOmFjdGl2ZSAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG59XG5cbi5nbC1saXN0Ym94LXNlYXJjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5nbC1saXN0Ym94LXNlYXJjaCAuZ2wtbGlzdGJveC1zZWFyY2gtaW5wdXQge1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1oLWF1dG87XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDJyZW0gKyAwLjI1cmVtKTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygxLjVyZW0gKyAwLjI1cmVtKTtcbiAgQGFwcGx5IGdsLXB5LTQ7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLXNlYXJjaC1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cbi5nbC1saXN0Ym94LXNlYXJjaCAuZ2wtbGlzdGJveC1zZWFyY2gtaW5wdXQ6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLCBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvcik7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZ2wtbGlzdGJveC1zZWFyY2ggLmdsLWxpc3Rib3gtc2VhcmNoLWlucHV0OmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dDtcbiAgfVxufVxuLmdsLWxpc3Rib3gtc2VhcmNoIC5nbC1saXN0Ym94LXNlYXJjaC1pbnB1dDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcik7XG59XG4uZ2wtbGlzdGJveC1zZWFyY2ggLmdsLWxpc3Rib3gtc2VhcmNoLWlucHV0Ojotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLWhpZGRlbjtcbn1cbi5nbC1saXN0Ym94LXNlYXJjaC5nbC1saXN0Ym94LXRvcG1vc3QgLmdsLWxpc3Rib3gtc2VhcmNoLWlucHV0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYygwLjVyZW0gLSAxcHgpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYygwLjVyZW0gLSAxcHgpO1xufVxuLmdsLWxpc3Rib3gtc2VhcmNoIC5nbC1saXN0Ym94LXNlYXJjaC1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoNTAlIC0gMTJweCAvIDIpO1xuICBsZWZ0OiAwLjc1cmVtO1xuICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1zdWJ0bGUpO1xufVxuLmdsLWxpc3Rib3gtc2VhcmNoIC5nbC1saXN0Ym94LXNlYXJjaC1jbGVhci1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYyg1MCUgLSAyNHB4IC8gMik7XG4gIHJpZ2h0OiAwLjVyZW07XG59XG5cbi5nbC1lbXB0eS1zdGF0ZS1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA2NWNoO1xufVxuXG46cm9vdC51aS1uZXV0cmFsLFxuLnVpLW5ldXRyYWwtc2NvcGUge1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMDogI2ZmZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwOiAjZmJmYWZkO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTA6ICNlY2VjZWY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDA6ICNkY2RjZGU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0yMDA6ICNiZmJmYzM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0zMDA6ICNhNGEzYTg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC00MDA6ICM4OTg4OGQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDA6ICM3MzcyNzg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC02MDA6ICM2MjYxNjg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC03MDA6ICM0YzRiNTE7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC04MDA6ICMzYTM4M2Y7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05MDA6ICMyODI3MmQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05NTA6ICMxODE3MWQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwOiAjMDUwNTA2O1xufVxuXG46cm9vdC51aS1pbmRpZ28sXG4udWktaW5kaWdvLXNjb3BlIHtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTA6ICNmZmY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDogI2Y5ZjhmYTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTUwOiAjZWZlYmYyO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwOiAjZTFkOWU2O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMjAwOiAjYzJiZGM3O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMzAwOiAjYTVhMmE4O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNDAwOiAjODk4ODhiO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTAwOiAjNzM3Mzc0O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNjAwOiAjNjQ2MDY3O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNzAwOiAjNTA0OTU1O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtODAwOiAjM2YzNTQ2O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTAwOiAjMmUyNDM0O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTUwOiAjMWQxNDI0O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwMDogIzEyMGExODtcbn1cblxuOnJvb3QudWktYmx1ZSxcbi51aS1ibHVlLXNjb3BlIHtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTA6ICNmZmY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDogI2Y4ZjhmYTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTUwOiAjZTllYmYwO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwOiAjZDdkY2U1O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMjAwOiAjYmNiZmM2O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMzAwOiAjYTFhM2E3O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNDAwOiAjODg4ODhhO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTAwOiAjNzI3MjczO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNjAwOiAjNWY2MjY2O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNzAwOiAjNDc0YzU0O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtODAwOiAjMzMzOTQ1O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTAwOiAjMjIyNzMzO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTUwOiAjMTIxNzIyO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwMDogIzA5MGQxNztcbn1cblxuOnJvb3QudWktZ3JlZW4sXG4udWktZ3JlZW4tc2NvcGUge1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMDogI2ZmZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwOiAjZjdmOWY4O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTA6ICNlNmVkZWI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDA6ICNkNGRmZGI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0yMDA6ICNiOWMxYmY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0zMDA6ICNhMGE0YTM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC00MDA6ICM4Nzg5ODg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDA6ICM3MTczNzI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC02MDA6ICM1ZTYzNjE7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC03MDA6ICM0NDRlNGE7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC04MDA6ICMzMTNiMzg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05MDA6ICMxZjJhMjY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05NTA6ICMxMDE5MTY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwOiAjMDYwZjBjO1xufVxuXG46cm9vdC51aS1yZWQsXG4udWktcmVkLXNjb3BlIHtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTA6ICNmZmY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDogI2ZiZjdmOTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTUwOiAjZjRlYWVlO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwOiAjZTlkN2RlO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMjAwOiAjY2FiYmMxO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMzAwOiAjYWFhMWE0O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNDAwOiAjOGI4Nzg5O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTAwOiAjNzQ3MjczO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNjAwOiAjNjU2MDYyO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNzAwOiAjNTM0OTRjO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtODAwOiAjNDIzNTM5O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTAwOiAjMzEyNDI4O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTUwOiAjMjAxNDE4O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwMDogIzE1MGEwZTtcbn1cblxuOnJvb3QudWktZ3JheSxcbi51aS1ncmF5LXNjb3BlIHtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTA6ICNmZmY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDogI2Y4ZjhmODtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTUwOiAjZWNlY2VjO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwOiAjZGNkY2RjO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMjAwOiAjYmZiZmJmO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMzAwOiAjYTNhM2EzO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNDAwOiAjODk4ODg5O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTAwOiAjNzI3MjcyO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNjAwOiAjNjE2MTYxO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNzAwOiAjNGI0YjRiO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtODAwOiAjMzgzODM5O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTAwOiAjMjcyNzI3O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTUwOiAjMTcxNzE3O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwMDogIzBkMGQwZDtcbn1cblxuOnJvb3QudWktaW5kaWdvLFxuLnVpLWluZGlnby1zY29wZSB7XG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNTAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS04MDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApO1xufVxuXG46cm9vdC51aS1pbmRpZ28uZ2wtZGFyayxcbi51aS1pbmRpZ28tc2NvcGUuZ2wtZGFyay1zY29wZSB7XG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMzAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS01MCk7XG59XG5cbjpyb290LnVpLWJsdWUsXG4udWktYmx1ZS1zY29wZSB7XG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTgwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApO1xufVxuXG46cm9vdC51aS1ibHVlLmdsLWRhcmssXG4udWktYmx1ZS1zY29wZS5nbC1kYXJrLXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMzAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwKTtcbn1cblxuOnJvb3QudWktZ3JlZW4sXG4udWktZ3JlZW4tc2NvcGUge1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWluZGljYXRvci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNTAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTgwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTUwKTtcbn1cblxuOnJvb3QudWktZ3JlZW4uZ2wtZGFyayxcbi51aS1ncmVlbi1zY29wZS5nbC1kYXJrLXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTMwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTUwKTtcbn1cblxuOnJvb3QudWktcmVkLFxuLnVpLXJlZC1zY29wZSB7XG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtNTAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC04MDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApO1xufVxuXG46cm9vdC51aS1yZWQuZ2wtZGFyayxcbi51aS1yZWQtc2NvcGUuZ2wtZGFyay1zY29wZSB7XG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMzAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC0yMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7XG59XG5cbjpyb290LnVpLWdyYXksXG4udWktZ3JheS1zY29wZSB7XG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApO1xufVxuXG46cm9vdC51aS1ncmF5LmdsLWRhcmssXG4udWktZ3JheS1zY29wZS5nbC1kYXJrLXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMzAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTtcbn1cblxuLypcbiogU0FTUyBwcmVzZXJ2ZXMgdW5pdHMgaW4gYXJpdGhtZXRpYyBvcGVyYXRpb25zLiBGb3IgZXhhbXBsZTpcbiogMTJlbSAqIDAgPSAwZW0uIFRoaXMgZnVuY3Rpb24gcmV0dXJuIHRoZSB1bml0IG9mIGEgbnVtZXJpYyB2YWx1ZS5cbipcbiogRm9yIG1vcmUgZXhhbXBsZXMsIHNlZTogaHR0cHM6Ly9jb2RlcGVuLmlvL3BhdWxndi9wZW4vWFdycU1nUVxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZW5hYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyoqXG4qIERlY2xhcmVzIGEgcHJvcGVydHkgd2l0aCBhIGZsdWlkIHZhbHVlIHRoYXQgZGVjcmVhc2VzIG9yXG4qIHJpc2VzIGRlcGVuZGluZyBvbiB0aGUgdmlld3BvcnTigJlzIHNpemUuIFRoZSBwcm9wZXJ0eSB0eXBlXG4qIHNob3VsZCBiZSBudW1lcmljLlxuKlxuKiBWYWx1ZXMgYXJlIGV4cGVjdGVkIGluIHJlbSB1bml0cy5cbiogRmx1aWQgcmFuZ2U6IGJldHdlZW4gNDhyZW0gKDc2OHB4KSDigJMgNzVyZW0gKDEyMDBweCkuXG4qXG4qIEBwYXJhbSAkcHJvcGVydHkgUHJvcGVydHkgbmFtZSwgaS5lLiBsaW5lLWhlaWdodCwgZm9udC1zaXplLCB3aWR0aCwgaGVpZ2h0LCBldGMuXG4qIEBwYXJhbSAkbWluIFByb3BlcnR5IHZhbHVlIGxvd2VyIGJvdW5kLlxuKiBAcGFyYW0gJG1heCBQcm9wZXJ0eSB2YWx1ZSB1cHBlciBib3VuZC5cbiovXG4vKipcbiogSGVscGVyIGZ1bmN0aW9uIGZvciA6Zm9jdXNcbipcbiogQHBhcmFtICRzaXplIGlzIGRlcHJlY2F0ZWQgYW5kIHNob3VsZCBub3QgYmUgdXNlZCBhbnltb3JlXG4qL1xuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiBmb3IgQG1lZGlhIG9mIGF0IGxlYXN0IHRoZSBtaW5pbXVtXG4qIGJyZWFrcG9pbnQgd2lkdGguXG4qXG4qIEBwYXJhbSAkbmFtZSBCcmVha3BvaW50IG5hbWUsIHN1Y2ggYXMgYHNtYCBvciBgbWRgLlxuKi9cbi8qKlxuKiBIZWxwZXIgZnVuY3Rpb24gZm9yIEBtZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtXG4qIGJyZWFrcG9pbnQgd2lkdGguXG4qXG4qIE5vdGU6IEJlZm9yZSB1c2luZywgY29uc2lkZXIgdXNpbmcgYSBtb2JpbGUtZmlyc3RcbiogYXBwcm9hY2gsIGFuZCBkZWZpbmUgQG1lZGlhIGZvciBsYXJnZXIgYnJlYWtwb2ludHNcbiogdXNpbmcgYGdsLW1lZGlhLWJyZWFrcG9pbnQtdXBgIHdoaWxlIHVzaW5nIHRoaXMgcnVsZSBhc1xuKiB0aGUgc3RhcnRpbmcgcG9pbnQgaW5zdGVhZC5cbipcbiogQHBhcmFtICRuYW1lIEJyZWFrcG9pbnQsIHN1Y2ggYXMgYHNtYCBvciBgbWRgLiBgeHNgIGlzIG5vdCB2YWxpZFxuKi9cbi8qKlxuKiBIZWxwZXIgZnVuY3Rpb24gdG8gcmVzb2x2ZSBmb250LXNpemUgdmFsdWUgZnJvbSAkZ2wtZm9udC1zaXplcyBhbmRcbiogJGdsLWZvbnQtc2l6ZXMtZml4ZWQgbWFwcy5cbipcbiogQHBhcmFtICRzaXplIE51bWJlciBmb250LXNpemUgc2NhbGVcbiogQHBhcmFtICRmaXhlZCBCb29sZWFuIHRvZ2dsZSBkZWZhdWx0IGFuZCBmaXhlZCBmb250IHNpemUgc2NhbGVzXG4qL1xuLnJlc2l6YWJsZS1jb250ZW50IHtcbiAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3cteS1hdXRvO1xuICBAYXBwbHkgZ2wtc2hhZG93LWxnO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG59XG5cbi5yZXNpemFibGUtY29tcG9uZW50IC5yZXNpemFibGUtdCxcbi5yZXNpemFibGUtY29tcG9uZW50IC5yZXNpemFibGUtbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLnJlc2l6YWJsZS1jb21wb25lbnQgLnJlc2l6YWJsZS10LFxuICAucmVzaXphYmxlLWNvbXBvbmVudCAucmVzaXphYmxlLWwge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBtcyAhaW1wb3J0YW50O1xuICB9XG59XG4ucmVzaXphYmxlLWNvbXBvbmVudCAucmVzaXphYmxlLXQsXG4ucmVzaXphYmxlLWNvbXBvbmVudCAucmVzaXphYmxlLWwge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLnJlc2l6YWJsZS1jb21wb25lbnQgLnJlc2l6YWJsZS10OmhvdmVyLFxuLnJlc2l6YWJsZS1jb21wb25lbnQgLnJlc2l6YWJsZS1sOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApO1xufVxuLnJlc2l6YWJsZS1jb21wb25lbnQgLnJlc2l6YWJsZS10IHtcbiAgd2lkdGg6IDk1JSAhaW1wb3J0YW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDRweCAhaW1wb3J0YW50O1xuICB0b3A6IDJweCAhaW1wb3J0YW50O1xufVxuLnJlc2l6YWJsZS1jb21wb25lbnQgLnJlc2l6YWJsZS1sIHtcbiAgaGVpZ2h0OiA5NSUgIWltcG9ydGFudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICB3aWR0aDogNHB4ICFpbXBvcnRhbnQ7XG4gIGxlZnQ6IDJweCAhaW1wb3J0YW50O1xufVxuLnJlc2l6YWJsZS1jb21wb25lbnQgLmR1by1jaGF0IHtcbiAgQGFwcGx5IGdsLXotMDtcbn1cbi5yZXNpemFibGUtY29tcG9uZW50IC5yZXNpemFibGUtbCxcbi5yZXNpemFibGUtY29tcG9uZW50IC5yZXNpemFibGUtbHQsXG4ucmVzaXphYmxlLWNvbXBvbmVudCAucmVzaXphYmxlLXQge1xuICBAYXBwbHkgZ2wtei0xO1xufVxuXG4uZHVvLWNoYXQge1xuICB6LWluZGV4OiA5OTk7XG4gIEBhcHBseSBnbC1mb250LXJlZ3VsYXI7XG59XG4uZHVvLWNoYXQgLm1lc3NhZ2UtZW50ZXItYWN0aXZlLFxuLmR1by1jaGF0IC5tZXNzYWdlLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG4uZHVvLWNoYXQgLm1lc3NhZ2UtZW50ZXIsXG4uZHVvLWNoYXQgLm1lc3NhZ2UtbGVhdmUtdG8ge1xuICBAYXBwbHkgZ2wtb3BhY2l0eS0wO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG59XG4uZHVvLWNoYXQgLmR1by1jaGF0LWxvYWRlci5tZXNzYWdlLWxlYXZlLFxuLmR1by1jaGF0IC5kdW8tY2hhdC1sb2FkZXIubWVzc2FnZS1sZWF2ZS10byB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG4uZHVvLWNoYXQgLmR1by1hZ2VudC1tb2RlLXN3aXRjaGVyID4gKixcbi5kdW8tY2hhdCAuZHVvLW1vZGVsLXN3aXRjaGVyID4gKiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZHVvLWNoYXQtZHJhd2VyIHtcbiAgcmlnaHQ6IDA7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLWFsbDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3cteS1hdXRvO1xuICBAYXBwbHkgZ2wtc2hhZG93LWxnO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG59XG5cbi5kdW8tY2hhdC1kcmF3ZXItZm9vdGVyIHtcbiAgQGFwcGx5IGdsLXB4LTQ7XG4gIEBhcHBseSBnbC1wYi00O1xufVxuLmR1by1jaGF0LWRyYXdlci1mb290ZXI6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHRyYW5zcGFyZW50LCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKTtcbiAgdG9wOiAwO1xuICBAYXBwbHkgLWdsLXRyYW5zbGF0ZS15LWZ1bGw7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLW5vbmU7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1oLTQ7XG59XG5cbi5kdW8tY2hhdC1oaXN0b3J5IHtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIC8qXG4gIEJyb3dzZXJzIGEgYXJlIHByZXR0eSBnb29kIGF0IGtlZXBpbmcgdGhlIGZvY3VzIG9uIGFuIGVsZW1lbnQgd2hpbGVcbiAgdGhlIHBhcmVudCBlbGVtZW50IGdyb3dzIGluIHNpemUuIFdpdGggdGhpcyB3ZSBtYXJrIGFsbCBjaGlsZCBlbGVtZW50c1xuICBvZiB0aGUgY2hhdCBoaXN0b3J5IGFzIFwibm9uXCIgYW5jaG9ycy5cbiAgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTL292ZXJmbG93LWFuY2hvclxuICAqL1xufVxuLmR1by1jaGF0LWhpc3RvcnkgKiB7XG4gIG92ZXJmbG93LWFuY2hvcjogbm9uZTtcbn1cbi5kdW8tY2hhdC1oaXN0b3J5IHtcbiAgLypcbiAgUmlnaHQgYXQgdGhlIGJvdHRvbSBvZiB0aGUgY2hhdCBoaXN0b3J5IHdlIGFkZCBhIHNjcm9sbC1hbmNob3IgZWxlbWVudC5cbiAgVGhpcyBzY3JvbGwtYW5jaG9yIGVsZW1lbnQgaXMgdGhlIG9ubHkgXCJwb3NzaWJsZVwiIGFuY2hvci4gVGhlIGJlYXV0eSBvZiBpdDpcbiAgSXQgb25seSB3aWxsIGJlIHVzZWQgYXMgYW4gYW5jaG9yIF9pZl8gaXQgaXMgY3VycmVudGx5IGluc2lkZSB0aGUgdmlldyBwb3J0LlxuICBTbyBpZiB0aGUgdXNlciBtYW51YWxseSBzY3JvbGxzIHVwIHdoaWxlIGEgY2h1bmtlZCBtZXNzYWdlIGlzIGNvbWluZyBpbixcbiAgaXQgd29uJ3Qgc3RpY2sgdG8gdGhlIGJvdHRvbSB3aGlsZSB0aGUgbWVzc2FnZSBzdGlsbCBsb2Fkcy5cbiAgKi9cbn1cbi5kdW8tY2hhdC1oaXN0b3J5IC5zY3JvbGwtYW5jaG9yIHtcbiAgb3ZlcmZsb3ctYW5jaG9yOiBhdXRvO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cblxuLmhpc3RvcnktaXRlbSB7XG4gIEBhcHBseSBnbC1wci0yO1xuICBAYXBwbHkgLWdsLW14LTM7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWdhcC0zO1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLmhpc3RvcnktaXRlbTpob3ZlciwgLmhpc3RvcnktaXRlbTpmb2N1cywgLmhpc3RvcnktaXRlbTpmb2N1cy13aXRoaW4ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbn1cbi5oaXN0b3J5LWl0ZW06aG92ZXIgLmhpc3RvcnktcmVtb3ZlLWJ1dHRvbiwgLmhpc3RvcnktaXRlbTpmb2N1cyAuaGlzdG9yeS1yZW1vdmUtYnV0dG9uLCAuaGlzdG9yeS1pdGVtOmZvY3VzLXdpdGhpbiAuaGlzdG9yeS1yZW1vdmUtYnV0dG9uIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5oaXN0b3J5LWl0ZW0gLmhpc3RvcnktcmVtb3ZlLWJ1dHRvbiB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG4uaGlzdG9yeS1pdGVtIC5oaXN0b3J5LWl0ZW0tbmFtZSB7XG4gIEBhcHBseSBnbC1weS0zO1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbGc7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbn1cbi5oaXN0b3J5LWl0ZW0gLmhpc3RvcnktaXRlbS1uYW1lLCAuaGlzdG9yeS1pdGVtIC5oaXN0b3J5LWl0ZW0tbmFtZTpob3ZlciwgLmhpc3RvcnktaXRlbSAuaGlzdG9yeS1pdGVtLW5hbWU6YWN0aXZlLCAuaGlzdG9yeS1pdGVtIC5oaXN0b3J5LWl0ZW0tbmFtZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4uaGlzdG9yeS1pdGVtIC5nbC1idXR0b24tdGV4dCB7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1yb3c7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1nYXAtMztcbiAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbn1cblxuLmR1by1jaGF0LWlucHV0IHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgbWF4LWhlaWdodDogMjQwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xufVxuLmR1by1jaGF0LWlucHV0OmZvY3VzLXdpdGhpbiB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1cyksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmR1by1jaGF0LWlucHV0OmZvY3VzLXdpdGhpbiB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0O1xuICB9XG59XG4uZHVvLWNoYXQtaW5wdXQgLmdsLWZvcm0tdGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgZmxleDogMTtcbiAgcmVzaXplOiBub25lO1xuICBtYXgtaGVpZ2h0OiAyNDBweDtcbiAgcGFkZGluZy1yaWdodDogNDBweDtcbiAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbn1cbi5kdW8tY2hhdC1pbnB1dDo6YWZ0ZXIge1xuICBjb250ZW50OiBhdHRyKGRhdGEtdmFsdWUpIFwiIFwiO1xuICBAYXBwbHkgZ2wtaW52aXNpYmxlO1xuICBAYXBwbHkgZ2wtcC00O1xuICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xufVxuXG4uZHVvLWNoYXQgLmR1by1jaGF0LXN1Z2dlc3Rpb24tYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtMnhsO1xufVxuXG4uc2xhc2gtY29tbWFuZHMge1xuICBAYXBwbHkgLWdsLW10LTI7XG59XG4uc2xhc2gtY29tbWFuZHMgLmFjdGl2ZS1jb21tYW5kIHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbn1cbi5zbGFzaC1jb21tYW5kcyAuZ2wtZHJvcGRvd24taXRlbSBidXR0b24uZHJvcGRvd24taXRlbSB7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xufVxuLnNsYXNoLWNvbW1hbmRzIC5nbC1kcm9wZG93bi1pdGVtIGJ1dHRvbi5kcm9wZG93bi1pdGVtOmhvdmVyIHtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xufVxuXG4uZHVvLWNoYXQtbWFya2Rvd24ge1xuICBAYXBwbHkgZ2wtdGV4dC1sZztcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjQ7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1mb250LXJlZ3VsYXI7XG4gIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBbZGlyPWF1dG9dIHtcbiAgdGV4dC1hbGlnbjogaW5pdGlhbDtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biA6Zmlyc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtbXQtMDtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBoMSxcbi5kdW8tY2hhdC1tYXJrZG93biAuZ2wtaDEge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0xO1xuICBAYXBwbHkgZ2wtbXQtNztcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBoMixcbi5kdW8tY2hhdC1tYXJrZG93biAuZ2wtaDIge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0yO1xuICBAYXBwbHkgZ2wtbXQtNjtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBoMyxcbi5kdW8tY2hhdC1tYXJrZG93biAuZ2wtaDMge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0zO1xuICBAYXBwbHkgZ2wtbXQtNjtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBoNCxcbi5kdW8tY2hhdC1tYXJrZG93biAuZ2wtaDQge1xuICBAYXBwbHkgZ2wtaGVhZGluZy00O1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBoNSxcbi5kdW8tY2hhdC1tYXJrZG93biAuZ2wtaDUge1xuICBAYXBwbHkgZ2wtaGVhZGluZy01O1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBoNixcbi5kdW8tY2hhdC1tYXJrZG93biAuZ2wtaDYge1xuICBAYXBwbHkgZ2wtaGVhZGluZy02O1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBwLFxuLmR1by1jaGF0LW1hcmtkb3duIC5nbC1wYXJhZ3JhcGgge1xuICBAYXBwbHkgZ2wtbXQtMDtcbiAgQGFwcGx5IGdsLW1iLTA7XG59XG4uZHVvLWNoYXQtbWFya2Rvd24gcCArIHAsXG4uZHVvLWNoYXQtbWFya2Rvd24gcCArIC5nbC1wYXJhZ3JhcGgsXG4uZHVvLWNoYXQtbWFya2Rvd24gLmdsLXBhcmFncmFwaCArIHAsXG4uZHVvLWNoYXQtbWFya2Rvd24gLmdsLXBhcmFncmFwaCArIC5nbC1wYXJhZ3JhcGgge1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBwLnNtLFxuLmR1by1jaGF0LW1hcmtkb3duIC5nbC1wYXJhZ3JhcGguc20ge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biAuc20ge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biBibG9ja3F1b3RlIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBAYXBwbHkgZ2wtcHktMztcbiAgQGFwcGx5IGdsLXBsLTY7XG4gIEBhcHBseSBnbC1teS0zO1xuICBAYXBwbHkgZ2wtbXgtMDtcbiAgYm94LXNoYWRvdzogaW5zZXQgNHB4IDAgMCAwIHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biAuaWRpZmYge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1weC0yO1xufVxuLmR1by1jaGF0LW1hcmtkb3duIC5kZWxldGlvbiB7XG4gIEBhcHBseSBnbC1iZy1yZWQtMTAwO1xufVxuLmR1by1jaGF0LW1hcmtkb3duIC5hZGRpdGlvbiB7XG4gIEBhcHBseSBnbC1iZy1ncmVlbi0xMDA7XG59XG4uZHVvLWNoYXQtbWFya2Rvd24gLmF1ZGlvLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xufVxuLmR1by1jaGF0LW1hcmtkb3duIC5hdWRpby1jb250YWluZXIgYXVkaW8ge1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xufVxuLmR1by1jaGF0LW1hcmtkb3duIC5hdWRpby1jb250YWluZXIgYSB7XG4gIEBhcHBseSBnbC1tdC0zO1xufVxuLmR1by1jaGF0LW1hcmtkb3duIC5hdWRpby1jb250YWluZXIgYTo6YmVmb3JlIHtcbiAgQGFwcGx5IGdsLW1yLTI7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgY29udGVudDogXCLwn5OOXCI7XG59XG4uZHVvLWNoYXQtbWFya2Rvd24gdGFibGUge1xuICBAYXBwbHkgZ2wtbXktNztcbn1cbi5kdW8tY2hhdC1tYXJrZG93biB0YWJsZSB0aCxcbi5kdW8tY2hhdC1tYXJrZG93biB0YWJsZSB0ZCB7XG4gIEBhcHBseSBnbC1weC0zO1xuICBAYXBwbHkgZ2wtcHktNDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIEBhcHBseSBnbC1hbGlnbi10b3A7XG59XG4uZHVvLWNoYXQtbWFya2Rvd24gdGFibGUgdGgge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAwIDAgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpLCBpbnNldCAwIC0xcHggMCAwIHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbn1cbi5kdW8tY2hhdC1tYXJrZG93biB0YWJsZSB0aGVhZCB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG59XG4uZHVvLWNoYXQtbWFya2Rvd24gdGFibGUgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbn1cblxuLmR1by1jaGF0LWNvbXBhY3QtbWFya2Rvd24ge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbn1cbi5kdW8tY2hhdC1jb21wYWN0LW1hcmtkb3duIGgxLFxuLmR1by1jaGF0LWNvbXBhY3QtbWFya2Rvd24gLmdsLWgxIHtcbiAgQGFwcGx5IGdsLWhlYWRpbmctMS1maXhlZDtcbiAgQGFwcGx5IGdsLW10LTc7XG59XG4uZHVvLWNoYXQtY29tcGFjdC1tYXJrZG93biBoMixcbi5kdW8tY2hhdC1jb21wYWN0LW1hcmtkb3duIC5nbC1oMiB7XG4gIEBhcHBseSBnbC1oZWFkaW5nLTItZml4ZWQ7XG4gIEBhcHBseSBnbC1tdC02O1xufVxuLmR1by1jaGF0LWNvbXBhY3QtbWFya2Rvd24gaDMsXG4uZHVvLWNoYXQtY29tcGFjdC1tYXJrZG93biAuZ2wtaDMge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0zLWZpeGVkO1xuICBAYXBwbHkgZ2wtbXQtNjtcbn1cbi5kdW8tY2hhdC1jb21wYWN0LW1hcmtkb3duIGg0LFxuLmR1by1jaGF0LWNvbXBhY3QtbWFya2Rvd24gLmdsLWg0IHtcbiAgQGFwcGx5IGdsLWhlYWRpbmctNC1maXhlZDtcbiAgQGFwcGx5IGdsLW10LTU7XG59XG4uZHVvLWNoYXQtY29tcGFjdC1tYXJrZG93biBoNSxcbi5kdW8tY2hhdC1jb21wYWN0LW1hcmtkb3duIC5nbC1oNSB7XG4gIEBhcHBseSBnbC1oZWFkaW5nLTUtZml4ZWQ7XG4gIEBhcHBseSBnbC1tdC01O1xufVxuLmR1by1jaGF0LWNvbXBhY3QtbWFya2Rvd24gaDYsXG4uZHVvLWNoYXQtY29tcGFjdC1tYXJrZG93biAuZ2wtaDYge1xuICBAYXBwbHkgZ2wtaGVhZGluZy02LWZpeGVkO1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5kdW8tY2hhdC1jb21wYWN0LW1hcmtkb3duIC5zbSB7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xufVxuLmR1by1jaGF0LWNvbXBhY3QtbWFya2Rvd24gdGFibGUgdGgsXG4uZHVvLWNoYXQtY29tcGFjdC1tYXJrZG93biB0YWJsZSB0ZCB7XG4gIEBhcHBseSBnbC1weS0zO1xufVxuXG4ubWVzc2FnZS10b29sLWFwcHJvdmFsLWNvbGxhcHNlZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5tZXNzYWdlLXRvb2wtYXBwcm92YWwtY29sbGFwc2VkLWhlYWRlciB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGModmFyKC0tZ2wtY2FyZC1ib3JkZXItcmFkaXVzKSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKHZhcigtLWdsLWNhcmQtYm9yZGVyLXJhZGl1cykgLSAxcHgpO1xufVxuXG4uZHVvLWNoYXQtbG9hZGVyIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLmR1by1jaGF0LWxvYWRlciAudHJhbnNpdGlvbiB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMG1zICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5kdW8tY2hhdC1sb2FkZXIgLnRyYW5zaXRpb24ge1xuICB0cmFuc2l0aW9uOiB3aWR0aCAyMDBtcyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG4uZHVvLWNoYXQtbG9hZGVyIC50ZXh0LWVudGVyIHtcbiAgQGFwcGx5IGdsLW9wYWNpdHktMDtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbikge1xuICAuZHVvLWNoYXQtbG9hZGVyIC50ZXh0LWVudGVyLWFjdGl2ZSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMG1zICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5kdW8tY2hhdC1sb2FkZXIgLnRleHQtZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG4uZHVvLWNoYXQtbG9hZGVyIC50ZXh0LWVudGVyLXRvIHtcbiAgQGFwcGx5IGdsLW9wYWNpdHktMTA7XG59XG4uZHVvLWNoYXQtbG9hZGVyIC50ZXh0LWxlYXZlIHtcbiAgQGFwcGx5IGdsLW9wYWNpdHktMTA7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLmR1by1jaGF0LWxvYWRlciAudGV4dC1sZWF2ZS1hY3RpdmUge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tZGVsYXk6IDBtcyAhaW1wb3J0YW50O1xuICB9XG59XG4uZHVvLWNoYXQtbG9hZGVyIC50ZXh0LWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMjAwbXMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLmR1by1jaGF0LWxvYWRlciAudGV4dC1sZWF2ZS10byB7XG4gIEBhcHBseSBnbC1vcGFjaXR5LTA7XG59XG5cbi5kdW8tY2hhdC1tZXNzYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiAxcmVtIDFyZW0gMDtcbiAgY29sb3I6IHZhcigtLWR1by1jaGF0LW1lc3NhZ2UtY29sb3IsIGluaGVyaXQpICFpbXBvcnRhbnQ7XG4gIC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nOiB2YXIoLS1kdW8tY2hhdC1tZXNzYWdlLWhlYWRpbmctY29sb3IsIGluaGVyaXQpICFpbXBvcnRhbnQ7XG59XG4uZHVvLWNoYXQtbWVzc2FnZSBwOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gIEBhcHBseSBnbC1tYi00O1xufVxuLmR1by1jaGF0LW1lc3NhZ2UgcDpsYXN0LW9mLXR5cGUge1xuICBAYXBwbHkgZ2wtbWItMDtcbn1cblxuQGtleWZyYW1lcyBhbmltYXRlZC10ZXh0LXNlZ21lbnQtZmFkZS1pbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5kdW8tY2hhdC1tZXNzYWdlLW1hcmtkb3duLXNtb290aCAuYW5pbWF0ZWQtdGV4dC1zZWdtZW50IHtcbiAgYW5pbWF0aW9uOiBhbmltYXRlZC10ZXh0LXNlZ21lbnQtZmFkZS1pbiAwLjNzIGVhc2Utb3V0IGZvcndhcmRzO1xufVxuXG4uZHVvLWNoYXQtbWVzc2FnZS1lcnJvciA+IHAge1xuICBtYXJnaW46IDA7XG59XG5cbi5hZ2VudGljLWZlZWRiYWNrLWhvdmVyLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQsIG1hcmdpbiAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmdsLWdyb3VwOmhvdmVyIC5hZ2VudGljLWZlZWRiYWNrLWhvdmVyLXdyYXBwZXIsIC5hZ2VudGljLWZlZWRiYWNrLWhvdmVyLXdyYXBwZXI6Zm9jdXMtd2l0aGluIHtcbiAgd2lkdGg6IGF1dG87XG4gIG9wYWNpdHk6IDE7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2sgcHJlIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgQGFwcGx5IGdsLWJvcmRlciBnbC1weC00IGdsLXB5LTQ7XG4gIEBhcHBseSBnbC1tYXgtaC1bNjB2aF0gZ2wtc2Nyb2xsLXNtb290aCBnbC1vdmVyZmxvdy1hdXRvO1xuICBAYXBwbHkgZ2wtdGV4dC1pbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXByZWZvcm1hdCwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSk7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4uZHVvLW1lc3NhZ2UtcHJlLWJsb2NrIHByZTo6YmVmb3JlLCAuZHVvLW1lc3NhZ2UtcHJlLWJsb2NrIHByZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBsZWZ0OiAxcHg7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAycHgpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIEBhcHBseSBnbC1wb2ludGVyLWV2ZW50cy1ub25lIGdsLWgtNyBnbC1yb3VuZGVkLWItYmFzZTtcbn1cbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2sgcHJlLnNjcmltLXRvcDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgdHJhbnNwYXJlbnQsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xuICB0b3A6IDFweDtcbiAgQGFwcGx5IC1nbC1yb3RhdGUtMTgwO1xufVxuLmR1by1tZXNzYWdlLXByZS1ibG9jayBwcmUuc2NyaW0tYm90dG9tOjphZnRlciB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHRyYW5zcGFyZW50LCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKTtcbiAgYm90dG9tOiAxcHg7XG59XG5cbi5tZXNzYWdlLXRvb2wtYXBwcm92YWwgcHJlLmR1by1tZXNzYWdlLXByZS1ibG9jayB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG5cbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2sgcHJlIGNvZGUge1xuICBAYXBwbHkgZ2wtYmxvY2sgZ2wtd2hpdGVzcGFjZS1wcmU7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudCBnbC1yb3VuZGVkLW5vbmUgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtdGV4dC1zbSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2sgY29kZS5obGpzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4uZHVvLW1lc3NhZ2UtcHJlLWJsb2NrIGR1by1jb3B5LWNvZGUsXG4uZHVvLW1lc3NhZ2UtcHJlLWJsb2NrIGR1by1pbnNlcnQtY29kZS1zbmlwcGV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi1hbGw7XG4gIEBhcHBseSBnbC1vcGFjaXR5LTA7XG4gIHJpZ2h0OiAwLjVyZW07XG4gIHRvcDogY2FsYygwLjVyZW0gLSAxcHgpO1xuICBAYXBwbHkgZ2wtei0xO1xufVxuLmR1by1tZXNzYWdlLXByZS1ibG9jayBkdW8tY29weS1jb2RlIFtyb2xlPXRvb2x0aXBdLFxuLmR1by1tZXNzYWdlLXByZS1ibG9jayBkdW8taW5zZXJ0LWNvZGUtc25pcHBldCBbcm9sZT10b29sdGlwXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy10ZXh0LWNvbG9yKTtcbiAgQGFwcGx5IGdsLXB4LTMgZ2wtcHktMTtcbiAgd2lkdGg6IG1heC1jb250ZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbn1cbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2sgZHVvLWNvcHktY29kZSBbcm9sZT10b29sdGlwXSAuYXJyb3csXG4uZHVvLW1lc3NhZ2UtcHJlLWJsb2NrIGR1by1pbnNlcnQtY29kZS1zbmlwcGV0IFtyb2xlPXRvb2x0aXBdIC5hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgQGFwcGx5IGdsLWgtMyBnbC13LTM7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2sgZHVvLWNvcHktY29kZSB7XG4gIG1hcmdpbi1yaWdodDogMi41cmVtO1xufVxuLmR1by1tZXNzYWdlLXByZS1ibG9jazpmb2N1cyBkdW8tY29weS1jb2RlLFxuLmR1by1tZXNzYWdlLXByZS1ibG9jazpmb2N1cyBkdW8taW5zZXJ0LWNvZGUtc25pcHBldCxcbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2s6Zm9jdXMgLmNvcHktdG8tY2xpcGJvYXJkLWJ1dHRvbi1jb250YWluZXIsIC5kdW8tbWVzc2FnZS1wcmUtYmxvY2s6aG92ZXIgZHVvLWNvcHktY29kZSxcbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2s6aG92ZXIgZHVvLWluc2VydC1jb2RlLXNuaXBwZXQsXG4uZHVvLW1lc3NhZ2UtcHJlLWJsb2NrOmhvdmVyIC5jb3B5LXRvLWNsaXBib2FyZC1idXR0b24tY29udGFpbmVyLCAuZHVvLW1lc3NhZ2UtcHJlLWJsb2NrOmhhcyhidXR0b246Zm9jdXMpIGR1by1jb3B5LWNvZGUsXG4uZHVvLW1lc3NhZ2UtcHJlLWJsb2NrOmhhcyhidXR0b246Zm9jdXMpIGR1by1pbnNlcnQtY29kZS1zbmlwcGV0LFxuLmR1by1tZXNzYWdlLXByZS1ibG9jazpoYXMoYnV0dG9uOmZvY3VzKSAuY29weS10by1jbGlwYm9hcmQtYnV0dG9uLWNvbnRhaW5lciB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5kdW8tY2hhdC1tZXNzYWdlLW1hcmtkb3duLXNtb290aCAuZHVvLW1lc3NhZ2UtcHJlLWJsb2NrOmZvY3VzIGR1by1jb3B5LWNvZGUsXG4uZHVvLWNoYXQtbWVzc2FnZS1tYXJrZG93bi1zbW9vdGggLmR1by1tZXNzYWdlLXByZS1ibG9jazpmb2N1cyBkdW8taW5zZXJ0LWNvZGUtc25pcHBldCwgLmR1by1jaGF0LW1lc3NhZ2UtbWFya2Rvd24tc21vb3RoIC5kdW8tbWVzc2FnZS1wcmUtYmxvY2s6aG92ZXIgZHVvLWNvcHktY29kZSxcbi5kdW8tY2hhdC1tZXNzYWdlLW1hcmtkb3duLXNtb290aCAuZHVvLW1lc3NhZ2UtcHJlLWJsb2NrOmhvdmVyIGR1by1pbnNlcnQtY29kZS1zbmlwcGV0LCAuZHVvLWNoYXQtbWVzc2FnZS1tYXJrZG93bi1zbW9vdGggLmR1by1tZXNzYWdlLXByZS1ibG9jazpoYXMoYnV0dG9uOmZvY3VzKSBkdW8tY29weS1jb2RlLFxuLmR1by1jaGF0LW1lc3NhZ2UtbWFya2Rvd24tc21vb3RoIC5kdW8tbWVzc2FnZS1wcmUtYmxvY2s6aGFzKGJ1dHRvbjpmb2N1cykgZHVvLWluc2VydC1jb2RlLXNuaXBwZXQge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaW5zZXJ0LWNvZGUtaGlkZGVuIGR1by1pbnNlcnQtY29kZS1zbmlwcGV0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5pbnNlcnQtY29kZS1oaWRkZW4gZHVvLWNvcHktY29kZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLmR1by1jaGF0LW1hcmtkb3duIC5tb25vc3BhY2UsXG4uZHVvLWNoYXQtbWFya2Rvd24gY29kZSxcbi5kdW8tY2hhdC1jb21wYWN0LW1hcmtkb3duIC5tb25vc3BhY2UsXG4uZHVvLWNoYXQtY29tcGFjdC1tYXJrZG93biBjb2RlIHtcbiAgQGFwcGx5IGdsLWZvbnQtbW9ub3NwYWNlO1xufVxuXG4uZHVvLWNoYXQtbWFya2Rvd24gY29kZSB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtcHktMTtcbn1cblxuLmR1by1jaGF0LW1lc3NhZ2UgY29kZSB7XG4gIEBhcHBseSBnbC1iZy1zdGF0dXMtbmV1dHJhbDtcbn1cblxuLnJlY2VudHMtd3JhcHBlciAuZ2wtYWNjb3JkaW9uLWl0ZW0taGVhZGVyIC5nbC1idXR0b24uZ2wtYnV0dG9uLmJ0bi1saW5rIHtcbiAgQGFwcGx5IGdsLWJsb2NrO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtcGwtMztcbiAgQGFwcGx5IGdsLXB5LTI7XG4gIEBhcHBseSBnbC1yb3VuZGVkLW5vbmU7XG4gIEBhcHBseSBnbC1zaGFkb3ctbm9uZTtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgQGFwcGx5IGdsLXVwcGVyY2FzZTtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgQGFwcGx5IGdsLXRleHQtc207XG59XG4ucmVjZW50cy13cmFwcGVyIC5nbC1hY2NvcmRpb24taXRlbS1oZWFkZXIgPiAuY29sbGFwc2Uge1xuICBAYXBwbHkgZ2wtbWwtMDtcbn1cbi5yZWNlbnRzLXdyYXBwZXIgLmdsLXRleHQtYmFzZSB7XG4gIEBhcHBseSBnbC1tdC0wO1xufVxuXG4uYWdlbnRpYy1iaW5hcnktZmVlZGJhY2sgLmZlZWRiYWNrLWNvbG9yZWQtaWNvbiB7XG4gIGFuaW1hdGlvbjogZmVlZGJhY2stZmFkZS1vdXQgMC4zcyBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbn1cbi5hZ2VudGljLWJpbmFyeS1mZWVkYmFjayAuZmVlZGJhY2stdGhhbmtzIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGFuaW1hdGlvbjogZmVlZGJhY2stZmFkZS1pbiAwLjNzIGVhc2UtaW4tb3V0IGZvcndhcmRzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5LCB3aWR0aCwgbWFyZ2luO1xufVxuXG5Aa2V5ZnJhbWVzIGZlZWRiYWNrLWZhZGUtb3V0IHtcbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZlZWRiYWNrLWNvbG9yZWQtaWNvbixcbiAgLmZlZWRiYWNrLXRoYW5rcyB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZlZWRiYWNrLWZhZGUtaW4ge1xuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogLTZweDtcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgfVxufVxuYm9keSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbmxlZ2VuZCB7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSxcbltyb2xlPWJ1dHRvbl0ge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGluaGVyaXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuaDEsXG4uaDEsXG5oMixcbi5oMixcbmgzLFxuLmgzIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuaDQsXG4uaDQsXG5oNSxcbi5oNSxcbmg2LFxuLmg2IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuaDUsXG4uaDUge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuaHIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG5jb2RlIHtcbiAgQGFwcGx5IGdsLXB5LTE7XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG59XG4uY29kZSA+IGNvZGUsIC5idWlsZC1sb2cgY29kZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIHBhZGRpbmc6IHVuc2V0O1xufVxuXG50YWJsZSB7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5wcmUgY29kZSB7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuLypcbiBCb290c3RyYXAgNC4xLjIgaW50cm9kdWNlZCBhIG5ldyBkZWZhdWx0IHZlcnRpY2FsIGFsaWdubWVudCB3aGljaCBicmVha3Mgb3VyIGljb25zLFxuIHNvIHdlIG5lZWQgdG8gcmVzZXQgdGhlIHZlcnRpY2FsIGFsaWdubWVudCB0byB0aGUgZGVmYXVsdCB2YWx1ZS4gU2VlOlxuIC0gaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLWZvc3MvaXNzdWVzLzUxMzYyXG4gKi9cbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLmZvcm0tY29udHJvbCxcbi5zZWFyY2ggZm9ybSB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi8qIE91ciBhZGp1c3RtZW50cyB0byBoeCAmIC5oeCBhYm92ZSBhZGQgdW5uZWNlc3NhcnkgbWFyZ2lucyB0byBtb2RhbC10aXRsZVxuICAgYW5kIHBhZ2UtdGl0bGUgaW4gbW9kYWxzLCBzbyB3ZSBzZXQgdGhlbSB0byAwIGluIG9yZGVyIHRvIGhhdmUgcHJvcGVybHlcbiAgIGZvcm1hdHRlZCBtb2RhbCBoZWFkZXJzLiAqL1xuLm1vZGFsLWhlYWRlciAubW9kYWwtdGl0bGUsXG4ubW9kYWwtaGVhZGVyIC5wYWdlLXRpdGxlIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuaW5wdXRbdHlwZT1maWxlXSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZm9ybS1ncm91cC5yb3cgPiAuY29sLWZvcm0tbGFiZWwge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5mb3JtLWdyb3VwLnJvdyA+IC5jb2wtZm9ybS1sYWJlbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsXG4uZHJvcHJpZ2h0IC5kcm9wZG93bi1tZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYmFkZ2U6bm90KC5nbC1iYWRnZSksXG4ubGFiZWwge1xuICBwYWRkaW5nOiA0cHggNXB4O1xuICBmb250LXNpemU6IDEycHg7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZGl2aWRlciB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiA0cHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xufVxuXG4uaW5mby13ZWxsIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1zZWN0aW9uO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xufVxuLmluZm8td2VsbCAud2VsbC1zZWdtZW50IHtcbiAgcGFkZGluZzogMXJlbTtcbn1cbi5pbmZvLXdlbGwgLndlbGwtc2VnbWVudDpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQtc2VjdGlvbjtcbn1cbi5pbmZvLXdlbGwgLndlbGwtc2VnbWVudCBwOmxhc3Qtb2YtdHlwZSxcbi5pbmZvLXdlbGwgLndlbGwtc2VnbWVudCBvbDpsYXN0LW9mLXR5cGUsXG4uaW5mby13ZWxsIC53ZWxsLXNlZ21lbnQgdWw6bGFzdC1vZi10eXBlLFxuLmluZm8td2VsbCAud2VsbC1zZWdtZW50IC5mb3JtLWdyb3VwOmxhc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLmNhcmQtd2l0aG91dC1ib3JkZXIsIC5jYXJkLmJnLWxpZ2h0IHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4ubmF2LXRhYnMgLm5hdi1saW5rIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbi5uYXYtdGFicyAubmF2LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYWxlcnQge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uYWxlcnQtZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWJhY2tncm91bmQtY29sb3IpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1ib3JkZXItY29sb3IpO1xuICBjb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stZGFuZ2VyLXRleHQtY29sb3IpO1xufVxuXG5pbnB1dFt0eXBlPWNvbG9yXS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6IDMycHg7XG59XG5cbi5wcm9qZWN0LXRlbXBsYXRlcy1idXR0b25zIC5idG4ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdW5zZXQ7XG59XG5cbjpyb290IHtcbiAgLS1sYXlvdXQtc3RpY2t5LWhlYWRlci1oZWlnaHQ6IDBweDtcbiAgLS1jb250YWluZXItcGFkZGluZy14OiAwLjc1cmVtO1xuICAtLWFpLXBhbmVsLXdpZHRoOiAwcHg7XG4gIC0tYWktbmF2aWdhdGlvbi1yYWlsLXNpemU6IDBweDtcbn1cblxuOnJvb3QucGFnZS13aXRoLWFpLXBhbmVsIHtcbiAgLS1haS1wYW5lbC13aWR0aDogY2xhbXAoMjVyZW0sIDIwdncsIDM1cmVtKTtcbiAgLS1haS1uYXZpZ2F0aW9uLXJhaWwtc2l6ZTogMi41cmVtO1xufVxuXG5odG1sIHtcbiAgc2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCkgdHJhbnNwYXJlbnQ7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICBodG1sIHtcbiAgICBzY3JvbGxiYXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKSB0cmFuc3BhcmVudDtcbiAgfVxufVxuaHRtbC50b3VjaCAudG9vbHRpcCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnBhZ2Utd2l0aC1wYW5lbHMsIC5wYWdlLXdpdGgtcGFuZWxzIGJvZHkge1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xufVxuLnBhZ2Utd2l0aC1wYW5lbHMgYm9keSB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIEBhcHBseSBnbC1iZy1hcHBsaWNhdGlvbi1jaHJvbWU7XG59XG5cbi5jb250YWluZXItZmx1aWQubGltaXQtY29udGFpbmVyLXdpZHRoIC5mbGFzaC1jb250YWluZXIuc3RpY2t5LCAubGltaXQtY29udGFpbmVyLXdpZHRoLmNvbnRhaW5lci1zbSAuZmxhc2gtY29udGFpbmVyLnN0aWNreSwgLmxpbWl0LWNvbnRhaW5lci13aWR0aC5jb250YWluZXItbWQgLmZsYXNoLWNvbnRhaW5lci5zdGlja3ksIC5saW1pdC1jb250YWluZXItd2lkdGguY29udGFpbmVyLWxnIC5mbGFzaC1jb250YWluZXIuc3RpY2t5LCAubGltaXQtY29udGFpbmVyLXdpZHRoLmNvbnRhaW5lci14bCAuZmxhc2gtY29udGFpbmVyLnN0aWNreSB7XG4gIG1heC13aWR0aDogMTAwNnB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uY29udGFpbmVyLXF1ZXJpZXMtZW5hYmxlZCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgKyB2YXIoLS1jb250YWluZXItcGFkZGluZy14KSAqIDIgKyB2YXIoLS1zY3JvbGxiYXItd2lkdGgsIDBweCkpO1xuICBwYWRkaW5nLXJpZ2h0OiB2YXIoLS1jb250YWluZXItcGFkZGluZy14KTtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKHZhcigtLWNvbnRhaW5lci1wYWRkaW5nLXgpICsgdmFyKC0tc2Nyb2xsYmFyLXdpZHRoLCAwcHgpKTtcbiAgbWFyZ2luLXJpZ2h0OiBjYWxjKHZhcigtLWNvbnRhaW5lci1wYWRkaW5nLXgpICogLTEpO1xuICBtYXJnaW4tbGVmdDogY2FsYygodmFyKC0tY29udGFpbmVyLXBhZGRpbmcteCkgKyB2YXIoLS1zY3JvbGxiYXItd2lkdGgsIDBweCkpICogLTEpO1xufVxuXG4ubGF5b3V0LXBhZ2Uge1xuICBAYXBwbHkgZ2wtcHktMDtcbn1cblxuLnBhZ2Utd2l0aC1wYW5lbHMgLmxheW91dC1wYWdlOndoZXJlKC5wYWdlLXdpdGgtc3VwZXItc2lkZWJhcikge1xuICBAYXBwbHkgZ2wtZ3JpZDtcbiAgQGFwcGx5IGdsLWdyaWQtY29scy0xO1xuICBAYXBwbHkgZ2wtZ3JpZC1yb3dzLVthdXRvLDFmcixhdXRvLHZhcigtLWFpLW5hdmlnYXRpb24tcmFpbC1zaXplKV07XG4gIEBhcHBseSBnbC1nYXAtMDtcbiAgQGFwcGx5IHNtOmdsLXBiLTM7XG4gIEBhcHBseSBnbC1taW4taC0wO1xuICBAYXBwbHkgZ2wtZmxleC0xO1xuICBAYXBwbHkgc206Z2wtcHgtMztcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJicm9hZGNhc3QtbWVzc2FnZVwiIFwicGFuZWxzXCIgXCJhaS1wYW5lbFwiIFwiYWktbmF2aWdhdGlvbi1yYWlsXCI7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utd2l0aC1wYW5lbHMgLmxheW91dC1wYWdlOndoZXJlKC5wYWdlLXdpdGgtc3VwZXItc2lkZWJhcikge1xuICAgIEBhcHBseSBnbC1ncmlkLWNvbHMtW2F1dG8sMWZyLGF1dG8sdmFyKC0tYWktbmF2aWdhdGlvbi1yYWlsLXNpemUpXTtcbiAgICBAYXBwbHkgZ2wtZ3JpZC1yb3dzLVthdXRvLDFmcl07XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJzdXBlci1zaWRlYmFyLW5hdiBicm9hZGNhc3QtbWVzc2FnZSBicm9hZGNhc3QtbWVzc2FnZSAuXCIgXCJzdXBlci1zaWRlYmFyLW5hdiBwYW5lbHMgYWktcGFuZWwgYWktbmF2aWdhdGlvbi1yYWlsXCI7XG4gIH1cbn1cbi5wYWdlLXdpdGgtcGFuZWxzIC5icm9hZGNhc3Qtd3JhcHBlciB7XG4gIGdyaWQtYXJlYTogYnJvYWRjYXN0LW1lc3NhZ2U7XG59XG4ucGFnZS13aXRoLXBhbmVscyAuYnJvYWRjYXN0LXdyYXBwZXI6aGFzKD4gLmdsLWJyb2FkY2FzdC1tZXNzYWdlKSB7XG4gIEBhcHBseSBnbC1tYi0zO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5wYWdlLXdpdGgtcGFuZWxzIC5zdXBlci1zaWRlYmFyLXdyYXBwZXIge1xuICAgIGdyaWQtYXJlYTogc3VwZXItc2lkZWJhci1uYXY7XG4gIH1cbn1cbi5wYWdlLXdpdGgtcGFuZWxzIC5wYW5lbHMtY29udGFpbmVyIHtcbiAgZ3JpZC1hcmVhOiBwYW5lbHM7XG59XG5cbi5wYWdlLXdpdGgtcGFuZWxzLnBhZ2Utd2l0aC1haS1wYW5lbCAubGF5b3V0LXBhZ2Uge1xuICBAYXBwbHkgc206Z2wtcGItMDtcbiAgQGFwcGx5IGxnOmdsLXBiLTM7XG4gIEBhcHBseSBsZzpnbC1wci0wO1xufVxuXG4ucGFuZWxzLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLWdyb3c7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtcHItMDtcbiAgQGFwcGx5IGdsLXBiLTA7XG4gIEBhcHBseSBnbC1taW4taC0wO1xuICAtLWFwcGxpY2F0aW9uLWhlYWRlci1oZWlnaHQ6IDBweDtcbiAgLS1zeXN0ZW0taGVhZGVyLWhlaWdodDogMHB4O1xuICAtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQ6IDBweDtcbiAgLS1oZWFkZXItaGVpZ2h0OiAwcHg7XG4gIC0tdG9wLWJhci1oZWlnaHQ6IDBweDtcbn1cbi5wYW5lbHMtY29udGFpbmVyIC5wYW5lbC1jb250ZW50LWlubmVyID4gLmFsZXJ0LXdyYXBwZXI6bm90KDpoYXMoKikpLFxuLnBhbmVscy1jb250YWluZXIgLnZ1ZS1wb3J0YWwtdGFyZ2V0IC53b3JrLWl0ZW0tZGV0YWlsLXBhbmVsLWNvbnRlbnQgPiAuYWxlcnQtd3JhcHBlcjpub3QoOmhhcygqKSkge1xuICBAYXBwbHkgZ2wtaGlkZGVuO1xufVxuXG5Ac3VwcG9ydHMgKHdpZHRoOiBjYWxjLXNpemUoYXV0bywgc2l6ZSkpIHtcbiAgLnBhbmVscy1jb250YWluZXIsXG4gIC5zdXBlci1zaWRlYmFyLnN1cGVyLXNpZGViYXItdG9nZ2xlZC1tYW51YWxseSB7XG4gICAgd2lkdGg6IGNhbGMtc2l6ZShhdXRvLCBzaXplKTtcbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdW5rbm93biAqL1xuICAgIGludGVycG9sYXRlLXNpemU6IGFsbG93LWtleXdvcmRzO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDAuMjVzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbiAgfVxufVxuLmFpLXBhbmVsLXdyYXBwZXIge1xuICBncmlkLWFyZWE6IGFpLXBhbmVsO1xuICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgQGFwcGx5IGdsLXJlbGF0aXZlO1xufVxuXG4uYWktbmF2aWdhdGlvbi1yYWlsIHtcbiAgZ3JpZC1hcmVhOiBhaS1uYXZpZ2F0aW9uLXJhaWw7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC0xO1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtZ2FwLTU7XG4gIEBhcHBseSBnbC1wLTM7XG4gIEBhcHBseSBnbC1oLVt2YXIoLS1haS1uYXZpZ2F0aW9uLXJhaWwtc2l6ZSldO1xuICBAYXBwbHkgbGc6Z2wtZmxleC1jb2w7XG4gIEBhcHBseSBsZzpnbC1nYXAtMztcbiAgQGFwcGx5IGxnOmdsLXctW3ZhcigtLWFpLW5hdmlnYXRpb24tcmFpbC1zaXplKV07XG4gIEBhcHBseSBsZzpnbC1oLWZ1bGw7XG59XG4uYWktbmF2aWdhdGlvbi1yYWlsIC5nbC1uYXYtaXRlbS5zZWxlY3RlZDo6YmVmb3JlIHtcbiAgQGFwcGx5IC1nbC1ib3R0b20tWzZweF07XG4gIEBhcHBseSBsZzpnbC1ib3R0b20tMjtcbiAgQGFwcGx5IGxnOi1nbC1yaWdodC1bNnB4XTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5sYXlvdXQtcGFnZS5haS1wYW5lbC1tYXhpbWl6ZWQge1xuICAgIEBhcHBseSBnbC1ncmlkLWNvbHMtW2F1dG8sMmZyLDNmcl07XG4gIH1cbn1cbi5sYXlvdXQtcGFnZS5haS1wYW5lbC1tYXhpbWl6ZWQgLmFpLXBhbmVsLXdyYXBwZXIge1xuICBncmlkLWNvbHVtbi1zdGFydDogcGFuZWxzO1xuICBncmlkLWNvbHVtbi1lbmQ6IGFpLXBhbmVsO1xufVxuLmxheW91dC1wYWdlLmFpLXBhbmVsLW1heGltaXplZCAuYWktcGFuZWwge1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWwtdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBkYXJrOmdsLWJvcmRlci1sLXN1YnRsZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQteGw7XG4gIEBhcHBseSBnbC1zaGFkb3ctc207XG4gIGNsaXAtcGF0aDogbm9uZTtcbn1cbi5sYXlvdXQtcGFnZS5haS1wYW5lbC1tYXhpbWl6ZWQgLnBhbmVscy1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDI1NjBweCkge1xuICAubGF5b3V0LXBhZ2UuYWktcGFuZWwtbWF4aW1pemVkIC5haS1wYW5lbC13cmFwcGVyIHtcbiAgICBncmlkLWNvbHVtbi1zdGFydDogYWktcGFuZWw7XG4gIH1cbiAgLmxheW91dC1wYWdlLmFpLXBhbmVsLW1heGltaXplZCAuYWktcGFuZWwge1xuICAgIEBhcHBseSBnbC1ib3JkZXItbDtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1sLW5vbmU7XG4gIH1cbiAgLmxheW91dC1wYWdlLmFpLXBhbmVsLW1heGltaXplZCAucGFuZWxzLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuXG4uY29udGVudC13cmFwcGVyIHtcbiAgcGFkZGluZy10b3A6IHZhcigtLXRvcC1iYXItaGVpZ2h0KTtcbiAgcGFkZGluZy1ib3R0b206IDU2cHg7XG59XG5cbi5jb250YWluZXIge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgei1pbmRleDogNTtcbn1cbi5jb250YWluZXIgLmNvbnRlbnQge1xuICBtYXJnaW46IDA7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jb250YWluZXIgLmNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY29udGFpbmVyIC5jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICB9XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jb250YWluZXIgLmNvbnRhaW5lciAudGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogMTVweCAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNvbnRhaW5lciAuY29udGFpbmVyIC50aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmNvbnRhaW5lci1saW1pdGVkIHtcbiAgbWF4LXdpZHRoOiAxMjk2cHg7XG59XG4uY29udGFpbmVyLWxpbWl0ZWQubGltaXQtY29udGFpbmVyLXdpZHRoIHtcbiAgbWF4LXdpZHRoOiAxMDA2cHg7XG59XG5cbi5hbGVydC13cmFwcGVyLXRvcC1zcGFjZSAuZ2wtYWxlcnQ6Zmlyc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtbXQtMztcbn1cblxuLmFsZXJ0LXdyYXBwZXIgLmFsZXJ0LWxpbmstZ3JvdXAge1xuICBmbG9hdDogcmlnaHQ7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5hbGVydC13cmFwcGVyIC5hbGVydC1saW5rLWdyb3VwIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuYWxlcnQtd3JhcHBlciAuYWxlcnQtbGluay1ncm91cCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG59XG5cbi5mdWxsc2NyZWVuLWxheW91dCB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZnVsbHNjcmVlbi1sYXlvdXQgPiAjanMtcGVlayB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIHRvcDogYXV0bztcbn1cbi5mdWxsc2NyZWVuLWxheW91dCAuZmxhc2gtY29udGFpbmVyIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmdsLWRyYXdlci1yZXNwb25zaXZlIHtcbiAgd2lkdGg6IDI4JTtcbiAgbWluLXdpZHRoOiA0MDBweDtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xuICBib3gtc2hhZG93OiBub25lO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWw7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1kcmF3ZXItcmVzcG9uc2l2ZSB7XG4gICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1kcmF3ZXItcmVzcG9uc2l2ZSB7XG4gICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmdsLWRyYXdlci1yZXNwb25zaXZlIC5nbC1kcmF3ZXItaGVhZGVyLFxuLmdsLWRyYXdlci1yZXNwb25zaXZlIC5nbC1kcmF3ZXItYm9keSA+ICoge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbiNnb29nLWd0LXR0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLypcbiAqIFRoZXNlIGFyZSB1c2VkIGJ5IHRoZSBgVGFiIHdpZHRoYCB1c2VyIHByZWZlcmVuY2UgaW5cbiAqIGBodHRwczovL2dpdGxhYi5jb20vLS9wcm9maWxlL3ByZWZlcmVuY2VzYC4gVGhlIGBjc3NfY2xhc3NfZm9yX3VzZXJgIG1ldGhvZCBpblxuICogYGxpYi9naXRsYWIvdGFiX3dpZHRoLnJiYCBpcyB1c2VkIHRvIGFkZCBvbmUgb2YgdGhlc2UgY2xhc3NlcyB0byB0aGUgYGJvZHlgIGVsZW1lbnQuXG4qL1xuLnRhYi13aWR0aC0xIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgLW1vei10YWItc2l6ZTogMTtcbiAgdGFiLXNpemU6IDE7XG59XG5cbi50YWItd2lkdGgtMiB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4ICovXG4gIC1tb3otdGFiLXNpemU6IDI7XG4gIHRhYi1zaXplOiAyO1xufVxuXG4udGFiLXdpZHRoLTMge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuICAtbW96LXRhYi1zaXplOiAzO1xuICB0YWItc2l6ZTogMztcbn1cblxuLnRhYi13aWR0aC00IHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgLW1vei10YWItc2l6ZTogNDtcbiAgdGFiLXNpemU6IDQ7XG59XG5cbi50YWItd2lkdGgtNSB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4ICovXG4gIC1tb3otdGFiLXNpemU6IDU7XG4gIHRhYi1zaXplOiA1O1xufVxuXG4udGFiLXdpZHRoLTYge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuICAtbW96LXRhYi1zaXplOiA2O1xuICB0YWItc2l6ZTogNjtcbn1cblxuLnRhYi13aWR0aC03IHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgLW1vei10YWItc2l6ZTogNztcbiAgdGFiLXNpemU6IDc7XG59XG5cbi50YWItd2lkdGgtOCB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4ICovXG4gIC1tb3otdGFiLXNpemU6IDg7XG4gIHRhYi1zaXplOiA4O1xufVxuXG4udGFiLXdpZHRoLTkge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuICAtbW96LXRhYi1zaXplOiA5O1xuICB0YWItc2l6ZTogOTtcbn1cblxuLnRhYi13aWR0aC0xMCB7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4ICovXG4gIC1tb3otdGFiLXNpemU6IDEwO1xuICB0YWItc2l6ZTogMTA7XG59XG5cbi50YWItd2lkdGgtMTEge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuICAtbW96LXRhYi1zaXplOiAxMTtcbiAgdGFiLXNpemU6IDExO1xufVxuXG4udGFiLXdpZHRoLTEyIHtcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgLW1vei10YWItc2l6ZTogMTI7XG4gIHRhYi1zaXplOiAxMjtcbn1cblxuOnJvb3Qge1xuICAvKipcbiAgICogQmxvb20gYmFja2dyb3VuZHNcbiAgICovXG59XG46cm9vdC53aXRoLWJsb29tIGJvZHkge1xuICBAYXBwbHkgZ2wtYmctYXBwbGljYXRpb24tY2hyb21lO1xufVxuOnJvb3Qud2l0aC1ibG9vbSBib2R5OjpiZWZvcmUsIDpyb290LndpdGgtYmxvb20gYm9keTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgOnJvb3Qud2l0aC1ibG9vbSBib2R5OjpiZWZvcmUsIDpyb290LndpdGgtYmxvb20gYm9keTo6YWZ0ZXIge1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC42cyBlYXNlLWluLW91dDtcbiAgfVxufVxuOnJvb3Qud2l0aC1ibG9vbSBib2R5OjpiZWZvcmUge1xuICBvcGFjaXR5OiAwO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIDpyb290LndpdGgtYmxvb20gYm9keTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJibG9vbXMvYmxvb20tc2lkZS5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMzUwcHggNjAwcHg7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuOnJvb3Qud2l0aC1ibG9vbSBib2R5OjphZnRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImJsb29tcy9ibG9vbS1ib3R0b20ucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gcmlnaHQgLTMwMHB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEyMDBweCA0MDBweDtcbiAgb3BhY2l0eTogMDtcbn1cbjpyb290LndpdGgtYmxvb20uYWktcGFuZWwtaXMtb3BlbiBib2R5OjpiZWZvcmUge1xuICBvcGFjaXR5OiAwO1xufVxuOnJvb3Qud2l0aC1ibG9vbS5haS1wYW5lbC1pcy1vcGVuIGJvZHk6OmFmdGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cbjpyb290Lmh0bWwtZGV2aXNlLWxheW91dCBib2R5IHtcbiAgQGFwcGx5IGdsLWJnLWFwcGxpY2F0aW9uLWNocm9tZTtcbn1cbjpyb290Lmh0bWwtZGV2aXNlLWxheW91dCBib2R5OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGluc2V0OiAwO1xuICB6LWluZGV4OiAtMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImJsb29tcy9ibG9vbS1ncmFuZC1hbWJpZW50LnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNDQwcHggNTI1cHg7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG46cm9vdC5odG1sLWRldmlzZS1sYXlvdXQgLmZvb3Rlci1jb250YWluZXIgaHIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYW5pbWF0ZWQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cbi5hbmltYXRlZC5vbmNlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxO1xufVxuLmFuaW1hdGVkLnNob3J0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDMyMW1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDMyMW1zO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IG5vbmU7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IG5vbmU7XG59XG5cbkBrZXlmcmFtZXMgcHVsc2Uge1xuICBmcm9tLCB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xuICB9XG59XG4ucHVsc2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcbiAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlO1xufVxuXG4vKlxuKiBHZW5lcmFsIGhvdmVyIGFuaW1hdGlvbnNcbiovXG4uYnRuIHtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxMDBtcyBsaW5lYXIsIGJvcmRlci1jb2xvciAxMDBtcyBsaW5lYXIsIGNvbG9yIDEwMG1zIGxpbmVhciwgYm94LXNoYWRvdyAxMDBtcyBsaW5lYXI7XG59XG5cbi5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAxMDBtcyBsaW5lYXI7XG59XG5cbi5ub3RlLWFjdGlvbi1idXR0b24sXG4uZHJvcGRvd24tdG9nZ2xlLWNhcmV0IHtcbiAgdHJhbnNpdGlvbjogY29sb3IgMTAwbXMgbGluZWFyO1xufVxuXG4uc3RhZ2UtbmF2LWl0ZW0ge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDEwMG1zIGxpbmVhciwgYm94LXNoYWRvdyAxMDBtcyBsaW5lYXI7XG59XG5cbi5kcm9wZG93bi1tZW51IGEsXG4uZHJvcGRvd24tbWVudSBidXR0b24ge1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5mYWRlLWluIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gMjAwbXMgMTtcbn1cblxuQGtleWZyYW1lcyBmYWRlSW5IYWxmIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG59XG4uZmFkZS1pbi1oYWxmIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW5IYWxmIDIwMG1zIDE7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRnVsbCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLmZhZGUtaW4tZnVsbCB7XG4gIGFuaW1hdGlvbjogZmFkZUluRnVsbCAyMDBtcyAxO1xufVxuXG4uYW5pbWF0aW9uLWNvbnRhaW5lciB7XG4gIGhlaWdodDogNDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5hbmltYXRpb24tY29udGFpbmVyLmFuaW1hdGlvbi1jb250YWluZXItc21hbGwge1xuICBoZWlnaHQ6IDEycHg7XG59XG4uYW5pbWF0aW9uLWNvbnRhaW5lci5hbmltYXRpb24tY29udGFpbmVyLXJpZ2h0IC5za2VsZXRvbi1saW5lLTIge1xuICBsZWZ0OiAwO1xuICByaWdodDogMTUwcHg7XG59XG4uYW5pbWF0aW9uLWNvbnRhaW5lciBbY2xhc3NePXNrZWxldG9uLWxpbmUtXSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgaGVpZ2h0OiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmFuaW1hdGlvbi1jb250YWluZXIgW2NsYXNzXj1za2VsZXRvbi1saW5lLV06bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xufVxuLmFuaW1hdGlvbi1jb250YWluZXIgW2NsYXNzXj1za2VsZXRvbi1saW5lLV06OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbmltYXRpb246IGJsb2NrVGV4dFNoaW5lIDFzIGxpbmVhciBpbmZpbml0ZSBmb3J3YXJkcztcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZWNlYmVhIDAlLCAjZjdmN2Y1IDIwJSwgI2VjZWJlYSA0MCUsICNlY2ViZWEgMTAwJSk7XG4gIGhlaWdodDogMTBweDtcbn1cblxuLnNrZWxldG9uLWxpbmUtMSB7XG4gIHdpZHRoOiAxNTZweDtcbn1cblxuLnNrZWxldG9uLWxpbmUtMiB7XG4gIHdpZHRoOiAyMzVweDtcbn1cblxuLnNrZWxldG9uLWxpbmUtMyB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuQGtleWZyYW1lcyBibG9ja1RleHRTaGluZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ2OHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDY4cHgpO1xuICB9XG59XG4uc2xpZGUtZG93bi1lbnRlci1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbn1cblxuLnNsaWRlLWRvd24tZW50ZXIsXG4uc2xpZGUtZG93bi1sZWF2ZS10byB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAlKTtcbn1cblxuLnNsaWRlLWluLWZ3ZC1ib3R0b20tZW50ZXItYWN0aXZlIHtcbiAgYW5pbWF0aW9uOiBzbGlkZS1pbi1md2QtYm90dG9tIDAuNHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpIGJvdGg7XG59XG5cbi5zbGlkZS1pbi1md2QtYm90dG9tLWxlYXZlLWFjdGl2ZSB7XG4gIGFuaW1hdGlvbjogc2xpZGUtaW4tZndkLWJvdHRvbSAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KSBib3RoIHJldmVyc2U7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEdlbmVyYXRlZCBieSBBbmltaXN0YSBvbiAyMDE5LTQtMjYgMTc6NDA6NDFcbiAqIHc6IGh0dHA6Ly9hbmltaXN0YS5uZXQsIHQ6IEBjc3NhbmltaXN0YVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGtleWZyYW1lcyBzbGlkZS1pbi1md2QtYm90dG9tIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigtMTQwMHB4KSB0cmFuc2xhdGVZKDgwMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKSB0cmFuc2xhdGVZKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5ob3RzcG90LXB1bHNlIHtcbiAgQGFwcGx5IGdsLXJlbGF0aXZlO1xufVxuLmhvdHNwb3QtcHVsc2U6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgQGFwcGx5IGdsLWgtMztcbiAgQGFwcGx5IGdsLXctMztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZnVsbDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtc3RhdHVzLWluZm8taWNvbi1jb2xvcik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDI7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLmhvdHNwb3QtcHVsc2U6OmJlZm9yZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAxICFpbXBvcnRhbnQ7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwbXMgIWltcG9ydGFudDtcbiAgfVxufVxuLmhvdHNwb3QtcHVsc2U6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLWgtMztcbiAgQGFwcGx5IGdsLXctMztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZnVsbDtcbiAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLW5vbmU7XG4gIC8qIFBvc2l0aW9uIGV4YWN0bHkgd2hlcmUgdGhlIDo6YWZ0ZXIgZG90IHdpbGwgYmUgKi9cbiAgcmlnaHQ6IDA7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYihmcm9tIHZhcigtLWdsLXN0YXR1cy1pbmZvLWljb24tY29sb3IpIHIgZyBiLzAuNyk7XG4gIHotaW5kZXg6IDE7XG4gIGFuaW1hdGlvbjogaG90c3BvdC1wdWxzZSAycyBpbmZpbml0ZTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xufVxuXG5Aa2V5ZnJhbWVzIGhvdHNwb3QtcHVsc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMi41KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4vKipcbiogVHJhbnNpdGlvbiBjbGFzc2VzIGFyZSBidWlsdCBkeW5hbWljYWxseSwgcGxlYXNlIHJlYWQgYWJvdXQgdnVlLXRyYW5zaXRpb25zXG4qIGhlcmUgYmVmb3JlIHJlbW92aW5nIGh0dHBzOi8vdnVlanMub3JnL2d1aWRlL2J1aWx0LWlucy90cmFuc2l0aW9uXG4qKi9cbi5mYWRlLWVudGVyLWFjdGl2ZSxcbi5mYWRlLWxlYXZlLWFjdGl2ZSxcbi5mYWRlLWluLWVudGVyLWFjdGl2ZSxcbi5mYWRlLW91dC1sZWF2ZS1hY3RpdmUge1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi1vcGFjaXR5O1xufVxuXG4uZmFkZS1lbnRlcixcbi5mYWRlLWluLWVudGVyLFxuLmZhZGUtb3V0LWxlYXZlLXRvLFxuLmZhZGUtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2xpZGUtZW50ZXItZnJvbS1lbGVtZW50LnNsaWRlLWVudGVyLCAuc2xpZGUtZW50ZXItZnJvbS1lbGVtZW50LnNsaWRlLWxlYXZlLXRvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1MCUpO1xufVxuXG4uc2xpZGUtZW50ZXItdG8tZWxlbWVudC5zbGlkZS1lbnRlciwgLnNsaWRlLWVudGVyLXRvLWVsZW1lbnQuc2xpZGUtbGVhdmUtdG8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNTAlKTtcbn1cblxuLnNsaWRlLWVudGVyLWFjdGl2ZSxcbi5zbGlkZS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1vdXQ7XG59XG5cbi5zbGlkZS1lbnRlci10byxcbi5zbGlkZS1sZWF2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLmJsb2ItZW1iZWQge1xuICBtYXJnaW46IDE2cHggMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbGc7XG59XG4uYmxvYi1lbWJlZCAuYmxvYi1lbWJlZC1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gIGdhcDogOHB4O1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xufVxuLmJsb2ItZW1iZWQgLmJsb2ItZW1iZWQtdGl0bGUge1xuICBmb250LXNpemU6IDkwJTtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuLmJsb2ItZW1iZWQgLmxpbmUtbnVtYmVycyBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmJsb2ItZW1iZWQgLmxpbmUtbnVtYmVycyBhOjphZnRlciB7XG4gIGNvbnRlbnQ6IG5vbmU7XG59XG5cbi5ub3RoaW5nLWhlcmUtYmxvY2sge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLm5vdGhpbmctaGVyZS1ibG9jay5kaWZmLWNvbGxhcHNlZCB7XG4gIHBhZGRpbmc6IDVweDtcbiAgbGluZS1oZWlnaHQ6IDM0cHg7XG59XG4ubm90aGluZy1oZXJlLWJsb2NrLmRpZmYtY29sbGFwc2VkIC5jbGljay10by1leHBhbmQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiBpbml0aWFsO1xufVxuXG4ucm93LWNvbnRlbnQtYmxvY2sge1xuICBtYXJnaW4tdG9wOiAwO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBwYWRkaW5nOiAxNnB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cbi5yb3ctY29udGVudC1ibG9jay50b3AtYmxvY2sge1xuICBib3JkZXItdG9wOiAwO1xufVxuLnJvdy1jb250ZW50LWJsb2NrLnRvcC1ibG9jayAuY29udGFpbmVyLWZsdWlkLCAucm93LWNvbnRlbnQtYmxvY2sudG9wLWJsb2NrIC5jb250YWluZXItc20sIC5yb3ctY29udGVudC1ibG9jay50b3AtYmxvY2sgLmNvbnRhaW5lci1tZCwgLnJvdy1jb250ZW50LWJsb2NrLnRvcC1ibG9jayAuY29udGFpbmVyLWxnLCAucm93LWNvbnRlbnQtYmxvY2sudG9wLWJsb2NrIC5jb250YWluZXIteGwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuLnJvdy1jb250ZW50LWJsb2NrLm1pZGRsZS1ibG9jayB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ucm93LWNvbnRlbnQtYmxvY2suc2Vjb25kLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5yb3ctY29udGVudC1ibG9jay5mb290ZXItYmxvY2sge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLnJvdy1jb250ZW50LWJsb2NrLmNvbnRlbnQtY29tcG9uZW50LWJsb2NrIHtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG59XG4ucm93LWNvbnRlbnQtYmxvY2sgLnRpdGxlIHtcbiAgQGFwcGx5IGdsLXRleHQtaGVhZGluZztcbn1cbi5yb3ctY29udGVudC1ibG9jayA+IHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jb250ZW50LWJsb2NrIHtcbiAgcGFkZGluZzogMTZweCAwO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG59XG4uY29udGVudC1ibG9jayA+IC5jb250cm9scyB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmxhbmRpbmcge1xuICBtYXJnaW46IDE2cHggYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogZmxleDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1iYW5uZXItaW50cm8tYm9yZGVyLWNvbG9yKTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubGFuZGluZyAuc3ZnLWNvbnRhaW5lciB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmxhbmRpbmcge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAubGFuZGluZyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4uZW1wdHktc3RhdGUge1xuICBtYXJnaW46IDUlIGF1dG8gMDtcbn1cbi5lbXB0eS1zdGF0ZSAudGV4dC1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA0NjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmc6IDE2cHg7XG59XG4uZW1wdHktc3RhdGUgLmVtb2ppLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uZW1wdHktc3RhdGUgLmJ0bjpub3QoLnNwbGl0LWNvbnRlbnQtYnV0dG9uKTpub3QoLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCkge1xuICBtYXJnaW46IDhweCA0cHg7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5lbXB0eS1zdGF0ZSAuYnRuOm5vdCguc3BsaXQtY29udGVudC1idXR0b24pOm5vdCguZHJvcGRvd24tdG9nZ2xlLXNwbGl0KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiA4cHggMDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5lbXB0eS1zdGF0ZSAuYnRuOm5vdCguc3BsaXQtY29udGVudC1idXR0b24pOm5vdCguZHJvcGRvd24tdG9nZ2xlLXNwbGl0KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiA4cHggMDtcbiAgfVxufVxuXG4uY29kZS1ibG9jayB7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwLjVyZW07XG59XG4uY29kZS1ibG9jayBjb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgcGFkZGluZzogaW5oZXJpdDtcbn1cblxuLmdsLWVtcHR5LXN0YXRlIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuI2pzLXZ1ZS1wYWdlLWJyZWFkY3J1bWJzLXdyYXBwZXIge1xuICBmbGV4LWdyb3c6IDE7XG4gIG1pbi13aWR0aDogMXB4O1xuICAvKlxuICAgKiBPdXIgYXV0by1yZXNpemluZyBHbEJyZWFkY3J1bWIgY29tcG9uZW50IHdvcmtzIGJlc3Qgd2hlbiBpdCBpcyBzZXQgdG8gZ3JvdyB3aXRoIHRoZSBhdmFpbGFibGUgc3BhY2UuXG4gICAqIE9ubHkgdGhpcyB3YXkgY2FuIGl0cyBSZXNpemVPYnNlcnZlciBkZXRlY3QgdGhhdCBtb3JlIHNwYWNlIHRoYW4gY3VycmVudGx5IHRha2VuIGlzIGF2YWlsYWJsZSxcbiAgICogc28gaXQgY2FuIHVuY29sbGFwc2UgaXRlbXMgd2hlbiBtb3JlIHNwYWNlIGJlY29tZXMgYXZhaWxhYmxlLlxuICAgKiBCdXQgd2UgZG8gKm5vdCogd2FudCB0aGlzIGVmZmVjdCBvbiBwYWdlcyB0aGF0IHVzZSB0aGUgaW5qZWN0VnVlQXBwQnJlYWRjcnVtYnMoKSBtZWNoYW5pc20uXG4gICAqIFRoZXJlLCB3ZSB3YW50IHRoZSBsZWZ0aGFuZCBicmVhZGNydW1icyBvbmx5IHRha2UgYXMgbXVjaCBzcGFjZSBhcyB0aGV5IG5lZWRlZCBvbiB0aGVpciBmaXJzdCBzaXplIGNhbGMsXG4gICAqIHNvIHRoYXQgdGhlIHNlY29uZCwgaW5qZWN0ZWQgR2xCcmVhZGNydW1iIGNvbXBvbmVudCBzaXRzIHJpZ2h0IG5leHQgdG8gaXQsIHdpdGggbm8gXCJncm93IGVmZmVjdFwiIHRha2luZ1xuICAgKiBlbXB0eSBzcGFjZSBiZXR3ZWVuIHRoZW0uXG4gICAqIFRoZSBvbmx5IGRvd25zaWRlIHRvIHRoaXMgYXBwcm9hY2ggaXMgdGhhdCBvbiBzdWNoIGluamVjdGVkIHBhZ2VzLCB0aGUgbGVmdGhhbmQgYnJlYWRjcnVtYnMgd29uJ3RcbiAgICogdW5jb2xsYXBzZSB0aGVtc2VsdmVzIHdoZW4gbW9yZSBzcGFjZSBiZWNvbWVzIGF2YWlsYWJsZSwgYXMgdGhleSB3b24ndCBcImdyb3dcIiBpbnRvIGl0LCBub3QgdHJpZ2dlcmluZ1xuICAgKiB0aGVpciBSZXNpemVPYnNlcnZlci5cbiAgICovXG59XG4janMtdnVlLXBhZ2UtYnJlYWRjcnVtYnMtd3JhcHBlciBuYXYuZ2wtYnJlYWRjcnVtYnM6b25seS1vZi10eXBlIHtcbiAgZmxleC1ncm93OiAxO1xufVxuI2pzLXZ1ZS1wYWdlLWJyZWFkY3J1bWJzLXdyYXBwZXIge1xuICAvKiBJZiBhIFZ1ZSBhcHAgcG9ydGFscyBpdHMgYnJlYWRjcnVtYnMgaGVyZSAobGlrZSBgTmV3TmFtZXNwYWNlUGFnZWAgZG9lcyksIGhpZGUgdGhlIG90aGVycyEgKi9cbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGRpcmVjdCBjaGlsZHJlbiBvZiBicmVhZGNydW1iIGNvbnRhaW5lciAqL1xufVxuI2pzLXZ1ZS1wYWdlLWJyZWFkY3J1bWJzLXdyYXBwZXIgPiA6aGFzKH4gLnZ1ZS1wb3J0YWwtdGFyZ2V0KSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4janMtdnVlLXBhZ2UtYnJlYWRjcnVtYnMtd3JhcHBlciB7XG4gIC8qIC4uLiBhbmQgZ2l2ZSBwb3J0YWxlZCBlbGVtZW50IHJvb20gdG8gZ3JvdyAqL1xufVxuI2pzLXZ1ZS1wYWdlLWJyZWFkY3J1bWJzLXdyYXBwZXIgPiAudnVlLXBvcnRhbC10YXJnZXQge1xuICBmbGV4LWdyb3c6IDE7XG59XG5cbi5idG4ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1idXR0b24tYm9yZGVyLXJhZGl1cyk7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDZweCAxMHB4O1xufVxuLmJ0bjpmb2N1cy12aXNpYmxlLCAuYnRuOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2ViZWE7XG59XG4uYnRuOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgb3V0bGluZTogMDtcbn1cbi5idG4uYnRuLWdyb3VwZWQge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBmbG9hdDogbGVmdDtcbn1cbi5idG4uYnRuLWdyb3VwZWQuaW5saW5lIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG4uYnRuIHN2ZyB7XG4gIGhlaWdodDogMTVweDtcbiAgd2lkdGg6IDE1cHg7XG59XG4uYnRuIHN2Zzpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5idG4tZ3JvdXAuYnRuLWdyb3VwZWQge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBmbG9hdDogbGVmdDtcbn1cbi5idG4tZ3JvdXAuYnRuLWdyb3VwZWQuaW5saW5lIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi5idXR0b24tcmVzZXQge1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLXAtMDtcbiAgQGFwcGx5IGZvY3VzLXZpc2libGU6Z2wtZm9jdXMtaW5zZXQ7XG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuXG4vKipcbiAqIFVzZSBgZ2wtYnV0dG9uLXRoZW1lYCBtaXhpbiBmcm9tIEdpdExhYiBVSSB0byBhcHBseSBzYW1lIHN0eWxlcyB0b1xuICogPGJ1dHRvbiBjbGFzcz1cImJ0blwiPiBhbmQgPGJ1dHRvbiBjbGFzcz1cImJ0biBidG4tZGFuZ2VyXCI+IGFzIEdsQnV0dG9uLlxuICogVXNlIGA6bm90KC5nbC1idXR0b24pYCBzZWxlY3RvciB0byBhdm9pZCBvdmVycmlkaW5nIEdsQnV0dG9uIHVzYWdlLlxuICogVXNlIGAuYnRuLWRhbmdlci5idG4tZGFuZ2VyYCBkb3VibGUgc2VsZWN0b3IgdG8gaW5jcmVhc2Ugc3BlY2lmaWNpdHlcbiAqIGFnYWluc3QgQm9vdHN0cmFwIGRlZmF1bHQgLmJ0bi1kYW5nZXIgc3R5bGVzIGZvciBob3Zlci9mb2N1cyBzdGF0ZXMuXG4gKi9cbi5idG46bm90KC5nbC1idXR0b24pIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLmJ0bjpub3QoLmdsLWJ1dHRvbik6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCBib3JkZXItY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG4uYnRuOm5vdCguZ2wtYnV0dG9uKTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyKTtcbn1cbi5idG46bm90KC5nbC1idXR0b24pOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4uYnRuOm5vdCguZ2wtYnV0dG9uKTphY3RpdmUsIC5idG46bm90KC5nbC1idXR0b24pLmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItYWN0aXZlKTtcbn1cbi5idG46bm90KC5nbC1idXR0b24pOmFjdGl2ZSA6Zm9jdXMtdmlzaWJsZSwgLmJ0bjpub3QoLmdsLWJ1dHRvbik6YWN0aXZlOmZvY3VzLXZpc2libGU6YWN0aXZlLCAuYnRuOm5vdCguZ2wtYnV0dG9uKS5hY3RpdmUgOmZvY3VzLXZpc2libGUsIC5idG46bm90KC5nbC1idXR0b24pLmFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbi5idG46bm90KC5nbC1idXR0b24pLmJ0bi1kYW5nZXIuYnRuLWRhbmdlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbn1cbi5idG46bm90KC5nbC1idXR0b24pLmJ0bi1kYW5nZXIuYnRuLWRhbmdlcjo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm9yZGVyLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLmJ0bjpub3QoLmdsLWJ1dHRvbikuYnRuLWRhbmdlci5idG4tZGFuZ2VyOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXIpO1xufVxuLmJ0bjpub3QoLmdsLWJ1dHRvbikuYnRuLWRhbmdlci5idG4tZGFuZ2VyOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4uYnRuOm5vdCguZ2wtYnV0dG9uKS5idG4tZGFuZ2VyLmJ0bi1kYW5nZXI6YWN0aXZlLCAuYnRuOm5vdCguZ2wtYnV0dG9uKS5idG4tZGFuZ2VyLmJ0bi1kYW5nZXIuYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmUpO1xufVxuLmJ0bjpub3QoLmdsLWJ1dHRvbikuYnRuLWRhbmdlci5idG4tZGFuZ2VyOmFjdGl2ZSA6Zm9jdXMtdmlzaWJsZSwgLmJ0bjpub3QoLmdsLWJ1dHRvbikuYnRuLWRhbmdlci5idG4tZGFuZ2VyOmFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSwgLmJ0bjpub3QoLmdsLWJ1dHRvbikuYnRuLWRhbmdlci5idG4tZGFuZ2VyLmFjdGl2ZSA6Zm9jdXMtdmlzaWJsZSwgLmJ0bjpub3QoLmdsLWJ1dHRvbikuYnRuLWRhbmdlci5idG4tZGFuZ2VyLmFjdGl2ZTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cblxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bixcbi5pbnB1dC1ncm91cC1hcHBlbmQgLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG59XG4uaW5wdXQtZ3JvdXAtcHJlcGVuZCAuYnRuOmZvY3VzLXZpc2libGUsIC5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG46YWN0aXZlLFxuLmlucHV0LWdyb3VwLWFwcGVuZCAuYnRuOmZvY3VzLXZpc2libGUsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG46YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjZWJlYTtcbn1cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5idG46aG92ZXIsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG46aG92ZXIge1xuICBvdXRsaW5lOiBub25lO1xufVxuLmlucHV0LWdyb3VwLXByZXBlbmQgLmJ0bjphY3RpdmUsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5idG46YWN0aXZlIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5pbnB1dC1ncm91cC1wcmVwZW5kIC5hY3RpdmUsXG4uaW5wdXQtZ3JvdXAtYXBwZW5kIC5hY3RpdmUge1xuICBib3gtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGNkYmQ5ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlY2ViZWEgIWltcG9ydGFudDtcbn1cblxuLmJ0bi5kaXNhYmxlZCwgLmJ0bi5kaXNhYmxlZDpob3Zlcixcbi5idG5bZGlzYWJsZWRdLFxuLmJ0bltkaXNhYmxlZF06aG92ZXIsXG5maWVsZHNldFtkaXNhYmxlZF0gLmJ0bixcbmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuOmhvdmVyLFxuLmRyb3Bkb3duLXRvZ2dsZVtkaXNhYmxlZF0sXG4uZHJvcGRvd24tdG9nZ2xlW2Rpc2FibGVkXTpob3ZlcixcbltkaXNhYmxlZF0uZHJvcGRvd24tbWVudS10b2dnbGUsXG5bZGlzYWJsZWRdLmRyb3Bkb3duLW1lbnUtdG9nZ2xlOmhvdmVyIHtcbiAgQGFwcGx5IGdsLWJnLWRpc2FibGVkO1xuICBib3JkZXItY29sb3I6ICNkY2RiZDk7XG4gIEBhcHBseSBnbC10ZXh0LWRpc2FibGVkO1xuICBvcGFjaXR5OiAxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5idG4uZGlzYWJsZWQuY3Vyc29yLW5vdC1hbGxvd2VkLCAuYnRuLmRpc2FibGVkOmhvdmVyLmN1cnNvci1ub3QtYWxsb3dlZCxcbi5idG5bZGlzYWJsZWRdLmN1cnNvci1ub3QtYWxsb3dlZCxcbi5idG5bZGlzYWJsZWRdOmhvdmVyLmN1cnNvci1ub3QtYWxsb3dlZCxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuLmN1cnNvci1ub3QtYWxsb3dlZCxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuOmhvdmVyLmN1cnNvci1ub3QtYWxsb3dlZCxcbi5kcm9wZG93bi10b2dnbGVbZGlzYWJsZWRdLmN1cnNvci1ub3QtYWxsb3dlZCxcbi5kcm9wZG93bi10b2dnbGVbZGlzYWJsZWRdOmhvdmVyLmN1cnNvci1ub3QtYWxsb3dlZCxcbltkaXNhYmxlZF0uZHJvcGRvd24tbWVudS10b2dnbGUuY3Vyc29yLW5vdC1hbGxvd2VkLFxuW2Rpc2FibGVkXS5kcm9wZG93bi1tZW51LXRvZ2dsZTpob3Zlci5jdXJzb3Itbm90LWFsbG93ZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ0bi5kaXNhYmxlZCBpLCAuYnRuLmRpc2FibGVkOmhvdmVyIGksXG4uYnRuW2Rpc2FibGVkXSBpLFxuLmJ0bltkaXNhYmxlZF06aG92ZXIgaSxcbmZpZWxkc2V0W2Rpc2FibGVkXSAuYnRuIGksXG5maWVsZHNldFtkaXNhYmxlZF0gLmJ0bjpob3ZlciBpLFxuLmRyb3Bkb3duLXRvZ2dsZVtkaXNhYmxlZF0gaSxcbi5kcm9wZG93bi10b2dnbGVbZGlzYWJsZWRdOmhvdmVyIGksXG5bZGlzYWJsZWRdLmRyb3Bkb3duLW1lbnUtdG9nZ2xlIGksXG5bZGlzYWJsZWRdLmRyb3Bkb3duLW1lbnUtdG9nZ2xlOmhvdmVyIGkge1xuICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbn1cblxuLm5ldy1hY3Rpdml0aWVzLWJsb2NrIHtcbiAgbWluLWhlaWdodDogMjQwcHg7XG59XG5cbi5jb250cmliLWNhbGVuZGFyLXdyYXBwZXIsXG4uY29udHJpYi1sZWdlbmQtd3JhcHBlciB7XG4gIG1heC13aWR0aDogMTI5NnB4O1xuICBAYXBwbHkgZ2wtbXgtYXV0bztcbn1cblxuLmNvbnRyaWItY2FsZW5kYXIge1xuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gcmVwZWF0KDcsIG1pbm1heCgwLCAxZnIpKTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDE1cHgsIDFmcik7XG59XG5cbi51c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsIHtcbiAgbWluLXdpZHRoOiAxNXB4O1xuICBtaW4taGVpZ2h0OiAxNXB4O1xufVxuXG4uY29udHJpYi1jYWxlbmRhciAudXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbCB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlIHZhcigtLWNvbnRyaWItZmFkZS1kZWxheSwgMG1zKSwgYm9yZGVyLWNvbG9yIDAuMXMgZWFzZTtcbn1cblxuLmNvbnRyaWItY2FsZW5kYXIgYnV0dG9uLnVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uY29udHJpYi1jYWxlbmRhciBidXR0b24udXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbDpob3ZlciwgLmNvbnRyaWItY2FsZW5kYXIgYnV0dG9uLnVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGw6Zm9jdXMsIC5jb250cmliLWNhbGVuZGFyIGJ1dHRvbi51c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLmlzLWFjdGl2ZTpob3ZlciwgLmNvbnRyaWItY2FsZW5kYXIgYnV0dG9uLnVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwuaXMtYWN0aXZlOmZvY3VzIHtcbiAgei1pbmRleDogMTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvcik7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICBvdXRsaW5lLW9mZnNldDogMDtcbn1cbi5jb250cmliLWNhbGVuZGFyIGJ1dHRvbi51c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLmlzLWFjdGl2ZSB7XG4gIHotaW5kZXg6IDE7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpICFpbXBvcnRhbnQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAwO1xufVxuXG4uY29udHJpYi1jYWxlbmRhciBkaXYudXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbCB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jb250cmliLWxlZ2VuZC1jZWxsIHtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG4udXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbCB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXNtO1xufVxuXG4udXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC0wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0wKTtcbn1cblxuLnVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtMSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMSk7XG59XG5cbi51c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLTIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTIpO1xufVxuXG4udXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC0zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0zKTtcbn1cblxuLnVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtNCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNCk7XG59XG5cbi51c2VyLWNvbnRyaWItY2VsbDpob3ZlciwgLnVzZXItY29udHJpYi1jZWxsOmZvY3VzLXZpc2libGUsIC51c2VyLWNvbnRyaWItY2VsbC5pcy1hY3RpdmUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHN0cm9rZTogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTtcbn1cbi51c2VyLWNvbnRyaWItY2VsbDphY3RpdmUsIC51c2VyLWNvbnRyaWItY2VsbC5pcy1hY3RpdmUge1xuICBzdHJva2Utd2lkdGg6IDJweDtcbn1cbi51c2VyLWNvbnRyaWItY2VsbFtkYXRhLWxldmVsPVwiMFwiXSB7XG4gIGZpbGw6IHZhcigtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMCk7XG59XG4udXNlci1jb250cmliLWNlbGxbZGF0YS1sZXZlbD1cIjFcIl0ge1xuICBmaWxsOiB2YXIoLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTEpO1xufVxuLnVzZXItY29udHJpYi1jZWxsW2RhdGEtbGV2ZWw9XCIyXCJdIHtcbiAgZmlsbDogdmFyKC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0yKTtcbn1cbi51c2VyLWNvbnRyaWItY2VsbFtkYXRhLWxldmVsPVwiM1wiXSB7XG4gIGZpbGw6IHZhcigtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMyk7XG59XG4udXNlci1jb250cmliLWNlbGxbZGF0YS1sZXZlbD1cIjRcIl0ge1xuICBmaWxsOiB2YXIoLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQpO1xufVxuXG4uY29udHJpYnV0aW9uLWV2ZW50IHtcbiAgQGFwcGx5IGdsLWdhcC14LTM7XG4gIEBhcHBseSBnbC1nYXAteS0yO1xuICBkaXNwbGF5OiBncmlkO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmNvbnRyaWJ1dGlvbi1ldmVudDo6YmVmb3JlIHtcbiAgQGFwcGx5IGdsLXctMTtcbiAgQGFwcGx5IGdsLWxlZnQtNDtcbiAgQGFwcGx5IGdsLXRvcC02O1xuICBAYXBwbHkgZ2wtYm90dG9tLTA7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uY29udHJpYnV0aW9uLWV2ZW50LWF2YXRhciB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS02KSBhdXRvIDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJhdXRob3IgYXV0aG9yIGF1dGhvclwiIFwiLiBpY29uIHRpdGxlXCIgXCIuIGRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uXCIgXCIuIHRpbWVzdGFtcCB0aW1lc3RhbXBcIjtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jb250cmlidXRpb24tZXZlbnQtYXZhdGFyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtNikgbWluLWNvbnRlbnQgMWZyIGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJhdXRob3IgYXV0aG9yIGF1dGhvciB0aW1lc3RhbXBcIiBcIi4gaWNvbiB0aXRsZSAuXCIgXCIuIGRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uIC5cIjtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY29udHJpYnV0aW9uLWV2ZW50LWF2YXRhciB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTYpIG1pbi1jb250ZW50IDFmciBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiYXV0aG9yIGF1dGhvciBhdXRob3IgdGltZXN0YW1wXCIgXCIuIGljb24gdGl0bGUgLlwiIFwiLiBkZXNjcmlwdGlvbiBkZXNjcmlwdGlvbiAuXCI7XG4gIH1cbn1cbi5jb250cmlidXRpb24tZXZlbnQtYXZhdGFyIC5jb250cmlidXRpb24tZXZlbnQtaWNvbiB7XG4gIEBhcHBseSAtZ2wtbXItMTtcbn1cblxuLmNvbnRyaWJ1dGlvbi1ldmVudC1kZWZhdWx0IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJpY29uIHRpdGxlXCIgXCIuIGRlc2NyaXB0aW9uXCIgXCIuIHRpbWVzdGFtcFwiO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNvbnRyaWJ1dGlvbi1ldmVudC1kZWZhdWx0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJpY29uIHRpdGxlIHRpbWVzdGFtcFwiIFwiLiBkZXNjcmlwdGlvbiAuXCI7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNvbnRyaWJ1dGlvbi1ldmVudC1kZWZhdWx0IHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IGF1dG8gMWZyIGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJpY29uIHRpdGxlIHRpbWVzdGFtcFwiIFwiLiBkZXNjcmlwdGlvbiAuXCI7XG4gIH1cbn1cblxuLmNvbnRyaWJ1dGlvbi1ldmVudC1hdXRob3Ige1xuICBncmlkLWFyZWE6IGF1dGhvcjtcbn1cblxuLmNvbnRyaWJ1dGlvbi1ldmVudC1pY29uIHtcbiAgZ3JpZC1hcmVhOiBpY29uO1xufVxuXG4uY29udHJpYnV0aW9uLWV2ZW50LXRpbWVzdGFtcCB7XG4gIGdyaWQtYXJlYTogdGltZXN0YW1wO1xufVxuXG4uY29udHJpYnV0aW9uLWV2ZW50LXRpdGxlIHtcbiAgZ3JpZC1hcmVhOiB0aXRsZTtcbn1cblxuLmNvbnRyaWJ1dGlvbi1ldmVudC1kZXNjcmlwdGlvbiB7XG4gIGdyaWQtYXJlYTogZGVzY3JpcHRpb247XG59XG5cbi5jb250cmlidXRpb24tZXZlbnQ6bGFzdC1vZi10eXBlOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG46cm9vdCB7XG4gIC0tYnJlYWtwb2ludC14czogMDtcbiAgLS1icmVha3BvaW50LXNtOiA1NzZweDtcbiAgLS1icmVha3BvaW50LW1kOiA3NjhweDtcbiAgLS1icmVha3BvaW50LWxnOiA5OTJweDtcbiAgLS1icmVha3BvaW50LXhsOiAxMjAwcHg7XG59XG5cbi53aXRoLXBlcmZvcm1hbmNlLWJhciB7XG4gIC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodDogMi41cmVtO1xufVxuXG4ud2l0aC1zeXN0ZW0taGVhZGVyIHtcbiAgLS1zeXN0ZW0taGVhZGVyLWhlaWdodDogMTZweDtcbn1cblxuLndpdGgtaGVhZGVyIHtcbiAgLS1oZWFkZXItaGVpZ2h0OiBjYWxjKDNyZW0gKyAxcHgpO1xufVxuXG4ud2l0aC10b3AtYmFyIHtcbiAgLS10b3AtYmFyLWhlaWdodDogM3JlbTtcbn1cblxuLndpdGgtc3lzdGVtLWZvb3RlciB7XG4gIC0tc3lzdGVtLWZvb3Rlci1oZWlnaHQ6IDE2cHg7XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCB7XG4gICAgLS1hcHBsaWNhdGlvbi1iYXItcmlnaHQ6IDYycHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkLmlzLW1lcmdlLXJlcXVlc3Qge1xuICAgIC0tYXBwbGljYXRpb24tYmFyLXJpZ2h0OiAwcHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQge1xuICAgIC0tYXBwbGljYXRpb24tYmFyLXJpZ2h0OiAyOTBweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQge1xuICAgIC0tYXBwbGljYXRpb24tYmFyLXJpZ2h0OiA2MnB4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZC5pcy1tZXJnZS1yZXF1ZXN0IHtcbiAgICAtLWFwcGxpY2F0aW9uLWJhci1yaWdodDogMHB4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5yaWdodC1zaWRlYmFyLWV4cGFuZGVkIHtcbiAgICAtLWFwcGxpY2F0aW9uLWJhci1yaWdodDogMjkwcHg7XG4gIH1cbn1cbi8qKiBDT0xPUlMgKiovXG4udGV4dC11bmRlcmxpbmUsXG4udGV4dC11bmRlcmxpbmU6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmhpbnQge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIEBhcHBseSBnbC10ZXh0LWRpc2FibGVkO1xufVxuXG4ubGlnaHQge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuXG4udGFiLWNvbnRlbnQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxucHJlLmNsZWFuIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5wcmUud3JhcCB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuaHIge1xuICBAYXBwbHkgZ2wtbXktNjtcbiAgQGFwcGx5IGdsLW14LTA7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgQGFwcGx5IGdsLWJvcmRlci1zdWJ0bGU7XG59XG5cbi5zdHItdHJ1bmNhdGVkIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDA7XG4gIG92ZXJmbG93LXg6IGNsaXA7XG4gIG92ZXJmbG93LXk6IHZpc2libGU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtYXgtd2lkdGg6IDgyJTtcbn1cblxuLnN0ci10cnVuY2F0ZWQtMTAwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDA7XG4gIG92ZXJmbG93LXg6IGNsaXA7XG4gIG92ZXJmbG93LXk6IHZpc2libGU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5pdGVtLXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmxvYWRpbmcge1xuICBtYXJnaW46IDIwcHggYXV0bztcbiAgaGVpZ2h0OiA0MHB4O1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIGZvbnQtc2l6ZTogMzJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5wLnRpbWUge1xuICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIG1hcmdpbjogMzBweCAzcHggM3B4IDJweDtcbn1cblxuLmhpZ2hsaWdodCB7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG5saS5ub3RlIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm1hcmtkb3duIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLndpa2lfY29udGVudCBjb2RlLFxuLnJlYWRtZSBjb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLmVycm9yLW1lc3NhZ2Uge1xuICBwYWRkaW5nOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiAjZjE1MTY4O1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmVycm9yLW1lc3NhZ2UgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLndhcm5pbmdfbWVzc2FnZSB7XG4gIGJvcmRlci1sZWZ0OiA0cHggc29saWQgI2Y3Yjk1MTtcbiAgY29sb3I6ICMyODI3MmQ7XG4gIHBhZGRpbmc6IDE2cHggMjRweDtcbiAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjBkNTtcbn1cbi53YXJuaW5nX21lc3NhZ2UuY2VudGVyZWQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ud2FybmluZ19tZXNzYWdlIC5jbG9zZSBzdmcge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xufVxuLndhcm5pbmdfbWVzc2FnZSAuY2xvc2Uge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLmdpdGxhYi1wcm9tbyBhIHtcbiAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG4gIG1hcmdpbi1yaWdodDogMzBweDtcbn1cblxuLm1pbGVzdG9uZSAucHJvZ3Jlc3Mge1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkY2RiZDk7XG59XG5cbi5jaGFydCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMjIwcHg7XG59XG5cbi5jYXJkLmNhcmQtYm9keSB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4uY2FyZC5jYXJkLWJvZHkgaHIge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXN1YnRsZTtcbn1cblxuLmRyb3B6b25lIC5kei1wcmV2aWV3IC5kei1wcm9ncmVzcyB7XG4gIEBhcHBseSBnbC1ib3JkZXIgIWltcG9ydGFudDtcbn1cbi5kcm9wem9uZSAuZHotcHJldmlldyAuZHotcHJvZ3Jlc3MgLmR6LXVwbG9hZCB7XG4gIGJhY2tncm91bmQ6ICMwZDgwNzAgIWltcG9ydGFudDtcbn1cblxuLmR6LW1lc3NhZ2Uge1xuICBtYXJnaW46IDA7XG59XG5cbi5hbGVydCB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5cbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogNHB4O1xufVxuXG4uZ2wtYWNjZXNzaWJpbGl0eTpmb2N1cy12aXNpYmxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgdG9wOiAxcHg7XG4gIGxlZnQ6IDFweDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogMTAwJTtcbiAgcGFkZGluZzogMCAxMHB4O1xuICBjbGlwOiBhdXRvO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi50b29sdGlwIC50b29sdGlwLWlubmVyIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xufVxuXG4uZGlzYWJsZWQtY29udGVudCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi8qKiBDT01NT04gQ0xBU1NFUyAqKi9cbi8qKlxuICDwn5qoIERvIG5vdCB1c2UgdGhlc2UgY2xhc3NlcyDigJQgdGhleSBhcmUgZGVwcmVjYXRlZCBhbmQgYmVpbmcgcmVtb3ZlZC4g8J+aqFxuICBTZWUgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vaXNzdWVzLzIxNzQxOCBmb3IgbW9yZSBkZXRhaWxzLlxuKiovXG4uY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnZlcnRpY2FsLWFsaWduLXRleHQtdG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xufVxuXG4udmVydGljYWwtYWxpZ24tbWlkZGxlIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyoqIENPTU1PTiBTSVpJTkcgQ0xBU1NFUyAqKi9cbi53LTAge1xuICB3aWR0aDogMDtcbn1cblxuLnctOGVtIHtcbiAgd2lkdGg6IDhlbTtcbn1cblxuLnctMzBwIHtcbiAgd2lkdGg6IDMwJTtcbn1cblxuLnctNjBwIHtcbiAgd2lkdGg6IDYwJTtcbn1cblxuLmgtMzItcHgge1xuICBoZWlnaHQ6IDMycHg7XG59XG5cbi5tdy02ZW0ge1xuICBtYXgtd2lkdGg6IDZlbTtcbn1cblxuLmRyYWctaGFuZGxlIHtcbiAgd2lkdGg6IDRweDtcbn1cbi5kcmFnLWhhbmRsZTpob3ZlciB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG59XG4uZHJhZy1oYW5kbGUuaXMtZHJhZ2dpbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4ODg4O1xufVxuXG4uY3Vyc29yLXBvaW50ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5jdXJzb3ItZGVmYXVsdCB7XG4gIGN1cnNvcjogZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5mdWxsLXdpZHRoLW1vYmlsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmZ1bGwtd2lkdGgtbW9iaWxlID4gLmRyb3Bkb3duLW1lbnUsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5mdWxsLXdpZHRoLW1vYmlsZSA+IC5idG4sXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5mdWxsLXdpZHRoLW1vYmlsZSA+IC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlID4gLmdsLWJ1dHRvbi10ZXh0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5mdWxsLXdpZHRoLW1vYmlsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmZ1bGwtd2lkdGgtbW9iaWxlID4gLmRyb3Bkb3duLW1lbnUsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5mdWxsLXdpZHRoLW1vYmlsZSA+IC5idG4sXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5mdWxsLXdpZHRoLW1vYmlsZSA+IC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlID4gLmdsLWJ1dHRvbi10ZXh0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZ2wtZm9udC1zaXplLTAge1xuICBmb250LXNpemU6IDA7XG59XG5cbi5nbC1wc2V1ZG8tcGxhY2Vob2xkZXI6ZW1wdHk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1wbGFjZWhvbGRlcik7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiB2YXIoLS1nbC1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yKTtcbiAgY3Vyc29yOiB0ZXh0O1xufVxuXG4uZ2wtcGFnaW5hdGlvbiB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5nbC1sYWJlbC10ZXh0ICsgLmdsLWxhYmVsLXRleHQge1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmdsLWxhYmVsLXNjb3BlZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCBjdXJyZW50Q29sb3IgaW5zZXQ7XG59XG5cbi5nbC1sYWJlbC10b29sdGlwLWZvb3RlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC10b29sdGlwLXRleHQtY29sb3Itc3VidGxlKTtcbn1cblxuLnJlZi1jb250YWluZXIsXG4uY29tbWl0LXNoYS1jb250YWluZXIge1xuICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1tb25vLWZvbnQsIFwiR2l0TGFiIE1vbm9cIiksIFwiSmV0QnJhaW5zIE1vbm9cIiwgXCJNZW5sb1wiLCBcIkRlamFWdSBTYW5zIE1vbm9cIiwgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb25zb2xhc1wiLCBcIlVidW50dSBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgXCJhbmRhbGUgbW9ub1wiLCBcImx1Y2lkYSBjb25zb2xlXCIsIG1vbm9zcGFjZTtcbiAgZm9udC12YXJpYW50LWxpZ2F0dXJlczogbm9uZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG5cbi5yZWYtY29udGFpbmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLWxpbmstbWVudGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWxpbmstbWVudGlvbi1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xufVxuXG4uY29tbWl0LXNoYS1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nICFpbXBvcnRhbnQ7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZSAhaW1wb3J0YW50O1xufVxuXG5bcmVhZG9ubHldIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG5jb3B5LWNvZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG9wYWNpdHk6IDA7XG4gIHRvcDogMC41cmVtO1xuICByaWdodDogMC41cmVtO1xufVxuLm1hcmtkb3duLWNvZGUtYmxvY2s6aG92ZXIgY29weS1jb2RlLCBjb3B5LWNvZGU6Zm9jdXMtd2l0aGluIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLm1hcmtkb3duLWNvZGUtYmxvY2sgaW5zZXJ0LWNvZGUtc25pcHBldCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kcm9wZG93bi5nbC1kcm9wZG93biBidXR0b24uZHJvcGRvd24tdG9nZ2xlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG4uZHJvcGRvd24gLmJ0bi1saW5rOmhvdmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uc2hvdy5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIG1heC1oZWlnaHQ6IDQ0NXB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLnNob3cuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUuZHJvcGRvd24tZXh0ZW5kZWQtaGVpZ2h0IHtcbiAgbWF4LWhlaWdodDogNDAwcHg7XG59XG4uc2hvdy5kcm9wZG93biAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1leHRlbmRlZC1oZWlnaHQgLmdsLWRyb3Bkb3duLWlubmVyIHtcbiAgbWF4LWhlaWdodDogMzk4cHg7XG59XG4uc2hvdy5kcm9wZG93biAuZHJvcGRvd24tbWVudS5kcm9wZG93bi1yZWR1Y2VkLWhlaWdodCB7XG4gIG1heC1oZWlnaHQ6IDMxMnB4O1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuc2hvdy5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuc2hvdy5kcm9wZG93biAuZHJvcGRvd24tbWVudSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5zaG93LmRyb3Bkb3duIC5kcm9wZG93bi1tZW51IC5nbC1kcm9wZG93bi1pbm5lciB7XG4gIG1heC1oZWlnaHQ6IDMxMHB4O1xufVxuLnNob3cuZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZSxcbi5zaG93LmRyb3Bkb3duIC5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gIGJvcmRlci1jb2xvcjogI2MxYmZiZTtcbn1cbi5zaG93LmRyb3Bkb3duIFtkYXRhLXRvZ2dsZT1kcm9wZG93bl0ge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSwgLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuLmRyb3Bkb3duLW1lbnUtdG9nZ2xlOmFjdGl2ZSxcbi5kcm9wZG93bi1tZW51LXRvZ2dsZTpmb2N1cy12aXNpYmxlLFxuLmRyb3Bkb3duLW1lbnUtY2xvc2U6YWN0aXZlLFxuLmRyb3Bkb3duLW1lbnUtY2xvc2U6Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSxcbi5kcm9wZG93bi1tZW51LXRvZ2dsZSxcbi5jb25maWRlbnRpYWwtbWVyZ2UtcmVxdWVzdC1mb3JrLWdyb3VwIC5kcm9wZG93bi10b2dnbGUge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xuICBwYWRkaW5nOiA2cHggOHB4IDZweCAxMHB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm9yZGVyLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCBib3gtc2hhZG93IDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLmRyb3Bkb3duLXRvZ2dsZTpob3Zlcixcbi5kcm9wZG93bi1tZW51LXRvZ2dsZTpob3Zlcixcbi5jb25maWRlbnRpYWwtbWVyZ2UtcmVxdWVzdC1mb3JrLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6aG92ZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7XG59XG4uZHJvcGRvd24tdG9nZ2xlOmZvY3VzLXZpc2libGUsXG4uZHJvcGRvd24tbWVudS10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbi5jb25maWRlbnRpYWwtbWVyZ2UtcmVxdWVzdC1mb3JrLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWZvY3VzKTtcbn1cbi5kcm9wZG93bi10b2dnbGU6YWN0aXZlLCAuZHJvcGRvd24tdG9nZ2xlLmFjdGl2ZSxcbi5kcm9wZG93bi1tZW51LXRvZ2dsZTphY3RpdmUsXG4uZHJvcGRvd24tbWVudS10b2dnbGUuYWN0aXZlLFxuLmNvbmZpZGVudGlhbC1tZXJnZS1yZXF1ZXN0LWZvcmstZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZTphY3RpdmUsXG4uY29uZmlkZW50aWFsLW1lcmdlLXJlcXVlc3QtZm9yay1ncm91cCAuZHJvcGRvd24tdG9nZ2xlLmFjdGl2ZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItYWN0aXZlKTtcbn1cbi5kcm9wZG93bi10b2dnbGU6YWN0aXZlOmZvY3VzLXZpc2libGUsIC5kcm9wZG93bi10b2dnbGUuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4uZHJvcGRvd24tbWVudS10b2dnbGU6YWN0aXZlOmZvY3VzLXZpc2libGUsXG4uZHJvcGRvd24tbWVudS10b2dnbGUuYWN0aXZlOmZvY3VzLXZpc2libGUsXG4uY29uZmlkZW50aWFsLW1lcmdlLXJlcXVlc3QtZm9yay1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZTpmb2N1cy12aXNpYmxlLFxuLmNvbmZpZGVudGlhbC1tZXJnZS1yZXF1ZXN0LWZvcmstZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZS5hY3RpdmU6Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbi5kcm9wZG93bi10b2dnbGU6ZGlzYWJsZWQucmVhZC1vbmx5LFxuLmRyb3Bkb3duLW1lbnUtdG9nZ2xlOmRpc2FibGVkLnJlYWQtb25seSxcbi5jb25maWRlbnRpYWwtbWVyZ2UtcmVxdWVzdC1mb3JrLWdyb3VwIC5kcm9wZG93bi10b2dnbGU6ZGlzYWJsZWQucmVhZC1vbmx5IHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuLmRyb3Bkb3duLXRvZ2dsZS5sYXJnZSxcbi5kcm9wZG93bi1tZW51LXRvZ2dsZS5sYXJnZSxcbi5jb25maWRlbnRpYWwtbWVyZ2UtcmVxdWVzdC1mb3JrLWdyb3VwIC5kcm9wZG93bi10b2dnbGUubGFyZ2Uge1xuICB3aWR0aDogMjAwcHg7XG59XG4uZHJvcGRvd24tdG9nZ2xlLndpZGUsXG4uZHJvcGRvd24tbWVudS10b2dnbGUud2lkZSxcbi5jb25maWRlbnRpYWwtbWVyZ2UtcmVxdWVzdC1mb3JrLWdyb3VwIC5kcm9wZG93bi10b2dnbGUud2lkZSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmRyb3Bkb3duLXRvZ2dsZS53aWRlICsgLmRyb3Bkb3duLXNlbGVjdCxcbi5kcm9wZG93bi1tZW51LXRvZ2dsZS53aWRlICsgLmRyb3Bkb3duLXNlbGVjdCxcbi5jb25maWRlbnRpYWwtbWVyZ2UtcmVxdWVzdC1mb3JrLWdyb3VwIC5kcm9wZG93bi10b2dnbGUud2lkZSArIC5kcm9wZG93bi1zZWxlY3Qge1xuICB3aWR0aDogMTAwJTtcbn1cbi5kcm9wZG93bi10b2dnbGUuZHluYW1pYyxcbi5kcm9wZG93bi1tZW51LXRvZ2dsZS5keW5hbWljLFxuLmNvbmZpZGVudGlhbC1tZXJnZS1yZXF1ZXN0LWZvcmstZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZS5keW5hbWljIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1pbi13aWR0aDogMTYwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMjVweDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtdG9nZ2xlLmRyb3Bkb3duLW1lbnUtdG9nZ2xlIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXRvcDogN3B4O1xuICBwYWRkaW5nLWJvdHRvbTogN3B4O1xuICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgd2lkdGg6IDE2MHB4O1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm9yZGVyLWNvbG9yIDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCBib3gtc2hhZG93IDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLmRyb3Bkb3duLW1lbnUtdG9nZ2xlLmRyb3Bkb3duLW1lbnUtdG9nZ2xlOmhvdmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXIpO1xufVxuLmRyb3Bkb3duLW1lbnUtdG9nZ2xlLmRyb3Bkb3duLW1lbnUtdG9nZ2xlOmZvY3VzLXZpc2libGUge1xuICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4uZHJvcGRvd24tbWVudS10b2dnbGUuZHJvcGRvd24tbWVudS10b2dnbGU6YWN0aXZlLCAuZHJvcGRvd24tbWVudS10b2dnbGUuZHJvcGRvd24tbWVudS10b2dnbGUuYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmUpO1xufVxuLmRyb3Bkb3duLW1lbnUtdG9nZ2xlLmRyb3Bkb3duLW1lbnUtdG9nZ2xlOmFjdGl2ZTpmb2N1cy12aXNpYmxlLCAuZHJvcGRvd24tbWVudS10b2dnbGUuZHJvcGRvd24tbWVudS10b2dnbGUuYWN0aXZlOmZvY3VzLXZpc2libGUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uZHJvcGRvd24tbWVudS10b2dnbGUuZHJvcGRvd24tbWVudS10b2dnbGUgLmdsLXNwaW5uZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOXB4O1xuICByaWdodDogOHB4O1xufVxuLmRyb3Bkb3duLW1lbnUtdG9nZ2xlLmRyb3Bkb3duLW1lbnUtdG9nZ2xlIC5kcm9wZG93bi1tZW51LXRvZ2dsZS1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogOHB4O1xuICBjb2xvcjogY3VycmVudENvbG9yO1xufVxuXG4ubGFiZWxzIC5kcm9wZG93bi1tZW51LXRvZ2dsZS53aWRlICsgLmRyb3Bkb3duLXNlbGVjdCB7XG4gIG1heC1oZWlnaHQ6IHVuc2V0O1xufVxuXG4uZ2wtZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUtdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xufVxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51LXRvZ2dsZSAuZ2wtZHJvcGRvd24tdG9nZ2xlLXRleHQge1xuICBtaW4taGVpZ2h0OiAxLjI1cmVtO1xufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIHRvcDogMTAwJTtcbiAgei1pbmRleDogMzAwO1xuICBtaW4td2lkdGg6IDI0MHB4O1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBAYXBwbHkgZ2wtYmctZHJvcGRvd247XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC1ib3JkZXItZHJvcGRvd247XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIEBhcHBseSBnbC1zaGFkb3ctbWQ7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG4uZHJvcGRvd24tbWVudS5kcm9wZG93bi1vcGVuLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5kcm9wZG93bi1tZW51LmlzLWxvYWRpbmcgLmRyb3Bkb3duLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmRyb3Bkb3duLW1lbnUuaXMtbG9hZGluZyAuZHJvcGRvd24tbG9hZGluZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm5vbi1ibG9ja2luZy1sb2FkZXIgLmRyb3Bkb3duLW1lbnUuaXMtbG9hZGluZyAuZHJvcGRvd24tY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDJyZW07XG59XG4ubm9uLWJsb2NraW5nLWxvYWRlciAuZHJvcGRvd24tbWVudS5pcy1sb2FkaW5nIC5kcm9wZG93bi1jb250ZW50IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5ub24tYmxvY2tpbmctbG9hZGVyIC5kcm9wZG93bi1tZW51IC5kcm9wZG93bi1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRyb3Bkb3duLW1lbnUgdWwge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uZHJvcGRvd24tbWVudSBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmRyb3Bkb3duLW1lbnUgbGkgPiBhLFxuLmRyb3Bkb3duLW1lbnUgbGkgPiBidXR0b24sXG4uZHJvcGRvd24tbWVudSBsaSAuZ2wtYnV0dG9uLmJ0bi1saW5rLFxuLmRyb3Bkb3duLW1lbnUgbGkgLm1lbnUtaXRlbSB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNDAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDhweCAxMnB4O1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uZHJvcGRvd24tbWVudSBsaSA+IGEuZGlzYWJsZS1ob3Zlcixcbi5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uLmRpc2FibGUtaG92ZXIsXG4uZHJvcGRvd24tbWVudSBsaSAuZ2wtYnV0dG9uLmJ0bi1saW5rLmRpc2FibGUtaG92ZXIsXG4uZHJvcGRvd24tbWVudSBsaSAubWVudS1pdGVtLmRpc2FibGUtaG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZHJvcGRvd24tbWVudSBsaSA+IGE6bm90KC5kaXNhYmxlLWhvdmVyKTpob3ZlciwgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmFjdGl2ZSwgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmZvY3VzLXZpc2libGUsIC5kcm9wZG93bi1tZW51IGxpID4gYS5pcy1mb2N1c2VkLFxuLmRyb3Bkb3duLW1lbnUgbGkgPiBidXR0b246bm90KC5kaXNhYmxlLWhvdmVyKTpob3Zlcixcbi5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uOmFjdGl2ZSxcbi5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uOmZvY3VzLXZpc2libGUsXG4uZHJvcGRvd24tbWVudSBsaSA+IGJ1dHRvbi5pcy1mb2N1c2VkLFxuLmRyb3Bkb3duLW1lbnUgbGkgLmdsLWJ1dHRvbi5idG4tbGluazpub3QoLmRpc2FibGUtaG92ZXIpOmhvdmVyLFxuLmRyb3Bkb3duLW1lbnUgbGkgLmdsLWJ1dHRvbi5idG4tbGluazphY3RpdmUsXG4uZHJvcGRvd24tbWVudSBsaSAuZ2wtYnV0dG9uLmJ0bi1saW5rOmZvY3VzLXZpc2libGUsXG4uZHJvcGRvd24tbWVudSBsaSAuZ2wtYnV0dG9uLmJ0bi1saW5rLmlzLWZvY3VzZWQsXG4uZHJvcGRvd24tbWVudSBsaSAubWVudS1pdGVtOm5vdCguZGlzYWJsZS1ob3Zlcik6aG92ZXIsXG4uZHJvcGRvd24tbWVudSBsaSAubWVudS1pdGVtOmFjdGl2ZSxcbi5kcm9wZG93bi1tZW51IGxpIC5tZW51LWl0ZW06Zm9jdXMtdmlzaWJsZSxcbi5kcm9wZG93bi1tZW51IGxpIC5tZW51LWl0ZW0uaXMtZm9jdXNlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItaG92ZXIpO1xuICBvdXRsaW5lOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZHJvcGRvd24tbWVudSBsaSA+IGE6YWN0aXZlLCAuZHJvcGRvd24tbWVudSBsaSA+IGE6Zm9jdXMtdmlzaWJsZSwgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmZvY3VzLXZpc2libGU6YWN0aXZlLCAuZHJvcGRvd24tbWVudSBsaSA+IGEuaXMtZm9jdXNlZCxcbi5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uOmFjdGl2ZSxcbi5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uOmZvY3VzLXZpc2libGUsXG4uZHJvcGRvd24tbWVudSBsaSA+IGJ1dHRvbjpmb2N1cy12aXNpYmxlOmFjdGl2ZSxcbi5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uLmlzLWZvY3VzZWQsXG4uZHJvcGRvd24tbWVudSBsaSAuZ2wtYnV0dG9uLmJ0bi1saW5rOmFjdGl2ZSxcbi5kcm9wZG93bi1tZW51IGxpIC5nbC1idXR0b24uYnRuLWxpbms6Zm9jdXMtdmlzaWJsZSxcbi5kcm9wZG93bi1tZW51IGxpIC5nbC1idXR0b24uYnRuLWxpbms6Zm9jdXMtdmlzaWJsZTphY3RpdmUsXG4uZHJvcGRvd24tbWVudSBsaSAuZ2wtYnV0dG9uLmJ0bi1saW5rLmlzLWZvY3VzZWQsXG4uZHJvcGRvd24tbWVudSBsaSAubWVudS1pdGVtOmFjdGl2ZSxcbi5kcm9wZG93bi1tZW51IGxpIC5tZW51LWl0ZW06Zm9jdXMtdmlzaWJsZSxcbi5kcm9wZG93bi1tZW51IGxpIC5tZW51LWl0ZW06Zm9jdXMtdmlzaWJsZTphY3RpdmUsXG4uZHJvcGRvd24tbWVudSBsaSAubWVudS1pdGVtLmlzLWZvY3VzZWQge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAycHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvciksIGluc2V0IDAgMCAwIDNweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmFjdGl2ZSwgLmRyb3Bkb3duLW1lbnUgbGkgPiBhOmZvY3VzLXZpc2libGUsIC5kcm9wZG93bi1tZW51IGxpID4gYTpmb2N1cy12aXNpYmxlOmFjdGl2ZSwgLmRyb3Bkb3duLW1lbnUgbGkgPiBhLmlzLWZvY3VzZWQsXG4gIC5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uOmFjdGl2ZSxcbiAgLmRyb3Bkb3duLW1lbnUgbGkgPiBidXR0b246Zm9jdXMtdmlzaWJsZSxcbiAgLmRyb3Bkb3duLW1lbnUgbGkgPiBidXR0b246Zm9jdXMtdmlzaWJsZTphY3RpdmUsXG4gIC5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uLmlzLWZvY3VzZWQsXG4gIC5kcm9wZG93bi1tZW51IGxpIC5nbC1idXR0b24uYnRuLWxpbms6YWN0aXZlLFxuICAuZHJvcGRvd24tbWVudSBsaSAuZ2wtYnV0dG9uLmJ0bi1saW5rOmZvY3VzLXZpc2libGUsXG4gIC5kcm9wZG93bi1tZW51IGxpIC5nbC1idXR0b24uYnRuLWxpbms6Zm9jdXMtdmlzaWJsZTphY3RpdmUsXG4gIC5kcm9wZG93bi1tZW51IGxpIC5nbC1idXR0b24uYnRuLWxpbmsuaXMtZm9jdXNlZCxcbiAgLmRyb3Bkb3duLW1lbnUgbGkgLm1lbnUtaXRlbTphY3RpdmUsXG4gIC5kcm9wZG93bi1tZW51IGxpIC5tZW51LWl0ZW06Zm9jdXMtdmlzaWJsZSxcbiAgLmRyb3Bkb3duLW1lbnUgbGkgLm1lbnUtaXRlbTpmb2N1cy12aXNpYmxlOmFjdGl2ZSxcbiAgLmRyb3Bkb3duLW1lbnUgbGkgLm1lbnUtaXRlbS5pcy1mb2N1c2VkIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5kcm9wZG93bi1tZW51IGxpID4gYS5kcm9wZG93bi1tZW51LXVzZXItbGluayxcbi5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uLmRyb3Bkb3duLW1lbnUtdXNlci1saW5rLFxuLmRyb3Bkb3duLW1lbnUgbGkgLmdsLWJ1dHRvbi5idG4tbGluay5kcm9wZG93bi1tZW51LXVzZXItbGluayxcbi5kcm9wZG93bi1tZW51IGxpIC5tZW51LWl0ZW0uZHJvcGRvd24tbWVudS11c2VyLWxpbmsge1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA3cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uZHJvcGRvd24tbWVudSBsaSA+IGEuZHJvcGRvd24tbWVudS11c2VyLWxpbmsgLmRyb3Bkb3duLW1lbnUtdXNlci11c2VybmFtZSxcbi5kcm9wZG93bi1tZW51IGxpID4gYnV0dG9uLmRyb3Bkb3duLW1lbnUtdXNlci1saW5rIC5kcm9wZG93bi1tZW51LXVzZXItdXNlcm5hbWUsXG4uZHJvcGRvd24tbWVudSBsaSAuZ2wtYnV0dG9uLmJ0bi1saW5rLmRyb3Bkb3duLW1lbnUtdXNlci1saW5rIC5kcm9wZG93bi1tZW51LXVzZXItdXNlcm5hbWUsXG4uZHJvcGRvd24tbWVudSBsaSAubWVudS1pdGVtLmRyb3Bkb3duLW1lbnUtdXNlci1saW5rIC5kcm9wZG93bi1tZW51LXVzZXItdXNlcm5hbWUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kcm9wZG93bi1tZW51IC5kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogMC4yNXJlbSAwO1xuICBwYWRkaW5nOiAwO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gIEBhcHBseSBnbC1ib3JkZXItdC1kcm9wZG93bjtcbn1cbi5kcm9wZG93bi1tZW51IC5zZXBhcmF0b3Ige1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xufVxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLW1lbnUtZW1wdHktaXRlbSBhOmhvdmVyLCAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tbWVudS1lbXB0eS1pdGVtIGE6Zm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLWhlYWRlciB7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgcGFkZGluZzogOHB4IDEycHg7XG59XG4uZHJvcGRvd24tbWVudS5jYXBpdGFsaXplLWhlYWRlciAuZHJvcGRvd24taGVhZGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4uZHJvcGRvd24tbWVudSAudW5jbGlja2FibGUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBwYWRkaW5nOiA1cHggOHB4O1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG4uZHJvcGRvd24tbWVudSAuYmFkZ2UuYmFkZ2UtcGlsbCArIHNwYW46bm90KC5iYWRnZSk6bm90KC5iYWRnZS1waWxsKSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDtcbn1cblxuLmRyb3Bkb3duLWl0ZW0ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmRyb3Bkb3duLWl0ZW0uZGlzYWJsZS1ob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5kcm9wZG93bi1pdGVtOm5vdCguZGlzYWJsZS1ob3Zlcik6aG92ZXIsIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06Zm9jdXMtdmlzaWJsZSwgLmRyb3Bkb3duLWl0ZW0uaXMtZm9jdXNlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItaG92ZXIpO1xuICBvdXRsaW5lOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZHJvcGRvd24taXRlbTphY3RpdmUsIC5kcm9wZG93bi1pdGVtOmZvY3VzLXZpc2libGUsIC5kcm9wZG93bi1pdGVtOmZvY3VzLXZpc2libGU6YWN0aXZlLCAuZHJvcGRvd24taXRlbS5pcy1mb2N1c2VkIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpLCBpbnNldCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksIGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5kcm9wZG93bi1pdGVtOmFjdGl2ZSwgLmRyb3Bkb3duLWl0ZW06Zm9jdXMtdmlzaWJsZSwgLmRyb3Bkb3duLWl0ZW06Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5kcm9wZG93bi1pdGVtLmlzLWZvY3VzZWQge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dDtcbiAgfVxufVxuLmRyb3Bkb3duLWl0ZW0uZHJvcGRvd24tbWVudS11c2VyLWxpbmsge1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA3cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uZHJvcGRvd24taXRlbS5kcm9wZG93bi1tZW51LXVzZXItbGluayAuZHJvcGRvd24tbWVudS11c2VyLXVzZXJuYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kcm9wbGFiLWRyb3Bkb3duIC5kcm9wZG93bi10b2dnbGUgPiBpLFxuLmRyb3BsYWItZHJvcGRvd24gLmRyb3Bkb3duLXRvZ2dsZSA+IHN2ZyB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmRyb3BsYWItZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG4uZHJvcGxhYi1kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kcm9wbGFiLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IGxpLmRyb3BsYWItaXRlbS1hY3RpdmUgYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1ob3Zlcik7XG4gIG91dGxpbmU6IDA7XG59XG4uZHJvcGxhYi1kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaSA+IGEsXG4uZHJvcGxhYi1kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaSA+IGJ1dHRvbixcbi5kcm9wbGFiLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IGxpID4gLmdsLWJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LW92ZXJmbG93OiBpbmhlcml0O1xufVxuLmRyb3BsYWItZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgbGkgPiBidXR0b24uZHJvcGRvd24tZXBpYy1idXR0b24ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLmRyb3BsYWItZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgbGkgPiBidXR0b24uZHJvcGRvd24tZXBpYy1idXR0b24gLnJlZmVyZW5jZSB7XG4gIEBhcHBseSBnbC10ZXh0LWRpc2FibGVkO1xuICBtYXJnaW4tdG9wOiA0cHg7XG59XG4uZHJvcGxhYi1kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaS5kcm9wbGFiLWl0ZW0tc2VsZWN0ZWQgaSwgLmRyb3BsYWItZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgbGkuZHJvcGxhYi1pdGVtLXNlbGVjdGVkIHN2ZyB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uZHJvcGxhYi1kcm9wZG93biAuZHJvcGRvd24tbWVudSBsaSAuaWNvbiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5kcm9wbGFiLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IGxpIC5kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cbi5kcm9wbGFiLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51IGxpIC5kZXNjcmlwdGlvbiBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5kcm9wbGFiLWRyb3Bkb3duIC5pY29uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICBwYWRkaW5nLXRvcDogMnB4O1xufVxuXG4uY29tbWVudC10eXBlLWRyb3Bkb3duLnNob3cgLmRyb3Bkb3duLW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZpbHRlcmVkLXNlYXJjaC1ib3gtaW5wdXQtY29udGFpbmVyIC5kcm9wZG93bi1tZW51IHtcbiAgbWF4LXdpZHRoOiAyODBweDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZHJvcGRvd24tbWVudS1wYWdpbmcgLmRyb3Bkb3duLXBhZ2UtdHdvLFxuLmRyb3Bkb3duLW1lbnUtcGFnaW5nIC5kcm9wZG93bi1tZW51LWJhY2sge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmRyb3Bkb3duLW1lbnUtcGFnaW5nLmlzLXBhZ2UtdHdvIC5kcm9wZG93bi1wYWdlLW9uZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZHJvcGRvd24tbWVudS1wYWdpbmcuaXMtcGFnZS10d28gLmRyb3Bkb3duLXBhZ2UtdHdvLFxuLmRyb3Bkb3duLW1lbnUtcGFnaW5nLmlzLXBhZ2UtdHdvIC5kcm9wZG93bi1tZW51LWJhY2sge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kcm9wZG93bi1tZW51LXBhZ2luZy5pcy1wYWdlLXR3byAuZHJvcGRvd24tY29udGVudCB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtdXNlciAuYXZhdGFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIG1hcmdpbjogMCAxMHB4IDAgMDtcbn1cbi5kcm9wZG93bi1tZW51LXVzZXIgLnNpZGViYXItcGFydGljaXBhbnQgLm1lcmdlLWljb24ge1xuICB0b3A6IGNhbGMoNTAlICsgNXB4KTtcbiAgbGVmdDogM3JlbTtcbn1cblxuLmRyb3Bkb3duLW1lbnUtdXNlci1mdWxsLW5hbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZHJvcGRvd24tbWVudS11c2VyLXVzZXJuYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmRyb3Bkb3duLXNlbGVjdCB7XG4gIHdpZHRoOiAzMDBweDtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmRyb3Bkb3duLXNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZHJvcGRvd24tc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS1zZWxlY3RhYmxlIGxpIGEsXG4uZHJvcGRvd24tbWVudS1zZWxlY3RhYmxlIGxpIGJ1dHRvbixcbi5kcm9wZG93bi1tZW51LXNlbGVjdGFibGUgbGkgLmRyb3Bkb3duLWl0ZW0ge1xuICBwYWRkaW5nOiA4cHggNDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSBhLmlzLWluZGV0ZXJtaW5hdGUsIC5kcm9wZG93bi1tZW51LXNlbGVjdGFibGUgbGkgYS5pcy1hY3RpdmUsXG4uZHJvcGRvd24tbWVudS1zZWxlY3RhYmxlIGxpIGJ1dHRvbi5pcy1pbmRldGVybWluYXRlLFxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSBidXR0b24uaXMtYWN0aXZlLFxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSAuZHJvcGRvd24taXRlbS5pcy1pbmRldGVybWluYXRlLFxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSAuZHJvcGRvd24taXRlbS5pcy1hY3RpdmUge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSBhLmlzLWluZGV0ZXJtaW5hdGUuZHJvcGRvd24tbWVudS11c2VyLWxpbms6OmJlZm9yZSwgLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSBhLmlzLWFjdGl2ZS5kcm9wZG93bi1tZW51LXVzZXItbGluazo6YmVmb3JlLFxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSBidXR0b24uaXMtaW5kZXRlcm1pbmF0ZS5kcm9wZG93bi1tZW51LXVzZXItbGluazo6YmVmb3JlLFxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSBidXR0b24uaXMtYWN0aXZlLmRyb3Bkb3duLW1lbnUtdXNlci1saW5rOjpiZWZvcmUsXG4uZHJvcGRvd24tbWVudS1zZWxlY3RhYmxlIGxpIC5kcm9wZG93bi1pdGVtLmlzLWluZGV0ZXJtaW5hdGUuZHJvcGRvd24tbWVudS11c2VyLWxpbms6OmJlZm9yZSxcbi5kcm9wZG93bi1tZW51LXNlbGVjdGFibGUgbGkgLmRyb3Bkb3duLWl0ZW0uaXMtYWN0aXZlLmRyb3Bkb3duLW1lbnUtdXNlci1saW5rOjpiZWZvcmUge1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSBhLmlzLWluZGV0ZXJtaW5hdGU6OmJlZm9yZSxcbi5kcm9wZG93bi1tZW51LXNlbGVjdGFibGUgbGkgYnV0dG9uLmlzLWluZGV0ZXJtaW5hdGU6OmJlZm9yZSxcbi5kcm9wZG93bi1tZW51LXNlbGVjdGFibGUgbGkgLmRyb3Bkb3duLWl0ZW0uaXMtaW5kZXRlcm1pbmF0ZTo6YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAxNnB4O1xuICB0b3A6IDE2cHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgY29udGVudDogXCLigJRcIjtcbn1cbi5kcm9wZG93bi1tZW51LXNlbGVjdGFibGUgbGkgYS5pcy1hY3RpdmUsXG4uZHJvcGRvd24tbWVudS1zZWxlY3RhYmxlIGxpIGJ1dHRvbi5pcy1hY3RpdmUsXG4uZHJvcGRvd24tbWVudS1zZWxlY3RhYmxlIGxpIC5kcm9wZG93bi1pdGVtLmlzLWFjdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kcm9wZG93bi1tZW51LXNlbGVjdGFibGUgbGkgYS5pcy1hY3RpdmU6OmJlZm9yZSxcbi5kcm9wZG93bi1tZW51LXNlbGVjdGFibGUgbGkgYnV0dG9uLmlzLWFjdGl2ZTo6YmVmb3JlLFxuLmRyb3Bkb3duLW1lbnUtc2VsZWN0YWJsZSBsaSAuZHJvcGRvd24taXRlbS5pcy1hY3RpdmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC41cmVtO1xuICBsZWZ0OiAxcmVtO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXNrLWltYWdlOiB1cmwoXCJAZ2l0bGFiL3N2Z3MvZGlzdC9pY29ucy1zdGFja2VkLnN2ZyNjaGVja1wiKTtcbiAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgbWFzay1zaXplOiBjb3ZlcjtcbiAgbWFzay1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbn1cblxuLmRyb3Bkb3duLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDE2cHg7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWItZHJvcGRvd247XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5kcm9wZG93bi10aXRsZS1idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogI2JmYmZiZjtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBvdXRsaW5lOiAwO1xufVxuLmRyb3Bkb3duLXRpdGxlLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiByZ2IoMTUyLjc1LCAxNTIuNzUsIDE1Mi43NSk7XG59XG5cbi5kcm9wZG93bi1tZW51LWJhY2sge1xuICBsZWZ0OiAxMHB4O1xuICB0b3A6IDhweDtcbn1cblxuLmRyb3Bkb3duLWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBwYWRkaW5nOiAwIDEwcHg7XG59XG4uZHJvcGRvd24taW5wdXQgLmlucHV0LWljb24sXG4uZHJvcGRvd24taW5wdXQgLmRyb3Bkb3duLWlucHV0LWNsZWFyLFxuLmRyb3Bkb3duLWlucHV0IC5kcm9wZG93bi1pbnB1dC1zZWFyY2gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogOHB4O1xuICByaWdodDogMjBweDtcbiAgQGFwcGx5IGdsLWZpbGwtaWNvbi1zdWJ0bGU7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uZHJvcGRvd24taW5wdXQgLmRyb3Bkb3duLWlucHV0LWNsZWFyIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICB0b3A6IDhweDtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLmRyb3Bkb3duLWlucHV0IC5kcm9wZG93bi1pbnB1dC1jbGVhcjpub3QoLmdsLWljb24pIHtcbiAgcmlnaHQ6IDIycHg7XG59XG4uZHJvcGRvd24taW5wdXQuaGFzLXZhbHVlIC5kcm9wZG93bi1pbnB1dC1jbGVhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmRyb3Bkb3duLWlucHV0Lmhhcy12YWx1ZSAuZHJvcGRvd24taW5wdXQtc2VhcmNoIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLWlucHV0LWZpZWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIG91dGxpbmU6IDA7XG59XG4uZHJvcGRvd24taW5wdXQtZmllbGQ6Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbi5kcm9wZG93bi1pbnB1dC1maWVsZDpob3ZlciB+IC5kcm9wZG93bi1pbnB1dC1jbGVhciB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cblxuLmRyb3Bkb3duLWNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiAyNTJweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cblxuLmRyb3Bkb3duLWluZm8tbm90ZSB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZHJvcGRvd24tZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQtZHJvcGRvd247XG59XG5cbi5kcm9wZG93bi1mb290ZXItY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLmRyb3Bkb3duLWZvb3Rlci1saXN0IHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLmRyb3Bkb3duLWZvb3Rlci1saXN0IGEge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLmRyb3Bkb3duLWNyZWF0ZS1uZXctaXRlbS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmRyb3Bkb3duLWNyZWF0ZS1uZXctaXRlbS1idXR0b24uZGlzYWJsZS1ob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5kcm9wZG93bi1jcmVhdGUtbmV3LWl0ZW0tYnV0dG9uOm5vdCguZGlzYWJsZS1ob3Zlcik6aG92ZXIsIC5kcm9wZG93bi1jcmVhdGUtbmV3LWl0ZW0tYnV0dG9uOmFjdGl2ZSwgLmRyb3Bkb3duLWNyZWF0ZS1uZXctaXRlbS1idXR0b246Zm9jdXMtdmlzaWJsZSwgLmRyb3Bkb3duLWNyZWF0ZS1uZXctaXRlbS1idXR0b24uaXMtZm9jdXNlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtaG92ZXIpO1xuICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItaG92ZXIpO1xuICBvdXRsaW5lOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZHJvcGRvd24tY3JlYXRlLW5ldy1pdGVtLWJ1dHRvbjphY3RpdmUsIC5kcm9wZG93bi1jcmVhdGUtbmV3LWl0ZW0tYnV0dG9uOmZvY3VzLXZpc2libGUsIC5kcm9wZG93bi1jcmVhdGUtbmV3LWl0ZW0tYnV0dG9uOmZvY3VzLXZpc2libGU6YWN0aXZlLCAuZHJvcGRvd24tY3JlYXRlLW5ldy1pdGVtLWJ1dHRvbi5pcy1mb2N1c2VkIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpLCBpbnNldCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksIGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5kcm9wZG93bi1jcmVhdGUtbmV3LWl0ZW0tYnV0dG9uOmFjdGl2ZSwgLmRyb3Bkb3duLWNyZWF0ZS1uZXctaXRlbS1idXR0b246Zm9jdXMtdmlzaWJsZSwgLmRyb3Bkb3duLWNyZWF0ZS1uZXctaXRlbS1idXR0b246Zm9jdXMtdmlzaWJsZTphY3RpdmUsIC5kcm9wZG93bi1jcmVhdGUtbmV3LWl0ZW0tYnV0dG9uLmlzLWZvY3VzZWQge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dDtcbiAgfVxufVxuLmRyb3Bkb3duLWNyZWF0ZS1uZXctaXRlbS1idXR0b24uZHJvcGRvd24tbWVudS11c2VyLWxpbmsge1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA3cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uZHJvcGRvd24tY3JlYXRlLW5ldy1pdGVtLWJ1dHRvbi5kcm9wZG93bi1tZW51LXVzZXItbGluayAuZHJvcGRvd24tbWVudS11c2VyLXVzZXJuYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZHJvcGRvd24tY3JlYXRlLW5ldy1pdGVtLWJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLmRyb3Bkb3duLWxvYWRpbmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgei1pbmRleDogOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjYpO1xuICBmb250LXNpemU6IDI4cHg7XG59XG5cbi5kcm9wZG93bi1sYWJlbC1ib3gge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdsLWRyb3Bkb3duLWJhY2tncm91bmQtY29sb3IpO1xufVxuXG4uZ2l0LXJldmlzaW9uLWRyb3Bkb3duIC5kcm9wZG93bi1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogMjE1cHg7XG59XG5cbi5zaWRlYmFyLW1vdmUtaXNzdWUtZHJvcGRvd24gLmRyb3Bkb3duLWNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiAxNjBweDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtYXV0aG9yIC5kcm9wZG93bi1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogMjE1cHg7XG59XG5cbi5kcm9wZG93bi1tZW51LWxhYmVscyAuZHJvcGRvd24tY29udGVudCB7XG4gIG1heC1oZWlnaHQ6IDEyOHB4O1xufVxuXG4uZHJvcGRvd24tbWVudS1pbm5lci10aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZHJvcGRvd24tbWVudS1pbm5lci1jb250ZW50IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZS10ZXh0LmlzLWRlZmF1bHQge1xuICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGUpO1xufVxuXG4ucGlrYS1zaW5nbGUuYW5pbWF0ZS1waWNrZXIuaXMtYm91bmQsXG4ucGlrYS1zaW5nbGUuYW5pbWF0ZS1waWNrZXIuaXMtYm91bmQuaXMtaGlkZGVuIHtcbiAgLypcbiAgICogSGF2aW5nIGAhaW1wb3J0YW50YCBpcyBub3QgcmVjb21tZW5kZWQgYnV0XG4gICAqIHNpbmNlIGBwaWthZGF5YCBzZXRzIHBvc2l0aW9uaW5nIGlubGluZVxuICAgKiB0aGVyZSdzIG5vIHdheSBpdCBjYW4gYmUgZ3JhY2VmdWxseSBvdmVycmlkZGVuXG4gICAqIHVzaW5nIGNvbmZpZyBvcHRpb25zLlxuICAgKi9cbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGlrYS1zaW5nbGUuYW5pbWF0ZS1waWNrZXIuaXMtYm91bmQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnBpa2Etc2luZ2xlLmFuaW1hdGUtcGlja2VyLmlzLWJvdW5kLmlzLWhpZGRlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5sYWJlbHMtc2VsZWN0LXdyYXBwZXIuaXMtc3RhbmRhbG9uZSB7XG4gIG1pbi13aWR0aDogMjQwcHg7XG59XG4ubGFiZWxzLXNlbGVjdC13cmFwcGVyLmlzLXN0YW5kYWxvbmUgLmxhYmVscy1zZWxlY3QtZHJvcGRvd24tY29udGVudHMge1xuICBtYXgtaGVpZ2h0OiAzNTBweDtcbn1cbi5sYWJlbHMtc2VsZWN0LXdyYXBwZXIuaXMtc3RhbmRhbG9uZSAubGFiZWxzLXNlbGVjdC1kcm9wZG93bi1jb250ZW50cyAuZHJvcGRvd24tY29udGVudCB7XG4gIGhlaWdodDogMjUwcHg7XG59XG4ubGFiZWxzLXNlbGVjdC13cmFwcGVyIGxpOmhvdmVyIC5sYWJlbC1pdGVtLCAubGFiZWxzLXNlbGVjdC13cmFwcGVyIGxpLmlzLWZvY3VzZWQgLmxhYmVsLWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWhvdmVyKTtcbiAgb3V0bGluZTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmxhYmVscy1zZWxlY3Qtd3JhcHBlciAubGFiZWxzLXNlbGVjdC1kcm9wZG93bi1idXR0b24gLmdsLWJ1dHRvbi10ZXh0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubGFiZWxzLXNlbGVjdC13cmFwcGVyIC5sYWJlbHMtc2VsZWN0LWRyb3Bkb3duLWNvbnRlbnRzIHtcbiAgbWluLWhlaWdodDogNDBweDtcbiAgbWF4LWhlaWdodDogMzMwcHg7XG4gIHotaW5kZXg6IDI7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC1ib3JkZXItZHJvcGRvd247XG4gIEBhcHBseSBnbC1iZy1kcm9wZG93bjtcbiAgQGFwcGx5IGdsLXNoYWRvdy1tZDtcbn1cbi5sYWJlbHMtc2VsZWN0LXdyYXBwZXIgLmxhYmVscy1zZWxlY3QtZHJvcGRvd24tY29udGVudHMgLmRyb3Bkb3duLWNvbnRlbnQge1xuICBoZWlnaHQ6IDEzNXB4O1xufVxuLmxhYmVscy1zZWxlY3Qtd3JhcHBlciAubGFiZWxzLWZldGNoLWxvYWRpbmcge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDAuNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgei1pbmRleDogMTtcbn1cbi5sYWJlbHMtc2VsZWN0LXdyYXBwZXIgLmRyb3Bkb3duLWhlYWRlci1idXR0b24gLmdsLWljb24ge1xuICBjb2xvcjogI2JmYmZiZjtcbn1cbi5sYWJlbHMtc2VsZWN0LXdyYXBwZXIgLmRyb3Bkb3duLWhlYWRlci1idXR0b24gLmdsLWljb246aG92ZXIge1xuICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbn1cbi5sYWJlbHMtc2VsZWN0LXdyYXBwZXIgLmxhYmVsLWl0ZW0ge1xuICBwYWRkaW5nOiA4cHggMjBweDtcbn1cblxuLmJ1bGstdXBkYXRlIC5kcm9wZG93bi10b2dnbGUtdGV4dC5pcy1kZWZhdWx0IHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cblxuLmdsLWRyb3Bkb3duLXRleHQtcHktMCAuYi1kcm9wZG93bi10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4uZ2wtZHJvcGRvd24tdGV4dC1ibG9jayAuYi1kcm9wZG93bi10ZXh0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5nbC1kcm9wZG93biAuZ2wtZHJvcGRvd24tbWVudS13aWRlIHtcbiAgd2lkdGg6IDI1cmVtO1xufVxuXG4uZ2wtZHJvcGRvd24uZ2wtZHJvcGRvd24tbWVudS1mdWxsLXdpZHRoIC5kcm9wZG93bi1tZW51IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ncm91cC1uYW1lc3BhY2UtZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1jdXN0b20tdG9nZ2xlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogYXV0bztcbn1cbi5ncm91cC1uYW1lc3BhY2UtZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1jdXN0b20tdG9nZ2xlIC5nbC1idXR0b24tdGV4dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZ3JvdXAtbmFtZXNwYWNlLWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24taXRlbS10ZXh0LXdyYXBwZXIge1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xufVxuXG4vKipcbiAqIEZpbGUgY29udGVudCBob2xkZXJcbiAqXG4gKi9cbi5maWxlLWhvbGRlciB7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xufVxuLmZpbGUtaG9sZGVyLmZpbGUtaG9sZGVyLXRvcC1ib3JkZXIge1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNlY3Rpb247XG59XG4uZmlsZS1ob2xkZXIuZmlsZS1ob2xkZXItdG9wLWJvcmRlciAuZmlsZS10aXRsZSB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXQtbGc7XG59XG4uZmlsZS1ob2xkZXIucmVhZG1lLWhvbGRlciB7XG4gIG1hcmdpbjogMTZweCAwO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIEBhcHBseSBnbC1ib3JkZXItYi1zZWN0aW9uO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBpbmhlcml0O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogaW5oZXJpdDtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nOiAxMHB4IDE2cHg7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbi5maWxlLWhvbGRlciAuZmlsZS10aXRsZSAuZmlsZS1hY3Rpb25zIC5idG46bm90KC5idG4taWNvbikge1xuICBwYWRkaW5nOiAwIDEwcHg7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG4uZmlsZS1ob2xkZXIgLmZpbGUtdGl0bGUgYTpub3QoLmJ0bikge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWJsYW1lLWxlZ2VuZCAubGVmdC1sYWJlbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcbn1cbi5maWxlLWhvbGRlciAuZmlsZS1ibGFtZS1sZWdlbmQgLnJpZ2h0LWxhYmVsIHtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG59XG4uZmlsZS1ob2xkZXIgLmZpbGUtYmxhbWUtbGVnZW5kIC5sZWdlbmQtYm94IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTBweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICBwYWRkaW5nOiAwIDJweDtcbn1cbi5maWxlLWhvbGRlciAuZmlsZS1ibGFtZS1sZWdlbmQgLmxlZ2VuZC1ib3gtMCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMDM0NzA7XG59XG4uZmlsZS1ob2xkZXIgLmZpbGUtYmxhbWUtbGVnZW5kIC5sZWdlbmQtYm94LTEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzc0MjkxO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWJsYW1lLWxlZ2VuZCAubGVnZW5kLWJveC0yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNmNTFhZTtcbn1cbi5maWxlLWhvbGRlciAuZmlsZS1ibGFtZS1sZWdlbmQgLmxlZ2VuZC1ib3gtMyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0ZTY1Y2Q7XG59XG4uZmlsZS1ob2xkZXIgLmZpbGUtYmxhbWUtbGVnZW5kIC5sZWdlbmQtYm94LTQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjE3YWUyO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWJsYW1lLWxlZ2VuZCAubGVnZW5kLWJveC01IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc5OTJmNTtcbn1cbi5maWxlLWhvbGRlciAuZmlsZS1ibGFtZS1sZWdlbmQgLmxlZ2VuZC1ib3gtNiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5N2FjZmY7XG59XG4uZmlsZS1ob2xkZXIgLmZpbGUtYmxhbWUtbGVnZW5kIC5sZWdlbmQtYm94LTcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjdjNmZmO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWJsYW1lLWxlZ2VuZCAubGVnZW5kLWJveC04IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QyZGNmZjtcbn1cbi5maWxlLWhvbGRlciAuZmlsZS1ibGFtZS1sZWdlbmQgLmxlZ2VuZC1ib3gtOSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlOWViZmY7XG59XG4uZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5pbWFnZV9maWxlLCAuZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5hdWRpbywgLmZpbGUtaG9sZGVyIC5maWxlLWNvbnRlbnQudmlkZW8ge1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMwcHg7XG59XG4uZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5pbWFnZV9maWxlIGltZyxcbi5maWxlLWhvbGRlciAuZmlsZS1jb250ZW50LmltYWdlX2ZpbGUgYXVkaW8sXG4uZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5pbWFnZV9maWxlIHZpZGVvLCAuZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5hdWRpbyBpbWcsXG4uZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5hdWRpbyBhdWRpbyxcbi5maWxlLWhvbGRlciAuZmlsZS1jb250ZW50LmF1ZGlvIHZpZGVvLCAuZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC52aWRlbyBpbWcsXG4uZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC52aWRlbyBhdWRpbyxcbi5maWxlLWhvbGRlciAuZmlsZS1jb250ZW50LnZpZGVvIHZpZGVvIHtcbiAgbWF4LXdpZHRoOiA4MCU7XG59XG4uZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5tZCB7XG4gIHBhZGRpbmc6IDE2cHg7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5tZCB7XG4gICAgcGFkZGluZzogMzJweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZmlsZS1ob2xkZXIgLmZpbGUtY29udGVudC5tZCB7XG4gICAgcGFkZGluZzogMzJweDtcbiAgfVxufVxuLmZpbGUtaG9sZGVyIC5maWxlLWNvbnRlbnQuYmxvYi1uby1wcmV2aWV3IHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDJweCAjZmZmO1xuICBwYWRkaW5nOiAxMDBweCAwO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWNvbnRlbnQubG9ncyB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIG1heC1oZWlnaHQ6IDcwMHB4O1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWNvbnRlbnQubG9ncyBvbCB7XG4gIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtYm9yZGVyLWw7XG4gIEBhcHBseSBnbC1ib3JkZXItbC1zZWN0aW9uO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWNvbnRlbnQubG9ncyBvbCBsaSB7XG4gIGNvbG9yOiAjODg4O1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWNvbnRlbnQubG9ncyBvbCBsaSBwIHtcbiAgbWFyZ2luOiAwO1xuICBjb2xvcjogIzMzMztcbiAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cbi5maWxlLWhvbGRlciAuZmlsZS1jb250ZW50LmxvZ3Mgb2wgbGk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZThmMmZkO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWNvbnRlbnQgLmxpc3QtaW5saW5lLnByZXZpZXdzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xufVxuLmZpbGUtaG9sZGVyIC5maWxlLWNvbnRlbnQgLmxpc3QtaW5saW5lLnByZXZpZXdzIC5wcmV2aWV3IHtcbiAgcGFkZGluZzogMTZweDtcbn1cblxuc3Bhbi5pZGlmZi5sZWZ0IHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMnB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAycHg7XG59XG5zcGFuLmlkaWZmLnJpZ2h0IHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDJweDtcbn1cblxuLmZpbGUtc3RhdHMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDEwcHggMDtcbn1cbi5maWxlLXN0YXRzIHVsIGxpIHtcbiAgcGFkZGluZzogM3B4IDA7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xufVxuLmZpbGUtc3RhdHMgLm5ldy1maWxlIGEge1xuICBAYXBwbHkgZ2wtdGV4dC1zdWNjZXNzO1xufVxuLmZpbGUtc3RhdHMgLmRlbGV0ZWQtZmlsZSBhIHtcbiAgQGFwcGx5IGdsLXRleHQtZGFuZ2VyO1xufVxuLmZpbGUtc3RhdHMgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5maWxlLXN0YXRzIGEgLm5ldy1maWxlIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VjY2Vzcztcbn1cbi5maWxlLXN0YXRzIGEgLmRlbGV0ZWQtZmlsZSB7XG4gIGNvbG9yOiAjYWMyMDNhO1xufVxuXG4uZmlsZS10aXRsZS1mbGV4LXBhcmVudCwgLmZpbGUtaG9sZGVyIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgbWFyZ2luOiAwO1xuICBtaW4taGVpZ2h0OiAyLjYyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjVyZW0gLSAxcHgpIGNhbGMoMC41cmVtIC0gMXB4KSAwIDA7XG59XG4uc25pcHBldC1maWxlLWNvbnRlbnQgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQ6aGFzKGJ1dHRvblthcmlhLWV4cGFuZGVkPXRydWVdKSB7XG4gIHotaW5kZXg6IDU7XG59XG4uZmlsZS10aXRsZS1mbGV4LXBhcmVudCAuZmlsZS1oZWFkZXItY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG59XG4uZmlsZS10aXRsZS1mbGV4LXBhcmVudCBhIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cblxuLmlzLXN0bC1sb2FkaW5nIC5zdGwtY29udHJvbHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZmlsZS1mb3JrLXN1Z2dlc3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIEBhcHBseSBnbC1ib3JkZXItYi1zZWN0aW9uO1xuICBwYWRkaW5nOiA1cHggMTZweDtcbn1cblxuLmZpbGUtZm9yay1zdWdnZXN0aW9uLW5vdGUge1xuICBtYXJnaW4tcmlnaHQ6IDEuNWVtO1xufVxuXG4ucHJldmlldy1jb250YWluZXIgLmZpbGUtY29udGFpbmVyIHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnByZXZpZXctY29udGFpbmVyIC5maWxlLWNvbnRhaW5lciAuZmlsZS1jb250ZW50IHtcbiAgcGFkZGluZzogMTZweDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuLnByZXZpZXctY29udGFpbmVyIC5maWxlLWNvbnRhaW5lciAuZmlsZS1jb250ZW50IGltZyB7XG4gIG1heC13aWR0aDogOTAlO1xuICBtYXgtaGVpZ2h0OiA3MHZoO1xufVxuLnByZXZpZXctY29udGFpbmVyIC5maWxlLWNvbnRhaW5lciAuZmlsZS1pbmZvIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG4ucHJldmlldy1jb250YWluZXIgLm5vdGUtY29udGFpbmVyIC51c2VyLWF2YXRhci1saW5rLm5ldy1jb21tZW50IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnByZXZpZXctY29udGFpbmVyIC5kaWZmLWRpc2N1c3Npb25zOm5vdCg6bGFzdC1jaGlsZCkgLmRpc2N1c3Npb24gLmRpc2N1c3Npb24tYm9keSB7XG4gIHBhZGRpbmctYm90dG9tOiAxNnB4O1xufVxuLnByZXZpZXctY29udGFpbmVyIC5kaWZmLWRpc2N1c3Npb25zOm5vdCg6bGFzdC1jaGlsZCkgLmRpc2N1c3Npb24gLmRpc2N1c3Npb24tYm9keSAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIEBhcHBseSBnbC1ib3JkZXItYi1zdWJ0bGU7XG4gIEBhcHBseSBkYXJrOmdsLWJvcmRlci1iLXNlY3Rpb247XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4ucHJldmlldy1jb250YWluZXIgLm1kLXByZXZpZXdlciB7XG4gIHBhZGRpbmc6IDE2cHg7XG59XG5cbiNqcy1vcGVuYXBpLXZpZXdlciBwcmUudmVyc2lvbixcbiNqcy1vcGVuYXBpLXZpZXdlciBjb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogdHJhbnNwYXJlbnQ7XG59XG4uZ2wtZGFyayAjanMtb3BlbmFwaS12aWV3ZXIge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZmlsdGVyOiBpbnZlcnQoMSkgaHVlLXJvdGF0ZSgxODBkZWcpO1xufVxuXG4uY29kZS1uYXZpZ2F0aW9uLWxpbmU6aG92ZXIgLmNvZGUtbmF2aWdhdGlvbiB7XG4gIGJvcmRlci1ib3R0b206IDFweCAjYzFiZmJlIGRhc2hlZDtcbn1cbi5jb2RlLW5hdmlnYXRpb24tbGluZTpob3ZlciAuY29kZS1uYXZpZ2F0aW9uOmhvdmVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzE4MTcxZDtcbn1cblxuLmNvZGUtbmF2aWdhdGlvbi1wb3BvdmVyLnBvcG92ZXIge1xuICBtYXgtd2lkdGg6IG1pbigzNXJlbSwgMTAwdncgLSAzMnB4KTtcbn1cblxuLmNvZGUtbmF2aWdhdGlvbi1wb3BvdmVyLWNvbnRhaW5lciB7XG4gIG1heC1oZWlnaHQ6IDIwcmVtO1xufVxuXG4uY29kZS1uYXZpZ2F0aW9uLXBvcG92ZXIgLmNvZGUge1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgdGV4dC1pbmRlbnQ6IC0xcmVtO1xufVxuXG4udHJlZS1pdGVtLWxpbms6bm90KC5pcy1zdWJtb2R1bGUpIHNwYW4ge1xuICB6LWluZGV4OiAyO1xufVxuLnRyZWUtaXRlbS1saW5rOm5vdCguaXMtc3VibW9kdWxlKTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG5cbi52ZXJzaW9uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgd2lkdGg6IDFyZW07XG4gIGhlaWdodDogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhhODg4ODtcbiAgbWFzay1pbWFnZTogdXJsKFwiQGdpdGxhYi9zdmdzL2Rpc3QvaWNvbnMtc3RhY2tlZC5zdmcjZG9jLXZlcnNpb25zXCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG59XG4udmVyc2lvbi1saW5rOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzA1MDQwODtcbn1cblxuLmJsb2Itdmlld2VyW2RhdGEtbG9hZGluZ10gLmZpbGUtY29udGVudC5jb2RlIC5saW5lOm50aC1vZi10eXBlKDFuKzcwKTpub3QoOmxhc3Qtb2YtdHlwZSksXG4uYmxvYi12aWV3ZXJbZGF0YS1sb2FkaW5nXSAuZmlsZS1jb250ZW50LmNvZGUgLmZpbGUtbGluZS1udW06bnRoLW9mLXR5cGUoMW4rNzApOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmJsb2Itdmlld2VyW2RhdGEtbG9hZGluZ10gLmZpbGUtY29udGVudC5jb2RlIC5saW5lOm50aC1vZi10eXBlKDY5KTpub3QoOmxhc3Qtb2YtdHlwZSk6OmFmdGVyLFxuLmJsb2Itdmlld2VyW2RhdGEtbG9hZGluZ10gLmZpbGUtY29udGVudC5jb2RlIC5maWxlLWxpbmUtbnVtOm50aC1vZi10eXBlKDY5KTpub3QoOmxhc3Qtb2YtdHlwZSk6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbnRlbnQ6IFwi4oCmXCI7XG59XG5cbi5ibG9iLXZpZXdlcltkYXRhLWxvYWRpbmddIC5maWxlLWNvbnRlbnQuY29kZSAubGluZTpudGgtb2YtdHlwZSg2OSk6bm90KDpsYXN0LW9mLXR5cGUpOjphZnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZpbGUtaG9sZGVyIFtkYXRhLWxvYWRpbmddIC5maWxlLWNvbnRlbnQgKjpudGgtb2YtdHlwZSgxbiszMCkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubXItdHJlZS1saXN0IHtcbiAgLS1maWxlLXJvdy1sZXZlbC1wYWRkaW5nOiAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4taGVpZ2h0OiAwO1xuICBtYXgtaGVpZ2h0OiB2YXIoLS10cmVlLWxpc3QtbWF4LWhlaWdodCk7XG59XG4ubXItdHJlZS1saXN0IC52dWUtcmVjeWNsZS1zY3JvbGxlciB7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMDtcbiAgZmxleDogMTtcbn1cblxuLmRpZmZzLXRyZWUtZHJhd2VyIC5tci10cmVlLWxpc3Qge1xuICBtYXgtaGVpZ2h0OiBub25lO1xufVxuXG4ubXItdHJlZS1saXN0Om5vdCgudHJlZS1saXN0LWJsb2JzKSAudHJlZS1saXN0LXBhcmVudDo6YmVmb3JlLCAucmVwb3NpdG9yeS10cmVlLWxpc3QgLnRyZWUtbGlzdC1wYXJlbnQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTRweDtcbiAgd2lkdGg6IGNhbGModmFyKC0tbGV2ZWwpICogdmFyKC0tZmlsZS1yb3ctbGV2ZWwtcGFkZGluZykpO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpIDFweCwgdHJhbnNwYXJlbnQgMXB4KSByZXBlYXQteCAwL3ZhcigtLWZpbGUtcm93LWxldmVsLXBhZGRpbmcpIDEwMCU7XG59XG5cbi5ibGFtZS1hZ2UtaW5kaWNhdG9yIHtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1ibGFtZS1hZ2UtY29sb3IsIHRyYW5zcGFyZW50KTtcbn1cblxuLmNvZGUge1xuICBwYWRkaW5nOiAwO1xuICBAYXBwbHkgZ2wtcm91bmRlZC10LW5vbmU7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWItYmFzZTtcbn1cblxuLmZpbHRlci1pdGVtIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi5maWx0ZXItaXRlbS51cGRhdGUtaXNzdWVzLWJ0biB7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZmlsdGVyLWl0ZW0udXBkYXRlLWlzc3Vlcy1idG4ge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmZpbHRlci1pdGVtLnVwZGF0ZS1pc3N1ZXMtYnRuIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZmlsdGVyLWl0ZW06bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmJ1bGstdXBkYXRlIC5maWx0ZXItaXRlbSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5zb3J0LWZpbHRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZHJvcGRvd24tbWVudS1zb3J0IHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5maWx0ZXItaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuYnVsay11cGRhdGUgLmZpbHRlci1pdGVtIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnNvcnQtZmlsdGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kcm9wZG93bi1tZW51LXNvcnQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmZpbHRlci1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kcm9wZG93bi1tZW51LXRvZ2dsZS5kcm9wZG93bi1tZW51LXRvZ2dsZSxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnVwZGF0ZS1pc3N1ZXMtYnRuIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmZpbHRlci1pdGVtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kcm9wZG93bi1tZW51LXRvZ2dsZS5kcm9wZG93bi1tZW51LXRvZ2dsZSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnVwZGF0ZS1pc3N1ZXMtYnRuIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZmlsdGVyZWQtc2VhcmNoLXdyYXBwZXIgLnRva2Vucy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAxO1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgd2lkdGg6IDFweDtcbn1cbi5maWx0ZXJlZC1zZWFyY2gtd3JhcHBlciAuaW5wdXQtdG9rZW4ge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBwYWRkaW5nOiAwO1xufVxuLmZpbHRlcmVkLXNlYXJjaC13cmFwcGVyIC5pbnB1dC10b2tlbjpob3ZlciwgLmZpbHRlcmVkLXNlYXJjaC13cmFwcGVyIC5pbnB1dC10b2tlbjpmb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4uZmlsdGVyZWQtc2VhcmNoLXdyYXBwZXIgLmlucHV0LXRva2VuOm9ubHktY2hpbGQsXG4uZmlsdGVyZWQtc2VhcmNoLXdyYXBwZXIgLmlucHV0LXRva2VuOmxhc3QtY2hpbGQge1xuICBmbGV4OiAxO1xuICBtYXgtd2lkdGg6IGluaGVyaXQ7XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4sXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG59XG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuIC5zZWxlY3RhYmxlLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5zZWxlY3RhYmxlIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4gLm5hbWUsXG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuIC5vcGVyYXRvcixcbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4gLnZhbHVlLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5uYW1lLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5vcGVyYXRvcixcbi5maWx0ZXJlZC1zZWFyY2gtdGVybSAudmFsdWUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDJweCA3cHg7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xufVxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAubmFtZSxcbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4gLm9wZXJhdG9yLFxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAudmFsdWUtY29udGFpbmVyLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5uYW1lLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5vcGVyYXRvcixcbi5maWx0ZXJlZC1zZWFyY2gtdGVybSAudmFsdWUtY29udGFpbmVyIHtcbiAgY29sb3I6IHZhcigtLWdsLXRva2VuLWZvcmVncm91bmQtY29sb3IpO1xufVxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAubmFtZSxcbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4gLm9wZXJhdG9yLFxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAudmFsdWUtY29udGFpbmVyLFxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAudmFsdWUsXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0gLm5hbWUsXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0gLm9wZXJhdG9yLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC52YWx1ZS1jb250YWluZXIsXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0gLnZhbHVlIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgaGVpZ2h0OiAyNHB4O1xufVxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAubmFtZSxcbi5maWx0ZXJlZC1zZWFyY2gtdGVybSAubmFtZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi10eXBlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1yYWRpdXM6IDJweCAwIDAgMnB4O1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuIC5vcGVyYXRvcixcbi5maWx0ZXJlZC1zZWFyY2gtdGVybSAub3BlcmF0b3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tb3BlcmF0b3ItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuIC52YWx1ZS1jb250YWluZXIsXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0gLnZhbHVlLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1kYXRhLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1yYWRpdXM6IDAgMnB4IDJweCAwO1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgcGFkZGluZy1yaWdodDogNHB4O1xufVxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAudmFsdWUsXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0gLnZhbHVlIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4gLnJlbW92ZS10b2tlbixcbi5maWx0ZXJlZC1zZWFyY2gtdGVybSAucmVtb3ZlLXRva2VuIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuIC5yZW1vdmUtdG9rZW4gLmNsb3NlLWljb24sXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0gLnJlbW92ZS10b2tlbiAuY2xvc2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLXN1YnRsZSk7XG59XG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuIC5yZW1vdmUtdG9rZW46aG92ZXIgLmNsb3NlLWljb24sXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0gLnJlbW92ZS10b2tlbjpob3ZlciAuY2xvc2UtaWNvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLWRlZmF1bHQpO1xufVxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAucmVtb3ZlLXRva2VuLmludmVydGVkIC5jbG9zZS1pY29uLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5yZW1vdmUtdG9rZW4uaW52ZXJ0ZWQgLmNsb3NlLWljb24ge1xuICBjb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTtcbiAgb3BhY2l0eTogMC44NTtcbn1cbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4gLnJlbW92ZS10b2tlbi5pbnZlcnRlZDpob3ZlciAuY2xvc2UtaWNvbixcbi5maWx0ZXJlZC1zZWFyY2gtdGVybSAucmVtb3ZlLXRva2VuLmludmVydGVkOmhvdmVyIC5jbG9zZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW46aG92ZXIgLm5hbWUsXG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuIC5zZWxlY3RlZCAubmFtZSxcbi5maWx0ZXJlZC1zZWFyY2gtdGVybSAuc2VsZWN0ZWQgLm5hbWUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbn1cbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW46aG92ZXIgLm9wZXJhdG9yLFxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbiAuc2VsZWN0ZWQgLm9wZXJhdG9yLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5zZWxlY3RlZCAub3BlcmF0b3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tb3BlcmF0b3ItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG59XG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuOmhvdmVyIC52YWx1ZS1jb250YWluZXIsXG4uZmlsdGVyZWQtc2VhcmNoLXRva2VuIC5zZWxlY3RlZCAudmFsdWUtY29udGFpbmVyLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5zZWxlY3RlZCAudmFsdWUtY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtdGVybSAubmFtZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGNvbG9yOiB2YXIoLS1nbC10b2tlbi1mb3JlZ3JvdW5kLWNvbG9yKTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0gLnNlbGVjdGFibGUge1xuICBjdXJzb3I6IHRleHQ7XG59XG5cbi5zY3JvbGwtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtYm94IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWluLXdpZHRoOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLXJhZGl1cyk7XG59XG4uZmlsdGVyZWQtc2VhcmNoLWJveC5mb2N1cywgLmZpbHRlcmVkLXNlYXJjaC1ib3guZm9jdXM6aG92ZXIge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uZmlsdGVyZWQtc2VhcmNoLWJveCBnbC1lbW9qaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgdmVydGljYWwtYWxpZ246IGluaGVyaXQ7XG59XG4uZmlsdGVyZWQtc2VhcmNoLWJveCBnbC1lbW9qaSBpbWcge1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xufVxuLmZpbHRlcmVkLXNlYXJjaC1ib3ggLmZvcm0tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cbi5maWx0ZXJlZC1zZWFyY2gtYm94IC5mb3JtLWNvbnRyb2wsIC5maWx0ZXJlZC1zZWFyY2gtYm94IC5mb3JtLWNvbnRyb2w6Zm9jdXMtdmlzaWJsZSwgLmZpbHRlcmVkLXNlYXJjaC1ib3ggLmZvcm0tY29udHJvbDpob3ZlciB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtYm94LWlucHV0LWNvbnRhaW5lciB7XG4gIGZsZXg6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLXdpZHRoOiAwO1xuICBoZWlnaHQ6IDMwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmZpbHRlcmVkLXNlYXJjaC1pbnB1dC1kcm9wZG93bi1tZW51IHtcbiAgbWF4LWhlaWdodDogNDQ1cHg7XG4gIG1heC13aWR0aDogMjgwcHg7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZmlsdGVyZWQtc2VhcmNoLWlucHV0LWRyb3Bkb3duLW1lbnUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIG1pbi13aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5maWx0ZXJlZC1zZWFyY2gtaW5wdXQtZHJvcGRvd24tbWVudSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93bi13cmFwcGVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmZpbHRlcmVkLXNlYXJjaC1oaXN0b3J5LWRyb3Bkb3duLXRvZ2dsZS1idXR0b24uZ2wtYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYyh2YXIoLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXMpIC0gMXB4KSAwIDAgY2FsYyh2YXIoLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXMpIC0gMXB4KTtcbiAgbWFyZ2luOiAtMXB4IDAgLTFweCAtMXB4O1xuICBmbGV4OiAxO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGxpbmVhcjtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93biB7XG4gIHdpZHRoOiA0MCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93biB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZmlsdGVyZWQtc2VhcmNoLWhpc3RvcnktZHJvcGRvd24ge1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93bi1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogbm9uZTtcbn1cbi5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93bi1jb250ZW50IC5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93bi1pdGVtLFxuLmZpbHRlcmVkLXNlYXJjaC1oaXN0b3J5LWRyb3Bkb3duLWNvbnRlbnQgLmZpbHRlcmVkLXNlYXJjaC1oaXN0b3J5LWNsZWFyLWJ1dHRvbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuXG4uZmlsdGVyZWQtc2VhcmNoLWhpc3RvcnktZHJvcGRvd24tdG9rZW4ge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG4uZmlsdGVyZWQtc2VhcmNoLWhpc3RvcnktZHJvcGRvd24tdG9rZW46bm90KDpsYXN0LWNoaWxkKSB7XG4gIG1hcmdpbi1yaWdodDogMC4zZW07XG59XG4uZmlsdGVyZWQtc2VhcmNoLWhpc3RvcnktZHJvcGRvd24tdG9rZW4gPiAudmFsdWUge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uaXNzdWVzLWRldGFpbHMtZmlsdGVycyxcbi5lcGljcy1kZXRhaWxzLWZpbHRlcnMge1xuICBAYXBwbHkgZ2wtcHQtMztcbiAgQGFwcGx5IGdsLXB4LVstLWNvbnRhaW5lci1wYWRkaW5nLXhdO1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmlzc3Vlcy1kZXRhaWxzLWZpbHRlcnMsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5lcGljcy1kZXRhaWxzLWZpbHRlcnMge1xuICAgIEBhcHBseSBnbC1weS0zO1xuICAgIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5maWx0ZXItZHJvcGRvd24tY29udGFpbmVyID4gZGl2IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmZpbHRlci1kcm9wZG93bi1jb250YWluZXIgPiBkaXYgPiAuYnRuIHtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmlzc3Vlcy1kZXRhaWxzLWZpbHRlcnMsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5lcGljcy1kZXRhaWxzLWZpbHRlcnMge1xuICAgIEBhcHBseSBnbC1weS0zO1xuICAgIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5maWx0ZXItZHJvcGRvd24tY29udGFpbmVyID4gZGl2IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmZpbHRlci1kcm9wZG93bi1jb250YWluZXIgPiBkaXYgPiAuYnRuIHtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZHJvcGxhYi1kcm9wZG93biAuZHJvcGRvd24tbWVudSAuZmlsdGVyLWRyb3Bkb3duLWl0ZW0gLmJ0biB7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLmRyb3BsYWItZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmZpbHRlci1kcm9wZG93bi1pdGVtIC5idG4gc3ZnIHtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG4uZHJvcGxhYi1kcm9wZG93biAuZHJvcGRvd24tbWVudSAuZmlsdGVyLWRyb3Bkb3duLWl0ZW0gLmJ0biAuZHJvcGRvd24tbGFiZWwtYm94IHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDFweDtcbiAgd2lkdGg6IDE3cHg7XG4gIGhlaWdodDogMTdweDtcbiAgdG9wOiAwO1xufVxuXG4uZmlsdGVyLWRyb3Bkb3duLWxvYWRpbmcge1xuICBwYWRkaW5nOiA4cHggMTZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udnVlLWZpbHRlcmVkLXNlYXJjaC1iYXItY29udGFpbmVyIC5nbC1zZWFyY2gtYm94LWJ5LWNsaWNrIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnZ1ZS1maWx0ZXJlZC1zZWFyY2gtYmFyLWNvbnRhaW5lciAuc29ydC1kcm9wZG93bi1jb250YWluZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC52dWUtZmlsdGVyZWQtc2VhcmNoLWJhci1jb250YWluZXIgLnNvcnQtZHJvcGRvd24tY29udGFpbmVyIHtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgfVxufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudnVlLWZpbHRlcmVkLXNlYXJjaC1iYXItY29udGFpbmVyIC5zb3J0LWRyb3Bkb3duLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC52dWUtZmlsdGVyZWQtc2VhcmNoLWJhci1jb250YWluZXIgLnNvcnQtZHJvcGRvd24tY29udGFpbmVyIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG59XG5cbi5mbGFzaC1jb250YWluZXIge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG59XG4uZmxhc2gtY29udGFpbmVyLnN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbiAgei1pbmRleDogMjUxO1xufVxuLmZsYXNoLWNvbnRhaW5lci5mbGFzaC1jb250YWluZXItcGFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZmxhc2gtY29udGFpbmVyOmVtcHR5IHtcbiAgbWFyZ2luOiAwO1xufVxuLmZsYXNoLWNvbnRhaW5lcjpoYXMoLmdsLWFsZXJ0KSB7XG4gIEBhcHBseSBnbC1tdC0zO1xufVxuLmZsYXNoLWNvbnRhaW5lciAuZmxhc2gtYWxlcnQ6bm90KC5nbC1hbGVydCksXG4uZmxhc2gtY29udGFpbmVyIC5mbGFzaC1ub3RpY2U6bm90KC5nbC1hbGVydCksXG4uZmxhc2gtY29udGFpbmVyIC5mbGFzaC1zdWNjZXNzOm5vdCguZ2wtYWxlcnQpLFxuLmZsYXNoLWNvbnRhaW5lciAuZmxhc2gtd2FybmluZzpub3QoLmdsLWFsZXJ0KSB7XG4gIHBhZGRpbmc6IDE2cHggMzJweCAxNnB4IDIwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG59XG4uZmxhc2gtY29udGFpbmVyIC5mbGFzaC1hbGVydDpub3QoLmdsLWFsZXJ0KSAuY29udGFpbmVyLWZsdWlkLCAuZmxhc2gtY29udGFpbmVyIC5mbGFzaC1hbGVydDpub3QoLmdsLWFsZXJ0KSAuY29udGFpbmVyLXNtLCAuZmxhc2gtY29udGFpbmVyIC5mbGFzaC1hbGVydDpub3QoLmdsLWFsZXJ0KSAuY29udGFpbmVyLW1kLCAuZmxhc2gtY29udGFpbmVyIC5mbGFzaC1hbGVydDpub3QoLmdsLWFsZXJ0KSAuY29udGFpbmVyLWxnLCAuZmxhc2gtY29udGFpbmVyIC5mbGFzaC1hbGVydDpub3QoLmdsLWFsZXJ0KSAuY29udGFpbmVyLXhsLFxuLmZsYXNoLWNvbnRhaW5lciAuZmxhc2gtYWxlcnQ6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1mbHVpZC5jb250YWluZXItbGltaXRlZCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLW5vdGljZTpub3QoLmdsLWFsZXJ0KSAuY29udGFpbmVyLWZsdWlkLFxuLmZsYXNoLWNvbnRhaW5lciAuZmxhc2gtbm90aWNlOm5vdCguZ2wtYWxlcnQpIC5jb250YWluZXItc20sXG4uZmxhc2gtY29udGFpbmVyIC5mbGFzaC1ub3RpY2U6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1tZCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLW5vdGljZTpub3QoLmdsLWFsZXJ0KSAuY29udGFpbmVyLWxnLFxuLmZsYXNoLWNvbnRhaW5lciAuZmxhc2gtbm90aWNlOm5vdCguZ2wtYWxlcnQpIC5jb250YWluZXIteGwsXG4uZmxhc2gtY29udGFpbmVyIC5mbGFzaC1ub3RpY2U6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1mbHVpZC5jb250YWluZXItbGltaXRlZCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXN1Y2Nlc3M6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1mbHVpZCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXN1Y2Nlc3M6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1zbSxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXN1Y2Nlc3M6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1tZCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXN1Y2Nlc3M6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1sZyxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXN1Y2Nlc3M6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci14bCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXN1Y2Nlc3M6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1mbHVpZC5jb250YWluZXItbGltaXRlZCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXdhcm5pbmc6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1mbHVpZCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXdhcm5pbmc6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1zbSxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXdhcm5pbmc6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1tZCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXdhcm5pbmc6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1sZyxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXdhcm5pbmc6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci14bCxcbi5mbGFzaC1jb250YWluZXIgLmZsYXNoLXdhcm5pbmc6bm90KC5nbC1hbGVydCkgLmNvbnRhaW5lci1mbHVpZC5jb250YWluZXItbGltaXRlZCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLmZsYXNoLWNvbnRhaW5lci5mbGFzaC1jb250YWluZXItbm8tbWFyZ2luIC5nbC1hbGVydCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZmxhc2gtY29udGFpbmVyLmZsYXNoLWNvbnRhaW5lci1uby1tYXJnaW4gLmZsYXNoLWFsZXJ0LFxuLmZsYXNoLWNvbnRhaW5lci5mbGFzaC1jb250YWluZXItbm8tbWFyZ2luIC5mbGFzaC1ub3RpY2UsXG4uZmxhc2gtY29udGFpbmVyLmZsYXNoLWNvbnRhaW5lci1uby1tYXJnaW4gLmZsYXNoLXN1Y2Nlc3MsXG4uZmxhc2gtY29udGFpbmVyLmZsYXNoLWNvbnRhaW5lci1uby1tYXJnaW4gLmZsYXNoLXdhcm5pbmcge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uZ2wtYnJvd3Nlci1pZSAuZmxhc2gtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBtYXgtd2lkdGg6IDEwMDZweDtcbiAgbGVmdDogNTAlO1xufVxuLmdsLWJyb3dzZXItaWUgLmZsYXNoLWNvbnRhaW5lciAuZmxhc2gtYWxlcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7XG59XG5cbnRleHRhcmVhIHtcbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuaW5wdXQge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG5cbmlucHV0W3R5cGU9dGV4dF0uZGFuZ2VyIHtcbiAgYmFja2dyb3VuZDogI2YyZGVkZSAhaW1wb3J0YW50O1xuICBib3JkZXItY29sb3I6ICNmMTUxNjg7XG4gIHRleHQtc2hhZG93OiAwIDFweCAxcHggI2ZmZjtcbn1cblxuLyoqXG4gKiBXaGVuIGZvcm0gaW5wdXQgdHlwZSBpcyBzZWFyY2gsIGJyb3dzZXJzIGFkZCBhIGNsZWFyIGlucHV0IGJ1dHRvbiBpbnNpZGVcbiAqIHRoZSBpbnB1dCBmaWVsZC4gVGhpcyBvdmVybGFwcyB3aXRoIHRoZSBpbnB1dCBmaWVsZCB3ZSBoYXZlIGFscmVhZHkgYWRkZWQuXG4gKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbmlucHV0W3R5cGU9c2VhcmNoXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDtcbiAgYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuaW5wdXRbdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLCBpbnB1dFt0eXBlPXNlYXJjaF06Oi13ZWJraXQtc2VhcmNoLXJlc3VsdHMtYnV0dG9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogc3R5bGVsaW50LWVuYWJsZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4ICovXG4uZm9ybS1hY3Rpb25zIHtcbiAgQGFwcGx5IGdsLW10LTA7XG4gIEBhcHBseSAtZ2wtbWItNTtcbiAgQGFwcGx5IGdsLXAtNTtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xufVxuXG5sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5sYWJlbC5pbmxpbmUtbGFiZWwge1xuICBtYXJnaW46IDA7XG59XG5sYWJlbC5mb3JtLWNoZWNrLWxhYmVsLCBsYWJlbC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5sYWJlbC5sYWJlbC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmN1c3RvbS1mb3JtLWNvbnRyb2wge1xuICB3aWR0aDogMTUwcHg7XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jdXN0b20tZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTUwcHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmN1c3RvbS1mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAxNTBweDtcbiAgfVxufVxuLyogTWVkaXVtIGRldmljZXMgKGRlc2t0b3BzLCA5OTJweCBhbmQgdXApICovXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3VzdG9tLWZvcm0tY29udHJvbCB7XG4gICAgd2lkdGg6IDE3MHB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jdXN0b20tZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTcwcHg7XG4gIH1cbn1cbi8qIExhcmdlIGRldmljZXMgKGxhcmdlIGRlc2t0b3BzLCAxMjAwcHggYW5kIHVwKSAqL1xuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmN1c3RvbS1mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3VzdG9tLWZvcm0tY29udHJvbCB7XG4gICAgd2lkdGg6IDIwMHB4O1xuICB9XG59XG4uaGVscC1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5oZWxwLWZvcm0gLmZvcm0tZ3JvdXAgLmZvcm0tY29udHJvbCB7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LW1vbm8tZm9udCwgXCJHaXRMYWIgTW9ub1wiKSwgXCJKZXRCcmFpbnMgTW9ub1wiLCBcIk1lbmxvXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvbnNvbGFzXCIsIFwiVWJ1bnR1IE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBcImFuZGFsZSBtb25vXCIsIFwibHVjaWRhIGNvbnNvbGVcIiwgbW9ub3NwYWNlO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuaGVscC1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgICBwYWRkaW5nOiAwIDE2cHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuaGVscC1mb3JtIC5mb3JtLWdyb3VwIHtcbiAgICBwYWRkaW5nOiAwIDE2cHg7XG4gIH1cbn1cblxuLmZpZWxkc2V0LWZvcm0gZmllbGRzZXQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXMpO1xuICBwYWRkaW5nOiA2cHggMTBweDtcbn1cbi5mb3JtLWNvbnRyb2wuaW5wdXQtc2hvcnQge1xuICB3aWR0aDogMjAwcHg7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZm9ybS1jb250cm9sLmlucHV0LXNob3J0IHtcbiAgICB3aWR0aDogMjgwcHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmZvcm0tY29udHJvbC5pbnB1dC1zaG9ydCB7XG4gICAgd2lkdGg6IDI4MHB4O1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2w6Zm9jdXMtdmlzaWJsZSxcbltjb250ZW50ZWRpdGFibGU9dHJ1ZV06Zm9jdXMtdmlzaWJsZSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuXG4uc2VsZWN0LWNvbnRyb2wge1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC8qIHN0eWxlbGludC1lbmFibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xufVxuLnNlbGVjdC1jb250cm9sOjotbXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZvcm0tY29udHJvbDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcik7XG59XG5cbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG5cbi5mb3JtLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuLmZvcm0tdGV4dCAuaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uZ2wtZmllbGQtZXJyb3IsXG4uaW52YWxpZC1mZWVkYmFjayB7XG4gIEBhcHBseSBnbC10ZXh0LWRhbmdlcjtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuXG4uZ2wtc2hvdy1maWVsZC1lcnJvcnMgLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpIHtcbiAgaGVpZ2h0OiAzMnB4O1xufVxuLmdsLXNob3ctZmllbGQtZXJyb3JzIC5nbC1maWVsZC1zdWNjZXNzLW91dGxpbmUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMGM3MjY1O1xufVxuLmdsLXNob3ctZmllbGQtZXJyb3JzIC5nbC1maWVsZC1zdWNjZXNzLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjMGM3MjY1IGluc2V0LCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSkgaW5zZXQsIDAgMCA0cHggMCAjMGM3MjY1O1xuICBib3JkZXI6IDAgbm9uZTtcbn1cbi5nbC1zaG93LWZpZWxkLWVycm9ycyAuZ2wtZmllbGQtZXJyb3Itb3V0bGluZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZTFkNGI7XG59XG4uZ2wtc2hvdy1maWVsZC1lcnJvcnMgLmdsLWZpZWxkLWVycm9yLW91dGxpbmU6Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCAjZGUxZDRiIGluc2V0LCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSkgaW5zZXQsIDAgMCA0cHggMCByZ2JhKDIyMiwgMjksIDc1LCAwLjYpO1xuICBib3JkZXI6IDAgbm9uZTtcbn1cbi5nbC1zaG93LWZpZWxkLWVycm9ycyAuZ2wtZmllbGQtc3VjY2Vzcy1tZXNzYWdlIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VjY2Vzcztcbn1cbi5nbC1zaG93LWZpZWxkLWVycm9ycyAuZ2wtZmllbGQtZXJyb3ItbWVzc2FnZSB7XG4gIEBhcHBseSBnbC10ZXh0LWRhbmdlcjtcbn1cblxuLnNob3ctcGFzc3dvcmQtY29tcGxleGl0eS1lcnJvcnMgLmZvcm0tY29udHJvbDpub3QodGV4dGFyZWEpIHtcbiAgaGVpZ2h0OiAzMnB4O1xufVxuLnNob3ctcGFzc3dvcmQtY29tcGxleGl0eS1lcnJvcnMgLnBhc3N3b3JkLWNvbXBsZXhpdHktZXJyb3Itb3V0bGluZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkZTFkNGI7XG59XG4uc2hvdy1wYXNzd29yZC1jb21wbGV4aXR5LWVycm9ycyAucGFzc3dvcmQtY29tcGxleGl0eS1lcnJvci1vdXRsaW5lOmZvY3VzLXZpc2libGUge1xuICBib3gtc2hhZG93OiAwIDAgMCAxcHggI2RlMWQ0YiBpbnNldCwgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgMC4wNzUpIGluc2V0LCAwIDAgNHB4IDAgcmdiYSgyMjIsIDI5LCA3NSwgMC42KTtcbiAgYm9yZGVyOiAwIG5vbmU7XG59XG5cbi5zZWxlY3Qtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmlucHV0LWxnIHtcbiAgbWF4LXdpZHRoOiAzMjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5pbnB1dC1ncm91cC10ZXh0IHtcbiAgbWF4LWhlaWdodDogMzJweDtcbn1cblxuLmFkZC1pc3N1YWJsZS1mb3JtLWlucHV0LXdyYXBwZXIuZm9jdXMge1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWZvY3VzKTtcbn1cbi5nbC1zaG93LWZpZWxkLWVycm9ycyAuYWRkLWlzc3VhYmxlLWZvcm0taW5wdXQtd3JhcHBlci5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLmFkZC1pc3N1YWJsZS1mb3JtLWlucHV0LXdyYXBwZXIuZm9jdXMsXG4uaXNzdWUtdG9rZW4tcmVtb3ZlLWJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuXG4vKipcbiAqIFN0eWxlcyB0aGF0IGFwcGx5IHRvIGFsbCBHRk0gcmVsYXRlZCBmb3Jtcy5cbiAqL1xuLmdmbS1jb21taXQsXG4uZ2ZtLWNvbW1pdF9yYW5nZSB7XG4gIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiA5NSU7XG59XG5cbi5nZm0tcHJvamVjdF9tZW1iZXIuZ2ZtLXByb2plY3RfbWVtYmVyLFxuLm1kIGEuZ2ZtLXByb2plY3RfbWVtYmVyIHtcbiAgcGFkZGluZzogMCAycHg7XG4gIGNvbG9yOiB2YXIoLS1nbC1saW5rLW1lbnRpb24tdGV4dC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbGluay1tZW50aW9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4uZ2ZtLXByb2plY3RfbWVtYmVyLmdmbS1wcm9qZWN0X21lbWJlci5jdXJyZW50LXVzZXIsXG4ubWQgYS5nZm0tcHJvamVjdF9tZW1iZXIuY3VycmVudC11c2VyIHtcbiAgY29sb3I6IHZhcigtLWdsLWxpbmstbWVudGlvbi10ZXh0LWNvbG9yLWN1cnJlbnQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1saW5rLW1lbnRpb24tYmFja2dyb3VuZC1jb2xvci1jdXJyZW50KTtcbn1cblxuLmdmbS1jb2xvcl9jaGlwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwIDAgMnB4IDRweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICB3aWR0aDogMC45ZW07XG4gIGhlaWdodDogMC45ZW07XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNkY2RiZDkgMjUlLCB0cmFuc3BhcmVudCAwJSwgdHJhbnNwYXJlbnQgNzUlLCAjZGNkYmQ5IDAlKSwgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2RjZGJkOSAyNSUsIHRyYW5zcGFyZW50IDAlLCB0cmFuc3BhcmVudCA3NSUsICNkY2RiZDkgMCUpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDFlbSAxZW07XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDAgMCwgMC41ZW0gMC41ZW07XG59XG4uZ2ZtLWNvbG9yX2NoaXAgPiBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNvbGlkO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWFscGhhLWRhcmstMjQ7XG59XG5cbi8qXG4gKiBNQVJLRE9XTiBBTEVSVFMgLSBUaGVzZSBhcmUgY29tcGxldGVseSBzZXBhcmF0ZSBmcm9tIG91ciBBbGVydCBjb21wb25lbnQuXG4gKiBUaGVzZSBhcmUgdXNlci1nZW5lcmF0ZWQgY29udGVudCwgZm9ybWF0dGVkIGxpa2U6XG4gKiA+IFshbm90ZV1cbiAqID4gSGlnaGxpZ2h0cyBpbmZvcm1hdGlvbiB0aGF0IHVzZXJzIHNob3VsZCB0YWtlIGludG8gYWNjb3VudCwgZXZlbiB3aGVuIHNraW1taW5nLlxuICovXG4ubWQgLm1hcmtkb3duLWFsZXJ0IHtcbiAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWwtNDtcbiAgQGFwcGx5IGdsLWJvcmRlci1sLXNvbGlkO1xuICBAYXBwbHkgZ2wtcGwtNDtcbiAgQGFwcGx5IGdsLXB5LTI7XG4gIEBhcHBseSBnbC1teS01O1xuICBAYXBwbHkgZ2wtbXgtMDtcbn1cbi5tZCAubWFya2Rvd24tYWxlcnQgLm1hcmtkb3duLWFsZXJ0LXRpdGxlIHtcbiAgQGFwcGx5IGdsLWhlYWRpbmctNDtcbiAgQGFwcGx5IGdsLW1iLTI7XG59XG4ubWQgLm1hcmtkb3duLWFsZXJ0ID4gKjpsYXN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLW1iLTA7XG59XG4ubWQgLm1hcmtkb3duLWFsZXJ0Lm1hcmtkb3duLWFsZXJ0LW5vdGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8taWNvbi1jb2xvcik7XG59XG4ubWQgLm1hcmtkb3duLWFsZXJ0Lm1hcmtkb3duLWFsZXJ0LW5vdGUgLm1hcmtkb3duLWFsZXJ0LXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8tdGV4dC1jb2xvcik7XG59XG4ubWQgLm1hcmtkb3duLWFsZXJ0Lm1hcmtkb3duLWFsZXJ0LXRpcCB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stc3VjY2Vzcy1pY29uLWNvbG9yKTtcbn1cbi5tZCAubWFya2Rvd24tYWxlcnQubWFya2Rvd24tYWxlcnQtdGlwIC5tYXJrZG93bi1hbGVydC10aXRsZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1zdWNjZXNzLXRleHQtY29sb3IpO1xufVxuLm1kIC5tYXJrZG93bi1hbGVydC5tYXJrZG93bi1hbGVydC1pbXBvcnRhbnQge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXB1cnBsZS02MDA7XG59XG4ubWQgLm1hcmtkb3duLWFsZXJ0Lm1hcmtkb3duLWFsZXJ0LWltcG9ydGFudCAubWFya2Rvd24tYWxlcnQtdGl0bGUge1xuICBAYXBwbHkgZ2wtdGV4dC1wdXJwbGUtNzAwO1xufVxuLm1kIC5tYXJrZG93bi1hbGVydC5tYXJrZG93bi1hbGVydC13YXJuaW5nIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1kYW5nZXItaWNvbi1jb2xvcik7XG59XG4ubWQgLm1hcmtkb3duLWFsZXJ0Lm1hcmtkb3duLWFsZXJ0LXdhcm5pbmcgLm1hcmtkb3duLWFsZXJ0LXRpdGxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci10ZXh0LWNvbG9yKTtcbn1cbi5tZCAubWFya2Rvd24tYWxlcnQubWFya2Rvd24tYWxlcnQtY2F1dGlvbiB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1pY29uLWNvbG9yKTtcbn1cbi5tZCAubWFya2Rvd24tYWxlcnQubWFya2Rvd24tYWxlcnQtY2F1dGlvbiAubWFya2Rvd24tYWxlcnQtdGl0bGUge1xuICBjb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy10ZXh0LWNvbG9yKTtcbn1cblxua2JkIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLXN0cm9uZztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAzcHggNXB4O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdW5zZXQ7XG4gIGJvcmRlci1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIC0xcHggMCB2YXIoLS1nbC1ib3JkZXItY29sb3Itc3Ryb25nKSBpbnNldDtcbn1cbmtiZC5mbGF0IHtcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXN0cm9uZztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWRlZmF1bHQtbW9uby1mb250LCBcIkdpdExhYiBNb25vXCIpLCBcIkpldEJyYWlucyBNb25vXCIsIFwiTWVubG9cIiwgXCJEZWphVnUgU2FucyBNb25vXCIsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ29uc29sYXNcIiwgXCJVYnVudHUgTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIFwiYW5kYWxlIG1vbm9cIiwgXCJsdWNpZGEgY29uc29sZVwiLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBrZWVwLWFsbDtcbn1cblxuLm5hdmJhci1lbXB0eSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBoZWlnaHQ6IHZhcigtLWhlYWRlci1oZWlnaHQpO1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLm5hdmJhci1lbXB0eSAudGFudWtpLWxvZ28sXG4ubmF2YmFyLWVtcHR5IC5icmFuZC1oZWFkZXItbG9nbyB7XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG5cbi5zZXQtdXNlci1zdGF0dXMtbW9kYWwgLm1vZGFsLWJvZHkge1xuICBtaW4taGVpZ2h0OiB1bnNldDtcbn1cbi5zZXQtdXNlci1zdGF0dXMtbW9kYWwgLmlucHV0LWxnIHtcbiAgbWF4LXdpZHRoOiB1bnNldDtcbn1cbi5zZXQtdXNlci1zdGF0dXMtbW9kYWwgLmVtb2ppLW1lbnUtdG9nZ2xlLWJ1dHRvbiB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAwO1xuICBtaW4td2lkdGg6IDE2cHg7XG59XG4uc2V0LXVzZXItc3RhdHVzLW1vZGFsIC5lbW9qaS1tZW51LXRvZ2dsZS1idXR0b24gLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSxcbi5zZXQtdXNlci1zdGF0dXMtbW9kYWwgLmVtb2ppLW1lbnUtdG9nZ2xlLWJ1dHRvbiAuYXdhcmQtY29udHJvbC1pY29uLXN1cGVyLXBvc2l0aXZlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIG9wYWNpdHk6IDA7XG59XG4uc2V0LXVzZXItc3RhdHVzLW1vZGFsIC5lbW9qaS1tZW51LXRvZ2dsZS1idXR0b246aG92ZXIgLmF3YXJkLWNvbnRyb2wtaWNvbi1uZXV0cmFsLCAuc2V0LXVzZXItc3RhdHVzLW1vZGFsIC5lbW9qaS1tZW51LXRvZ2dsZS1idXR0b24uaXMtYWN0aXZlIC5hd2FyZC1jb250cm9sLWljb24tbmV1dHJhbCB7XG4gIG9wYWNpdHk6IDA7XG59XG4uc2V0LXVzZXItc3RhdHVzLW1vZGFsIC5lbW9qaS1tZW51LXRvZ2dsZS1idXR0b246aG92ZXIgLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSwgLnNldC11c2VyLXN0YXR1cy1tb2RhbCAuZW1vamktbWVudS10b2dnbGUtYnV0dG9uLmlzLWFjdGl2ZSAuYXdhcmQtY29udHJvbC1pY29uLXBvc2l0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5zZXQtdXNlci1zdGF0dXMtbW9kYWwgLmVtb2ppLW1lbnUtdG9nZ2xlLWJ1dHRvbi5pcy1hY3RpdmUgLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG4uc2V0LXVzZXItc3RhdHVzLW1vZGFsIC5lbW9qaS1tZW51LXRvZ2dsZS1idXR0b24uaXMtYWN0aXZlIC5hd2FyZC1jb250cm9sLWljb24tc3VwZXItcG9zaXRpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuLnNldC11c2VyLXN0YXR1cy1tb2RhbCAuZW1vamktbWVudS10b2dnbGUtYnV0dG9uIHtcbiAgcGFkZGluZzogNnB4IDEwcHg7XG59XG4uc2V0LXVzZXItc3RhdHVzLW1vZGFsIC5pbnB1dC1ncm91cCxcbi5zZXQtdXNlci1zdGF0dXMtbW9kYWwgLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLnNldC11c2VyLXN0YXR1cy1tb2RhbCAuaW5wdXQtZ3JvdXAgLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGhlaWdodDogMzJweDtcbn1cblxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAubmF2LWxpbmtzID4gbGkgPiBhIC5iYWRnZS5iYWRnZS1waWxsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLm5hdi1saW5rcyA+IGxpID4gYSAuYmFkZ2UuYmFkZ2UtcGlsbCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAubmF2LWxpbmtzID4gbGkgPiBhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5uYXYtbGlua3MgPiBsaSA+IGEge1xuICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICB9XG59XG5cbi50b3AtYXBwLWhlYWRlciB7XG4gIHRvcDogY2FsYyhjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2FsYyh2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSkpICsgdmFyKC0tdG9wLWJhci1oZWlnaHQpKTtcbn1cblxuLypcbiogU0FTUyBwcmVzZXJ2ZXMgdW5pdHMgaW4gYXJpdGhtZXRpYyBvcGVyYXRpb25zLiBGb3IgZXhhbXBsZTpcbiogMTJlbSAqIDAgPSAwZW0uIFRoaXMgZnVuY3Rpb24gcmV0dXJuIHRoZSB1bml0IG9mIGEgbnVtZXJpYyB2YWx1ZS5cbipcbiogRm9yIG1vcmUgZXhhbXBsZXMsIHNlZTogaHR0cHM6Ly9jb2RlcGVuLmlvL3BhdWxndi9wZW4vWFdycU1nUVxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZW5hYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLypcbiAqIExheW91dFxuICovXG4vKipcbiAg8J+aqCBEbyBub3QgdXNlIHRoaXMgc3BhY2luZyBzY2FsZSDigJQgaXQgaXMgZGVwcmVjYXRlZCBhbmQgYmVpbmcgcmVtb3ZlZC4g8J+aqFxuICBTZWUgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiL2lzc3Vlcy8zNjg1NyBmb3IgbW9yZSBkZXRhaWxzLlxuXG4gIEluc3RlYWQsIGlmIHlvdSBuZWVkIGEgc3BhY2luZyBjbGFzcywgYWRkIGl0IHRvIGFwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2NvbW1vbi5zY3NzLFxuICB1c2luZyB0aGUgZm9sbG93aW5nIHZhbHVlcy5cblxuICAgICRnbC1zcGFjaW5nLXNjYWxlLTA6IDA7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTogMnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTI6IDRweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0zOiA4cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNDogMTJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS01OiAxNnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTY6IDI0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNzogMzJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS04OiA0MHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTk6IDQ4cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTA6IDU2cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTE6IDY0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTI6IDgwcHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTM6IDk2cHg7XG5cbiAgRS5nLiwgYSBwYWRkaW5nIHRvcCBvZiA5NnB4IGNhbiBiZSBhZGRlZCB1c2luZzpcbiAgLmdsLXNoaW0tcHQtMTMge1xuICAgIHBhZGRpbmctdG9wOiA5NnB4O1xuICB9XG5cbiAgUGxlYXNlIHVzZSAtc2hpbS0gc28gaXQgY2FuIGJlIGRpZmZlcmVudGlhdGVkIGZyb20gdGhlIG9sZCBzY2FsZSBjbGFzc2VzLlxuXG4gIFRoZXNlIHdpbGwgYmUgcmVwbGFjZWQgd2hlbiB0aGUgR2l0bGFiIFVJIHV0aWxpdGllcyBhcmUgaW5jbHVkZWQuXG4qKi9cbi8qIFdpbGwgYmUgbW92ZWQgdG8gQGdpdGxhYi91aSBieSBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWItc2VydmljZXMvZGVzaWduLmdpdGxhYi5jb20vLS9pc3N1ZXMvMjc5MiAqL1xuLyogRW5kIGdpdGxhYi11aSMxNzA5ICovXG4vKlxuICogVGV4dFxuICovXG4vKlxuICogTGlzdHNcbiAqL1xuLypcbiAqIENvZGVcbiAqL1xuLypcbiAqIFRvb2x0aXBzXG4gKi9cbi8qXG4gKiBQYWRkaW5nXG4gKi9cbi8qXG4gKiBNaXNjXG4gKi9cbi8qXG4gKiBNZXJnZSByZXF1ZXN0c1xuICovXG4vKlxuICogQ2FsY3VsYXRlZCBoZWlnaHRzXG4gKi9cbi8qIHRhbnVraSBsb2dvIGNvbG9ycyAqL1xuLypcbiAqIFN0YXRlIGNvbG9yczpcbiAqL1xuLypcbiAqIENvbW1pdCBEaWZmIENvbG9yc1xuICovXG4vKlxuICogVGhlIHRyYW5zcGFyZW50IGNvbG9ycyBhcmUgdXNlZCBpbiBNb25hY28gZWRpdG9yLiBVc2luZyBmdWxsIG9wYWNpdHkgY29sb3JzXG4gKiB3b3VsZCBoaWRlIG90aGVyIGxheWVycyAoc2VsZWN0ZWQgdGV4dCwgbWF0Y2hpbmcgYnJhY2tldHMpLlxuICpcbiAqIFdoZW4gdGhlIHRyYW5zcGFyZW50IGNvbG9ycyBnZXQgbGF5ZXJlZCBvbiB3aGl0ZSBiYWNrZ3JvdW5kLCB0aGV5IGNyZWF0ZSB0aGVpclxuICogZnVsbCBvcGFjaXR5IGNvdW50ZXJwYXJ0czpcbiAqXG4gKiAgLSB3aGl0ZSArICRsaW5lLWFkZGVkLXRyYW5zcGFyZW50ID0gJGxpbmUtYWRkZWRcbiAqICAtIHdoaXRlICsgJGxpbmUtYWRkZWQtdHJhbnNwYXJlbnQgKyAkbGluZS1hZGRlZC1kYXJrLXRyYW5zcGFyZW50ID0gJGxpbmUtYWRkZWQtZGFya1xuICpcbiAqIE1vcmUgZGV0YWlsczogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vbWVyZ2VfcmVxdWVzdHMvNDE1NTNcbiAqL1xuLypcbiAqIEZvbnRzXG4gKiBUaGUgLS1kZWZhdWx0LW1vbm8tZm9udCBhbmQgLS1kZWZhdWx0LXJlZ3VsYXItZm9udCB2YXJpYWJsZXMgZ2l2ZSB1c2Vyc1xuICogYSB3YXkgdG8gb3ZlcnJpZGUgb3VyIGZvbnQgY2hvaWNlcyBmb3IgdGhlbS5cbiAqL1xuLypcbiogRHJvcGRvd25zXG4qL1xuLypcbiogU2lkZWJhclxuKi9cbi8qXG4qIEJ1dHRvbnNcbiovXG4vKlxuKiBCYWRnZXNcbiovXG4vKlxuICogIEF3YXJkIGVtb2ppXG4gKi9cbi8qXG4gKiBTZWFyY2ggQm94XG4gKi9cbi8qXG4gKiAgTm90ZXNcbiAqL1xuLypcbiogQm9hcmRzXG4qL1xuLypcbiogQnVpbGRzXG4qL1xuLypcbiogQ29tbWl0IFBhZ2VcbiovXG4vKlxuKiBGaWxlc1xuKi9cbi8qXG4qIEZvcm1zXG4qL1xuLypcbiogTGFiZWxcbiovXG4vKlxuKiBBbmltYXRpb25cbiovXG4vKlxuKiBMb2dpblxuKi9cbi8qXG4qIFR5cG9ncmFwaHlcbiovXG4vKlxuUGlwZWxpbmUgR3JhcGhcbiovXG4vKlxuR2l0TGFiIFBsYW5zXG4qL1xuLypcblBlcmZvcm1hbmNlIEJhclxuKi9cbi8qXG5JbWFnZSBDb21tZW50aW5nIGN1cnNvclxuKi9cbi8qXG5Qb3B1cFxuKi9cbi8qXG5EcmF3ZXJzXG4qL1xuLypcbk1vZGFsc1xuKi9cbi8qXG5Qb3BvdmVyc1xuKi9cbi8qXG5NZXJnZSByZXF1ZXN0c1xuKi9cbi8qXG5Cb2FyZCBTd2ltbGFuZXNcbiovXG4vKlxuU291cmNlIEVkaXRvciB0aGVtZSBvdmVycmlkZXNcbiovXG4vKipcbiBCb290c3RyYXAgNC4yLjAgaW50cm9kdWNlZCBuZXcgaWNvbnMgZm9yIHZhbGlkYXRpbmcgZm9ybXMuXG4gT3VyIGRlc2lnbiBzeXN0ZW0gZG9lcyBub3QgdXNlIHRob3NlLCBzbyB3ZSBhcmUgZGlzYWJsaW5nIHRoZW0gZm9yIG5vdzpcbiAtIERvY3M6IGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9kb2NzLzQuMy9jb21wb25lbnRzL2Zvcm1zLyNzZXJ2ZXItc2lkZVxuIC0gSXNzdWU6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2Rlc2lnbi5naXRsYWIuY29tL2lzc3Vlcy8yNDJcbiAqL1xuLyoqXG4gIFRoaXMgZmlsZSBjb250YWlucyBvbmx5IGltcG9ydHMgb2YgQm9vdHN0cmFwLCBHaXRMYWIgVUkgYW5kIEdpdExhYiBtaXhpbnMsXG4gIHZhcmlhYmxlcyBhbmQgZnVuY3Rpb25zLCBpbiB0aGUgY29ycmVjdCBvcmRlci5cblxuICBJdCBpcyBtZWFudCB0byBiZSB1c2VkIGluIHBhZ2VfYnVuZGxlcywgYnV0IFNIT1VMRCBOT1QgaW50cm9kdWNlIGFueVxuICBzdHlsZXMgb2YgaXQncyBvd24uIFdlIGFjdHVhbGx5IGNoZWNrIGluIENJIHRoYXQgY29tcGlsaW5nIF90aGlzXyBmaWxlIGRvZXNuJ3RcbiAgcmVzdWx0IGluIGFueSBhZGRpdGlvbmFsIHN0eWxlcy5cblxuICBTZWU6IHNjcmlwdHMvZnJvbnRlbmQvY2hlY2tfcGFnZV9idW5kbGVfbWl4aW5zX2Nzc19mb3Jfc2lkZWVmZmVjdHMuanNcbiAqL1xuLypcbiogU0FTUyBwcmVzZXJ2ZXMgdW5pdHMgaW4gYXJpdGhtZXRpYyBvcGVyYXRpb25zLiBGb3IgZXhhbXBsZTpcbiogMTJlbSAqIDAgPSAwZW0uIFRoaXMgZnVuY3Rpb24gcmV0dXJuIHRoZSB1bml0IG9mIGEgbnVtZXJpYyB2YWx1ZS5cbipcbiogRm9yIG1vcmUgZXhhbXBsZXMsIHNlZTogaHR0cHM6Ly9jb2RlcGVuLmlvL3BhdWxndi9wZW4vWFdycU1nUVxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZW5hYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLypcbiAqIExheW91dFxuICovXG4vKipcbiAg8J+aqCBEbyBub3QgdXNlIHRoaXMgc3BhY2luZyBzY2FsZSDigJQgaXQgaXMgZGVwcmVjYXRlZCBhbmQgYmVpbmcgcmVtb3ZlZC4g8J+aqFxuICBTZWUgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiL2lzc3Vlcy8zNjg1NyBmb3IgbW9yZSBkZXRhaWxzLlxuXG4gIEluc3RlYWQsIGlmIHlvdSBuZWVkIGEgc3BhY2luZyBjbGFzcywgYWRkIGl0IHRvIGFwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2NvbW1vbi5zY3NzLFxuICB1c2luZyB0aGUgZm9sbG93aW5nIHZhbHVlcy5cblxuICAgICRnbC1zcGFjaW5nLXNjYWxlLTA6IDA7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTogMnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTI6IDRweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0zOiA4cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNDogMTJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS01OiAxNnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTY6IDI0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNzogMzJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS04OiA0MHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTk6IDQ4cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTA6IDU2cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTE6IDY0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTI6IDgwcHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTM6IDk2cHg7XG5cbiAgRS5nLiwgYSBwYWRkaW5nIHRvcCBvZiA5NnB4IGNhbiBiZSBhZGRlZCB1c2luZzpcbiAgLmdsLXNoaW0tcHQtMTMge1xuICAgIHBhZGRpbmctdG9wOiA5NnB4O1xuICB9XG5cbiAgUGxlYXNlIHVzZSAtc2hpbS0gc28gaXQgY2FuIGJlIGRpZmZlcmVudGlhdGVkIGZyb20gdGhlIG9sZCBzY2FsZSBjbGFzc2VzLlxuXG4gIFRoZXNlIHdpbGwgYmUgcmVwbGFjZWQgd2hlbiB0aGUgR2l0bGFiIFVJIHV0aWxpdGllcyBhcmUgaW5jbHVkZWQuXG4qKi9cbi8qIFdpbGwgYmUgbW92ZWQgdG8gQGdpdGxhYi91aSBieSBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWItc2VydmljZXMvZGVzaWduLmdpdGxhYi5jb20vLS9pc3N1ZXMvMjc5MiAqL1xuLyogRW5kIGdpdGxhYi11aSMxNzA5ICovXG4vKlxuICogVGV4dFxuICovXG4vKlxuICogTGlzdHNcbiAqL1xuLypcbiAqIENvZGVcbiAqL1xuLypcbiAqIFRvb2x0aXBzXG4gKi9cbi8qXG4gKiBQYWRkaW5nXG4gKi9cbi8qXG4gKiBNaXNjXG4gKi9cbi8qXG4gKiBNZXJnZSByZXF1ZXN0c1xuICovXG4vKlxuICogQ2FsY3VsYXRlZCBoZWlnaHRzXG4gKi9cbi8qIHRhbnVraSBsb2dvIGNvbG9ycyAqL1xuLypcbiAqIFN0YXRlIGNvbG9yczpcbiAqL1xuLypcbiAqIENvbW1pdCBEaWZmIENvbG9yc1xuICovXG4vKlxuICogVGhlIHRyYW5zcGFyZW50IGNvbG9ycyBhcmUgdXNlZCBpbiBNb25hY28gZWRpdG9yLiBVc2luZyBmdWxsIG9wYWNpdHkgY29sb3JzXG4gKiB3b3VsZCBoaWRlIG90aGVyIGxheWVycyAoc2VsZWN0ZWQgdGV4dCwgbWF0Y2hpbmcgYnJhY2tldHMpLlxuICpcbiAqIFdoZW4gdGhlIHRyYW5zcGFyZW50IGNvbG9ycyBnZXQgbGF5ZXJlZCBvbiB3aGl0ZSBiYWNrZ3JvdW5kLCB0aGV5IGNyZWF0ZSB0aGVpclxuICogZnVsbCBvcGFjaXR5IGNvdW50ZXJwYXJ0czpcbiAqXG4gKiAgLSB3aGl0ZSArICRsaW5lLWFkZGVkLXRyYW5zcGFyZW50ID0gJGxpbmUtYWRkZWRcbiAqICAtIHdoaXRlICsgJGxpbmUtYWRkZWQtdHJhbnNwYXJlbnQgKyAkbGluZS1hZGRlZC1kYXJrLXRyYW5zcGFyZW50ID0gJGxpbmUtYWRkZWQtZGFya1xuICpcbiAqIE1vcmUgZGV0YWlsczogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vbWVyZ2VfcmVxdWVzdHMvNDE1NTNcbiAqL1xuLypcbiAqIEZvbnRzXG4gKiBUaGUgLS1kZWZhdWx0LW1vbm8tZm9udCBhbmQgLS1kZWZhdWx0LXJlZ3VsYXItZm9udCB2YXJpYWJsZXMgZ2l2ZSB1c2Vyc1xuICogYSB3YXkgdG8gb3ZlcnJpZGUgb3VyIGZvbnQgY2hvaWNlcyBmb3IgdGhlbS5cbiAqL1xuLypcbiogRHJvcGRvd25zXG4qL1xuLypcbiogU2lkZWJhclxuKi9cbi8qXG4qIEJ1dHRvbnNcbiovXG4vKlxuKiBCYWRnZXNcbiovXG4vKlxuICogIEF3YXJkIGVtb2ppXG4gKi9cbi8qXG4gKiBTZWFyY2ggQm94XG4gKi9cbi8qXG4gKiAgTm90ZXNcbiAqL1xuLypcbiogQm9hcmRzXG4qL1xuLypcbiogQnVpbGRzXG4qL1xuLypcbiogQ29tbWl0IFBhZ2VcbiovXG4vKlxuKiBGaWxlc1xuKi9cbi8qXG4qIEZvcm1zXG4qL1xuLypcbiogTGFiZWxcbiovXG4vKlxuKiBBbmltYXRpb25cbiovXG4vKlxuKiBMb2dpblxuKi9cbi8qXG4qIFR5cG9ncmFwaHlcbiovXG4vKlxuUGlwZWxpbmUgR3JhcGhcbiovXG4vKlxuR2l0TGFiIFBsYW5zXG4qL1xuLypcblBlcmZvcm1hbmNlIEJhclxuKi9cbi8qXG5JbWFnZSBDb21tZW50aW5nIGN1cnNvclxuKi9cbi8qXG5Qb3B1cFxuKi9cbi8qXG5EcmF3ZXJzXG4qL1xuLypcbk1vZGFsc1xuKi9cbi8qXG5Qb3BvdmVyc1xuKi9cbi8qXG5NZXJnZSByZXF1ZXN0c1xuKi9cbi8qXG5Cb2FyZCBTd2ltbGFuZXNcbiovXG4vKlxuU291cmNlIEVkaXRvciB0aGVtZSBvdmVycmlkZXNcbiovXG4vKipcbiBCb290c3RyYXAgNC4yLjAgaW50cm9kdWNlZCBuZXcgaWNvbnMgZm9yIHZhbGlkYXRpbmcgZm9ybXMuXG4gT3VyIGRlc2lnbiBzeXN0ZW0gZG9lcyBub3QgdXNlIHRob3NlLCBzbyB3ZSBhcmUgZGlzYWJsaW5nIHRoZW0gZm9yIG5vdzpcbiAtIERvY3M6IGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9kb2NzLzQuMy9jb21wb25lbnRzL2Zvcm1zLyNzZXJ2ZXItc2lkZVxuIC0gSXNzdWU6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2Rlc2lnbi5naXRsYWIuY29tL2lzc3Vlcy8yNDJcbiAqL1xuLypcbiAqIFRoaXMgZmlsZSBpcyBvbmx5IGZvciBvdmVycmlkaW5nIEJvb3RzdHJhcCA0IHZhcmlhYmxlcy5cbiAqIFBsZWFzZSBhZGQgYW55IG5ldyB2YXJpYWJsZXMgdG8gdmFyaWFibGVzLnNjc3NcbiAqL1xuLypcbiogU0FTUyBwcmVzZXJ2ZXMgdW5pdHMgaW4gYXJpdGhtZXRpYyBvcGVyYXRpb25zLiBGb3IgZXhhbXBsZTpcbiogMTJlbSAqIDAgPSAwZW0uIFRoaXMgZnVuY3Rpb24gcmV0dXJuIHRoZSB1bml0IG9mIGEgbnVtZXJpYyB2YWx1ZS5cbipcbiogRm9yIG1vcmUgZXhhbXBsZXMsIHNlZTogaHR0cHM6Ly9jb2RlcGVuLmlvL3BhdWxndi9wZW4vWFdycU1nUVxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZW5hYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyoqXG4gKiBQcmVmaWxsZWQgbWl4aW5zXG4gKiBNaXhpbnMgd2l0aCBmaXhlZCB2YWx1ZXNcbiAqL1xuLypcbiAqIEJhc2UgbWl4aW4gZm9yIGxpc3RzIGluIEdpdExhYlxuICovXG4vKlxuICogTWl4aW4gZm9yIHN0YXR1cyBiYWRnZXMsIGFzIHVzZWQgZm9yIHBpcGVsaW5lcyBhbmQgY29tbWl0IHNpZ25hdHVyZXNcbiAqL1xuLypcbiAqIE1peGluIHRoYXQgZml4ZXMgd3JhcHBpbmcgaXNzdWVzIHdpdGggbG9uZyBzdHJpbmdzIChlLmcuIFVSTHMpXG4gKlxuICogTm90ZTogdGhlIHdpZHRoIG5lZWRzIHRvIGJlIHNldCBmb3IgaXQgdG8gd29yayBpbiBGaXJlZm94XG4gKi9cbi8qXG4qIE1peGluIHRoYXQgaGFuZGxlcyB0aGUgY29udGFpbmVyIGZvciB0aGUgam9iIGxvZ3MgKENJL0NEIGFuZCBrdWJlcm5ldGVzIHBvZCBsb2dzKVxuKi9cbi8qXG4qIE1peGluIHRoYXQgaGFuZGxlcyB0aGUgcG9zaXRpb24gb2YgdGhlIGNvbnRyb2xzIHBsYWNlZCBvbiB0aGUgdG9wIGJhclxuKi9cbi8qXG4qIE1peGluIHRoYXQgaGFuZGxlcyB0aGUgc2l6ZSBhbmQgcmlnaHQgbWFyZ2luIG9mIGF2YXRhcnMuXG4qL1xuLyoqXG4qIFN0eWxlIHRvIGFwcGx5IHRvLCBmb3IgZXhhbXBsZSwgc2VhcmNoIHJlc3VsdHMgbWF0Y2hlcyBvciB0ZXh0IHdyYXBwZWRcbiogYXJvdW5kIDxtYXJrPiAoYWxsb3dlZCBpbiBNYXJrZG93bikuXG4qL1xuLyoqXG4qIExpbmUgY29ubmVjdGluZyBhY3Rpdml0eSBlbnRyaWVzLCB1c2VkIGluIGlzc3VhYmxlcywgd29yayBpdGVtcyBldGNcbiovXG4vKipcbiAqIERlcHJlY2F0ZWQgbWl4aW4gZm9yIGRhcmsgbW9kZVxuICovXG4vKipcbiogQ0kvQ0QgSm9iIGl0ZW0gZmFpbGVkIHN0YXR1cyBiYWNrZ3JvdW5kXG4qXG4qIFNldHMgYmFja2dyb3VuZCBjb2xvciBvZiBpdGVtcyB0byB2aXN1YWxseVxuKiBoaWdobGlnaHQgZmFpbGVkIGpvYnMgaW4gdGhlIFVJLlxuKi9cbi8qXG4qIFNBU1MgcHJlc2VydmVzIHVuaXRzIGluIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4gRm9yIGV4YW1wbGU6XG4qIDEyZW0gKiAwID0gMGVtLiBUaGlzIGZ1bmN0aW9uIHJldHVybiB0aGUgdW5pdCBvZiBhIG51bWVyaWMgdmFsdWUuXG4qXG4qIEZvciBtb3JlIGV4YW1wbGVzLCBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9wYXVsZ3YvcGVuL1hXcnFNZ1FcbiovXG4vKlxuKiBTQVNTIHByZXNlcnZlcyB1bml0cyBpbiBhcml0aG1ldGljIG9wZXJhdGlvbnMuIEZvciBleGFtcGxlOlxuKiAxMmVtICogMCA9IDBlbS4gVGhpcyBmdW5jdGlvbiByZXR1cm4gdGhlIHVuaXQgb2YgYSBudW1lcmljIHZhbHVlLlxuKlxuKiBGb3IgbW9yZSBleGFtcGxlcywgc2VlOiBodHRwczovL2NvZGVwZW4uaW8vcGF1bGd2L3Blbi9YV3JxTWdRXG4qL1xuLyogc3R5bGVsaW50LWRpc2FibGUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1lbmFibGUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKipcbiogRGVjbGFyZXMgYSBwcm9wZXJ0eSB3aXRoIGEgZmx1aWQgdmFsdWUgdGhhdCBkZWNyZWFzZXMgb3JcbiogcmlzZXMgZGVwZW5kaW5nIG9uIHRoZSB2aWV3cG9ydOKAmXMgc2l6ZS4gVGhlIHByb3BlcnR5IHR5cGVcbiogc2hvdWxkIGJlIG51bWVyaWMuXG4qXG4qIFZhbHVlcyBhcmUgZXhwZWN0ZWQgaW4gcmVtIHVuaXRzLlxuKiBGbHVpZCByYW5nZTogYmV0d2VlbiA0OHJlbSAoNzY4cHgpIOKAkyA3NXJlbSAoMTIwMHB4KS5cbipcbiogQHBhcmFtICRwcm9wZXJ0eSBQcm9wZXJ0eSBuYW1lLCBpLmUuIGxpbmUtaGVpZ2h0LCBmb250LXNpemUsIHdpZHRoLCBoZWlnaHQsIGV0Yy5cbiogQHBhcmFtICRtaW4gUHJvcGVydHkgdmFsdWUgbG93ZXIgYm91bmQuXG4qIEBwYXJhbSAkbWF4IFByb3BlcnR5IHZhbHVlIHVwcGVyIGJvdW5kLlxuKi9cbi8qKlxuKiBIZWxwZXIgZnVuY3Rpb24gZm9yIDpmb2N1c1xuKlxuKiBAcGFyYW0gJHNpemUgaXMgZGVwcmVjYXRlZCBhbmQgc2hvdWxkIG5vdCBiZSB1c2VkIGFueW1vcmVcbiovXG4vKipcbiogSGVscGVyIGZ1bmN0aW9uIGZvciBAbWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW1cbiogYnJlYWtwb2ludCB3aWR0aC5cbipcbiogQHBhcmFtICRuYW1lIEJyZWFrcG9pbnQgbmFtZSwgc3VjaCBhcyBgc21gIG9yIGBtZGAuXG4qL1xuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiBmb3IgQG1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW1cbiogYnJlYWtwb2ludCB3aWR0aC5cbipcbiogTm90ZTogQmVmb3JlIHVzaW5nLCBjb25zaWRlciB1c2luZyBhIG1vYmlsZS1maXJzdFxuKiBhcHByb2FjaCwgYW5kIGRlZmluZSBAbWVkaWEgZm9yIGxhcmdlciBicmVha3BvaW50c1xuKiB1c2luZyBgZ2wtbWVkaWEtYnJlYWtwb2ludC11cGAgd2hpbGUgdXNpbmcgdGhpcyBydWxlIGFzXG4qIHRoZSBzdGFydGluZyBwb2ludCBpbnN0ZWFkLlxuKlxuKiBAcGFyYW0gJG5hbWUgQnJlYWtwb2ludCwgc3VjaCBhcyBgc21gIG9yIGBtZGAuIGB4c2AgaXMgbm90IHZhbGlkXG4qL1xuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiB0byByZXNvbHZlIGZvbnQtc2l6ZSB2YWx1ZSBmcm9tICRnbC1mb250LXNpemVzIGFuZFxuKiAkZ2wtZm9udC1zaXplcy1maXhlZCBtYXBzLlxuKlxuKiBAcGFyYW0gJHNpemUgTnVtYmVyIGZvbnQtc2l6ZSBzY2FsZVxuKiBAcGFyYW0gJGZpeGVkIEJvb2xlYW4gdG9nZ2xlIGRlZmF1bHQgYW5kIGZpeGVkIGZvbnQgc2l6ZSBzY2FsZXNcbiovXG4vKipcbiogRXh0ZW5kcyB2YWx1ZXMgZnJvbSBzeW50YXggaGlnaGxpZ2h0IHRoZW1lcyBmb3IgbWVyZ2UgY29uZmxpY3Qgdmlldy5cbiovXG4uZmlsZS1jb250ZW50LmNvZGUge1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbn1cbi5maWxlLWNvbnRlbnQuY29kZSBwcmUge1xuICBsaW5lLWhlaWdodDogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yNXJlbTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWRlZmF1bHQtbW9uby1mb250LCBcIkdpdExhYiBNb25vXCIpLCBcIkpldEJyYWlucyBNb25vXCIsIFwiTWVubG9cIiwgXCJEZWphVnUgU2FucyBNb25vXCIsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ29uc29sYXNcIiwgXCJVYnVudHUgTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIFwiYW5kYWxlIG1vbm9cIiwgXCJsdWNpZGEgY29uc29sZVwiLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xufVxuLmZpbGUtY29udGVudC5jb2RlIHByZSBjb2RlLmxpbmUsIC5maWxlLWNvbnRlbnQuY29kZSBwcmUgY29kZSAubGluZSB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cbi5maWxlLWNvbnRlbnQuY29kZSBwcmUgY29kZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1tb25vLWZvbnQsIFwiR2l0TGFiIE1vbm9cIiksIFwiSmV0QnJhaW5zIE1vbm9cIiwgXCJNZW5sb1wiLCBcIkRlamFWdSBTYW5zIE1vbm9cIiwgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb25zb2xhc1wiLCBcIlVidW50dSBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgXCJhbmRhbGUgbW9ub1wiLCBcImx1Y2lkYSBjb25zb2xlXCIsIG1vbm9zcGFjZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIHBhZGRpbmc6IDA7XG59XG4uZmlsZS1jb250ZW50LmNvZGUgcHJlIGNvZGUgLmxpbmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG59XG4uZmlsZS1jb250ZW50LmNvZGUgcHJlIGNvZGUgLmxpbmU6ZW1wdHk6OmJlZm9yZSwgLmZpbGUtY29udGVudC5jb2RlIHByZSBjb2RlIC5saW5lIHNwYW46ZW1wdHk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCLXCI7XG59XG4uZmlsZS1jb250ZW50LmNvZGUgcHJlIGNvZGUgLmxpbmUgLnNlbGVjdGVkLWlubGluZS1pdGVtLW1hcmsge1xuICBiYWNrZ3JvdW5kOiAjMjU3NWM2ICFpbXBvcnRhbnQ7XG59XG4uZmlsZS1jb250ZW50LmNvZGUgcHJlIGNvZGUgLmxpbmUgLmlubGluZS1pdGVtLW1hcmsge1xuICBwYWRkaW5nOiAwIDVweDtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYmFja2dyb3VuZDogIzc0NzI3MztcbiAgY29sb3I6ICNmZmY7XG59XG4uZmlsZS1jb250ZW50LmNvZGUgcHJlIGNvZGUgLmxpbmUgLmlubGluZS1zZWN0aW9uLW1hcmtlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDJweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLmZpbGUtY29udGVudC5jb2RlIHByZSBjb2RlIC5saW5lOmxhc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuNXJlbSAtIDFweCk7XG59XG4uZmlsZS1jb250ZW50LmNvZGUgLmxpbmUtbnVtYmVycyB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE5cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBmbG9hdDogbGVmdDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbn1cbi5maWxlLWNvbnRlbnQuY29kZSAubGluZS1udW1iZXJzIGEge1xuICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1tb25vLWZvbnQsIFwiR2l0TGFiIE1vbm9cIiksIFwiSmV0QnJhaW5zIE1vbm9cIiwgXCJNZW5sb1wiLCBcIkRlamFWdSBTYW5zIE1vbm9cIiwgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb25zb2xhc1wiLCBcIlVidW50dSBNb25vXCIsIFwiQ291cmllciBOZXdcIiwgXCJhbmRhbGUgbW9ub1wiLCBcImx1Y2lkYSBjb25zb2xlXCIsIG1vbm9zcGFjZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmZpbGUtY29udGVudC5jb2RlIC5saW5lLW51bWJlcnMgYSBpLFxuLmZpbGUtY29udGVudC5jb2RlIC5saW5lLW51bWJlcnMgYSBzdmcge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLXRvcDogM3B4O1xuICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLmZpbGUtY29udGVudC5jb2RlIC5saW5lLW51bWJlcnMgYTpob3ZlciwgLmZpbGUtY29udGVudC5jb2RlIC5saW5lLW51bWJlcnMgYTpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5maWxlLWNvbnRlbnQuY29kZSAubGluZS1udW1iZXJzIGE6aG92ZXIgaSxcbi5maWxlLWNvbnRlbnQuY29kZSAubGluZS1udW1iZXJzIGE6aG92ZXIgc3ZnLCAuZmlsZS1jb250ZW50LmNvZGUgLmxpbmUtbnVtYmVycyBhOmZvY3VzLXZpc2libGUgaSxcbi5maWxlLWNvbnRlbnQuY29kZSAubGluZS1udW1iZXJzIGE6Zm9jdXMtdmlzaWJsZSBzdmcge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLmZpbGUtY29udGVudC5jb2RlIC5saW5lLW51bWJlcnMgYTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAyNHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4uZmlsZS1jb250ZW50LmNvZGUgLmxpbmUtbnVtYmVyczpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuNXJlbSAtIDFweCk7XG59XG4uZmlsZS1jb250ZW50LmNvZGUgcHJlIC5saW5lLFxuLmZpbGUtY29udGVudC5jb2RlIHByZSAucGxhaW4tbGluZXMsXG4uZmlsZS1jb250ZW50LmNvZGUgLmxpbmUtbnVtYmVycyBhIHtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE4NzVyZW07XG4gIG1pbi1oZWlnaHQ6IDEuMTg3NXJlbTtcbn1cbi5maWxlLWNvbnRlbnQuY29kZSAubWFyay1tdWx0aXBsZS1saW5lLWV4cGFuZC1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkYmQ5O1xuICBjb2xvcjogIzhhODg4ODtcbn1cbi5maWxlLWNvbnRlbnQuY29kZSAubWFyay1tdWx0aXBsZS1saW5lLWV4cGFuZC1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkYmQ5O1xuICBjb2xvcjogIzhhODg4ODtcbn1cblxudGQubGluZS1udW1iZXJzIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5wcm9qZWN0LWhpZ2hsaWdodC1wdWMgLnVuaWNvZGUtYmlkaTo6YmVmb3JlIHtcbiAgY29udGVudDogXCLvv71cIjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSB3YXZ5ICNkZTFkNGI7XG59XG5cbnByZSAuaGxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1oaWdobGlnaHRlZC1saW5lLWJhY2tncm91bmQtY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi5ibG9iLXZpZXdlciB7XG4gIC0tc291cmNlLWxpbmUtaGVpZ2h0OiAxLjE4NzVyZW07XG59XG4uYmxvYi12aWV3ZXIuY29kZSB7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDAuNXJlbSAtIDFweCk7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC41cmVtIC0gMXB4KTtcbn1cbi5ibG9iLXZpZXdlciAuYmxhbWUge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDAuNXJlbSAtIDFweCk7XG59XG4uYmxhbWUgfiAuYmxvYi12aWV3ZXIuY29kZSAubGluZS1udW1iZXJzOmxhc3Qtb2YtdHlwZSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG59XG4uYmxvYi12aWV3ZXIgLmxpbmUtbnVtYmVycyB7XG4gIG1pbi13aWR0aDogNnJlbTtcbn1cbi5ibG9iLXZpZXdlciAubGluZS1udW1iZXJzIC5saW5lLWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5ibG9iLXZpZXdlciAubGluZS1udW1iZXJzLmxpbmUtbGlua3Mge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xufVxuLmJsb2Itdmlld2VyIC5saW5lLW51bWJlcnMubGluZS1saW5rcyArIHByZSB7XG4gIG1hcmdpbi1sZWZ0OiA2cmVtO1xufVxuLmJsb2Itdmlld2VyIC5saW5lLW51bWJlcnM6bm90KC5saW5lLWxpbmtzKSBhOmhvdmVyOjpiZWZvcmUsXG4uYmxvYi12aWV3ZXIgLmxpbmUtbnVtYmVyczpub3QoLmxpbmUtbGlua3MpIGE6Zm9jdXMtd2l0aGluOjpiZWZvcmUsXG4uYmxvYi12aWV3ZXIgLmxpbmUtbGlua3M6aG92ZXIgYTo6YmVmb3JlLFxuLmJsb2Itdmlld2VyIC5saW5lLWxpbmtzLmlzLW92ZXIgYTo6YmVmb3JlLFxuLmJsb2Itdmlld2VyIC5saW5lLWxpbmtzIGE6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cbi5ibG9iLXZpZXdlciAuZmlsZS1saW5lLW51bSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGZsZXgtZ3JvdzogMTtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xufVxuLmJsb2Itdmlld2VyIC5maWxlLWxpbmUtYmxhbWUge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuLmJsb2Itdmlld2VyIC5maWxlLWxpbmUtbnVtLFxuLmJsb2Itdmlld2VyIC5maWxlLWxpbmUtYmxhbWUge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmJsb2Itdmlld2VyIC5kaWZmLWxpbmUtbnVtLmxpbmUtbGlua3Mge1xuICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWNvZGUtYm9yZGVyLWNvbG9yKTtcbn1cbi5ibG9iLXZpZXdlciAuZGlmZi1saW5lLW51bS5obGwsXG4uYmxvYi12aWV3ZXIgcHJlIC5obGwge1xuICAtLWhpZ2hsaWdodGVkLWxpbmUtc2hhZG93LXRvcDogMCAwIHRyYW5zcGFyZW50O1xuICAtLWhpZ2hsaWdodGVkLWxpbmUtc2hhZG93LWJvdHRvbTogMCAwIHRyYW5zcGFyZW50O1xufVxuLmJsb2Itdmlld2VyIC5kaWZmLWxpbmUtbnVtLmxpbmUtbGlua3MuaGxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1oaWdobGlnaHRlZC1saW5lLWJhY2tncm91bmQtY29sb3IpO1xuICBib3gtc2hhZG93OiBpbnNldCAxcHggMCB2YXIoLS1jb2RlLWhpZ2hsaWdodGVkLWxpbmUtYm9yZGVyLWNvbG9yKSwgdmFyKC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctdG9wKSwgdmFyKC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctYm90dG9tKTtcbn1cbi5ibG9iLXZpZXdlciBwcmUgLmhsbCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IC0xcHggMCB2YXIoLS1jb2RlLWhpZ2hsaWdodGVkLWxpbmUtYm9yZGVyLWNvbG9yKSwgdmFyKC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctdG9wKSwgdmFyKC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctYm90dG9tKTtcbn1cbi5ibG9iLXZpZXdlciAuZGlmZi1saW5lLW51bS5oaWdobGlnaHQtdG9wLFxuLmJsb2Itdmlld2VyIHByZSAuaGlnaGxpZ2h0LXRvcCB7XG4gIC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctdG9wOiBpbnNldCAwIDFweCB2YXIoLS1jb2RlLWhpZ2hsaWdodGVkLWxpbmUtYm9yZGVyLWNvbG9yKTtcbn1cbi5ibG9iLXZpZXdlciAuZGlmZi1saW5lLW51bS5oaWdobGlnaHQtYm90dG9tLFxuLmJsb2Itdmlld2VyIHByZSAuaGlnaGxpZ2h0LWJvdHRvbSB7XG4gIC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctYm90dG9tOiBpbnNldCAwIC0xcHggdmFyKC0tY29kZS1oaWdobGlnaHRlZC1saW5lLWJvcmRlci1jb2xvcik7XG59XG4uYmxvYi12aWV3ZXIgLmRpZmYtbGluZS1udW0uaGxsIC5maWxlLWxpbmUtbnVtIHtcbiAgY29sb3I6IHZhcigtLWNvZGUtbGluZS1udW1iZXItaG92ZXItY29sb3IsICM2NDYxNjMpO1xufVxuLmJsb2Itdmlld2VyIC5kaWZmLWxpbmUtbnVtLmxpbmUtbGlua3M6aG92ZXIsXG4uYmxvYi12aWV3ZXIgLmRpZmYtbGluZS1udW0ubGluZS1saW5rcy5pcy1vdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1saW5lLW51bWJlci1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yLCAjZTFkYWY3KTtcbn1cbi5ibG9iLXZpZXdlciAuZmlsZS1saW5lLW51bTpob3ZlciB7XG4gIGNvbG9yOiB2YXIoLS1jb2RlLWxpbmUtbnVtYmVyLWhvdmVyLWNvbG9yLCAjNjQ2MTYzKTtcbn1cbi5ibG9iLXZpZXdlciAuZGlmZi1saW5lLW51bSAuZmlsZS1saW5lLWJsYW1lOmhvdmVyOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jb2RlLWxpbmUtbnVtYmVyLWhvdmVyLWNvbG9yLCAjNjQ2MTYzKTtcbn1cblxuLnNvdXJjZS12aWV3ZXItc2Nyb2xsYmFyIHtcbiAgaGVpZ2h0OiAxcmVtO1xufVxuXG4uc291cmNlLXZpZXdlci1maWxlLWNvbnRlbnQge1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG59XG4uc291cmNlLXZpZXdlci1maWxlLWNvbnRlbnQ6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqIGxpZ2h0IGxpc3Qgd2l0aCBib3JkZXItYm90dG9tIGJldHdlZW4gbGkgKiovXG51bC5ib3JkZXJlZC1saXN0LFxudWwudW5zdHlsZWQtbGlzdCB7XG4gIG1hcmdpbjogNXB4IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG51bC5ib3JkZXJlZC1saXN0ID4gbGk6OmFmdGVyLFxudWwudW5zdHlsZWQtbGlzdCA+IGxpOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cbnVsLmJvcmRlcmVkLWxpc3QgPiBsaSxcbnVsLnVuc3R5bGVkLWxpc3QgPiBsaSB7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWItc3VidGxlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xufVxudWwuYm9yZGVyZWQtbGlzdCA+IGxpOmxhc3QtY2hpbGQsXG51bC51bnN0eWxlZC1saXN0ID4gbGk6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG51bC5ib3JkZXJlZC1saXN0ID4gbGkuYWN0aXZlLFxudWwudW5zdHlsZWQtbGlzdCA+IGxpLmFjdGl2ZSB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG51bC5ib3JkZXJlZC1saXN0ID4gbGkuYWN0aXZlIGEsXG51bC51bnN0eWxlZC1saXN0ID4gbGkuYWN0aXZlIGEge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xufVxudWwuYm9yZGVyZWQtbGlzdCA+IGxpLmhpZGUsXG51bC51bnN0eWxlZC1saXN0ID4gbGkuaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG51bC5ib3JkZXJlZC1saXN0ID4gbGkubGlnaHQgYSxcbnVsLnVuc3R5bGVkLWxpc3QgPiBsaS5saWdodCBhIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cblxudWwudW5zdHlsZWQtbGlzdCA+IGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxudWwubGlzdC1pdGVtcy1weS0yID4gbGkge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuXG51bC5jb250ZW50LWxpc3Qge1xuICBtYXJnaW46IDVweCAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxudWwuY29udGVudC1saXN0ID4gbGk6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xufVxudWwuY29udGVudC1saXN0ID4gbGkge1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbn1cbnVsLmNvbnRlbnQtbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxudWwuY29udGVudC1saXN0ID4gbGkuYWN0aXZlIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbn1cbnVsLmNvbnRlbnQtbGlzdCA+IGxpLmFjdGl2ZSBhIHtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbn1cbnVsLmNvbnRlbnQtbGlzdCA+IGxpLmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxudWwuY29udGVudC1saXN0ID4gbGkubGlnaHQgYSB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG51bC5jb250ZW50LWxpc3Qge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG51bC5jb250ZW50LWxpc3QgbGkge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWRlZmF1bHQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG51bC5jb250ZW50LWxpc3QgbGkgLnRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbnVsLmNvbnRlbnQtbGlzdCBsaSBhIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cbnVsLmNvbnRlbnQtbGlzdCBsaSBhLmlubGluZS1saW5rIHtcbiAgQGFwcGx5IGdsLXRleHQtbGluaztcbn1cbnVsLmNvbnRlbnQtbGlzdCBsaSAuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3cteDogY2xpcDtcbiAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1heC13aWR0aDogODIlO1xufVxudWwuY29udGVudC1saXN0IGxpIC5jb250cm9scyB7XG4gIGZsb2F0OiByaWdodDtcbn1cbnVsLmNvbnRlbnQtbGlzdCBsaSAuY29udHJvbHMgPiAuYnRuLFxudWwuY29udGVudC1saXN0IGxpIC5jb250cm9scyA+IC5idG4tZ3JvdXAsXG51bC5jb250ZW50LWxpc3QgbGkgLmNvbnRyb2xzID4gLmRyb3Bkb3duLmlubGluZSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxudWwuY29udGVudC1saXN0IGxpIC5jb250cm9scyA+IC5idG4uaGFzLXRvb2x0aXAsIHVsLmNvbnRlbnQtbGlzdCBsaSAuY29udHJvbHMgPiAuYnRuOmxhc3QtY2hpbGQsXG51bC5jb250ZW50LWxpc3QgbGkgLmNvbnRyb2xzID4gLmJ0bi1ncm91cC5oYXMtdG9vbHRpcCxcbnVsLmNvbnRlbnQtbGlzdCBsaSAuY29udHJvbHMgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQsXG51bC5jb250ZW50LWxpc3QgbGkgLmNvbnRyb2xzID4gLmRyb3Bkb3duLmlubGluZS5oYXMtdG9vbHRpcCxcbnVsLmNvbnRlbnQtbGlzdCBsaSAuY29udHJvbHMgPiAuZHJvcGRvd24uaW5saW5lOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHVsLmNvbnRlbnQtbGlzdCBsaSAuY29udHJvbHMgPiAuYnRuLmhhcy10b29sdGlwLCA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB1bC5jb250ZW50LWxpc3QgbGkgLmNvbnRyb2xzID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSB1bC5jb250ZW50LWxpc3QgbGkgLmNvbnRyb2xzID4gLmJ0bi1ncm91cC5oYXMtdG9vbHRpcCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdWwuY29udGVudC1saXN0IGxpIC5jb250cm9scyA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgdWwuY29udGVudC1saXN0IGxpIC5jb250cm9scyA+IC5kcm9wZG93bi5pbmxpbmUuaGFzLXRvb2x0aXAsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIHVsLmNvbnRlbnQtbGlzdCBsaSAuY29udHJvbHMgPiAuZHJvcGRvd24uaW5saW5lOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdWwuY29udGVudC1saXN0IGxpIC5jb250cm9scyA+IC5idG4uaGFzLXRvb2x0aXAsIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHVsLmNvbnRlbnQtbGlzdCBsaSAuY29udHJvbHMgPiAuYnRuOmxhc3QtY2hpbGQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIHVsLmNvbnRlbnQtbGlzdCBsaSAuY29udHJvbHMgPiAuYnRuLWdyb3VwLmhhcy10b29sdGlwLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB1bC5jb250ZW50LWxpc3QgbGkgLmNvbnRyb2xzID4gLmJ0bi1ncm91cDpsYXN0LWNoaWxkLFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB1bC5jb250ZW50LWxpc3QgbGkgLmNvbnRyb2xzID4gLmRyb3Bkb3duLmlubGluZS5oYXMtdG9vbHRpcCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgdWwuY29udGVudC1saXN0IGxpIC5jb250cm9scyA+IC5kcm9wZG93bi5pbmxpbmU6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLmZsZXgtbGlzdCAuZmxleC1yb3cge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmZsZXgtbGlzdCAuZHJvcGRvd24gLmJ0bi1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuLmZsZXgtbGlzdCAuYmFkZ2Utc2Vjb25kYXJ5IHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuXG51bC5jb250ZW50LWxpc3QuY29udGVudC1saXN0LWl0ZW1zLXBhZGRpbmcgPiBsaSxcbnVsLmNvbnRlbnQtbGlzdC5pc3N1YWJsZS1saXN0ID4gbGksXG4uY2FyZCA+IC5jb250ZW50LWxpc3QgPiBsaSB7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbn1cblxudWwuY29udHJvbHMge1xuICBmbG9hdDogcmlnaHQ7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG51bC5jb250cm9scyAuYnRuIHtcbiAgcGFkZGluZzogMTBweCAxNHB4O1xufVxudWwuY29udHJvbHMgPiBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG51bC5jb250cm9scyA+IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG51bC5jb250cm9scyA+IGxpIC5hdXRob3ItbGluayAuYXZhdGFyLWlubGluZSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG51bC5jb250cm9scyAuaXNzdWFibGUtcGlwZWxpbmUtYnJva2VuIGEsXG51bC5jb250cm9scyAuYXV0aG9yLWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuXG51bC5pbmRlbnQtbGlzdCB7XG4gIHBhZGRpbmc6IDEwcHggMCAwIDMwcHg7XG59XG5cbkBrZXlmcmFtZXMgc3Bpbi1hdmF0YXIge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLmhvcml6b250YWwtbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5ob3Jpem9udGFsLWxpc3QgPiBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmhvcml6b250YWwtbGlzdC5saXN0LWl0ZW1zLXNlcGFyYXRlZCA+IGxpOm5vdCg6bGFzdC1jaGlsZCk6OmFmdGVyIHtcbiAgY29udGVudDogXCLCt1wiO1xuICBtYXJnaW46IDAgNHB4O1xufVxuXG4udGFudWtpLWxvZ28ge1xuICBAYXBwbHkgZ2wtYWxpZ24tbWlkZGxlO1xufVxuLnRhbnVraS1sb2dvIC50YW51a2kge1xuICBmaWxsOiAjZTI0MzI5O1xuICB0cmFuc2l0aW9uOiBhbGwgMC44cztcbn1cbi50YW51a2ktbG9nbyAudGFudWtpOmhvdmVyIHtcbiAgZmlsbDogcmdiKDI0MS4yMTYwNDkzODI3LCAxNjUuNjQxOTc1MzA4NiwgMTUzLjI4Mzk1MDYxNzMpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbn1cbi50YW51a2ktbG9nbyAubGVmdC1jaGVlayxcbi50YW51a2ktbG9nbyAucmlnaHQtY2hlZWsge1xuICBmaWxsOiAjZmM2ZDI2O1xuICB0cmFuc2l0aW9uOiBhbGwgMC44cztcbn1cbi50YW51a2ktbG9nbyAubGVmdC1jaGVlazpob3Zlcixcbi50YW51a2ktbG9nbyAucmlnaHQtY2hlZWs6aG92ZXIge1xuICBmaWxsOiByZ2IoMjUzLjczODYzNjM2MzYsIDE5My42MTM2MzYzNjM2LCAxNjMuNzYxMzYzNjM2NCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzO1xufVxuLnRhbnVraS1sb2dvIC5jaGluIHtcbiAgZmlsbDogI2ZjYTMyNjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHM7XG59XG4udGFudWtpLWxvZ28gLmNoaW46aG92ZXIge1xuICBmaWxsOiByZ2IoMjUzLjczODYzNjM2MzYsIDIxNi4zMTgxODE4MTgyLCAxNjMuNzYxMzYzNjM2NCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzO1xufVxuLnRhbnVraS1sb2dvLmFuaW1hdGUgLnRhbnVraS1zaGFwZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjVzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDEuNXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuLnRhbnVraS1sb2dvLmFuaW1hdGUgLnRhbnVraSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGFuaW1hdGUtdGFudWtpLWJhc2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRlLXRhbnVraS1iYXNlO1xufVxuQGtleWZyYW1lcyBhbmltYXRlLXRhbnVraS1iYXNlIHtcbiAgMCUsIDUwJSB7XG4gICAgZmlsbDogI2UyNDMyOTtcbiAgfVxuICAyNSUge1xuICAgIGZpbGw6IHJnYigyNDEuMjE2MDQ5MzgyNywgMTY1LjY0MTk3NTMwODYsIDE1My4yODM5NTA2MTczKTtcbiAgfVxufVxuLnRhbnVraS1sb2dvLmFuaW1hdGUgLnJpZ2h0LWNoZWVrIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYW5pbWF0ZS10YW51a2ktcmlnaHQtY2hlZWs7XG4gIGFuaW1hdGlvbi1uYW1lOiBhbmltYXRlLXRhbnVraS1yaWdodC1jaGVlaztcbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZS10YW51a2ktcmlnaHQtY2hlZWsge1xuICAyNSUsIDc1JSB7XG4gICAgZmlsbDogI2ZjNmQyNjtcbiAgfVxuICA1MCUge1xuICAgIGZpbGw6IHJnYigyNTMuNzM4NjM2MzYzNiwgMTkzLjYxMzYzNjM2MzYsIDE2My43NjEzNjM2MzY0KTtcbiAgfVxufVxuLnRhbnVraS1sb2dvLmFuaW1hdGUgLmNoaW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhbmltYXRlLXRhbnVraS1jaGluO1xuICBhbmltYXRpb24tbmFtZTogYW5pbWF0ZS10YW51a2ktY2hpbjtcbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZS10YW51a2ktY2hpbiB7XG4gIDUwJSwgMTAwJSB7XG4gICAgZmlsbDogI2ZjYTMyNjtcbiAgfVxuICA3NSUge1xuICAgIGZpbGw6IHJnYigyNTMuNzM4NjM2MzYzNiwgMjE2LjMxODE4MTgxODIsIDE2My43NjEzNjM2MzY0KTtcbiAgfVxufVxuLnRhbnVraS1sb2dvLmFuaW1hdGUgLmxlZnQtY2hlZWsge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBhbmltYXRlLXRhbnVraS1sZWZ0LWNoZWVrO1xuICBhbmltYXRpb24tbmFtZTogYW5pbWF0ZS10YW51a2ktbGVmdC1jaGVlaztcbn1cbkBrZXlmcmFtZXMgYW5pbWF0ZS10YW51a2ktbGVmdC1jaGVlayB7XG4gIDI1JSwgNzUlIHtcbiAgICBmaWxsOiAjZmM2ZDI2O1xuICB9XG4gIDEwMCUge1xuICAgIGZpbGw6IHJnYigyNTMuNzM4NjM2MzYzNiwgMTkzLjYxMzYzNjM2MzYsIDE2My43NjEzNjM2MzY0KTtcbiAgfVxufVxuXG4uanMtaGlnaGxpZ2h0IHtcbiAgY29sb3I6IHZhcigtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtdGV4dC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi5qcy1oaWdobGlnaHQtYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtYWN0aXZlLXRleHQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1maW5kLWFuZC1yZXBsYWNlLW1hdGNoLWFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cblxuLmRpdi1kcm9wem9uZS13cmFwcGVyIC5kaXYtZHJvcHpvbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZGl2LWRyb3B6b25lLXdyYXBwZXIgLmRpdi1kcm9wem9uZSAuZGl2LWRyb3B6b25lLWhvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tdG9wOiAtMTEuNXB4O1xuICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gIG9wYWNpdHk6IDA7XG4gIGZvbnQtc2l6ZTogMzBweDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4uZGl2LWRyb3B6b25lLXdyYXBwZXIgLmRpdi1kcm9wem9uZSAuZGl2LWRyb3B6b25lLWljb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG4uZGl2LWRyb3B6b25lLXdyYXBwZXIgLmRpdi1kcm9wem9uZSAuZHotcHJldmlldyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5uYXYtbGlua3MgbGkubWQtaGVhZGVyLXRvb2xiYXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm5hdi1saW5rcyBsaS5tZC1oZWFkZXItdG9vbGJhci5hY3RpdmUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAubmF2LWxpbmtzIGxpLm1kLWhlYWRlci10b29sYmFyLmFjdGl2ZSB7XG4gICAgZmxleDogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAubmF2LWxpbmtzIGxpLm1kLWhlYWRlci10b29sYmFyLmFjdGl2ZSB7XG4gICAgZmxleDogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tdG9wOiA4cHg7XG4gIH1cbn1cblxuLnJlZmVyZW5jZWQtdXNlcnMge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBwYWRkaW5nOiAwIDE2cHggOHB4O1xufVxuXG4ucmVmZXJlbmNlZC1jb21tYW5kcyB7XG4gIGJhY2tncm91bmQ6ICNlOGYyZmQ7XG4gIHBhZGRpbmc6IDhweCAxNnB4O1xuICBib3JkZXItcmFkaXVzOiAwIDAgY2FsYygwLjI1cmVtIC0gMXB4KSBjYWxjKDAuMjVyZW0gLSAxcHgpO1xufVxuLnJlZmVyZW5jZWQtY29tbWFuZHMgcCB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm1kLXByZXZpZXctaG9sZGVyIHtcbiAgbWluLWhlaWdodDogMTc3cHg7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLm1hcmtkb3duLWFyZWEge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBtaW4taGVpZ2h0OiAxNDBweDtcbiAgbWF4LWhlaWdodDogNTAwcHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHJlc2l6ZTogbm9uZSAhaW1wb3J0YW50O1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC1ib3JkZXItc3VidGxlO1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi1ib3gtc2hhZG93O1xufVxuXG4ubWQtc3VnZ2VzdGlvbi1kaWZmIHtcbiAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgQGFwcGx5IGdsLWJvcmRlciAhaW1wb3J0YW50O1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNlY3Rpb24gIWltcG9ydGFudDtcbn1cbi5tZC1zdWdnZXN0aW9uLWRpZmYgdGQge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cbi5tZC1zdWdnZXN0aW9uLWRpZmYgdHIub2xkIHRkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4uc3VnZ2VzdGlvbnMubWQgPiAubWFya2Rvd24tY29kZS1ibG9jayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm1kLXN1Z2dlc3Rpb24taGVhZGVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBAYXBwbHkgZ2wtYmctc2VjdGlvbjtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1zZWN0aW9uO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtIDAuMjVyZW0gMCAwO1xufVxuXG4vKiB0aGVzZSB0d28gc3R5bGVzIGFyZSBpbXBvcnRhbnQgdG8gcHJldmVudCBjZXJ0YWluIExhVGVYIGZyb21cbiAgIGhpamFja2luZyBhIHBhZ2U6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL2lzc3Vlcy8zOTQ3NzBcbiovXG4ubWF0aC1jb250ZW50LWlubGluZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuXG4ubWF0aC1jb250ZW50LWRpc3BsYXkge1xuICBvdmVyZmxvdzogYXV0bztcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnJlZmVyZW5jZWQtdXNlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5yZWZlcmVuY2VkLXVzZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cbi5tZC1hcmVhLXdyYXBwZXItZmlsbCxcbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAubWQtY29udGVudC1lZGl0b3Itd3JhcHBlcixcbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAubWQtY29udGVudC1lZGl0b3Itd3JhcHBlciAuY29udGVudC1lZGl0b3ItYm9keSxcbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAubWQtY29udGVudC1lZGl0b3Itd3JhcHBlciAubWQsXG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLm1kLWFyZWEsXG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLm1kLXdyaXRlLWhvbGRlcixcbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAubWQtcHJldmlldy1ob2xkZXIsXG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLnplbi1iYWNrZHJvcCxcbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAuZGl2LWRyb3B6b25lLXdyYXBwZXIsXG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLmRpdi1kcm9wem9uZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXg6IDEgMSAwO1xuICBtaW4taGVpZ2h0OiAwO1xufVxuLm1kLWFyZWEtd3JhcHBlci1maWxsIC5tZC1jb250ZW50LWVkaXRvci13cmFwcGVyID4gLm1kLWFyZWEge1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLm1kLWFyZWEtd3JhcHBlci1maWxsIC5tZCAuUHJvc2VNaXJyb3Ige1xuICBmbGV4OiAxIDEgMDtcbiAgb3ZlcmZsb3cteTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xufVxuLm1kLWFyZWEtd3JhcHBlci1maWxsIC5tYXJrZG93bi1hcmVhLm5vdGUtdGV4dGFyZWEge1xuICBmbGV4OiAxIDEgMDtcbiAgbWluLWhlaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG4gIHJlc2l6ZTogbm9uZSAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG59XG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLm1kLXByZXZpZXctaG9sZGVyIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAubWQtYXJlYSxcbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAubWQtYXJlYTpmb2N1cy13aXRoaW4sXG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLm1kLWFyZWE6aG92ZXIsXG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLm1kLWFyZWEtd3JhcHBlcixcbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAuemVuLWJhY2tkcm9wLFxuLm1kLWFyZWEtd3JhcHBlci1maWxsIC5kaXYtZHJvcHpvbmUtd3JhcHBlcixcbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAuZGl2LWRyb3B6b25lIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cbi5tZC1hcmVhLXdyYXBwZXItZmlsbCAubWQtd3JpdGUtaG9sZGVyIHRleHRhcmVhOmZvY3VzLXZpc2libGUsXG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLnplbi1iYWNrZHJvcDpub3QoLmZ1bGxzY3JlZW4pIHRleHRhcmVhOmZvY3VzLXZpc2libGUsXG4ubWQtYXJlYS13cmFwcGVyLWZpbGwgLm1kIC5Qcm9zZU1pcnJvcjpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5tZWRpYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xufVxuXG4ubWVkaWEtYm9keSB7XG4gIGZsZXg6IDE7XG59XG5cbi5tb2RhbC1oZWFkZXIgLnBhZ2UtdGl0bGUsXG4ubW9kYWwtaGVhZGVyIC5tb2RhbC10aXRsZSB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4ubW9kYWwtaGVhZGVyIC5wYWdlLXRpdGxlIC5tb2RhbC10aXRsZS13aXRoLWxhYmVsIHNwYW4sXG4ubW9kYWwtaGVhZGVyIC5tb2RhbC10aXRsZSAubW9kYWwtdGl0bGUtd2l0aC1sYWJlbCBzcGFuIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm1vZGFsLWhlYWRlciAubW9kYWwtdGl0bGUge1xuICBsaW5lLWhlaWdodDogMS41cmVtO1xufVxuLm1vZGFsLWhlYWRlciAubW9kYWwtdGl0bGUuZ2wtbWF4LXctZnVsbCwgLm1vZGFsLWhlYWRlciAubW9kYWwtdGl0bGUuZ2wtdy1mdWxsIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi5tb2RhbC1oZWFkZXIgLmNsb3NlIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIGNvbG9yOiAjMjgyNzJkO1xuICBvcGFjaXR5OiAxO1xufVxuXG4ubW9kYWwtYm9keSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogODBweDtcbiAgcGFkZGluZzogMXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cbi5tb2RhbC1ib2R5IC5mb3JtLWFjdGlvbnMge1xuICBtYXJnaW46IDFyZW0gLTFyZW0gLTFyZW07XG59XG5cbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xufVxuLm1vZGFsLWZvb3RlciAuYnRuIHtcbiAgbWFyZ2luOiAwO1xufVxuLm1vZGFsLWZvb3RlciAuYnRuICsgLmJ0bixcbi5tb2RhbC1mb290ZXIgLmJ0biArIC5idG4tZ3JvdXAsXG4ubW9kYWwtZm9vdGVyIC5idG4tZ3JvdXAgKyAuYnRuLFxuLm1vZGFsLWZvb3RlciAuYnRuLWdyb3VwICsgLmJ0bi1ncm91cCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4ubW9kYWwtZm9vdGVyIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICBtYXJnaW4tbGVmdDogLTFweDtcbn1cbkBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAubW9kYWwtZm9vdGVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIC5tb2RhbC1mb290ZXIgLmJ0bi1ncm91cCAuYnRuICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG5ib2R5Lm1vZGFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tb2RhbC1vcGVuIC5tb2RhbC1iYWNrZHJvcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tb2RhbCB7XG4gIEBhcHBseSBnbC1iZy1vdmVybGF5O1xufVxuLm1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtMnhsO1xufVxuLm1vZGFsIC5tb2RhbC1jb250ZW50ID4gOmZpcnN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdC0yeGw7XG59XG4ubW9kYWwgLm1vZGFsLWNvbnRlbnQgPiA6bGFzdC1jaGlsZCB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWItMnhsO1xufVxuXG4uY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG5cbi5jYXJkLXNsaW0ge1xuICBtYXJnaW4tYm90dG9tOiA2cHg7XG59XG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6IDZweCAxNnB4O1xuICBsaW5lLWhlaWdodDogMzZweDtcbn1cbi5jYXJkLWhlYWRlciAuY29udHJvbHMge1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBmbG9hdDogcmlnaHQ7XG59XG4uY2FyZC1oZWFkZXIgLmRyb3Bkb3duLW1lbnUtdG9nZ2xlIHtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG4uY2FyZC1oZWFkZXIgLmJhZGdlLmJhZGdlLXBpbGwge1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBtYXJnaW4tbGVmdDogNXB4O1xufVxuLmNhcmQtaGVhZGVyLnNwbGl0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5jYXJkLWhlYWRlciAubGVmdCB7XG4gIGZsZXg6IDEgMSBhdXRvO1xufVxuLmNhcmQtaGVhZGVyIC5yaWdodCB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6IDE2cHg7XG59XG4uY2FyZC1ib2R5IC5mb3JtLWFjdGlvbnMge1xuICBtYXJnaW46IC0xNnB4O1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG4ucG9wdXA6OmJlZm9yZSwgLnBvcHVwOjphZnRlciB7XG4gIGJvdHRvbTogMTAwJTtcbiAgbGVmdDogNTAlO1xuICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnBvcHVwOjpiZWZvcmUge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZWNlYmVhO1xuICBib3JkZXItd2lkdGg6IDE2cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTZweDtcbn1cbi5wb3B1cDo6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjZjdmN2Y1O1xuICBib3JkZXItd2lkdGg6IDE1cHg7XG4gIG1hcmdpbi1sZWZ0OiAtMTVweDtcbn1cbi5wb3B1cCB7XG4gIHBhZGRpbmc6IDE2cHg7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlY2ViZWE7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDhweCByZ2JhKDkwLCA5MCwgOTAsIDAuMDUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5uYXYtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGhlaWdodDogYXV0bztcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xufVxuLm5hdi1saW5rcyBsaTpub3QoLm1kLWhlYWRlci10b29sYmFyKSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubmF2LWxpbmtzIGxpOm5vdCgubWQtaGVhZGVyLXRvb2xiYXIpIGEsXG4ubmF2LWxpbmtzIGxpOm5vdCgubWQtaGVhZGVyLXRvb2xiYXIpIGJ1dHRvbiB7XG4gIEBhcHBseSBnbC1weS01O1xuICBAYXBwbHkgZ2wtcHgtNDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtYm9yZGVyLTA7XG4gIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vd3JhcDtcbn1cbi5uYXYtbGlua3MgbGk6bm90KC5tZC1oZWFkZXItdG9vbGJhcikgYTpob3ZlciwgLm5hdi1saW5rcyBsaTpub3QoLm1kLWhlYWRlci10b29sYmFyKSBhOmFjdGl2ZSxcbi5uYXYtbGlua3MgbGk6bm90KC5tZC1oZWFkZXItdG9vbGJhcikgYnV0dG9uOmhvdmVyLFxuLm5hdi1saW5rcyBsaTpub3QoLm1kLWhlYWRlci10b29sYmFyKSBidXR0b246YWN0aXZlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1kZWZhdWx0KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMnB4IDAgMCB2YXIoLS1nbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQpO1xufVxuLm5hdi1saW5rcyBsaTpub3QoLm1kLWhlYWRlci10b29sYmFyKSBhOmZvY3VzLXZpc2libGUsXG4ubmF2LWxpbmtzIGxpOm5vdCgubWQtaGVhZGVyLXRvb2xiYXIpIGJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1kZWZhdWx0KTtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWdsLWZvY3VzLXJpbmctY29sb3IsIHZhcigtLWdsLXRhYi1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3ItZGVmYXVsdCkpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLm5hdi1saW5rcyBsaTpub3QoLm1kLWhlYWRlci10b29sYmFyKSBidXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ubmF2LWxpbmtzIGxpOm5vdCgubWQtaGVhZGVyLXRvb2xiYXIpLmFjdGl2ZSBhLCAubmF2LWxpbmtzIGxpOm5vdCgubWQtaGVhZGVyLXRvb2xiYXIpLmFjdGl2ZSBidXR0b24sXG4ubmF2LWxpbmtzIGxpOm5vdCgubWQtaGVhZGVyLXRvb2xiYXIpIGEuYWN0aXZlIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMnB4IDAgMCB2YXIoLS1nbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQpO1xufVxuLm5hdi1saW5rcyBsaTpub3QoLm1kLWhlYWRlci10b29sYmFyKS5hY3RpdmUgYSAuYmFkZ2UuYmFkZ2UtcGlsbCwgLm5hdi1saW5rcyBsaTpub3QoLm1kLWhlYWRlci10b29sYmFyKS5hY3RpdmUgYnV0dG9uIC5iYWRnZS5iYWRnZS1waWxsLFxuLm5hdi1saW5rcyBsaTpub3QoLm1kLWhlYWRlci10b29sYmFyKSBhLmFjdGl2ZSAuYmFkZ2UuYmFkZ2UtcGlsbCB7XG4gIEBhcHBseSBnbC1mb250LWJvbGQ7XG4gIGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cblxuLnRvcC1hcmVhIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRvcC1hcmVhIHtcbiAgICBmbGV4LWZsb3c6IGNvbHVtbi1yZXZlcnNlIHdyYXA7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudG9wLWFyZWEge1xuICAgIGZsZXgtZmxvdzogY29sdW1uLXJldmVyc2Ugd3JhcDtcbiAgfVxufVxuLnRvcC1hcmVhIC5uYXYtdGV4dCB7XG4gIGZsZXg6IDE7XG4gIHBhZGRpbmctdG9wOiAxNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMjhweDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRvcC1hcmVhIC5uYXYtdGV4dCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudG9wLWFyZWEgLm5hdi10ZXh0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLnRvcC1hcmVhIC5uYXYtbGlua3Mge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBmbGV4OiAxO1xufVxuLnRvcC1hcmVhIC5uYXYtbGlua3Mud2lkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi50b3AtYXJlYSAubmF2LWxpbmtzLnNjcm9sbGluZy10YWJzIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWxpbmtzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYSAubmF2LWxpbmtzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgPiAuYnRuLFxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgPiAuYnRuLWdyb3VwLFxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgPiAuYnRuLWNvbnRhaW5lcixcbi50b3AtYXJlYSAubmF2LWNvbnRyb2xzID4gLmRyb3Bkb3duLFxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgPiAuZ2wtbmV3LWRyb3Bkb3duLFxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgPiBpbnB1dCxcbi50b3AtYXJlYSAubmF2LWNvbnRyb2xzID4gZm9ybSB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgPiAuYnRuOmxhc3QtY2hpbGQsXG4udG9wLWFyZWEgLm5hdi1jb250cm9scyA+IC5idG4tZ3JvdXA6bGFzdC1jaGlsZCxcbi50b3AtYXJlYSAubmF2LWNvbnRyb2xzID4gLmJ0bi1jb250YWluZXI6bGFzdC1jaGlsZCxcbi50b3AtYXJlYSAubmF2LWNvbnRyb2xzID4gLmRyb3Bkb3duOmxhc3QtY2hpbGQsXG4udG9wLWFyZWEgLm5hdi1jb250cm9scyA+IC5nbC1uZXctZHJvcGRvd246bGFzdC1jaGlsZCxcbi50b3AtYXJlYSAubmF2LWNvbnRyb2xzID4gaW5wdXQ6bGFzdC1jaGlsZCxcbi50b3AtYXJlYSAubmF2LWNvbnRyb2xzID4gZm9ybTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBmbG9hdDogcmlnaHQ7XG59XG4udG9wLWFyZWEgLm5hdi1jb250cm9scyA+IC5idG4tZ3JvdXBlZCB7XG4gIGZsb2F0OiBub25lO1xufVxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgLmljb24tbGFiZWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEgLm5hdi1jb250cm9scyB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDhweDtcbiAgfVxufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEgLm5hdi1jb250cm9scyB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgLmJ0bi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICAgIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMge1xuICAgIC8qIFRoaXMgcmVzZXRzIHRoZSB3aWR0aCBvZiB0aGUgY29udHJvbCBzbyB0aGF0IHRoZSBzZWFyY2ggYnV0dG9uIGRvZXNuJ3Qgd3JhcCAqL1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzIC5nbC1zZWFyY2gtYm94LWJ5LWNsaWNrIC5mb3JtLWNvbnRyb2wge1xuICAgIHdpZHRoOiAxJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEgLm5hdi1jb250cm9scyAuZHJvcGRvd24tbWVudS10b2dnbGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgZm9ybSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEgLm5hdi1jb250cm9scyBmb3JtIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzIC5pY29uLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMuaW5saW5lIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IC5idG4sXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IC5idG4tY29udGFpbmVyLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEgLm5hdi1jb250cm9scy5pbmxpbmUgPiAuZHJvcGRvd24sXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IGlucHV0LFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEgLm5hdi1jb250cm9scy5pbmxpbmUgPiBmb3JtIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IC5idG46Zmlyc3QtY2hpbGQsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IC5idG4tY29udGFpbmVyOmZpcnN0LWNoaWxkLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEgLm5hdi1jb250cm9scy5pbmxpbmUgPiAuZHJvcGRvd246Zmlyc3QtY2hpbGQsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IGlucHV0OmZpcnN0LWNoaWxkLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEgLm5hdi1jb250cm9scy5pbmxpbmUgPiBmb3JtOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudG9wLWFyZWEgLm5hdi1jb250cm9scyAuYnRuLmRyb3Bkb3duLXRvZ2dsZS1zcGxpdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDFweDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudG9wLWFyZWEgLm5hdi1jb250cm9scyB7XG4gICAgLyogVGhpcyByZXNldHMgdGhlIHdpZHRoIG9mIHRoZSBjb250cm9sIHNvIHRoYXQgdGhlIHNlYXJjaCBidXR0b24gZG9lc24ndCB3cmFwICovXG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgLmdsLXNlYXJjaC1ib3gtYnktY2xpY2sgLmZvcm0tY29udHJvbCB7XG4gICAgd2lkdGg6IDElO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzIC5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudG9wLWFyZWEgLm5hdi1jb250cm9scyBmb3JtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzIGZvcm0gaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMgLmljb24tbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudG9wLWFyZWEgLm5hdi1jb250cm9scy5pbmxpbmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMuaW5saW5lID4gLmJ0bixcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMuaW5saW5lID4gLmJ0bi1jb250YWluZXIsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IC5kcm9wZG93bixcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMuaW5saW5lID4gaW5wdXQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IGZvcm0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIG1hcmdpbjogMCAwIDEwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMuaW5saW5lID4gLmJ0bjpmaXJzdC1jaGlsZCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMuaW5saW5lID4gLmJ0bi1jb250YWluZXI6Zmlyc3QtY2hpbGQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IC5kcm9wZG93bjpmaXJzdC1jaGlsZCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRvcC1hcmVhIC5uYXYtY29udHJvbHMuaW5saW5lID4gaW5wdXQ6Zmlyc3QtY2hpbGQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYSAubmF2LWNvbnRyb2xzLmlubGluZSA+IGZvcm06Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG4udG9wLWFyZWEuYWRqdXN0IC5uYXYtdGV4dCxcbi50b3AtYXJlYS5hZGp1c3QgLm5hdi1jb250cm9scyB7XG4gIHdpZHRoOiBhdXRvO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudG9wLWFyZWEuYWRqdXN0IC5uYXYtdGV4dCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRvcC1hcmVhLmFkanVzdCAubmF2LWNvbnRyb2xzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b3AtYXJlYS5hZGp1c3QgLm5hdi10ZXh0LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudG9wLWFyZWEuYWRqdXN0IC5uYXYtY29udHJvbHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4udG9wLWFyZWEubXVsdGktbGluZSAubmF2LXRleHQge1xuICBsaW5lLWhlaWdodDogMjBweDtcbn1cbi50b3AtYXJlYS5tdWx0aS1saW5lIC5uYXYtY29udHJvbHMge1xuICBwYWRkaW5nOiAxN3B4IDA7XG59XG4udG9wLWFyZWEgcHJlIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zY3JvbGxpbmctdGFicy1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubWVyZ2UtcmVxdWVzdC10YWJzLWNvbnRhaW5lciAuc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5zY3JvbGxpbmctdGFicy1jb250YWluZXIgLm5hdi1saW5rcyB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cbi5zY3JvbGxpbmctdGFicy1jb250YWluZXIgLm5hdi1saW5rczo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNjcm9sbGluZy10YWJzLWNvbnRhaW5lciAuZmFkZS1sZWZ0OjphZnRlcixcbi5zY3JvbGxpbmctdGFicy1jb250YWluZXIgLmZhZGUtcmlnaHQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHotaW5kZXg6IC0xO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG59XG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIC5mYWRlLXJpZ2h0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTJweDtcbiAgd2lkdGg6IDQzcHg7XG4gIGhlaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgI2Y3ZjdmNSA0NSUsIHJnYmEoMjQ3LCAyNDcsIDI0NSwgMC40KSk7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zY3JvbGxpbmctdGFicy1jb250YWluZXIgLmZhZGUtcmlnaHQ6aG92ZXIge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIC5mYWRlLXJpZ2h0LnNjcm9sbGluZyB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG59XG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIC5mYWRlLXJpZ2h0IHN2ZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMnB4O1xuICBmb250LXNpemU6IDE4cHg7XG59XG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIC5mYWRlLXJpZ2h0IHtcbiAgcmlnaHQ6IC01cHg7XG59XG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIC5mYWRlLXJpZ2h0IHN2ZyB7XG4gIHJpZ2h0OiAtN3B4O1xufVxuLnNjcm9sbGluZy10YWJzLWNvbnRhaW5lciAuZmFkZS1yaWdodDo6YWZ0ZXIge1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgI2ZmZiwgdHJhbnNwYXJlbnQpO1xufVxuLnNjcm9sbGluZy10YWJzLWNvbnRhaW5lciAuZmFkZS1sZWZ0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTJweDtcbiAgd2lkdGg6IDQzcHg7XG4gIGhlaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmN2Y3ZjUgNDUlLCByZ2JhKDI0NywgMjQ3LCAyNDUsIDAuNCkpO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIC5mYWRlLWxlZnQ6aG92ZXIge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIC5mYWRlLWxlZnQuc2Nyb2xsaW5nIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbn1cbi5zY3JvbGxpbmctdGFicy1jb250YWluZXIgLmZhZGUtbGVmdCBzdmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTJweDtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuLnNjcm9sbGluZy10YWJzLWNvbnRhaW5lciAuZmFkZS1sZWZ0IHtcbiAgbGVmdDogLTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnNjcm9sbGluZy10YWJzLWNvbnRhaW5lciAuZmFkZS1sZWZ0IHN2ZyB7XG4gIGxlZnQ6IC03cHg7XG59XG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIC5mYWRlLWxlZnQ6OmFmdGVyIHtcbiAgbGVmdDogMDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCAjZmZmLCB0cmFuc3BhcmVudCk7XG59XG5cbi5pbm5lci1wYWdlLXNjcm9sbC10YWJzIC5mYWRlLXJpZ2h0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTJweDtcbiAgd2lkdGg6IDQzcHg7XG4gIGhlaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgI2ZmZiA0NSUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KSk7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5pbm5lci1wYWdlLXNjcm9sbC10YWJzIC5mYWRlLXJpZ2h0OmhvdmVyIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLmlubmVyLXBhZ2Utc2Nyb2xsLXRhYnMgLmZhZGUtcmlnaHQuc2Nyb2xsaW5nIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbn1cbi5pbm5lci1wYWdlLXNjcm9sbC10YWJzIC5mYWRlLXJpZ2h0IHN2ZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMnB4O1xuICBmb250LXNpemU6IDE4cHg7XG59XG4uaW5uZXItcGFnZS1zY3JvbGwtdGFicyAuZmFkZS1yaWdodCB7XG4gIHJpZ2h0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5pbm5lci1wYWdlLXNjcm9sbC10YWJzIC5mYWRlLXJpZ2h0IHN2ZyB7XG4gIHJpZ2h0OiA1cHg7XG59XG4uaW5uZXItcGFnZS1zY3JvbGwtdGFicyAuZmFkZS1sZWZ0IHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTJweDtcbiAgd2lkdGg6IDQzcHg7XG4gIGhlaWdodDogMzBweDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICNmZmYgNDUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCkpO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uaW5uZXItcGFnZS1zY3JvbGwtdGFicyAuZmFkZS1sZWZ0OmhvdmVyIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLmlubmVyLXBhZ2Utc2Nyb2xsLXRhYnMgLmZhZGUtbGVmdC5zY3JvbGxpbmcge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xufVxuLmlubmVyLXBhZ2Utc2Nyb2xsLXRhYnMgLmZhZGUtbGVmdCBzdmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTJweDtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuLmlubmVyLXBhZ2Utc2Nyb2xsLXRhYnMgLmZhZGUtbGVmdCB7XG4gIGxlZnQ6IDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4uaW5uZXItcGFnZS1zY3JvbGwtdGFicyAuZmFkZS1sZWZ0IHN2ZyB7XG4gIGxlZnQ6IDVweDtcbn1cbi5pbm5lci1wYWdlLXNjcm9sbC10YWJzIC5mYWRlLXJpZ2h0LFxuLmlubmVyLXBhZ2Utc2Nyb2xsLXRhYnMgLmZhZGUtbGVmdCB7XG4gIHRvcDogYXV0bztcbn1cbi5pbm5lci1wYWdlLXNjcm9sbC10YWJzLmlzLXNtYWxsZXIgLmZhZGUtcmlnaHQsXG4uaW5uZXItcGFnZS1zY3JvbGwtdGFicy5pcy1zbWFsbGVyIC5mYWRlLWxlZnQge1xuICB0b3A6IDExcHg7XG59XG5cbi5uYXYtYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubmF2LWJsb2NrIC5uYXYtbGlua3Mge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4ubmF2LWJsb2NrIC5uYXYtbGlua3M6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5uYXYtYmxvY2sgLm5hdi1saW5rcyAuZmFkZS1yaWdodCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEycHg7XG4gIHdpZHRoOiA0M3B4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGxlZnQsICNmZmYgNDUlLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCkpO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4ubmF2LWJsb2NrIC5uYXYtbGlua3MgLmZhZGUtcmlnaHQ6aG92ZXIge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4ubmF2LWJsb2NrIC5uYXYtbGlua3MgLmZhZGUtcmlnaHQuc2Nyb2xsaW5nIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbn1cbi5uYXYtYmxvY2sgLm5hdi1saW5rcyAuZmFkZS1yaWdodCBzdmcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTJweDtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuLm5hdi1ibG9jayAubmF2LWxpbmtzIC5mYWRlLXJpZ2h0IHtcbiAgcmlnaHQ6IC01cHg7XG59XG4ubmF2LWJsb2NrIC5uYXYtbGlua3MgLmZhZGUtcmlnaHQgc3ZnIHtcbiAgcmlnaHQ6IC03cHg7XG59XG4ubmF2LWJsb2NrIC5uYXYtbGlua3MgLmZhZGUtbGVmdCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEycHg7XG4gIHdpZHRoOiA0M3B4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAjZmZmIDQ1JSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpKTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLm5hdi1ibG9jayAubmF2LWxpbmtzIC5mYWRlLWxlZnQ6aG92ZXIge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG4ubmF2LWJsb2NrIC5uYXYtbGlua3MgLmZhZGUtbGVmdC5zY3JvbGxpbmcge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjNzO1xufVxuLm5hdi1ibG9jayAubmF2LWxpbmtzIC5mYWRlLWxlZnQgc3ZnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEycHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbn1cbi5uYXYtYmxvY2sgLm5hdi1saW5rcyAuZmFkZS1sZWZ0IHtcbiAgbGVmdDogLTVweDtcbn1cbi5uYXYtYmxvY2sgLm5hdi1saW5rcyAuZmFkZS1sZWZ0IHN2ZyB7XG4gIGxlZnQ6IC03cHg7XG59XG4ubmF2LWJsb2NrLmFjdGl2aXRpZXMge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5uYXYtYmxvY2suYWN0aXZpdGllcyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAubmF2LWJsb2NrLmFjdGl2aXRpZXMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG59XG4ubmF2LWJsb2NrLmFjdGl2aXRpZXMgLm5hdi1saW5rcyB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jb250ZW50LXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbn1cbi5jb250ZW50LXdyYXBwZXIgLmNvbnRhaW5lci1mbHVpZCwgLmNvbnRlbnQtd3JhcHBlciAuY29udGFpbmVyLXNtLCAuY29udGVudC13cmFwcGVyIC5jb250YWluZXItbWQsIC5jb250ZW50LXdyYXBwZXIgLmNvbnRhaW5lci1sZywgLmNvbnRlbnQtd3JhcHBlciAuY29udGFpbmVyLXhsIHtcbiAgQGFwcGx5IGdsLXB5LTA7XG4gIEBhcHBseSBnbC1weC1bLS1jb250YWluZXItcGFkZGluZy14XTtcbn1cblxuLnBhZ2UtaW5pdGlhbGlzZWQgLmNvbnRlbnQtd3JhcHBlciB7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLXBhZGRpbmc7XG59XG5cbi5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5AY29udGFpbmVyIGNvbnRlbnQtcGFuZWxzICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQ6bm90KC5pcy1tZXJnZS1yZXF1ZXN0KSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1sO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZDpub3QoLmlzLW1lcmdlLXJlcXVlc3QpOm5vdCgud2lraS1zaWRlYmFyKTpub3QoLmJ1aWxkLXNpZGViYXIpOm5vdCguaXNzdWFibGUtYnVsay11cGRhdGUtc2lkZWJhcikgLnBhbmVsLWNvbnRlbnQtaW5uZXIge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYycHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkOm5vdCguaXMtbWVyZ2UtcmVxdWVzdCkge1xuICAgIEBhcHBseSBnbC1ib3JkZXItbDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQ6bm90KC5pcy1tZXJnZS1yZXF1ZXN0KTpub3QoLndpa2ktc2lkZWJhcik6bm90KC5idWlsZC1zaWRlYmFyKTpub3QoLmlzc3VhYmxlLWJ1bGstdXBkYXRlLXNpZGViYXIpIC5wYW5lbC1jb250ZW50LWlubmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2MnB4O1xuICB9XG59XG4ucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLnNpZGViYXItY29sbGFwc2VkLWljb24gLmJ0biB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG4ucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLnNpZGViYXItY29sbGFwc2VkLWljb246bm90KC5kaXNhYmxlZCkge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLnNpZGViYXItY29sbGFwc2VkLWljb24gc3ZnIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbn1cbi5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAucmlnaHQtc2lkZWJhci1oZWFkZXIge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi5yaWdodC1zaWRlYmFyLWV4cGFuZGVkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgei1pbmRleDogMzAwO1xufVxuLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLnJpZ2h0LXNpZGViYXItaGVhZGVyIHtcbiAgcGFkZGluZy1ibG9jazogMC43NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG4ucmlnaHQtc2lkZWJhci1leHBhbmRlZCAuaW5saW5lLWJsb2NrIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gIHdpZHRoOiAyOTBweDtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5yaWdodC1zaWRlYmFyLWV4cGFuZGVkLnJpZ2h0LXNpZGViYXItbWVyZ2UtcmVxdWVzdHMge1xuICAgIHotaW5kZXg6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gICAgei1pbmRleDogYXV0bztcbiAgfVxufVxuLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyAuc2hvcnRjdXQtc2lkZWJhci1kcm9wZG93bi10b2dnbGUge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cbkBjb250YWluZXIgY29udGVudC1wYW5lbHMgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5yaWdodC1zaWRlYmFyLWV4cGFuZGVkOm5vdCgud2lraS1zaWRlYmFyLCAuYnVpbGQtc2lkZWJhciwgLmlzLW1lcmdlLXJlcXVlc3QpIC5wYW5lbC1jb250ZW50LWlubmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyOTBweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucmlnaHQtc2lkZWJhci1leHBhbmRlZDpub3QoLndpa2ktc2lkZWJhciwgLmJ1aWxkLXNpZGViYXIsIC5pcy1tZXJnZS1yZXF1ZXN0KSAucGFuZWwtY29udGVudC1pbm5lciB7XG4gICAgcGFkZGluZy1yaWdodDogMjkwcHg7XG4gIH1cbn1cblxuLnJpZ2h0LXNpZGViYXI6d2hlcmUoLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQpIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1sO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cbn1cblxuLmlzc3Vlcy1idWxrLXVwZGF0ZS5yaWdodC1zaWRlYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDI5MHB4O1xuICB3aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgQGFwcGx5IGdsLXRyYW5zaXRpb24td2lkdGg7XG59XG4uaXNzdWVzLWJ1bGstdXBkYXRlLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1leHBhbmRlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAyOTBweDtcbiAgd2lkdGg6IDI5MHB4O1xufVxuLmlzc3Vlcy1idWxrLXVwZGF0ZS5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyIHtcbiAgcGFkZGluZzogMTFweCAwO1xufVxuLmlzc3Vlcy1idWxrLXVwZGF0ZS5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLmJsb2NrOmxhc3Qtb2YtdHlwZSB7XG4gIGJvcmRlcjogMDtcbn1cbi5pc3N1ZXMtYnVsay11cGRhdGUucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAyOTBweDtcbiAgd2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uaXNzdWVzLWJ1bGstdXBkYXRlLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLmJsb2NrIHtcbiAgcGFkZGluZzogMTZweCAwO1xuICB3aWR0aDogMjUwcHg7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbn1cbi5pc3N1ZXMtYnVsay11cGRhdGUucmlnaHQtc2lkZWJhciAuaXNzdWFibGUtc2lkZWJhciB7XG4gIHBhZGRpbmc6IDAgM3B4O1xufVxuLmlzc3Vlcy1idWxrLXVwZGF0ZS5yaWdodC1zaWRlYmFyIC5ibG9jayB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uaXNzdWVzLWJ1bGstdXBkYXRlLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWwtMDtcbn1cblxuLmlzc3VhYmxlLXNpZGViYXIgLmxhYmVscyAudmFsdWUuZG9udC1oaWRlIH4gLnNlbGVjdGJveCB7XG4gIHBhZGRpbmctdG9wOiA4cHg7XG59XG4uaXNzdWFibGUtc2lkZWJhciAubGFiZWxzIC50aXRsZSAuZ2wtYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5pc3N1YWJsZS1zaWRlYmFyIC5sYWJlbHMgLnRpdGxlIC5nbC1idXR0b24gLmdsLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5zaWRlYmFyLWNvbGxhcHNlZC1pY29uIHtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4udG9nZ2xlLXJpZ2h0LXNpZGViYXItYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXRyYW5zaXRpb24td2lkdGg7XG4gIGhlaWdodDogNDhweDtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBib3JkZXI6IDA7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xufVxuLnRvZ2dsZS1yaWdodC1zaWRlYmFyLWJ1dHRvbjpob3ZlciB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5lZGl0LWxpbmsge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjI1cmVtO1xufVxuXG4uaXNzdWFibGUtc2lkZWJhci5pcy1tZXJnZS1yZXF1ZXN0IC5lZGl0LWxpbmsge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5hc3NpZ25lZS1ncmlkIHtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJhdHRlbnRpb24gdXNlclwiO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbi1jb250ZW50IDFmcjtcbn1cblxuLnJldmlld2VyLWdyaWQge1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcInVzZXIgYXBwcm92YWwgcmVyZXF1ZXN0IHJlbW92ZVwiO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbn1cblxuLnJldmlld2Vycy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsLFxuLnNpZGViYXItZHJvcGRvd24td2lkZ2V0LWxpc3Rib3ggLmdsLW5ldy1kcm9wZG93bi1wYW5lbCB7XG4gIG1pbi13aWR0aDogMjc0cHg7XG59XG5cbi5tZXJnZS1yZXF1ZXN0LWFwcHJvdmVkLWljb24ge1xuICBhbmltYXRpb246IGFwcHJvdmFsLWFuaW1hdGUgMzUwbXMgZWFzZS1pbjtcbn1cblxuQGtleWZyYW1lcyBhcHByb3ZhbC1hbmltYXRlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuLmFzc2lnbmVlLWdyaWQgW2RhdGEtY3NzLWFyZWE9dXNlcl0sXG4ucmV2aWV3ZXItZ3JpZCBbZGF0YS1jc3MtYXJlYT11c2VyXSB7XG4gIGdyaWQtYXJlYTogdXNlcjtcbn1cblxuLnJpZ2h0LXNpZGViYXI6bm90KC5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiB2YXIoLS1zeXN0ZW0tZm9vdGVyLWhlaWdodCk7XG4gIHJpZ2h0OiB2YXIoLS1zY3JvbGxiYXItd2lkdGgsIDApO1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgei1pbmRleDogMjAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi13aWR0aDtcbiAgdG9wOiBjYWxjKGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSkgKyB2YXIoLS10b3AtYmFyLWhlaWdodCkpO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAucmlnaHQtc2lkZWJhcjpub3QoLnJpZ2h0LXNpZGViYXItbWVyZ2UtcmVxdWVzdHMpIHtcbiAgICB6LWluZGV4OiAyNTE7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucmlnaHQtc2lkZWJhcjpub3QoLnJpZ2h0LXNpZGViYXItbWVyZ2UtcmVxdWVzdHMpIHtcbiAgICB6LWluZGV4OiAyNTE7XG4gIH1cbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGJvdHRvbTogdmFyKC0tc3lzdGVtLWZvb3Rlci1oZWlnaHQpO1xuICAgIHJpZ2h0OiB2YXIoLS1zY3JvbGxiYXItd2lkdGgsIDApO1xuICAgIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICAgIHotaW5kZXg6IDIwMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBhcHBseSBnbC10cmFuc2l0aW9uLXdpZHRoO1xuICAgIHRvcDogY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKTtcbiAgICB6LWluZGV4OiAyNTE7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm90dG9tOiB2YXIoLS1zeXN0ZW0tZm9vdGVyLWhlaWdodCk7XG4gICAgcmlnaHQ6IHZhcigtLXNjcm9sbGJhci13aWR0aCwgMCk7XG4gICAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gICAgei1pbmRleDogMjAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGFwcGx5IGdsLXRyYW5zaXRpb24td2lkdGg7XG4gICAgdG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2FsYyh2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSkpO1xuICAgIHotaW5kZXg6IDI1MTtcbiAgfVxufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzIHtcbiAgICB0b3A6IGNhbGMoY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSk7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzIHtcbiAgICB0b3A6IGNhbGMoY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSk7XG4gIH1cbn1cbi5yaWdodC1zaWRlYmFyIGE6bm90KC5idG4pIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4ucmlnaHQtc2lkZWJhciBhOm5vdCguYnRuKTpob3ZlciB7XG4gIEBhcHBseSBnbC10ZXh0LWxpbms7XG59XG4ucmlnaHQtc2lkZWJhciAuZ2wtbGFiZWwgLmdsLWxhYmVsLWxpbms6aG92ZXIge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5yaWdodC1zaWRlYmFyIC5idG4tbGluayB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLnJpZ2h0LXNpZGViYXIgLmd1dHRlci10b2dnbGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgcGFkZGluZzogNHB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbi5yaWdodC1zaWRlYmFyIC5ndXR0ZXItdG9nZ2xlOmhvdmVyIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbn1cbi5yaWdodC1zaWRlYmFyIC5ndXR0ZXItdG9nZ2xlOmhvdmVyLCAucmlnaHQtc2lkZWJhciAuZ3V0dGVyLXRvZ2dsZTpmb2N1cy12aXNpYmxlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyAuYmxvY2ssXG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzIC5zaWRlYmFyLWNvbnRhaW5lZC13aWR0aCxcbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItbWVyZ2UtcmVxdWVzdHMgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzIC5ibG9jayB7XG4gICAgcGFkZGluZzogMC43NXJlbSAwIDFyZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyAuYmxvY2sge1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMCAxcmVtO1xuICB9XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzIC5ibG9jay5wYXJ0aWNpcGFudHMge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLnJpZ2h0LXNpZGViYXIgLmJsb2NrOjphZnRlcixcbi5yaWdodC1zaWRlYmFyIC5zaWRlYmFyLWNvbnRhaW5lZC13aWR0aDo6YWZ0ZXIsXG4ucmlnaHQtc2lkZWJhciAuaXNzdWFibGUtc2lkZWJhci1oZWFkZXI6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xufVxuLnJpZ2h0LXNpZGViYXIgLmJsb2NrLFxuLnJpZ2h0LXNpZGViYXIgLnNpZGViYXItY29udGFpbmVkLXdpZHRoLFxuLnJpZ2h0LXNpZGViYXIgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyIHtcbiAgcGFkZGluZzogMC43NXJlbSAwIDFyZW07XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLWJvcmRlci1zdWJ0bGU7XG4gIHdpZHRoOiAyNTBweDtcbn1cbi5yaWdodC1zaWRlYmFyIC5ibG9jazpsYXN0LWNoaWxkLFxuLnJpZ2h0LXNpZGViYXIgLnNpZGViYXItY29udGFpbmVkLXdpZHRoOmxhc3QtY2hpbGQsXG4ucmlnaHQtc2lkZWJhciAuaXNzdWFibGUtc2lkZWJhci1oZWFkZXI6bGFzdC1jaGlsZCB7XG4gIGJvcmRlcjogMDtcbn1cbi5yaWdodC1zaWRlYmFyIC5ibG9jay5hc3NpZ25lZSAuYXV0aG9yLWxpbmssXG4ucmlnaHQtc2lkZWJhciAuc2lkZWJhci1jb250YWluZWQtd2lkdGguYXNzaWduZWUgLmF1dGhvci1saW5rLFxuLnJpZ2h0LXNpZGViYXIgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyLmFzc2lnbmVlIC5hdXRob3ItbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucmlnaHQtc2lkZWJhciAuYmxvY2suYXNzaWduZWUgLmF1dGhvci1saW5rOmhvdmVyIC5hdXRob3IsXG4ucmlnaHQtc2lkZWJhciAuc2lkZWJhci1jb250YWluZWQtd2lkdGguYXNzaWduZWUgLmF1dGhvci1saW5rOmhvdmVyIC5hdXRob3IsXG4ucmlnaHQtc2lkZWJhciAuaXNzdWFibGUtc2lkZWJhci1oZWFkZXIuYXNzaWduZWUgLmF1dGhvci1saW5rOmhvdmVyIC5hdXRob3Ige1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5yaWdodC1zaWRlYmFyIC5ibG9jay50aW1lLXRyYWNraW5nLCAucmlnaHQtc2lkZWJhciAuYmxvY2sucGFydGljaXBhbnRzLCAucmlnaHQtc2lkZWJhciAuYmxvY2suc3Vic2NyaXB0aW9ucywgLnJpZ2h0LXNpZGViYXIgLmJsb2NrLndpdGgtc3ViLWJsb2Nrcyxcbi5yaWdodC1zaWRlYmFyIC5zaWRlYmFyLWNvbnRhaW5lZC13aWR0aC50aW1lLXRyYWNraW5nLFxuLnJpZ2h0LXNpZGViYXIgLnNpZGViYXItY29udGFpbmVkLXdpZHRoLnBhcnRpY2lwYW50cyxcbi5yaWdodC1zaWRlYmFyIC5zaWRlYmFyLWNvbnRhaW5lZC13aWR0aC5zdWJzY3JpcHRpb25zLFxuLnJpZ2h0LXNpZGViYXIgLnNpZGViYXItY29udGFpbmVkLXdpZHRoLndpdGgtc3ViLWJsb2Nrcyxcbi5yaWdodC1zaWRlYmFyIC5pc3N1YWJsZS1zaWRlYmFyLWhlYWRlci50aW1lLXRyYWNraW5nLFxuLnJpZ2h0LXNpZGViYXIgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyLnBhcnRpY2lwYW50cyxcbi5yaWdodC1zaWRlYmFyIC5pc3N1YWJsZS1zaWRlYmFyLWhlYWRlci5zdWJzY3JpcHRpb25zLFxuLnJpZ2h0LXNpZGViYXIgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyLndpdGgtc3ViLWJsb2NrcyB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuLnJpZ2h0LXNpZGViYXIgLnRpdGxlIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgbGluZS1oZWlnaHQ6IDEuMjVyZW07XG59XG4ucmlnaHQtc2lkZWJhciAudGl0bGUgLmF2YXRhciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnJpZ2h0LXNpZGViYXIgLnNlbGVjdGJveCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucmlnaHQtc2lkZWJhciAuc2VsZWN0Ym94LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5yaWdodC1zaWRlYmFyIC5pc3N1YWJsZS1zaWRlYmFyIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnJpZ2h0LXNpZGViYXIgLmlzc3VhYmxlLXNpZGViYXI6bm90KC5pcy1tZXJnZS1yZXF1ZXN0KSB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5yaWdodC1zaWRlYmFyIC5pc3N1YWJsZS1zaWRlYmFyLmlzLW1lcmdlLXJlcXVlc3Qge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnJpZ2h0LXNpZGViYXIgLmlzc3VhYmxlLXNpZGViYXIuaXMtbWVyZ2UtcmVxdWVzdCB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQ6bm90KC5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzKSB7XG4gIHdpZHRoOiAyOTBweDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1leHBhbmRlZCAudmFsdWUge1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLmlzc3VhYmxlLXNpZGViYXIge1xuICBwYWRkaW5nOiAwIDIwcHg7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWV4cGFuZGVkIC5pc3N1YWJsZS1zaWRlYmFyLmlzLW1lcmdlLXJlcXVlc3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1leHBhbmRlZCAuaXNzdWFibGUtc2lkZWJhci5pcy1tZXJnZS1yZXF1ZXN0IC5pc3N1YWJsZS1jb250ZXh0LWZvcm0ge1xuICAgIHRvcDogY2FsYygyLjVyZW0gKyAxLjVyZW0gKyAwLjI1cmVtICsgMXB4KTtcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tcGFuZWwtY29udGVudC1pbm5lci1oZWlnaHQpIC0gY2FsYygyLjVyZW0gKyAxLjVyZW0gKyAwLjI1cmVtICsgMXB4KSk7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDU2cHggKiAtMSk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWV4cGFuZGVkIC5pc3N1YWJsZS1zaWRlYmFyLmlzLW1lcmdlLXJlcXVlc3Qge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1leHBhbmRlZCAuaXNzdWFibGUtc2lkZWJhci5pcy1tZXJnZS1yZXF1ZXN0IC5pc3N1YWJsZS1jb250ZXh0LWZvcm0ge1xuICAgIHRvcDogY2FsYygyLjVyZW0gKyAxLjVyZW0gKyAwLjI1cmVtICsgMXB4KTtcbiAgICBoZWlnaHQ6IGNhbGModmFyKC0tcGFuZWwtY29udGVudC1pbm5lci1oZWlnaHQpIC0gY2FsYygyLjVyZW0gKyAxLjVyZW0gKyAwLjI1cmVtICsgMXB4KSk7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiBjYWxjKDU2cHggKiAtMSk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1leHBhbmRlZDpub3QoLmJvYXJkcy1zaWRlYmFyKTpub3QoW2RhdGEtc2lnbmVkLWluXSk6bm90KFtkYXRhLWFsd2F5cy1zaG93LXRvZ2dsZV0pIC5pc3N1YWJsZS1zaWRlYmFyLWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWV4cGFuZGVkIC5saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWV4cGFuZGVkIC5uby12YWx1ZSB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLnNpZGViYXItY29sbGFwc2VkLWljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1leHBhbmRlZCAuZ3V0dGVyLXRvZ2dsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLnRpdGxlIC5ndXR0ZXItdG9nZ2xlIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLmFzc2lnbmVlIC51c2VyLWxpc3QgLmF2YXRhciB7XG4gIG1hcmdpbjogMDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgLmhpZGUtZXhwYW5kZWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQge1xuICAvKiBFeHRyYSBzbWFsbCBkZXZpY2VzIChwaG9uZXMsIGxlc3MgdGhhbiA3NjhweCkgKi9cbiAgZGlzcGxheTogbm9uZTtcbiAgLyogU21hbGwgZGV2aWNlcyAodGFibGV0cywgNzY4cHggYW5kIHVwKSAqL1xufVxuQGNvbnRhaW5lciBjb250ZW50LXBhbmVscyAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQ6bm90KC5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQ6bm90KC5yaWdodC1zaWRlYmFyLW1lcmdlLXJlcXVlc3RzKSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkLnJpZ2h0LXNpZGViYXItbWVyZ2UtcmVxdWVzdHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkLnJpZ2h0LXNpZGViYXItbWVyZ2UtcmVxdWVzdHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCB7XG4gIHdpZHRoOiA2MnB4O1xuICBwYWRkaW5nOiAwO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLmJsb2NrLFxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLnNpZGViYXItY29udGFpbmVkLXdpZHRoLFxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyIHtcbiAgd2lkdGg6IDYwcHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuYmxvY2sud2l0aC1zdWItYmxvY2tzIC5zdWItYmxvY2s6aG92ZXIsIC5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5ibG9jazpub3QoLndpdGgtc3ViLWJsb2Nrcyk6aG92ZXIsXG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuZ3V0dGVyLXRvZ2dsZS53aXRoLXN1Yi1ibG9ja3MgLnN1Yi1ibG9jazpob3Zlcixcbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5ndXR0ZXItdG9nZ2xlOm5vdCgud2l0aC1zdWItYmxvY2tzKTpob3Zlcixcbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5zaWRlYmFyLWNvbGxhcHNlZC1jb250YWluZXIud2l0aC1zdWItYmxvY2tzIC5zdWItYmxvY2s6aG92ZXIsXG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuc2lkZWJhci1jb2xsYXBzZWQtY29udGFpbmVyOm5vdCgud2l0aC1zdWItYmxvY2tzKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLnBhcnRpY2lwYW50cyB7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5oaWRlLWNvbGxhcHNlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuZ3V0dGVyLXRvZ2dsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWIgIWltcG9ydGFudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIGEuZ3V0dGVyLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAubWVyZ2UtaWNvbiB7XG4gIGhlaWdodDogMTJweDtcbiAgd2lkdGg6IDEycHg7XG4gIGJvdHRvbTogLTVweDtcbiAgcmlnaHQ6IDRweDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5zaWRlYmFyLWNvbGxhcHNlZC1pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDYwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLnNpZGViYXItY29sbGFwc2VkLWljb24gPiBzdmcge1xuICBAYXBwbHkgZ2wtZmlsbC1pY29uLXN1YnRsZTtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5zaWRlYmFyLWNvbGxhcHNlZC1pY29uOmhvdmVyOm5vdCguZGlzYWJsZWQpLCAucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuc2lkZWJhci1jb2xsYXBzZWQtaWNvbjpob3ZlciAudG9kby11bmRvbmUge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLnNpZGViYXItY29sbGFwc2VkLWljb246aG92ZXI6bm90KC5kaXNhYmxlZCkgPiBzdmcsIC5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5zaWRlYmFyLWNvbGxhcHNlZC1pY29uOmhvdmVyIC50b2RvLXVuZG9uZSA+IHN2ZyB7XG4gIEBhcHBseSBnbC1maWxsLWljb24tZGVmYXVsdDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5zaWRlYmFyLWNvbGxhcHNlZC1pY29uIC50b2RvLXVuZG9uZSB7XG4gIGNvbG9yOiB2YXIoLS1nbC1zdGF0dXMtaW5mby10ZXh0LWNvbG9yKTtcbiAgZmlsbDogdmFyKC0tZ2wtc3RhdHVzLWluZm8taWNvbi1jb2xvcik7XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuc2lkZWJhci1jb2xsYXBzZWQtaWNvbiAuYXV0aG9yIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5zaWRlYmFyLWNvbGxhcHNlZC1pY29uLm11bHRpcGxlLXVzZXJzIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuc2lkZWJhci1hdmF0YXItY291bnRlciB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuc2lkZWJhci1hdmF0YXItY291bnRlciB+IC5tZXJnZS1pY29uIHtcbiAgYm90dG9tOiAwO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLnNpZGViYXItY29sbGFwc2VkLXVzZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5zaWRlYmFyLWNvbGxhcHNlZC11c2VyIC5hdXRob3ItbGluayB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5zaWRlYmFyLWNvbGxhcHNlZC11c2VyIC5hdXRob3ItbGluayAuYXZhdGFyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luOiAwO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLmlzc3VhYmxlLWhlYWRlci1idG4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLm11bHRpcGxlLXVzZXJzIC5idG4tbGluayB7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5tdWx0aXBsZS11c2VycyAuYnRuLWxpbmsgLmF2YXRhciB7XG4gIG1hcmdpbjogMDtcbn1cbi5yaWdodC1zaWRlYmFyLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIC5tdWx0aXBsZS11c2VycyAuYnRuLWxpbms6Zmlyc3QtY2hpbGQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEwcHg7XG4gIHotaW5kZXg6IDE7XG59XG4ucmlnaHQtc2lkZWJhci5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAubXVsdGlwbGUtdXNlcnMgLmJ0bi1saW5rOmxhc3QtY2hpbGQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLm11bHRpcGxlLXVzZXJzIC5idG4tbGluazpsYXN0LWNoaWxkOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLm1pbGVzdG9uZS10aXRsZSBzcGFuLFxuLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgLmNvbGxhcHNlLXRydW5jYXRlZC10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdy14OiBjbGlwO1xuICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIDRweDtcbn1cbi5yaWdodC1zaWRlYmFyIC5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogNnB4O1xufVxuLnJpZ2h0LXNpZGViYXIgLmRyb3Bkb3duLW1lbnUge1xuICB3aWR0aDogMTAwJTtcbiAgLypcbiAgICogT3ZlcndyaXRlIGhvdmVyIHN0eWxlIGZvciBkcm9wZG93biBpdGVtcywgc28gdGhhdCB0aGV5IGFyZSBub3QgYmx1ZVxuICAgKiBUaGlzIHNob3VsZCBiZSByZW1vdmVkIGR1cmluZyBkZXYgb2YgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLWZvc3MvaXNzdWVzLzQ0MDQwXG4gICAqL1xufVxuLnJpZ2h0LXNpZGViYXIgLmRyb3Bkb3duLW1lbnUgbGkgYTpob3ZlciwgLnJpZ2h0LXNpZGViYXIgLmRyb3Bkb3duLW1lbnUgbGkgYTphY3RpdmUsIC5yaWdodC1zaWRlYmFyIC5kcm9wZG93bi1tZW51IGxpIGE6Zm9jdXMtdmlzaWJsZSwgLnJpZ2h0LXNpZGViYXIgLmRyb3Bkb3duLW1lbnUgbGkgYS5pcy1mb2N1c2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1ob3Zlcik7XG4gIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1ob3Zlcik7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uaXNzdWFibGUtc2hvdy1sYWJlbHMgLmdsLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuLmlzc3VhYmxlLXNob3ctbGFiZWxzIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uaXNzdWFibGUtc2hvdy1sYWJlbHMgYSAuY29sb3ItbGFiZWwge1xuICBwYWRkaW5nOiA0cHggMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5pc3N1YWJsZS1zaG93LWxhYmVscyBhOmhvdmVyIC5jb2xvci1sYWJlbCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmlzc3VhYmxlLXNob3ctbGFiZWxzLmhhcy1sYWJlbHMge1xuICBmb250LXNpemU6IDA7XG4gIG1hcmdpbi1ib3R0b206IC01cHg7XG59XG5cbi5yZXZpZXdlci1tZXJnZS1pY29uLFxuLmFzc2lnbmVlIC5tZXJnZS1pY29uLFxuLnJldmlld2VyIC5tZXJnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLXN0YXR1cy13YXJuaW5nLWljb24tY29sb3IpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTNweDtcbiAgcmlnaHQ6IC0zcHg7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMXB4IDAgMCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKSBkcm9wLXNoYWRvdygtMXB4IDAgMCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKSBkcm9wLXNoYWRvdygwIC0xcHggMCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKSBkcm9wLXNoYWRvdygwIDFweCAwIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xufVxuXG4uc3VnZ2VzdGVkLXJldmlld2VyLXJlYXNvbi1pY29uIHtcbiAgdG9wOiAxN3B4O1xuICBsZWZ0OiAxOHB4O1xuICBmaWx0ZXI6IGRyb3Atc2hhZG93KDFweCAwIDAgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSkgZHJvcC1zaGFkb3coLTFweCAwIDAgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSkgZHJvcC1zaGFkb3coMCAtMXB4IDAgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSkgZHJvcC1zaGFkb3coMCAxcHggMCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKTtcbn1cblxuLnN1Z2dlc3RlZC1yZXZpZXdlci1hdmF0YXIgLmdsLWF2YXRhciB7XG4gIEBhcHBseSBnbC1ib3JkZXItMTtcbiAgQGFwcGx5IGdsLWJvcmRlci1kYXNoZWQ7XG4gIEBhcHBseSBnbC1ib3JkZXItc3Ryb25nO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNpZGViYXItaGVscC13cmFwIC5zaWRlYmFyLWhlbHAtc3RhdGUge1xuICBtYXJnaW46IDE2cHggLTIwcHggLTIwcHg7XG4gIHBhZGRpbmc6IDE2cHggMjBweDtcbn1cbi5zaWRlYmFyLWhlbHAtd3JhcCAuaGVscC1zdGF0ZS10b2dnbGUtZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHMgZWFzZTtcbn1cbi5zaWRlYmFyLWhlbHAtd3JhcCAuaGVscC1zdGF0ZS10b2dnbGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cbi5zaWRlYmFyLWhlbHAtd3JhcCAuaGVscC1zdGF0ZS10b2dnbGUtZW50ZXIsXG4uc2lkZWJhci1oZWxwLXdyYXAgLmhlbHAtc3RhdGUtdG9nZ2xlLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi50aW1lLXRyYWNrZXIgLnNpZGViYXItY29sbGFwc2VkLWljb24gPiAuc3RvcHdhdGNoLXN2ZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi50aW1lLXRyYWNrZXIgLnNpZGViYXItY29sbGFwc2VkLWljb24gc3ZnIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgQGFwcGx5IGdsLWZpbGwtaWNvbi1zdWJ0bGU7XG59XG4udGltZS10cmFja2VyIC5zaWRlYmFyLWNvbGxhcHNlZC1pY29uOmhvdmVyIHN2ZyB7XG4gIEBhcHBseSBnbC1maWxsLWljb24tZGVmYXVsdDtcbn1cbi50aW1lLXRyYWNrZXIgLmNvbXBhcmUtbWV0ZXIub3Zlcl9lc3RpbWF0ZSAudGltZS1yZW1haW5pbmcsXG4udGltZS10cmFja2VyIC5jb21wYXJlLW1ldGVyLm92ZXJfZXN0aW1hdGUgLmNvbXBhcmUtdmFsdWUuc3BlbnQge1xuICBAYXBwbHkgZ2wtdGV4dC1kYW5nZXI7XG59XG4udGltZS10cmFja2VyIC5jb21wYXJlLWRpc3BsYXktY29udGFpbmVyIHtcbiAgZm9udC1zaXplOiAxM3B4O1xufVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBzY3NzL2F0LXJ1bGUtbm8tdW5rbm93biAqL1xuLyoqXG4gKiBTQ1NTIHZhcmlhYmxlc1xuICovXG4vKipcbiAqIENTUyBDdXN0b20gcHJvcGVydGllc1xuICovXG46cm9vdCB7XG4gIC0tc3VwZXItc2lkZWJhci1oci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTtcbn1cblxuOnJvb3QuZ2wtZGFyayB7XG4gIC0tc3VwZXItc2lkZWJhci1oci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTtcbn1cblxuLyoqXG4gKiBTa2lwIHRvXG4gKi9cbi5zdXBlci1zaWRlYmFyLXNraXAtdG8ge1xuICB0b3A6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSk7XG4gIHotaW5kZXg6IDYwMTtcbn1cblxuLyoqXG4gKiBTdXBlciBzaWRlYmFyIHdyYXBwZXJcbiAqL1xuLnN1cGVyLXNpZGViYXItd3JhcHBlciB7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgQGFwcGx5IHhsOmdsLXN0YXRpYztcbiAgQGFwcGx5IGdsLXctMDtcbiAgQGFwcGx5IGdsLWgtMDtcbiAgQGFwcGx5IHhsOmdsLWgtYXV0bztcbiAgQGFwcGx5IHhsOmdsLXctYXV0bztcbiAgQGFwcGx5IHhsOmdsLW1sLTA7XG4gIEBhcHBseSBnbC1taW4taC0wO1xufVxuLnN1cGVyLXNpZGViYXItd3JhcHBlcjpoYXMoLnN1cGVyLXNpZGViYXItdG9nZ2xlZC1tYW51YWxseSkge1xuICBhbmltYXRpb246IHN1cGVyLXNpZGViYXItY29sbGFwc2UtY2xpcCAwLjI1cztcbn1cblxuQGtleWZyYW1lcyBzdXBlci1zaWRlYmFyLWNvbGxhcHNlLWNsaXAge1xuICBmcm9tLCB0byB7XG4gICAgY2xpcC1wYXRoOiBpbnNldCgwIDAgMCAtMC41cmVtKTtcbiAgfVxufVxuLyoqXG4gKiBTdXBlciBzaWRlYmFyXG4gKi9cbi5zdXBlci1zaWRlYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogdmFyKC0tc3lzdGVtLWZvb3Rlci1oZWlnaHQpO1xuICBsZWZ0OiAwO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xuICBAYXBwbHkgeGw6LWdsLW1sLTM7XG4gIEBhcHBseSBnbC1iZy1hcHBsaWNhdGlvbi1jaHJvbWU7XG4gIEBhcHBseSB4bDpnbC1iZy10cmFuc3BhcmVudDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgei1pbmRleDogNjAwO1xuICBAYXBwbHkgbWF4LXhsOmZvcmNlZC1jb2xvcnM6Z2wtYm9yZGVyLXI7XG59XG4uc3VwZXItc2lkZWJhcjpub3QoLnN1cGVyLXNpZGViYXItaXMtaWNvbi1vbmx5KSB7XG4gIHdpZHRoOiBtaW4oODAlLCAzMjBweCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zdXBlci1zaWRlYmFyOm5vdCguc3VwZXItc2lkZWJhci1pcy1pY29uLW9ubHkpIHtcbiAgICB3aWR0aDogMTVyZW07XG4gIH1cbn1cbi5zdXBlci1zaWRlYmFyOmlzKC5zdXBlci1zaWRlYmFyLWlzLWljb24tb25seSkgPiAqIC5zdXBlci1zaWRlYmFyLW5hdi1pdGVtOm5vdCgubmF2LWZseW91dC1tZW51IC5zdXBlci1zaWRlYmFyLW5hdi1pdGVtKSB7XG4gIHotaW5kZXg6IDgwMjtcbn1cbi5zdXBlci1zaWRlYmFyIC5nbC1uYXYtaXRlbS53aXRoLW1vdXNlLW92ZXItZmx5b3V0IHtcbiAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbn1cbi5zdXBlci1zaWRlYmFyIC5nbC1uYXYtaXRlbS5zZWxlY3RlZC53aXRoLW1vdXNlLW92ZXItZmx5b3V0IHtcbiAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbn1cbi5zdXBlci1zaWRlYmFyIC5uYXYtZmx5b3V0LW1lbnUge1xuICB6LWluZGV4OiA4MDA7XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLnN1cGVyLXNpZGViYXIgLm5hdi1mbHlvdXQtbWVudSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMG1zICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zdXBlci1zaWRlYmFyIC5uYXYtZmx5b3V0LW1lbnUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuLnN1cGVyLXNpZGViYXIgLm5hdi1mbHlvdXQtbWVudSAuZ2wtbmF2LWl0ZW0tbGFiZWwge1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIG92ZXJmbG93LXdyYXA6IGFueXdoZXJlO1xufVxuQHN0YXJ0aW5nLXN0eWxlIHtcbiAgLnN1cGVyLXNpZGViYXIgLm5hdi1mbHlvdXQtbWVudSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuLnN1cGVyLXNpZGViYXIuc3VwZXItc2lkZWJhci1sb2FkaW5nIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgd2lkdGg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuc3VwZXItc2lkZWJhci5zdXBlci1zaWRlYmFyLWxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5zdXBlci1zaWRlYmFyLnN1cGVyLXNpZGViYXItbG9hZGluZzpub3QoLnN1cGVyLXNpZGViYXItaXMtaWNvbi1vbmx5KSB7XG4gICAgd2lkdGg6IDE1cmVtO1xuICB9XG59XG4uc3VwZXItc2lkZWJhci5zdXBlci1zaWRlYmFyLWxvYWRpbmcuc3VwZXItc2lkZWJhci1pcy1pY29uLW9ubHkge1xuICB3aWR0aDogMnJlbTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAuc3VwZXItc2lkZWJhciB7XG4gICAgQGFwcGx5IGdsLXRyYW5zaXRpb24tdHJhbnNmb3JtO1xuICB9XG59XG4uc3VwZXItc2lkZWJhciBociB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tc3VwZXItc2lkZWJhci1oci1ib3JkZXItY29sb3IpO1xufVxuLnN1cGVyLXNpZGViYXIgI3RyaWFsLXN0YXR1cy1zaWRlYmFyLXdpZGdldDpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAxMTk5Ljk4cHgpIHtcbiAgLnBhZ2Utd2l0aC1zdXBlci1zaWRlYmFyOm5vdCguc3VwZXItc2lkZWJhci1oYXMtY3NzLXRyYW5zaXRpb25zLWJsb2NrZWQpIC5zdXBlci1zaWRlYmFyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtci1bMXJlbV07XG4gIH1cbn1cbi8qKlxuICogT3ZlcmxheVxuICovXG4uc3VwZXItc2lkZWJhci1vdmVybGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqXG4gKiBQYWdlIHdpdGggc3VwZXIgc2lkZWJhclxuICovXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IG5vLXByZWZlcmVuY2UpIHtcbiAgLnBhZ2Utd2l0aC1zdXBlci1zaWRlYmFyIHtcbiAgICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi1wYWRkaW5nO1xuICB9XG59XG4ucGFnZS13aXRoLXN1cGVyLXNpZGViYXI6bm90KC5wYWdlLXdpdGgtc3VwZXItc2lkZWJhci1jb2xsYXBzZWQsIC5zdXBlci1zaWRlYmFyLWhhcy1jc3MtdHJhbnNpdGlvbnMtYmxvY2tlZCkgLnN1cGVyLXNpZGViYXItb3ZlcmxheSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgQGFwcGx5IGdsLWJnLW92ZXJsYXk7XG4gIHotaW5kZXg6IDU5OTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2Utd2l0aC1zdXBlci1zaWRlYmFyOm5vdCgucGFnZS13aXRoLXN1cGVyLXNpZGViYXItY29sbGFwc2VkLCAuc3VwZXItc2lkZWJhci1oYXMtY3NzLXRyYW5zaXRpb25zLWJsb2NrZWQpIC5zdXBlci1zaWRlYmFyLW92ZXJsYXkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLnBhZ2Utd2l0aC1zdXBlci1zaWRlYmFyIC5zdXBlci1zaWRlYmFyLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucGFnZS13aXRoLXN1cGVyLXNpZGViYXItY29sbGFwc2VkIC5zdXBlci1zaWRlYmFyIHtcbiAgQGFwcGx5IGdsLW0tMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gIC5wYWdlLXdpdGgtc3VwZXItc2lkZWJhci1jb2xsYXBzZWQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAucGFnZS13aXRoLXN1cGVyLXNpZGViYXItY29sbGFwc2VkIC5zdXBlci1zaWRlYmFyLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLyoqXG4gKiBGZWF0dXJlIExpYnJhcnkgbW9kYWxcbiAqL1xuLmZlYXR1cmUtbGlicmFyeS1tb2RhbC5nbC1tb2RhbCAubW9kYWwtZGlhbG9nIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gIG1hcmdpbi10b3A6IDV2aDtcbiAgbWluLWhlaWdodDogMDtcbn1cbi5mZWF0dXJlLWxpYnJhcnktbW9kYWwuZ2wtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCB7XG4gIG1pbi1oZWlnaHQ6IGF1dG87XG4gIG1heC1oZWlnaHQ6IDkwdmg7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmZlYXR1cmUtbGlicmFyeS1tb2RhbC5nbC1tb2RhbCAubW9kYWwtZGlhbG9nIHtcbiAgICBtYXJnaW4tdG9wOiAxMHZoO1xuICB9XG4gIC5mZWF0dXJlLWxpYnJhcnktbW9kYWwuZ2wtbW9kYWwgLm1vZGFsLWRpYWxvZyAubW9kYWwtY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogODB2aDtcbiAgfVxufVxuLmZlYXR1cmUtbGlicmFyeS1tb2RhbCAuZmVhdHVyZS1saWJyYXJ5LXNjcm9sbC1hcmVhIHtcbiAgbWluLWhlaWdodDogbWluKDIwcmVtLCA0MHZoKTtcbn1cbi5mZWF0dXJlLWxpYnJhcnktbW9kYWwgLmZlYXR1cmUtbGlicmFyeS1zY3JvbGwtYmxlZWQge1xuICBtYXJnaW4tbGVmdDogLTE2cHg7XG4gIG1hcmdpbi1yaWdodDogLTE2cHg7XG59XG4uZmVhdHVyZS1saWJyYXJ5LW1vZGFsIC5mZWF0dXJlLWxpYnJhcnktc2Nyb2xsLWluc2V0IHtcbiAgcGFkZGluZy1sZWZ0OiAxNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxNnB4O1xufVxuLmZlYXR1cmUtbGlicmFyeS1tb2RhbC5nbC1tb2RhbCAubW9kYWwtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG4uZmVhdHVyZS1saWJyYXJ5LW1vZGFsIC5mZWF0dXJlLWxpYnJhcnktZ2VtaW5pLWJ1dHRvbi5nbC1idXR0b24uZ2wtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwMCkgMTIlLCB0cmFuc3BhcmVudCksIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCkgMTIlLCB0cmFuc3BhcmVudCkpO1xuICBib3JkZXItY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNTAwKSA2MCUsIHRyYW5zcGFyZW50KTtcbn1cbi5mZWF0dXJlLWxpYnJhcnktbW9kYWwgLmZlYXR1cmUtbGlicmFyeS1nZW1pbmktYnV0dG9uLmdsLWJ1dHRvbi5nbC1idXR0b246aG92ZXIsIC5mZWF0dXJlLWxpYnJhcnktbW9kYWwgLmZlYXR1cmUtbGlicmFyeS1nZW1pbmktYnV0dG9uLmdsLWJ1dHRvbi5nbC1idXR0b246Zm9jdXMsIC5mZWF0dXJlLWxpYnJhcnktbW9kYWwgLmZlYXR1cmUtbGlicmFyeS1nZW1pbmktYnV0dG9uLmdsLWJ1dHRvbi5nbC1idXR0b246YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwMCkgMjQlLCB0cmFuc3BhcmVudCksIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCkgMjQlLCB0cmFuc3BhcmVudCkpO1xufVxuXG4vKipcbiAqIEdsb2JhbCBzZWFyY2ggbW9kYWxcbiAqL1xuLmdsb2JhbC1zZWFyY2gtbW9kYWwge1xuICBwYWRkaW5nOiB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSAwLjVyZW0gMDtcbn1cbi5nbG9iYWwtc2VhcmNoLW1vZGFsIC5tb2RhbC1jb250ZW50IHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtWzFyZW1dICFpbXBvcnRhbnQ7XG59XG4uZ2xvYmFsLXNlYXJjaC1tb2RhbC5nbC1tb2RhbCAubW9kYWwtZGlhbG9nIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLmdsb2JhbC1zZWFyY2gtbW9kYWwge1xuICAgIHBhZGRpbmc6IHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpIDFyZW0gMDtcbiAgfVxufVxuLmdsb2JhbC1zZWFyY2gtbW9kYWwgLnZlcnRpY2FsLWFsaWduLW5vcm1hbGl6YXRpb24ge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC41cmVtO1xufVxuLmdsb2JhbC1zZWFyY2gtbW9kYWwgLnNob3ctZm9jdXMtbGF5b3Zlcjpmb2N1cy12aXNpYmxlIC5zaG93LWZvY3VzLWxheW92ZXItaGludCwgLmdsb2JhbC1zZWFyY2gtbW9kYWwgLnNob3ctZm9jdXMtbGF5b3Zlcjpmb2N1cy13aXRoaW4gLnNob3ctZm9jdXMtbGF5b3Zlci1oaW50IHtcbiAgQGFwcGx5IGdsLW9wYWNpdHktMTA7XG59XG4uZ2xvYmFsLXNlYXJjaC1tb2RhbCAuY29tbWFuZC1wYWxldHRlLXB4IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjg3NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC44NzVyZW07XG59XG4uZ2xvYmFsLXNlYXJjaC1tb2RhbCAuZ2wtc2VhcmNoLWJveC1ieS10eXBlLWNsZWFyLmJ0bi1zbSwgLmdsb2JhbC1zZWFyY2gtbW9kYWwgLmJ0bi1ncm91cC1zbSA+IC5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtY2xlYXIuYnRuIHtcbiAgcGFkZGluZzogMC41cmVtICFpbXBvcnRhbnQ7XG59XG4uZ2xvYmFsLXNlYXJjaC1tb2RhbCAuZ2wtc2VhcmNoLWJveC1ieS10eXBlLWlucHV0LWJvcmRlcmxlc3Mge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1bMC43NXJlbV07XG59XG4uZ2xvYmFsLXNlYXJjaC1tb2RhbCAuZ2xvYmFsLXNlYXJjaC1yZXN1bHRzIHtcbiAgbWF4LWhlaWdodDogMzByZW07XG59XG4uZ2xvYmFsLXNlYXJjaC1tb2RhbCAuZ2xvYmFsLXNlYXJjaC1yZXN1bHRzIC5nbC1uZXctZHJvcGRvd24taXRlbSB7XG4gIEBhcHBseSBnbC1weC0zO1xufVxuLmdsb2JhbC1zZWFyY2gtbW9kYWwgLmdsb2JhbC1zZWFyY2gtcmVzdWx0cyBbaWQqPWdsLWRpc2Nsb3N1cmUtZHJvcGRvd24tZ3JvdXBdIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjg3NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC44NzVyZW07XG59XG4uZ2xvYmFsLXNlYXJjaC1tb2RhbCAuZ2xvYmFsLXNlYXJjaC1yZXN1bHRzIC5nbC1zY3JvbGwtc2NyaW0ge1xuICBib3JkZXItd2lkdGg6IDAgIWltcG9ydGFudDtcbn1cbi5nbG9iYWwtc2VhcmNoLW1vZGFsLmdsLW1vZGFsIC5tb2RhbC1mb290ZXIge1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gIHBhZGRpbmc6IDAuODc1cmVtO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIC5nbG9iYWwtc2VhcmNoLW1vZGFsIHtcbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIH1cbiAgLmdsb2JhbC1zZWFyY2gtbW9kYWwuc2hvdyB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuICB9XG4gIC5nbG9iYWwtc2VhcmNoLW1vZGFsLnNob3cgLm1vZGFsLWRpYWxvZyB7XG4gICAgc2NhbGU6IDE7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgfVxuICAuZ2xvYmFsLXNlYXJjaC1tb2RhbDpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG4gIH1cbiAgLmdsb2JhbC1zZWFyY2gtbW9kYWw6bm90KC5zaG93KSAubW9kYWwtZGlhbG9nIHtcbiAgICBzY2FsZTogMC44O1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG4gIH1cbiAgQHN0YXJ0aW5nLXN0eWxlIHtcbiAgICAuZ2xvYmFsLXNlYXJjaC1tb2RhbCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuICAuZ2xvYmFsLXNlYXJjaC1tb2RhbCAubW9kYWwtZGlhbG9nIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHNjYWxlO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIH1cbiAgQHN0YXJ0aW5nLXN0eWxlIHtcbiAgICAuZ2xvYmFsLXNlYXJjaC1tb2RhbCAubW9kYWwtZGlhbG9nIHtcbiAgICAgIHNjYWxlOiAwLjg7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogVXRpbGl0aWVzXG4gKi9cbi50cmFuc2l0aW9uLW9wYWNpdHktb24taG92ZXItLWNvbnRleHQgLnRyYW5zaXRpb24tb3BhY2l0eS1vbi1ob3Zlci0tdGFyZ2V0IHtcbiAgQGFwcGx5IGdsLXRyYW5zaXRpb24tb3BhY2l0eTtcbiAgQGFwcGx5IGdsLWR1cmF0aW9uLWZhc3Q7XG4gIEBhcHBseSBnbC1lYXNlLWxpbmVhcjtcbn1cbi50cmFuc2l0aW9uLW9wYWNpdHktb24taG92ZXItLWNvbnRleHQgLnRyYW5zaXRpb24tb3BhY2l0eS1vbi1ob3Zlci0tdGFyZ2V0OmhvdmVyIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC40cztcbn1cbi50cmFuc2l0aW9uLW9wYWNpdHktb24taG92ZXItLWNvbnRleHQ6aG92ZXIgLnRyYW5zaXRpb24tb3BhY2l0eS1vbi1ob3Zlci0tdGFyZ2V0IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC40cztcbn1cblxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLnN1cGVyLXNpZGViYXItY2F0ZWdvcnktdG9nZ2xlIC5nbC1uYXYtaXRlbS1jaGV2cm9uIHtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMgbGluZWFyO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBtZWRpYSAoaG92ZXI6IGhvdmVyKSBhbmQgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLnN1cGVyLXNpZGViYXItY2F0ZWdvcnktdG9nZ2xlIC5nbC1uYXYtaXRlbS1jaGV2cm9uIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXMgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLnN1cGVyLXNpZGViYXItY2F0ZWdvcnktdG9nZ2xlOmhvdmVyIC5nbC1uYXYtaXRlbS1jaGV2cm9uLCAuc3VwZXItc2lkZWJhci1jYXRlZ29yeS10b2dnbGU6Zm9jdXMtdmlzaWJsZSAuZ2wtbmF2LWl0ZW0tY2hldnJvbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQgLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLXRhcmdldCB7XG4gIG9wYWNpdHk6IDA7XG59XG4uc2hvdy1vbi1mb2N1cy1vci1ob3Zlci0tY29udGV4dCAuc2hvdy1vbi1mb2N1cy1vci1ob3Zlci0tdGFyZ2V0OmhvdmVyLCAuc2hvdy1vbi1mb2N1cy1vci1ob3Zlci0tY29udGV4dCAuc2hvdy1vbi1mb2N1cy1vci1ob3Zlci0tdGFyZ2V0OmZvY3VzLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xufVxuLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQ6aG92ZXIgLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLXRhcmdldCwgLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQ6Zm9jdXMtd2l0aGluIC5zaG93LW9uLWZvY3VzLW9yLWhvdmVyLS10YXJnZXQge1xuICBvcGFjaXR5OiAxO1xufVxuLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQgLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLWNvbnRyb2w6aG92ZXIgKyAuc2hvdy1vbi1mb2N1cy1vci1ob3Zlci0tdGFyZ2V0LCAuc2hvdy1vbi1mb2N1cy1vci1ob3Zlci0tY29udGV4dCAuc2hvdy1vbi1mb2N1cy1vci1ob3Zlci0tY29udHJvbDpmb2N1cy12aXNpYmxlICsgLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLXRhcmdldCB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaWRlLW9uLWZvY3VzLW9yLWhvdmVyLS1jb250ZXh0IC5oaWRlLW9uLWZvY3VzLW9yLWhvdmVyLS10YXJnZXQge1xuICBvcGFjaXR5OiAxO1xufVxuLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQ6aG92ZXIgLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLXRhcmdldCwgLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQ6Zm9jdXMtd2l0aGluIC5oaWRlLW9uLWZvY3VzLW9yLWhvdmVyLS10YXJnZXQge1xuICBvcGFjaXR5OiAwO1xufVxuLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQgLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLWNvbnRyb2w6aG92ZXIgLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLXRhcmdldCwgLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQgLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLWNvbnRyb2w6Zm9jdXMtdmlzaWJsZSAuaGlkZS1vbi1mb2N1cy1vci1ob3Zlci0tdGFyZ2V0IHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnN1cGVyLXNpZGViYXItbWl4LWJsZW5kLW1vZGUge1xuICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG59XG4uZ2wtZGFyayAuc3VwZXItc2lkZWJhci1taXgtYmxlbmQtbW9kZSB7XG4gIG1peC1ibGVuZC1tb2RlOiBzY3JlZW47XG59XG5cbi5zdXBlci1zaWRlYmFyLW9yZy1zd2l0Y2hlci1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsLFxuLnN1cGVyLXNpZGViYXItbXItbWVudS1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsLFxuLnN1cGVyLXNpZGViYXItbmV3LW1lbnUtZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1wYW5lbCxcbi5zdXBlci1zaWRlYmFyLXVzZXItZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1wYW5lbCxcbi5zdXBlci1zaWRlYmFyLWhlbHAtY2VudGVyLWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24tcGFuZWwsXG4uc3VwZXItc2lkZWJhci1zZXR0aW5ncy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsIHtcbiAgQGFwcGx5IGdsLW1pbi13LTI4ICFpbXBvcnRhbnQ7XG4gIEBhcHBseSBnbC13LTI4ICFpbXBvcnRhbnQ7XG59XG5cbi5zdXBlci1zaWRlYmFyLXNldHRpbmdzLWRyb3Bkb3duIC5nbC1uYXYtaXRlbS5zZWxlY3RlZDo6YmVmb3JlIHtcbiAgQGFwcGx5IGdsLWhpZGRlbjtcbn1cblxuLmN1c3RvbS1ncmFkaWVudC1wcm9ncmVzcyAuZ2wtcHJvZ3Jlc3Mge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICNmZmIxNzcgMCUsICM5MzZmZmYgMTAwJSk7XG59XG5cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAuc3VwZXItc2lkZWJhci1hbmltYXRhYmxlIC5uYXYtaXRlbS1saW5rLWxhYmVsLFxuICAuc3VwZXItc2lkZWJhci1hbmltYXRhYmxlIC5tZW51LXNlY3Rpb24tYnV0dG9uLWxhYmVsIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjE1cztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHksIHRyYW5zbGF0ZTtcbiAgfVxuICBAc3RhcnRpbmctc3R5bGUge1xuICAgIC5zdXBlci1zaWRlYmFyLWFuaW1hdGFibGUgLm5hdi1pdGVtLWxpbmstbGFiZWwsXG4gICAgLnN1cGVyLXNpZGViYXItYW5pbWF0YWJsZSAubWVudS1zZWN0aW9uLWJ1dHRvbi1sYWJlbCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNsYXRlOiAtMzAlIDA7XG4gICAgfVxuICB9XG4gIC5zdXBlci1zaWRlYmFyLWFuaW1hdGFibGUgLnN1cGVyLXNpZGViYXItY29udGV4dC1oZWFkZXIge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNsYXRlO1xuICB9XG4gIEBzdGFydGluZy1zdHlsZSB7XG4gICAgLnN1cGVyLXNpZGViYXItYW5pbWF0YWJsZSAuc3VwZXItc2lkZWJhci1jb250ZXh0LWhlYWRlciB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNsYXRlOiAwIC0zMCU7XG4gICAgfVxuICB9XG4gIC5zdXBlci1zaWRlYmFyLWFuaW1hdGFibGUgLm5hdi1pdGVtLWxpbmstYmFkZ2Uge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuICBAc3RhcnRpbmctc3R5bGUge1xuICAgIC5zdXBlci1zaWRlYmFyLWFuaW1hdGFibGUgLm5hdi1pdGVtLWxpbmstYmFkZ2Uge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cbn1cbi5mZWF0dXJlLWxpYnJhcnktc2hpbW1lciB7XG4gIC0tc3VwZXItc2lkZWJhci1zaGltbWVyLWJhc2UtY29sb3I6IGhzbGEoZnJvbSB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCkgaCBzIGwgLyAzMiUpO1xuICAtLXN1cGVyLXNpZGViYXItc2hpbW1lci1wZWFrLWNvbG9yOiBoc2xhKGZyb20gdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApIGggcyBsIC8gOCUpO1xuICAtLXN1cGVyLXNpZGViYXItc2hpbW1lci1ib3JkZXItY29sb3I6IGhzbGEoZnJvbSB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCkgaCBzIGwgLyAyNCUpO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZmVhdHVyZS1saWJyYXJ5LXNoaW1tZXIgLmdsLW5hdi1pdGVtLXNsb3QsXG4uZmVhdHVyZS1saWJyYXJ5LXNoaW1tZXIgLmdsLW5hdi1pdGVtLWxhYmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xufVxuLmZlYXR1cmUtbGlicmFyeS1zaGltbWVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLWxnKTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDJweCB2YXIoLS1zdXBlci1zaWRlYmFyLXNoaW1tZXItYm9yZGVyLWNvbG9yKTtcbn1cbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAuZmVhdHVyZS1saWJyYXJ5LXNoaW1tZXI6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDkwZGVnLCB2YXIoLS1zdXBlci1zaWRlYmFyLXNoaW1tZXItYmFzZS1jb2xvciksIHZhcigtLXN1cGVyLXNpZGViYXItc2hpbW1lci1wZWFrLWNvbG9yKSwgdmFyKC0tc3VwZXItc2lkZWJhci1zaGltbWVyLWJhc2UtY29sb3IpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDIwMCUgMTAwJTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgICBhbmltYXRpb246IHN1cGVyLXNpZGViYXItc2hpbW1lciAycyBsaW5lYXIgNCwgc3VwZXItc2lkZWJhci1zaGltbWVyLWZhZGUtb3V0IDFzIGVhc2Utb3V0IDhzIGZvcndhcmRzO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3VwZXItc2lkZWJhci1zaGltbWVyIHtcbiAgZnJvbSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMjAwJSAwO1xuICB9XG4gIHRvIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjAwJSAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN1cGVyLXNpZGViYXItc2hpbW1lci1mYWRlLW91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi5zdXBlci10b3BiYXIge1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgQGFwcGx5IGxnOmdsLXBsLTQ7XG4gIGhlaWdodDogdmFyKC0tdG9wLWJhci1oZWlnaHQpO1xufVxuLnN1cGVyLXRvcGJhciAudG9wYmFyLXNlYXJjaC1idXR0b24tcGxhY2Vob2xkZXIge1xuICBmb250LXdlaWdodDogMzIwO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cbi5zdXBlci10b3BiYXIgLnRvcGJhci1zZWFyY2gtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlICFpbXBvcnRhbnQ7XG4gIEBhcHBseSBnbC1ib3JkZXItYWxwaGEtZGFyay0yNCAhaW1wb3J0YW50O1xufVxuLnN1cGVyLXRvcGJhciAudG9wYmFyLXNlYXJjaC1idXR0b24ga2JkIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1zdHJvbmc7XG4gIEBhcHBseSBnbC1mb250LXNlbWlib2xkO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIEBhcHBseSBnbC1zaGFkb3ctbm9uZTtcbiAgQGFwcGx5IGRhcms6Z2wtYm9yZGVyLXRyYW5zcGFyZW50O1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLnN1cGVyLXRvcGJhciAudG9wYmFyLXNlYXJjaC1idXR0b24ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zdXBlci10b3BiYXIgLnRvcGJhci1zZWFyY2gtYnV0dG9uOm5vdCg6aG92ZXIpOm5vdCg6Zm9jdXMtdmlzaWJsZSk6bm90KDphY3RpdmUpIHtcbiAgQGFwcGx5IGRhcms6Z2wtYmctYWxwaGEtbGlnaHQtOCAhaW1wb3J0YW50O1xuICBAYXBwbHkgZGFyazpnbC1ib3JkZXItYWxwaGEtbGlnaHQtMTYgIWltcG9ydGFudDtcbn1cbi5zdXBlci10b3BiYXIgLmdsLWJ1dHRvbi50b3BiYXItc2lnbnVwLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1iZy1uZXV0cmFsLTgwMDtcbiAgQGFwcGx5IGdsLWJvcmRlci1uZXV0cmFsLTgwMDtcbiAgQGFwcGx5IGRhcms6Z2wtYmctbmV1dHJhbC0xMDA7XG4gIEBhcHBseSBkYXJrOmdsLWJvcmRlci1uZXV0cmFsLTEwMDtcbn1cbi5zdXBlci10b3BiYXIgLm9yZ2FuaXphdGlvbi1zd2l0Y2hlci1idXR0b24gLmdsLWJ1dHRvbi10ZXh0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZ2FwOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTIpO1xufVxuXG4udGFibGUtaG9sZGVyIHtcbiAgbWFyZ2luOiAwO1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxudGFibGUudGFibGUgLnRoZWFkLXdoaXRlIHRoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpIC5kcm9wZG93bi1tZW51IGEsIHRhYmxlLnRhYmxlOm5vdCguZ2wtdGFibGUpIC5kcm9wZG93bi1tZW51IGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKSAuc3VjY2Vzcyxcbi5tZCB0YWJsZTpub3QoLmNvZGUpIC53YXJuaW5nLFxuLm1kIHRhYmxlOm5vdCguY29kZSkgLmRhbmdlcixcbi5tZCB0YWJsZTpub3QoLmNvZGUpIC5pbmZvLCB0YWJsZS50YWJsZTpub3QoLmdsLXRhYmxlKSAuc3VjY2VzcyxcbnRhYmxlLnRhYmxlOm5vdCguZ2wtdGFibGUpIC53YXJuaW5nLFxudGFibGUudGFibGU6bm90KC5nbC10YWJsZSkgLmRhbmdlcixcbnRhYmxlLnRhYmxlOm5vdCguZ2wtdGFibGUpIC5pbmZvIHtcbiAgY29sb3I6ICNmZmY7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKSAuc3VjY2VzcyBhOm5vdCguYnRuKSxcbi5tZCB0YWJsZTpub3QoLmNvZGUpIC53YXJuaW5nIGE6bm90KC5idG4pLFxuLm1kIHRhYmxlOm5vdCguY29kZSkgLmRhbmdlciBhOm5vdCguYnRuKSxcbi5tZCB0YWJsZTpub3QoLmNvZGUpIC5pbmZvIGE6bm90KC5idG4pLCB0YWJsZS50YWJsZTpub3QoLmdsLXRhYmxlKSAuc3VjY2VzcyBhOm5vdCguYnRuKSxcbnRhYmxlLnRhYmxlOm5vdCguZ2wtdGFibGUpIC53YXJuaW5nIGE6bm90KC5idG4pLFxudGFibGUudGFibGU6bm90KC5nbC10YWJsZSkgLmRhbmdlciBhOm5vdCguYnRuKSxcbnRhYmxlLnRhYmxlOm5vdCguZ2wtdGFibGUpIC5pbmZvIGE6bm90KC5idG4pIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGNvbG9yOiAjZmZmO1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkgdHIgdGQsXG4ubWQgdGFibGU6bm90KC5jb2RlKSB0ciB0aCwgdGFibGUudGFibGU6bm90KC5nbC10YWJsZSkgdHIgdGQsXG50YWJsZS50YWJsZTpub3QoLmdsLXRhYmxlKSB0ciB0aCB7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKSB0aGVhZCB0ciB0aCwgdGFibGUudGFibGU6bm90KC5nbC10YWJsZSkgdGhlYWQgdHIgdGgge1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKSB0aGVhZCB0ciB0aC53aWRlLCB0YWJsZS50YWJsZTpub3QoLmdsLXRhYmxlKSB0aGVhZCB0ciB0aC53aWRlIHtcbiAgd2lkdGg6IDU1JTtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpIC50aGVhZC13aGl0ZSB0aCwgdGFibGUudGFibGU6bm90KC5nbC10YWJsZSkgLnRoZWFkLXdoaXRlIHRoIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4udG9wLWFyZWEgKyAuY29udGVudC1saXN0IHRoIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cblxuLmdsLXRhYmxlLW5vLXRvcC1ib3JkZXIgdGgge1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4ubWQgdGFibGU6bm90KDpoYXModGJvZHkpKSB0aGVhZCB0ciB7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbn1cblxuLmdpdGxhYi10YWJzIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgZmxleC13cmFwOiBub3dyYXA7XG59XG4uZ2l0bGFiLXRhYnMgbGkge1xuICB3aWR0aDogNTAlO1xufVxuLmdpdGxhYi10YWJzIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXI7XG59XG4uZ2l0bGFiLXRhYnMgbGkuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cbi5naXRsYWItdGFicyBsaSBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmdpdGxhYi10YWItY29udGVudCB7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIGJvcmRlci10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDE2cHg7XG59XG4uZ2l0bGFiLXRhYi1jb250ZW50IC50YWItcGFuZSB7XG4gIHBhZGRpbmc6IDE2cHg7XG59XG5cbi8qKlxuICogQXBwbHkgTWFya3VwIChNYXJrZG93bi9Bc2NpaURvYykgdHlwb2dyYXBoeVxuICpcbiAqL1xuLm1kIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4ubWQgW2Rpcj1hdXRvXSB7XG4gIHRleHQtYWxpZ246IGluaXRpYWw7XG59XG4ubWQgKjpmaXJzdC1jaGlsZCB7XG4gIEBhcHBseSBnbC1tdC0wO1xufVxuLm1kID4gOmxhc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtbWItMDtcbn1cbi5tZCBwIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLW0tMDtcbiAgQGFwcGx5IGdsLW1iLTU7XG59XG4ubWQgcCA+IGNvZGUge1xuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgQGFwcGx5IGdsLWJyZWFrLXdvcmRzO1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1icmVhay1zcGFjZXM7XG59XG4ubWQgLm1lZGlhLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBAYXBwbHkgZ2wtbWItMjtcbn1cbi5tZCAubWVkaWEtY29udGFpbmVyIHZpZGVvIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG59XG4ubWQgLm1lZGlhLWNvbnRhaW5lci5pZnJhbWUtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG4ubWQgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG4ubWQgaW1nW3dpZHRoXVtoZWlnaHRdIHtcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgb2JqZWN0LXBvc2l0aW9uOiB0b3A7XG4gIGhlaWdodDogYXV0bztcbn1cbi5tZCBpbWcubGF6eSB7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICBAYXBwbHkgZ2wtYmctZGlzYWJsZWQ7XG59XG4ubWQge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbn1cbi5tZCBpbWcuanMtbGF6eS1sb2FkZWQsXG4ubWQgaW1nLmVtb2ppIHtcbiAgLyogc3R5bGVsaW50LWVuYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgbWluLXdpZHRoOiBpbmhlcml0O1xuICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuLm1kIGltZy5tZC1pbWctY2hlY2tlcmJvYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZykgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdHJvbmcpIDc1JSwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdHJvbmcpIDEwMCUpLCBsaW5lYXItZ3JhZGllbnQoNDVkZWcsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3Ryb25nKSAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNzUlLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZykgNzUlLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZykgMTAwJSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTBweCAxMHB4O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDAsIDVweCA1cHg7XG59XG4ubWQgZGV0YWlscyB7XG4gIEBhcHBseSBnbC1tYi01O1xufVxuLm1kIGRldGFpbHMgPiAqOm5vdChzdW1tYXJ5KSB7XG4gIEBhcHBseSBnbC1tbC01O1xufVxuLm1kIGRldGFpbHM6bm90KDpoYXMoc3VtbWFyeSkpOm5vdChbb3Blbl0pIHtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbn1cbi5tZCBkZXRhaWxzW29wZW5dIHN1bW1hcnkge1xuICBAYXBwbHkgZ2wtbWItNTtcbn1cbi5tZCBkZXRhaWxzIHN1bW1hcnkge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xufVxuLm1kIHN1bW1hcnkgPiAqIHtcbiAgQGFwcGx5IGdsLWlubGluZS1ibG9jaztcbiAgQGFwcGx5IGdsLW1iLTA7XG59XG4ubWQgc3VtbWFyeSA+IHAsIC5tZCBzdW1tYXJ5ID4gLm1hcmtkb3duLWNvZGUtYmxvY2sge1xuICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xufVxuLm1kIGNvZGUge1xuICBAYXBwbHkgZ2wtZm9udC1tb25vc3BhY2U7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLWJyZWFrOiBrZWVwLWFsbDtcbn1cbi5tZCBtYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlLTEwMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDAuMTI1cmVtIHZhcigtLW9yYW5nZS0xMDApO1xuICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAtMTtcbn1cbi5tZCB0ZDpoYXMobWFyayksIC5tZCB0aDpoYXMobWFyaykge1xuICBpc29sYXRpb246IGlzb2xhdGU7XG59XG4ubWQgaDEge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0xLWZpeGVkO1xuICBAYXBwbHkgZ2wtbXQtNztcbn1cbi5tZCBoMjpub3QoOndoZXJlKC5jcnVkLWhlYWRlcikgaDIpIHtcbiAgQGFwcGx5IGdsLWhlYWRpbmctMi1maXhlZDtcbiAgQGFwcGx5IGdsLW10LTY7XG59XG4ubWQgaDMge1xuICBAYXBwbHkgZ2wtaGVhZGluZy0zLWZpeGVkO1xuICBAYXBwbHkgZ2wtbXQtNjtcbn1cbi5tZCBoNCB7XG4gIEBhcHBseSBnbC1oZWFkaW5nLTQtZml4ZWQ7XG4gIEBhcHBseSBnbC1tdC01O1xufVxuLm1kIGg1IHtcbiAgQGFwcGx5IGdsLWhlYWRpbmctNS1maXhlZDtcbiAgQGFwcGx5IGdsLW10LTU7XG59XG4ubWQgaDYge1xuICBAYXBwbHkgZ2wtaGVhZGluZy02LWZpeGVkO1xuICBAYXBwbHkgZ2wtbXQtNTtcbn1cbi5tZCBibG9ja3F1b3RlLFxuLm1kIC5ibG9ja3F1b3RlIHtcbiAgQGFwcGx5IGdsLXRleHQtc2l6ZS1yZXNldDtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBAYXBwbHkgZ2wtcHktMztcbiAgQGFwcGx5IGdsLXBsLTU7XG4gIEBhcHBseSBnbC1teS0zO1xuICBAYXBwbHkgZ2wtbXgtMDtcbiAgQGFwcGx5IGdsLWJvcmRlci1sO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWwtNDtcbiAgQGFwcGx5IGdsLWJvcmRlci1zdHJvbmc7XG59XG4ubWQgYmxvY2txdW90ZTpkaXIocnRsKSxcbi5tZCAuYmxvY2txdW90ZTpkaXIocnRsKSB7XG4gIEBhcHBseSBnbC1ib3JkZXItbC0wO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXI7XG4gIEBhcHBseSBnbC1ib3JkZXItci00O1xufVxuLm1kIGJsb2NrcXVvdGUgcCxcbi5tZCAuYmxvY2txdW90ZSBwIHtcbiAgQGFwcGx5IGdsLXRleHQtaW5oZXJpdDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctWzEuNV07XG59XG4ubWQgYmxvY2txdW90ZSBwOmxhc3QtY2hpbGQsXG4ubWQgLmJsb2NrcXVvdGUgcDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luOiAwO1xufVxuLm1kIGJsb2NrcXVvdGUgPiB1bCxcbi5tZCAuYmxvY2txdW90ZSA+IHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuLm1kIGJsb2NrcXVvdGUgPiB1bCB1bCxcbi5tZCAuYmxvY2txdW90ZSA+IHVsIHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XG59XG4ubWQgYmxvY2txdW90ZSA+IHVsIHVsIHVsLFxuLm1kIC5ibG9ja3F1b3RlID4gdWwgdWwgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcbn1cbi5tZCBibG9ja3F1b3RlID4gdWw6bGFzdC1jaGlsZCwgLm1kIGJsb2NrcXVvdGUgPiBvbDpsYXN0LWNoaWxkLFxuLm1kIC5ibG9ja3F1b3RlID4gdWw6bGFzdC1jaGlsZCxcbi5tZCAuYmxvY2txdW90ZSA+IG9sOmxhc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtbWItMDtcbn1cbi5tZCBociB7XG4gIEBhcHBseSBnbC1ib3JkZXItZGVmYXVsdDtcbiAgbWFyZ2luOiAxMHB4IDA7XG59XG5Aa2V5ZnJhbWVzIGdsLXRhYmxlLXNoYWRvdyB7XG4gIDAlLCA5NSUge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IC0xNnB4IDAgMTRweCAtMTRweCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkteCB7XG4gIDAlLCA5NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBnbC10YWJsZS1zaGFkb3ctb3ZlcmxheS15IHtcbiAgMCUsIDk1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4ubWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0aW1lbGluZS1zY29wZTogLS1nbC10YWJsZS1zY3JvbGwteCwgLS1nbC10YWJsZS1zY3JvbGwteTtcbn1cbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkgdGFibGU6bm90KC5jb2RlKTpkaXIobHRyKSA+IHRoZWFkID4gdHIgPiB0aDpmaXJzdC1jaGlsZCxcbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkgdGFibGU6bm90KC5jb2RlKTpkaXIobHRyKSA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCxcbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkgdGFibGU6bm90KC5jb2RlKTpkaXIobHRyKSA+IHRib2R5ID4gdHIgPiB0aDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuLm1kIC5nbC10YWJsZS1zaGFkb3ctb3ZlcmxheSB0YWJsZTpub3QoLmNvZGUpOmRpcihsdHIpID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4ubWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5IHRhYmxlOm5vdCguY29kZSk6ZGlyKGx0cikgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkgdGFibGU6bm90KC5jb2RlKTpkaXIobHRyKSA+IHRib2R5ID4gdHIgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xufVxuLm1kIC5nbC10YWJsZS1zaGFkb3ctb3ZlcmxheSB0YWJsZTpub3QoLmNvZGUpOmRpcihydGwpID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuLm1kIC5nbC10YWJsZS1zaGFkb3ctb3ZlcmxheSB0YWJsZTpub3QoLmNvZGUpOmRpcihydGwpID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkLFxuLm1kIC5nbC10YWJsZS1zaGFkb3ctb3ZlcmxheSB0YWJsZTpub3QoLmNvZGUpOmRpcihydGwpID4gdGJvZHkgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xufVxuLm1kIC5nbC10YWJsZS1zaGFkb3ctb3ZlcmxheSB0YWJsZTpub3QoLmNvZGUpOmRpcihydGwpID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4ubWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5IHRhYmxlOm5vdCguY29kZSk6ZGlyKHJ0bCkgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCxcbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkgdGFibGU6bm90KC5jb2RlKTpkaXIocnRsKSA+IHRib2R5ID4gdHIgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG4ubWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5IHRhYmxlOm5vdCguY29kZSkgPiB0aGVhZDpmaXJzdC1vZi10eXBlID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCB7XG4gIGJvcmRlci10b3A6IDA7XG59XG4ubWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5IHRhYmxlOm5vdCguY29kZSkgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0ZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4ubWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5OjpiZWZvcmUsIC5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXk6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgei1pbmRleDogMjtcbiAgb3BhY2l0eTogMDtcbn1cbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXk6OmJlZm9yZSB7XG4gIGluc2V0LWJsb2NrOiAwIDA7XG4gIGluc2V0LWlubGluZS1lbmQ6IDA7XG4gIHdpZHRoOiAxNnB4O1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpLCB0cmFuc3BhcmVudCk7XG4gIGFuaW1hdGlvbjogZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkteCBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIGFuaW1hdGlvbi10aW1lbGluZTogLS1nbC10YWJsZS1zY3JvbGwteDtcbn1cbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXk6ZGlyKHJ0bCkge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXk6ZGlyKHJ0bCk6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpLCB0cmFuc3BhcmVudCk7XG59XG4ubWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5OjphZnRlciB7XG4gIGluc2V0LWlubGluZTogMCAwO1xuICBpbnNldC1ibG9jay1lbmQ6IDA7XG4gIGhlaWdodDogMTZweDtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpLCB0cmFuc3BhcmVudCk7XG4gIGFuaW1hdGlvbjogZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkteSBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIGFuaW1hdGlvbi10aW1lbGluZTogLS1nbC10YWJsZS1zY3JvbGwteTtcbn1cbi5tZCAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkgPiBbZGF0YS1zdGlja3ktaGVhZGVyXSB7XG4gIHNjcm9sbC10aW1lbGluZTogLS1nbC10YWJsZS1zY3JvbGwteCBpbmxpbmUsIC0tZ2wtdGFibGUtc2Nyb2xsLXkgYmxvY2s7XG59XG4ubWQgLmdsLXRhYmxlLXNoYWRvdzpub3QoOmhhcygrIC5nbHFsLWxvYWQtbW9yZSksIDpoYXMoKyAuZ2xxbC1sb2FkLW1vcmUpID4gKikge1xuICBjbGlwLXBhdGg6IGluc2V0KDAgcm91bmQgMCAwIDFweCAxcHgpO1xufVxuLm1kIC5nbC10YWJsZS1zaGFkb3cge1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG4gIGFuaW1hdGlvbjogZ2wtdGFibGUtc2hhZG93IGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbiAgYW5pbWF0aW9uLXRpbWVsaW5lOiBzY3JvbGwoc2VsZiBpbmxpbmUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApO1xufVxuLm1kIC5nbC10YWJsZS1zaGFkb3cgPiB0YWJsZTpub3QoLmNvZGUpIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIG92ZXJmbG93LXg6IGluaXRpYWw7XG4gIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgbWluLXdpZHRoOiBzdHJldGNoO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdmFsdWUtbm8tdmVuZG9yLXByZWZpeCAqL1xuICBtaW4td2lkdGg6IC13ZWJraXQtZmlsbC1hdmFpbGFibGU7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSB2YWx1ZS1uby12ZW5kb3ItcHJlZml4ICovXG4gIG1pbi13aWR0aDogLW1vei1hdmFpbGFibGU7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKSB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIGJvcmRlcjogMDtcbiAgd2lkdGg6IGF1dG87XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKTpub3QoLmdsLXRhYmxlLXNoYWRvdyA+ICosIFtkYXRhLXN0aWNreS1oZWFkZXJdID4gKikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxNnB4IDA7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKSB0ZCxcbi5tZCB0YWJsZTpub3QoLmNvZGUpIHRoIHtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpIHRyIHRoIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkgdHIgdGRbYWxpZ249cmlnaHRdIHtcbiAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpLmdyaWQtbm9uZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5ncmlkLW5vbmUgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuZ3JpZC1ub25lID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpLmdyaWQtbm9uZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gIGJvcmRlci13aWR0aDogMDtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpLmdyaWQtbm9uZSA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5ncmlkLW5vbmUgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMXB4O1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuZ3JpZC1ub25lID4gdGJvZHkgPiB0cjpsYXN0LWNoaWxkID4gdGQge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5ncmlkLXJvd3MgPiB0aGVhZCA+IHRyID4gdGgsXG4ubWQgdGFibGU6bm90KC5jb2RlKS5ncmlkLXJvd3MgPiB0Ym9keSA+IHRyID4gdGQge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuZ3JpZC1yb3dzID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpLmdyaWQtcm93cyA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5ncmlkLXJvd3MgPiB0Ym9keSA+IHRyID4gdGQge1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuZ3JpZC1yb3dzID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpLmdyaWQtcm93cyA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5ncmlkLWNvbHMgPiB0aGVhZCA+IHRyID4gdGgge1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuZ3JpZC1jb2xzID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpLmdyaWQtY29scyA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuZnJhbWUtc2lkZXMgPiB0aGVhZCA+IHRyID4gdGgge1xuICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuZnJhbWUtc2lkZXMgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0ZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5mcmFtZS10b3Bib3QgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4ubWQgdGFibGU6bm90KC5jb2RlKS5mcmFtZS10b3Bib3QgPiB0Ym9keSA+IHRyID4gdGQ6Zmlyc3QtY2hpbGQsIC5tZCB0YWJsZTpub3QoLmNvZGUpLmZyYW1lLWVuZHMgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4ubWQgdGFibGU6bm90KC5jb2RlKS5mcmFtZS1lbmRzID4gdGJvZHkgPiB0ciA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5mcmFtZS10b3Bib3QgPiB0aGVhZCA+IHRyID4gdGg6bGFzdC1jaGlsZCxcbi5tZCB0YWJsZTpub3QoLmNvZGUpLmZyYW1lLXRvcGJvdCA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkLCAubWQgdGFibGU6bm90KC5jb2RlKS5mcmFtZS1lbmRzID4gdGhlYWQgPiB0ciA+IHRoOmxhc3QtY2hpbGQsXG4ubWQgdGFibGU6bm90KC5jb2RlKS5mcmFtZS1lbmRzID4gdGJvZHkgPiB0ciA+IHRkOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5mcmFtZS1ub25lID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cbi5tZCB0YWJsZTpub3QoLmNvZGUpLmZyYW1lLW5vbmUgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0ZCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG59XG4ubWQgdGFibGU6bm90KC5jb2RlKS5mcmFtZS1ub25lID4gdGhlYWQgPiB0ciA+IHRoOmZpcnN0LWNoaWxkLFxuLm1kIHRhYmxlOm5vdCguY29kZSkuZnJhbWUtbm9uZSA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuZnJhbWUtbm9uZSA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuLm1kIHRhYmxlOm5vdCguY29kZSkuZnJhbWUtbm9uZSA+IHRib2R5ID4gdHIgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xufVxuLm1kIHRhYmxlOm5vdCguY29kZSkuc3RyaXBlcy1hbGwgdHIsIC5tZCB0YWJsZTpub3QoLmNvZGUpLnN0cmlwZXMtb2RkIHRyOm50aC1vZi10eXBlKG9kZCksIC5tZCB0YWJsZTpub3QoLmNvZGUpLnN0cmlwZXMtZXZlbiB0cjpudGgtb2YtdHlwZShldmVuKSwgLm1kIHRhYmxlOm5vdCguY29kZSkuc3RyaXBlcy1ob3ZlciB0cjpob3ZlciB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG4ubWQgW2RhdGEtc3RpY2t5LWhlYWRlcl0gPiB0YWJsZTpub3QoLmNvZGUpID4gdGhlYWQ6Zmlyc3Qtb2YtdHlwZSA+IHRyOmZpcnN0LWNoaWxkID4gdGgsXG4ubWQgW2RhdGEtc3RpY2t5LWhlYWRlcl0gPiB0YWJsZTpub3QoLmNvZGUpID4gdGJvZHk6Zmlyc3Qtb2YtdHlwZSA+IHRyOmZpcnN0LWNoaWxkID4gdGgge1xuICBAYXBwbHkgZ2wtc3RpY2t5O1xuICBAYXBwbHkgZ2wtdG9wLTA7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtei0xO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItYm90dG9tOiAwO1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG4ubWQgdGFibGU6ZGlyKHJ0bCkgdGgge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5tZCBwcmUge1xuICBAYXBwbHkgZ2wtbWItNTtcbiAgbGluZS1oZWlnaHQ6IDEuNmVtO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xufVxuLm1kIHByZSBjb2RlIHtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgd29yZC13cmFwOiBub3JtYWw7XG4gIG92ZXJmbG93LXdyYXA6IG5vcm1hbDtcbn1cbi5tZCBwcmUucGxhaW4tcmVhZG1lIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cbi5tZCBkZCB7XG4gIG1hcmdpbi1sZWZ0OiAxNnB4O1xufVxuLm1kIHVsLFxuLm1kIG9sIHtcbiAgcGFkZGluZzogMDtcbiAgQGFwcGx5IGdsLW0tMDtcbiAgQGFwcGx5IGdsLW1iLTU7XG59XG4ubWQgdWwgdWwsXG4ubWQgdWwgb2wsXG4ubWQgb2wgdWwsXG4ubWQgb2wgb2wge1xuICBAYXBwbHkgZ2wtbWItMDtcbn1cbi5tZCB1bCBwIH4gb2wsXG4ubWQgdWwgcCB+IHVsLFxuLm1kIG9sIHAgfiBvbCxcbi5tZCBvbCBwIH4gdWwge1xuICBAYXBwbHkgZ2wtbWItNTtcbn1cbi5tZCB1bDpkaXIocnRsKSxcbi5tZCBvbDpkaXIocnRsKSB7XG4gIG1hcmdpbjogM3B4IDI4cHggM3B4IDAgIWltcG9ydGFudDtcbn1cbi5tZCA+IHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuLm1kID4gdWwgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTtcbn1cbi5tZCA+IHVsIHVsIHVsIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7XG59XG4ubWQgdWwuY2hlY2tsaXN0LFxuLm1kIHVsLm5vbmUsXG4ubWQgb2wubm9uZSxcbi5tZCB1bC5uby1idWxsZXQsXG4ubWQgb2wubm8tYnVsbGV0LFxuLm1kIG9sLnVubnVtYmVyZWQsXG4ubWQgdWwudW5zdHlsZWQsXG4ubWQgb2wudW5zdHlsZWQge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4ubWQgdWwuY2hlY2tsaXN0IGxpLFxuLm1kIHVsLm5vbmUgbGksXG4ubWQgb2wubm9uZSBsaSxcbi5tZCB1bC5uby1idWxsZXQgbGksXG4ubWQgb2wubm8tYnVsbGV0IGxpLFxuLm1kIG9sLnVubnVtYmVyZWQgbGksXG4ubWQgdWwudW5zdHlsZWQgbGksXG4ubWQgb2wudW5zdHlsZWQgbGkge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5tZCBsaSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjZlbTtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gIHBhZGRpbmctbGVmdDogM3B4O1xuICAvKiBOb3JtYWxpemUgdGhlIGJ1bGxldCBwb3NpdGlvbiBvbiB3ZWJraXQuICovXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBtZWRpYS1mZWF0dXJlLW5hbWUtbm8tdmVuZG9yLXByZWZpeCAqL1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICAubWQgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAyOHB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuLm1kIHVsLnRhc2stbGlzdCA+IGxpLnRhc2stbGlzdC1pdGVtLFxuLm1kIG9sLnRhc2stbGlzdCA+IGxpLnRhc2stbGlzdC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAyMnB4O1xuICBwYWRkaW5nLWlubGluZS1zdGFydDogMzJweDtcbn1cbi5tZCB1bC50YXNrLWxpc3QgPiBsaS50YXNrLWxpc3QtaXRlbSA+IHAgPiBpbnB1dC50YXNrLWxpc3QtaXRlbS1jaGVja2JveCxcbi5tZCB1bC50YXNrLWxpc3QgPiBsaS50YXNrLWxpc3QtaXRlbSA+IGlucHV0LnRhc2stbGlzdC1pdGVtLWNoZWNrYm94LFxuLm1kIG9sLnRhc2stbGlzdCA+IGxpLnRhc2stbGlzdC1pdGVtID4gcCA+IGlucHV0LnRhc2stbGlzdC1pdGVtLWNoZWNrYm94LFxuLm1kIG9sLnRhc2stbGlzdCA+IGxpLnRhc2stbGlzdC1pdGVtID4gaW5wdXQudGFzay1saXN0LWl0ZW0tY2hlY2tib3gge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0LWlubGluZS1zdGFydDogOHB4O1xuICBpbnNldC1ibG9jay1zdGFydDogM3B4O1xufVxuLm1kIHVsLnRhc2stbGlzdCA+IGxpLnRhc2stbGlzdC1pdGVtIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XG59XG4ubWQgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbi5tZCB1bC50YXNrLWxpc3QgLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94LFxuLm1kIG9sW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF0sXG4ubWQgb2wudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveCB7XG4gIGFsbDogdW5zZXQ7XG4gIEBhcHBseSBnbC1ibG9jaztcbiAgQGFwcGx5IGdsLXctNTtcbiAgQGFwcGx5IGdsLWgtNTtcbiAgQGFwcGx5IGdsLWN1cnNvci1wb2ludGVyO1xuICBAYXBwbHkgZ2wtYm94LWJvcmRlcjtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgQGFwcGx5IGZvY3VzLXZpc2libGU6Z2wtZm9jdXM7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG4ubWQgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XTo6YmVmb3JlLFxuLm1kIHVsLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6OmJlZm9yZSxcbi5tZCBvbFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdOjpiZWZvcmUsXG4ubWQgb2wudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgbWFyZ2luLXRvcDogY2FsYygtMC4yNXJlbSAtIDFweCk7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKC0wLjI1cmVtIC0gMXB4KTtcbiAgQGFwcGx5IGdsLWFic29sdXRlO1xuICBAYXBwbHkgZ2wtei0xO1xuICBAYXBwbHkgZ2wtdy02O1xuICBAYXBwbHkgZ2wtaC02O1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG59XG4ubWQgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKTpob3Zlcixcbi5tZCB1bC50YXNrLWxpc3QgLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94Om5vdCg6ZGlzYWJsZWQpOmhvdmVyLFxuLm1kIG9sW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCk6aG92ZXIsXG4ubWQgb2wudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveDpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItaG92ZXIpO1xufVxuLm1kIHVsW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSxcbi5tZCB1bC50YXNrLWxpc3QgLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94Om5vdCg6ZGlzYWJsZWQpOmZvY3VzLXZpc2libGUsXG4ubWQgb2xbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKTpmb2N1cy12aXNpYmxlLFxuLm1kIG9sLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1cyk7XG59XG4ubWQgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkLFxuLm1kIHVsLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6Y2hlY2tlZCxcbi5tZCBvbFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQsXG4ubWQgb2wudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveDpjaGVja2VkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpO1xufVxuLm1kIHVsW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZDo6YWZ0ZXIsXG4ubWQgdWwudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveDpjaGVja2VkOjphZnRlcixcbi5tZCBvbFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQ6OmFmdGVyLFxuLm1kIG9sLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6Y2hlY2tlZDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBAYXBwbHkgZ2wtYWJzb2x1dGU7XG4gIEBhcHBseSBnbC16LTI7XG4gIEBhcHBseSBnbC13LTU7XG4gIEBhcHBseSBnbC1oLTU7XG4gIEBhcHBseSBnbC1tdC1bLTFweF07XG4gIEBhcHBseSBnbC1tbC1bLTFweF07XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIG1hc2s6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD1cIjEwXCIgaGVpZ2h0PVwiOFwiIHZpZXdCb3g9XCIwIDAgMTAgOFwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiJTNFJTNDcGF0aCBkPVwiTTAuNzUgNC43NjI4OUwzLjE1MzEyIDcuMjQ2NzhMOS4yNSAxLjE0OTlcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLyUzRSUzQy9zdmclM0UlMEEnKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQpO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLm1kIHVsW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCxcbiAgLm1kIHVsLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6Y2hlY2tlZCxcbiAgLm1kIG9sW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCxcbiAgLm1kIG9sLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogTGlua1RleHQ7XG4gICAgYm9yZGVyLWNvbG9yOiBMaW5rVGV4dDtcbiAgfVxufVxuLm1kIHVsW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCk6Y2hlY2tlZDpob3Zlcixcbi5tZCB1bC50YXNrLWxpc3QgLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94Om5vdCg6ZGlzYWJsZWQpOmNoZWNrZWQ6aG92ZXIsXG4ubWQgb2xbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmRpc2FibGVkKTpjaGVja2VkOmhvdmVyLFxuLm1kIG9sLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6bm90KDpkaXNhYmxlZCk6Y2hlY2tlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3Zlcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xufVxuLm1kIHVsW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCk6Y2hlY2tlZDpmb2N1cy12aXNpYmxlLFxuLm1kIHVsLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6bm90KDpkaXNhYmxlZCk6Y2hlY2tlZDpmb2N1cy12aXNpYmxlLFxuLm1kIG9sW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpkaXNhYmxlZCk6Y2hlY2tlZDpmb2N1cy12aXNpYmxlLFxuLm1kIG9sLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6bm90KDpkaXNhYmxlZCk6Y2hlY2tlZDpmb2N1cy12aXNpYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1mb2N1cyk7XG59XG4ubWQgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZCxcbi5tZCB1bC50YXNrLWxpc3QgLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94OmRpc2FibGVkLFxuLm1kIG9sW2RhdGEtdHlwZT10YXNrTGlzdF0gaW5wdXRbdHlwZT1jaGVja2JveF06ZGlzYWJsZWQsXG4ubWQgb2wudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGlzYWJsZWQpO1xuICBAYXBwbHkgZ2wtY3Vyc29yLW5vdC1hbGxvd2VkO1xuICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbn1cbi5tZCB1bFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdOmRpc2FibGVkOmNoZWNrZWQsIC5tZCB1bFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdW2RhdGEtaW5kZXRlcm1pbmF0ZV06ZGlzYWJsZWQsXG4ubWQgdWwudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveDpkaXNhYmxlZDpjaGVja2VkLFxuLm1kIHVsLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3hbZGF0YS1pbmRldGVybWluYXRlXTpkaXNhYmxlZCxcbi5tZCBvbFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdOmRpc2FibGVkOmNoZWNrZWQsXG4ubWQgb2xbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XVtkYXRhLWluZGV0ZXJtaW5hdGVdOmRpc2FibGVkLFxuLm1kIG9sLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6ZGlzYWJsZWQ6Y2hlY2tlZCxcbi5tZCBvbC50YXNrLWxpc3QgLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94W2RhdGEtaW5kZXRlcm1pbmF0ZV06ZGlzYWJsZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGlzYWJsZWQpO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkKTtcbn1cbi5tZCB1bFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdOmRpc2FibGVkOmNoZWNrZWQ6OmFmdGVyLCAubWQgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XVtkYXRhLWluZGV0ZXJtaW5hdGVdOmRpc2FibGVkOjphZnRlcixcbi5tZCB1bC50YXNrLWxpc3QgLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94OmRpc2FibGVkOmNoZWNrZWQ6OmFmdGVyLFxuLm1kIHVsLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3hbZGF0YS1pbmRldGVybWluYXRlXTpkaXNhYmxlZDo6YWZ0ZXIsXG4ubWQgb2xbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XTpkaXNhYmxlZDpjaGVja2VkOjphZnRlcixcbi5tZCBvbFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdW2RhdGEtaW5kZXRlcm1pbmF0ZV06ZGlzYWJsZWQ6OmFmdGVyLFxuLm1kIG9sLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3g6ZGlzYWJsZWQ6Y2hlY2tlZDo6YWZ0ZXIsXG4ubWQgb2wudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveFtkYXRhLWluZGV0ZXJtaW5hdGVdOmRpc2FibGVkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLWRpc2FibGVkKTtcbn1cbi5tZCB1bFtkYXRhLXR5cGU9dGFza0xpc3RdIGlucHV0W3R5cGU9Y2hlY2tib3hdW2RhdGEtaW5kZXRlcm1pbmF0ZV06ZGlzYWJsZWQ6OmFmdGVyLFxuLm1kIHVsLnRhc2stbGlzdCAudGFzay1saXN0LWl0ZW0tY2hlY2tib3hbZGF0YS1pbmRldGVybWluYXRlXTpkaXNhYmxlZDo6YWZ0ZXIsXG4ubWQgb2xbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XVtkYXRhLWluZGV0ZXJtaW5hdGVdOmRpc2FibGVkOjphZnRlcixcbi5tZCBvbC50YXNrLWxpc3QgLnRhc2stbGlzdC1pdGVtLWNoZWNrYm94W2RhdGEtaW5kZXRlcm1pbmF0ZV06ZGlzYWJsZWQ6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgQGFwcGx5IGdsLWFic29sdXRlO1xuICBAYXBwbHkgZ2wtei0yO1xuICBAYXBwbHkgZ2wtdy01O1xuICBAYXBwbHkgZ2wtaC01O1xuICBAYXBwbHkgZ2wtbXQtWy0xcHhdO1xuICBAYXBwbHkgZ2wtbWwtWy0xcHhdO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xuICBtYXNrOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9XCIxMFwiIGhlaWdodD1cIjJcIiB2aWV3Qm94PVwiMCAwIDEwIDJcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiUzRSUzQ3BhdGggZD1cIk0xLjc1IDFIOC4yNVwiIHN0cm9rZT1cIndoaXRlXCIgc3Ryb2tlLXdpZHRoPVwiMS41XCIgc3Ryb2tlLWxpbmVjYXA9XCJyb3VuZFwiIHN0cm9rZS1saW5lam9pbj1cInJvdW5kXCIvJTNFJTNDL3N2ZyUzRSUwQScpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1kaXNhYmxlZCk7XG59XG4ubWQgbGkuaW5hcHBsaWNhYmxlIHMuaW5hcHBsaWNhYmxlIHtcbiAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG59XG4ubWQgbGkuaW5hcHBsaWNhYmxlID4gcCxcbi5tZCBsaS5pbmFwcGxpY2FibGUgPiBkaXYge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG59XG4ubWQgbGkuaW5hcHBsaWNhYmxlIC5kcmFnLWljb24ge1xuICBAYXBwbHkgZ2wtZmlsbC1pY29uLWRlZmF1bHQ7XG59XG4ubWQgbGkuaW5hcHBsaWNhYmxlIC5nbC1sYWJlbCwgLm1kIGxpLmluYXBwbGljYWJsZSBrYmQge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRpc2FibGVkKTtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xufVxuLm1kIGEuZ2ZtLWdvbGx1bS13aWtpLXBhZ2U6OmJlZm9yZSB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogLTJweDtcbn1cbi5nbC1kYXJrIC5tZCBhLmdmbS1nb2xsdW0td2lraS1wYWdlOjpiZWZvcmUge1xuICBmaWx0ZXI6IGludmVydCgwLjgpIGh1ZS1yb3RhdGUoMTgwZGVnKTtcbn1cbi5tZCBhLmdmbS1nb2xsdW0td2lraS1wYWdlOjpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJzcHJpdGVfaWNvbnMvZG9jdW1lbnQuc3ZnXCIpO1xufVxuLm1kIGEud2l0aC1hdHRhY2htZW50LWljb246OmJlZm9yZSxcbi5tZCBhW2hyZWYqPVwiL3VwbG9hZHMvXCJdOjpiZWZvcmUsXG4ubWQgYVtocmVmKj1cInN0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZ29vZ2xlLWNvZGUtYXR0YWNobWVudHMvXCJdOjpiZWZvcmUge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgdmVydGljYWwtYWxpZ246IC0ycHg7XG59XG4uZ2wtZGFyayAubWQgYS53aXRoLWF0dGFjaG1lbnQtaWNvbjo6YmVmb3JlLFxuLmdsLWRhcmsgLm1kIGFbaHJlZio9XCIvdXBsb2Fkcy9cIl06OmJlZm9yZSxcbi5nbC1kYXJrIC5tZCBhW2hyZWYqPVwic3RvcmFnZS5nb29nbGVhcGlzLmNvbS9nb29nbGUtY29kZS1hdHRhY2htZW50cy9cIl06OmJlZm9yZSB7XG4gIGZpbHRlcjogaW52ZXJ0KDAuOCkgaHVlLXJvdGF0ZSgxODBkZWcpO1xufVxuLm1kIGEud2l0aC1hdHRhY2htZW50LWljb246OmJlZm9yZSxcbi5tZCBhW2hyZWYqPVwiL3VwbG9hZHMvXCJdOjpiZWZvcmUsXG4ubWQgYVtocmVmKj1cInN0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZ29vZ2xlLWNvZGUtYXR0YWNobWVudHMvXCJdOjpiZWZvcmUge1xuICBjb250ZW50OiB1cmwoXCJzcHJpdGVfaWNvbnMvcGFwZXJjbGlwLnN2Z1wiKTtcbn1cbi5tZCBhW2hyZWYqPVwiL3dpa2lzL1wiXS5uby1hdHRhY2htZW50LWljb246OmJlZm9yZSxcbi5tZCBhW2hyZWYqPVwiL3VwbG9hZHMvXCJdLm5vLWF0dGFjaG1lbnQtaWNvbjo6YmVmb3JlLFxuLm1kIGFbaHJlZio9XCJzdG9yYWdlLmdvb2dsZWFwaXMuY29tL2dvb2dsZS1jb2RlLWF0dGFjaG1lbnRzL1wiXS5uby1hdHRhY2htZW50LWljb246OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ubWQge1xuICAvKiBMaW5rIHRvIGN1cnJlbnQgaGVhZGVyLiAqL1xufVxuLm1kIGgxIGEuYW5jaG9yOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoMiBhLmFuY2hvcjpub3QoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4ubWQgaDMgYS5hbmNob3I6bm90KFthcmlhLWhpZGRlbj10cnVlXSk6OmFmdGVyLFxuLm1kIGg0IGEuYW5jaG9yOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoNSBhLmFuY2hvcjpub3QoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4ubWQgaDYgYS5hbmNob3I6bm90KFthcmlhLWhpZGRlbj10cnVlXSk6OmFmdGVyIHtcbiAgQGFwcGx5IGdsLWlubGluZS1ibG9jaztcbiAgQGFwcGx5IGdsLWJnLWNvdmVyO1xufVxuLmdsLWRhcmsgLm1kIGgxIGEuYW5jaG9yOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5nbC1kYXJrIC5tZCBoMiBhLmFuY2hvcjpub3QoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4uZ2wtZGFyayAubWQgaDMgYS5hbmNob3I6bm90KFthcmlhLWhpZGRlbj10cnVlXSk6OmFmdGVyLFxuLmdsLWRhcmsgLm1kIGg0IGEuYW5jaG9yOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5nbC1kYXJrIC5tZCBoNSBhLmFuY2hvcjpub3QoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4uZ2wtZGFyayAubWQgaDYgYS5hbmNob3I6bm90KFthcmlhLWhpZGRlbj10cnVlXSk6OmFmdGVyIHtcbiAgZmlsdGVyOiBpbnZlcnQoMC44KSBodWUtcm90YXRlKDE4MGRlZyk7XG59XG4ubWQgaDEgYS5hbmNob3I6bm90KFthcmlhLWhpZGRlbj10cnVlXSk6OmFmdGVyLFxuLm1kIGgyIGEuYW5jaG9yOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoMyBhLmFuY2hvcjpub3QoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4ubWQgaDQgYS5hbmNob3I6bm90KFthcmlhLWhpZGRlbj10cnVlXSk6OmFmdGVyLFxuLm1kIGg1IGEuYW5jaG9yOm5vdChbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoNiBhLmFuY2hvcjpub3QoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJpY29uX2FuY2hvci5zdmdcIik7XG4gIGhlaWdodDogMC45ZW07XG4gIHdpZHRoOiAwLjllbTtcbiAgbWFyZ2luLWlubGluZS1zdGFydDogMC4yZW07XG4gIEBhcHBseSBnbC1pbnZpc2libGU7XG59XG4ubWQgaDEgYS5hbmNob3I6aXMoW2FyaWEtaGlkZGVuPXRydWVdKSxcbi5tZCBoMiBhLmFuY2hvcjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pLFxuLm1kIGgzIGEuYW5jaG9yOmlzKFthcmlhLWhpZGRlbj10cnVlXSksXG4ubWQgaDQgYS5hbmNob3I6aXMoW2FyaWEtaGlkZGVuPXRydWVdKSxcbi5tZCBoNSBhLmFuY2hvcjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pLFxuLm1kIGg2IGEuYW5jaG9yOmlzKFthcmlhLWhpZGRlbj10cnVlXSkge1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gIEBhcHBseSBnbC1vdXRsaW5lLW5vbmU7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgd2lkdGg6IDIwcHg7XG59XG4uZ2wtZGFyayAubWQgaDEgYS5hbmNob3I6aXMoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4uZ2wtZGFyayAubWQgaDIgYS5hbmNob3I6aXMoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4uZ2wtZGFyayAubWQgaDMgYS5hbmNob3I6aXMoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4uZ2wtZGFyayAubWQgaDQgYS5hbmNob3I6aXMoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4uZ2wtZGFyayAubWQgaDUgYS5hbmNob3I6aXMoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIsXG4uZ2wtZGFyayAubWQgaDYgYS5hbmNob3I6aXMoW2FyaWEtaGlkZGVuPXRydWVdKTo6YWZ0ZXIge1xuICBmaWx0ZXI6IGludmVydCgwLjgpIGh1ZS1yb3RhdGUoMTgwZGVnKTtcbn1cbi5tZCBoMSBhLmFuY2hvcjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoMiBhLmFuY2hvcjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoMyBhLmFuY2hvcjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoNCBhLmFuY2hvcjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoNSBhLmFuY2hvcjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlcixcbi5tZCBoNiBhLmFuY2hvcjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pOjphZnRlciB7XG4gIGNvbnRlbnQ6IHVybChcImljb25fYW5jaG9yLnN2Z1wiKTtcbiAgQGFwcGx5IGdsLWludmlzaWJsZTtcbn1cbi5tZCBoMTpob3ZlciA+IGEuYW5jaG9yOjphZnRlcixcbi5tZCBoMjpob3ZlciA+IGEuYW5jaG9yOjphZnRlcixcbi5tZCBoMzpob3ZlciA+IGEuYW5jaG9yOjphZnRlcixcbi5tZCBoNDpob3ZlciA+IGEuYW5jaG9yOjphZnRlcixcbi5tZCBoNTpob3ZlciA+IGEuYW5jaG9yOjphZnRlcixcbi5tZCBoNjpob3ZlciA+IGEuYW5jaG9yOjphZnRlciB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4ubWQgaDEgPiBhLmFuY2hvcjpmb2N1cy12aXNpYmxlOjphZnRlcixcbi5tZCBoMiA+IGEuYW5jaG9yOmZvY3VzLXZpc2libGU6OmFmdGVyLFxuLm1kIGgzID4gYS5hbmNob3I6Zm9jdXMtdmlzaWJsZTo6YWZ0ZXIsXG4ubWQgaDQgPiBhLmFuY2hvcjpmb2N1cy12aXNpYmxlOjphZnRlcixcbi5tZCBoNSA+IGEuYW5jaG9yOmZvY3VzLXZpc2libGU6OmFmdGVyLFxuLm1kIGg2ID4gYS5hbmNob3I6Zm9jdXMtdmlzaWJsZTo6YWZ0ZXIge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvdXRsaW5lOiBhdXRvO1xufVxuLm1kIC5iaWcge1xuICBmb250LXNpemU6IGxhcmdlcjtcbn1cbi5tZCBmaWdjYXB0aW9uLFxuLm1kIC5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogc21hbGxlcjtcbn1cbi5tZCAudW5kZXJsaW5lIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4ubWQgLm92ZXJsaW5lIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBvdmVybGluZTtcbn1cbi5tZCAubGluZS10aHJvdWdoIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG4ubWQgLmZhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuLm1kIC5hZG1vbml0aW9uYmxvY2sgdGQuaWNvbiBbY2xhc3NePVwiZmEgaWNvbi1cIl0ge1xuICBmb250LXNpemU6IDJlbTtcbn1cbi5tZCAuYWRtb25pdGlvbmJsb2NrIHRkLmljb24gLmljb24td2FybmluZzo6YmVmb3JlIHtcbiAgY29udGVudDogXCLimqBcIjtcbn1cbi5tZCAuYWRtb25pdGlvbmJsb2NrIHRkLmljb24gLmljb24taW1wb3J0YW50OjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKdl1wiO1xufVxuLm1kIC5hZG1vbml0aW9uYmxvY2sgdGQuaWNvbiAuaWNvbi10aXA6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi8J+SoVwiO1xufVxuLm1kIC5hZG1vbml0aW9uYmxvY2sgdGQuaWNvbiAuaWNvbi1ub3RlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIvCfk4xcIjtcbn1cbi5tZCAuYWRtb25pdGlvbmJsb2NrIHRkLmljb24gLmljb24tY2F1dGlvbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCLwn5SlXCI7XG59XG4ubWQgLmFkbW9uaXRpb25ibG9jaywgLm1kIC5zaWRlYmFyYmxvY2ssIC5tZCAub3BlbmJsb2NrLCAubWQgLmV4YW1wbGVibG9jayB7XG4gIG1hcmdpbjogMTZweCAwIDE2cHg7XG59XG4ubWQgLnNpZGViYXJibG9jayB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xufVxuLm1kIC5zaWRlYmFyYmxvY2sgcCB7XG4gIG1hcmdpbjogMDtcbn1cbi5tZCAuZXhhbXBsZWJsb2NrID4gZGl2Om50aC1vZi10eXBlKDEpIHtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgYm9yZGVyLXdpZHRoOiAzcHg7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbn1cbi5tZCAuZXhhbXBsZWJsb2NrID4gZGl2Om50aC1vZi10eXBlKDEpIHAge1xuICBtYXJnaW46IDA7XG59XG4ubWQgLmZhLXNxdWFyZS1vOjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKYkFwiO1xufVxuLm1kIC5mYS1jaGVjay1zcXVhcmUtbzo6YmVmb3JlIHtcbiAgY29udGVudDogXCLimJFcIjtcbn1cbi5tZCAuYWRtb25pdGlvbmJsb2NrIHRkLmljb24ge1xuICB3aWR0aDogMSU7XG59XG4ubWQgLmdsLWRyb3Bkb3duLWl0ZW0ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xufVxuLm1kIHtcbiAgLyogQXNjaWlEb2ModG9yKSBidWlsdC1pbiBhbGlnbm1lbnQgcm9sZXMgKi9cbn1cbi5tZCAudGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xufVxuLm1kIC50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbn1cbi5tZCAudGV4dC1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbn1cbi5tZCAudGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50O1xufVxuLm1kIHtcbiAgLyogQXNjaWlEb2ModG9yKSB0YWJsZSBvZiBjb250ZW50cyAqL1xufVxuLm1kIC50b2MgPiBkaXYge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xufVxuLm1kIC5jb2RlLmxhbmd1YWdlLWVtYWlsIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbi5tZCAuY29kZS5sYW5ndWFnZS1lbWFpbCBjb2RlIHtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cbi5tZCAuY29kZS5sYW5ndWFnZS1lbWFpbCBjb2RlIC5udCxcbi5tZCAuY29kZS5sYW5ndWFnZS1lbWFpbCBjb2RlIC5vIHtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLm1kIC5jb2RlLmxhbmd1YWdlLWVtYWlsIGNvZGUgLm5hIHtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG4ubWQgLmNvZGUubGFuZ3VhZ2UtZW1haWwgY29kZSAuYyB7XG4gIGNvbG9yOiAjNjQ2MTYzO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4ubWQubWQtY2hpbGQtY29udGVudC10ZXh0LXN1YnRsZSB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cbi5tZC5tZC1jaGlsZC1jb250ZW50LXRleHQtc3VidGxlIHAsXG4ubWQubWQtY2hpbGQtY29udGVudC10ZXh0LXN1YnRsZSBoMSxcbi5tZC5tZC1jaGlsZC1jb250ZW50LXRleHQtc3VidGxlIGgyLFxuLm1kLm1kLWNoaWxkLWNvbnRlbnQtdGV4dC1zdWJ0bGUgaDMsXG4ubWQubWQtY2hpbGQtY29udGVudC10ZXh0LXN1YnRsZSBoNCxcbi5tZC5tZC1jaGlsZC1jb250ZW50LXRleHQtc3VidGxlIGg1LFxuLm1kLm1kLWNoaWxkLWNvbnRlbnQtdGV4dC1zdWJ0bGUgdGFibGU6bm90KC5jb2RlKSB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cbi5tZCB7XG4gIC8qIFZlcnRpY2FsbHkgYWxpZ24gYmFkZ2VzIHdpdGggaWNvbnMgKi9cbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGdsLWJhZGdlIGVsZW1lbnQgKi9cbn1cbi5tZCAuZ2wtYmFkZ2U6aGFzKD4gc3ZnKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiAtM3B4O1xufVxuLm1kIHtcbiAgLyogQ3VzdG9tIGNsYXNzZXMgd2UgZXhwbGljaXRseSBzdXBwb3J0ICovXG59XG4ubWQgLmdsZm0tZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLm1kIC5nbGZtLWZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLm1kIC5nbGZtLWZsb2F0LW5vbmUge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLyoqXG4gKiBMaW5rc1xuICpcbiAqL1xuYTpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpO1xuICBvdXRsaW5lLW9mZnNldDogMnB4O1xufVxuXG4vKipcbiAqIEhlYWRlcnNcbiAqXG4gKi9cbmJvZHkge1xuICAtd2Via2l0LXRleHQtc2hhZG93OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDEpIDAgMCAxcHg7XG59XG5cbi5wYWdlLXRpdGxlIHtcbiAgbWFyZ2luOiAwLjc1cmVtIDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4ucGFnZS10aXRsZS53aXRoLWJ1dHRvbiB7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xufVxuXG4ucGFnZS10aXRsZS1lbXB0eSB7XG4gIG1hcmdpbjogMTJweCAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuICBmb250LXNpemU6IDEuMjVlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmxpZ2h0LWhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi8qKiBDT0RFICoqL1xucHJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtZm9udC1tb25vc3BhY2U7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA4cHggMTJweDtcbiAgbWFyZ2luOiAwIDAgOHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuLm1hcmtkb3duLWNvZGUtYmxvY2sgcHJlIHtcbiAgcGFkZGluZzogMTJweDtcbn1cblxuLm1vbm9zcGFjZSB7XG4gIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbn1cblxuLndlaWdodC1ub3JtYWwge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uY29tbWl0LXNoYSxcbi5yZWYtbmFtZSB7XG4gIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiA5NSU7XG59XG5cbi5naXQtcmV2aXNpb24tZHJvcGRvd24gLmRyb3Bkb3duLWNvbnRlbnQgbGk6bm90KC5kcm9wZG93bi1tZW51LWVtcHR5LWl0ZW0pIGEge1xuICBAYXBwbHkgZ2wtZm9udC1tb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogOTUlO1xuICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG59XG5cbi8qKlxuICogVGV4dGFyZWFzIGludGVuZGVkIGZvciBHRk1cbiAqXG4gKi9cbnRleHRhcmVhLmpzLWdmbS1pbnB1dCB7XG4gIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuaDEgc21hbGwsXG5oMiBzbWFsbCxcbmgzIHNtYWxsLFxuaDQgc21hbGwge1xuICBAYXBwbHkgZ2wtdGV4dC1oZWFkaW5nO1xufVxuXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGV4dC1yaWdodC1tZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRleHQtcmlnaHQtbWQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50ZXh0LXJpZ2h0LWxnIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGV4dC1yaWdodC1sZyB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLmlkaWZmLmRlbGV0aW9uIHtcbiAgYmFja2dyb3VuZDogdmFyKC0tY29kZS1vbGQtaW5saW5lLWRpZmYtYmFja2dyb3VuZC1jb2xvciwgI2ZhYzVjZCk7XG59XG5cbi5pZGlmZi5hZGRpdGlvbiB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWNvZGUtbmV3LWlubGluZS1kaWZmLWJhY2tncm91bmQtY29sb3IsICNjN2YwZDIpO1xufVxuXG4vKipcbiAqIGZvcm0gdGV4dCBpbnB1dCBpLmUuIHNlYXJjaCBiYXIsIGNvbW1lbnRzLCBmb3JtcywgZXRjLlxuICovXG5pbnB1dDo6cGxhY2Vob2xkZXIsXG50ZXh0YXJlYTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcik7XG59XG5cbndiciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuOnJvb3Qge1xuICAtLWNvZGUtZWRpdG9yLWZvbnQ6IHZhcigtLWRlZmF1bHQtbW9uby1mb250LCBcIkdpdExhYiBNb25vXCIpLCBKZXRCcmFpbnMgTW9ubywgTWVubG8sIERlamFWdSBTYW5zIE1vbm8sIExpYmVyYXRpb24gTW9ubywgQ29uc29sYXMsIFVidW50dSBNb25vLCBDb3VyaWVyIE5ldywgYW5kYWxlIG1vbm8sIGx1Y2lkYSBjb25zb2xlLCBtb25vc3BhY2U7XG59XG5cbi8qKlxuICogRk9PVE5PVEVTXG4gKi9cbnNlY3Rpb24uZm9vdG5vdGVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuc2VjdGlvbi5mb290bm90ZXM6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxNnJlbTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuc2VjdGlvbi5mb290bm90ZXMgb2wgPiBsaSB7XG4gIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDEuNXJlbTtcbn1cbnNlY3Rpb24uZm9vdG5vdGVzIG9sID4gbGkgcCB7XG4gIG1hcmdpbi1ibG9jay1lbmQ6IDA7XG59XG5zZWN0aW9uLmZvb3Rub3RlcyAuZm9vdG5vdGUtYmFja3JlZiBnbC1lbW9qaSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuODc1ZW07XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4ubWF0aC1jb250ZW50LWlubGluZSB7XG4gIEBhcHBseSBnbC1tYXgtdy1mdWxsO1xufVxuXG4uemVuLWJhY2tkcm9wLmZ1bGxzY3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTAzMTtcbn1cbi56ZW4tYmFja2Ryb3AuZnVsbHNjcmVlbiB0ZXh0YXJlYSB7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICMwNTA0MDg7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gIHBhZGRpbmc6IDMwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdXRsaW5lOiBub25lO1xuICByZXNpemU6IG5vbmU7XG4gIGhlaWdodDogMTAwdmg7XG4gIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMHB4KTtcbiAgbWF4LXdpZHRoOiA5MDBweDtcbiAgbWFyZ2luOiAwIGF1dG8gMTBweDtcbn1cbi56ZW4tYmFja2Ryb3AuZnVsbHNjcmVlbiAuZGl2LWRyb3B6b25lIHRleHRhcmVhLm5vdGUtdGV4dGFyZWEge1xuICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcbn1cbi56ZW4tYmFja2Ryb3AuZnVsbHNjcmVlbiAuemVuLWNvbnRyb2wtbGVhdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnplbi1tb2RlLWZ1bGxzY3JlZW4ge1xuICBvdmVyZmxvdy15OiBjbGlwO1xufVxuXG4uemVuLWNvbnRyb2wge1xuICBwYWRkaW5nOiAwO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbn1cblxuLnplbi1jb250cm9sLWxlYXZlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBAYXBwbHkgc206Z2wtcC0zICFpbXBvcnRhbnQ7XG4gIEBhcHBseSBzbTpnbC10ZXh0LWJhc2UgIWltcG9ydGFudDtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMCAhaW1wb3J0YW50O1xuICBAYXBwbHkgZ2wtcmlnaHQtMztcbiAgQGFwcGx5IGdsLXRvcC0zO1xufVxuXG4uaW5mby13ZWxsIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1zZWN0aW9uO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1sZztcbn1cbi5pbmZvLXdlbGwgLmljb24tY29udGFpbmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMC41cmVtIDAgMC4yNXJlbTtcbn1cbi5pbmZvLXdlbGwgLmljb24tY29udGFpbmVyIHN2ZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAycHg7XG4gIGhlaWdodDogMTZweDtcbiAgd2lkdGg6IDE2cHg7XG59XG4uaW5mby13ZWxsIC5pY29uLWNvbnRhaW5lci5jb21taXQtaWNvbiBzdmcgcGF0aCB7XG4gIEBhcHBseSBnbC1maWxsLWljb24tZGVmYXVsdDtcbn1cbi5pbmZvLXdlbGwgLmJyYW5jaGVzIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuLmluZm8td2VsbCBzdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG59XG5cbi5wYWdlLWNvbnRlbnQtaGVhZGVyIHtcbiAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5wYWdlLWNvbnRlbnQtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnBhZ2UtY29udGVudC1oZWFkZXIgLmhlYWRlci1tYWluLWNvbnRlbnQge1xuICAgIGZsZXg6IDE7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnBhZ2UtY29udGVudC1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucGFnZS1jb250ZW50LWhlYWRlciAuaGVhZGVyLW1haW4tY29udGVudCB7XG4gICAgZmxleDogMTtcbiAgfVxufVxuLnBhZ2UtY29udGVudC1oZWFkZXIgLmF2YXRhciB7XG4gIGZsb2F0OiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAycHg7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnBhZ2UtY29udGVudC1oZWFkZXIgLmF2YXRhciB7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucGFnZS1jb250ZW50LWhlYWRlciAuYXZhdGFyIHtcbiAgICBtYXJnaW4tbGVmdDogNHB4O1xuICB9XG59XG4ucGFnZS1jb250ZW50LWhlYWRlciAuYXZhdGFyLnMyNCB7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xufVxuLnBhZ2UtY29udGVudC1oZWFkZXIgLmNvbW1pdC1jb21taXR0ZXItbGluayxcbi5wYWdlLWNvbnRlbnQtaGVhZGVyIC5jb21taXQtYXV0aG9yLWxpbmsge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLnBhZ2UtY29udGVudC1oZWFkZXIgLmNvbW1pdC1pbmZvLmJyYW5jaGVzIHtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbn1cblxuLnBhZ2UtaGVhZGluZy1hY3Rpb25zID4gLmdsLWJ1dHRvbixcbi5wYWdlLWhlYWRpbmctYWN0aW9ucyA+IC5nbC1kaXNjbG9zdXJlLWRyb3Bkb3duIHtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IHNtOmdsLXctYXV0bztcbn1cblxuLnBhZ2UtdGl0bGUtaG9sZGVyIC5wYWdlLXRpdGxlIHtcbiAgbWFyZ2luOiAwLjc1cmVtIDA7XG4gIEBhcHBseSBnbC10ZXh0LWhlYWRpbmc7XG59XG4ucGFnZS10aXRsZS1ob2xkZXIgLnBhZ2UtdGl0bGUtY29udHJvbHMge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmF3YXJkcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5hd2FyZHMgLmVtb2ppLWljb24ge1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xufVxuLmF3YXJkcyAuZ2wtYnV0dG9uLnNlbGVjdGVkIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdCAhaW1wb3J0YW50O1xuICBAYXBwbHkgZ2wtYmctYmx1ZS01MCAhaW1wb3J0YW50O1xuICBAYXBwbHkgZ2wtYm9yZGVyLWJsdWUtNTAwICFpbXBvcnRhbnQ7XG4gIEBhcHBseSBnbC1zaGFkb3ctbm9uZSAhaW1wb3J0YW50O1xuICBAYXBwbHkgZ2wtYm9yZGVyLTIgIWltcG9ydGFudDtcbn1cblxuLmVtb2ppLW1lbnUge1xuICBkaXNwbGF5OiBub25lO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbWFyZ2luLXRvcDogM3B4O1xuICBwYWRkaW5nOiAxNnB4O1xuICB6LWluZGV4OiAzMDA7XG4gIHdpZHRoOiAzNzZweDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbiAgYm94LXNoYWRvdzogMCA2cHggMTJweCByZ2JhKDAsIDAsIDAsIDAuMTc1KTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMCAtNDVweDtcbiAgdHJhbnNpdGlvbjogMC4zcyBjdWJpYy1iZXppZXIoMC42NywgMC4wNiwgMC4xOSwgMS40NCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbn1cbi5lbW9qaS1tZW51LmlzLXJlbmRlcmVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZW1vamktbWVudS5pcy1hbGlnbmVkLXJpZ2h0IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJSAtNDVweDtcbn1cbi5lbW9qaS1tZW51LmlzLXZpc2libGUge1xuICBwb2ludGVyLWV2ZW50czogYWxsO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLmVtb2ppLW1lbnUgLmVtb2ppLW1lbnUtY29udGVudCB7XG4gIGhlaWdodDogMzAwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbi5lbW9qaS1tZW51IC5kaXNhYmxlZCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgb3BhY2l0eTogMC41O1xufVxuLmVtb2ppLW1lbnUgLmRpc2FibGVkOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZW1vamktbWVudSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5lbW9qaS1tZW51IHtcbiAgICB3aWR0aDogOTAlO1xuICB9XG59XG5cbi5lbW9qaS1zZWFyY2gge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJ3QUFBQWNDQVlBQUFCeURkK1VBQUFGdTBsRVFWUklpYTFXVGFoa1Z4SCtxdXFjZTd2ZjZ6ZHZKcEhvSWxrWUoyU2lKaUlva21RamdvR2dJQWFFSVl1WVhXSUNnb2ppd2ttQzR0YUZ3aGpjeUlEdXNvZ0VJd3dpU1NDS1B3c2R3ekFnMFNqSjlJenprNW4zK25YZmU4K3BxaXpPdmQzOTVzY2ZzSnFpNmRQbm5EcjExVmMvTkoxT3dVVG9zcUpMQ21ZQ0hDQUMybVNIcytvalp2NkFPNDZZKzIwQWhJbmVKc2FmaFBoWFZaU1hEazdxaSthT0xodFFOdUJtUXRjYXJBS2pUWHBuMitsM3UyeVB1bnZaU0FCUnVjamNBVi9lTVp1TTQ4L0dvL2cxZDE5a2M0d3ErZThNWmpXa2JJL1A1dDJQM1JGRmJ2N1NRZHlCbEJVeDhOOE9UdXFqTWNvZitOOTR5TVByWTJETW0veXRuYjMySjBRclkrNkFxc0hNNFE2NE85U0tEbWVyS0REM095L3ROTDl2azM0MkNDOFJ1VTZuMHltQ01IYjIyc2N1N3pRbmd0QVNPalVIRTFCWDRVVUF2NGI3T3c2cWlYQ1h1ei9VZHZvZ0FBd2VEWTk0My9iNGNBejBabFlIWGVNc25UMDdSVmI3d01Vcjh5a0k0SDVIVmtNZDVSY2I0L2pOVVJWT0w1cUVyQWFBVVVkQ0NJSjVreDVxMm53OG0zOUltRUFBc2pwRTZQU3RCMFlmTWNkMXdxcUczWG43QTNQZlp5eUtuTmphcUQ0Zm1FL2ZDTktzaGlySXlZMXh2SStBdjZnNVFJQUlJV1g3Y0pQc3Nib1NpQkJFZUttc1puZTBTYjhrekFVV05ZeXE4TnZiRG8wZlo2YmVxeHVMbXFPT01yL2x3T2grWVhwWHRiakVSR2phOUp5WjkrSHhwWEtiOUdqNW95d1JFU2JqK0NqMUVORzFRVmlUR0JsMUZiQzFXZTF0YlZSZkhXSW9Ra2hxSDl4YnBFOTJYVWJiNlZKWjFSNGNyalJ6MUpXY0RNSnZMZG9NY3lBRWhqdXdIbzhCZm5kZzNtYnN6aE9ZK2FkVmxNdEQzcG81MU93eklRaUVhYW1zN29lSmh4UncxRkZPVnBGUlJVWUloTUJBRlJuak9zQzhJRkhIVUE0VFFRaGdBcXBBaUlGZkdieGtJcWo1NGF5R2JMN1VvT3FIQ25pQUVLSExOcjI2bCtEOXdRSnplVXdNQW5mSHZFbkxFQ3paUndSVisrZDYwcHRqVzlWTFplb2xFSkc2R3dDQ0UwQ0ZWTkIrQXkwTkVxb1FZRzRZWUZ1N0I4SUVWUnQzdVJ6eS9vc0lvTFY5UVppbVdYR0hVTUZkbUk2TTY0RFVGMkplODhSOVZacUNTUCtRbGNGNWsrNHRDelNzWGFxaklOdUs2VXlFMCtzL21rNi9xRnE4b0FJTDlwcU1MaGtHc05yT3lvT0lsc3p1c3QzYUp2MFU5K2tGZHdqVEd3V2wxWWRGK0tXbFFTWjBTZS9wc2o4eUdWZGc1dEp5Zkg5NkVCV21MdG9FTXdNek1GdDAzMU56R1dMTHpLaEMrS1Y3SDVaZWVhTU9QeGVtbWEyeDY4cHVjMExOMysvdTZMSmllUFM2TUtIdm40d3U2Y1B6SmowaHNpb2VNZkRyRXZqdjVyNlc5Z0J2aktKdWp1S3pRMFVSSVpqNzVOeWx2VCttYkhmWFFhNHJ3QU1hVlJUTW0vU0Z5enZOeTB5RjYrNEFNKzF1YmNTbnFrQUlValFLbDFSS1NiRTVqdCt2b3Z4MU1CcUYwV1c3L2QxWjgwYWI5QnRtdUozWGs1Y0pLZHM5VFp0L3VMUFh2dGlUclErZEl3cWZBZWpVdk0xb3M2Rk5pa1hLVUhmUStla1VzWFQ1dTg1ZW5KMENhQlNra0dFbzFzeVVRK0RmTWRFLzRHQTF1enVwZjl6ZGJ6aE9tTHNGNGVmSFZYamFISEF6bUR0R2RRUmQvTmM1d0FFSmpOa2kzWGZoeXZ3Vk56ODB4QU5yaHQzTHNFTlk5Y0JCZE4xTDlHVXl5dkZSRlo0MnQ3NXNCdkNRUnlrYlJsVTR0VDJwUHhvQ3Z6eDA5ZDRHbVBzMjAwTTZ3S2RXU0RHSzhtcHBZU1dkaEFsdDBxZWFMditJYWRYVTkvRXZxNEZBWjhlaitMbXRjVHhhUlg0TldJMFVhZzVWZzFwNU1ZZzhCbmxoWElkUEhEb3crdlRXWnZWTVZ0dFhETHFrVHpaZFBqNlFpaTZjUDFjU3ZJZGwzaVFrTll5aTlISDBJMjJ5KzkzdFkzRGNRa1RaZ1F0TStQT29Dcjh4OTdleWxrbXRyZ0t1enRydlhKMjF4L2FOS3VxSWtaL2ZudFJmQ2RjVGZoVVRBSWhSem9Eb2pKRDBhU05MTHdNem1wVDcrSmFMdHlmMU13RG82cXo5ZGpGYVVxM3Q5TWxGbXkvYzFPQ1NjZVk5Zk1zVmFMOW12SDlvY1hka2RXeHYxc2NBZVBHMFRIQWhNT2FMZE93L0d2eGZ4YjF3NGVDYXB5SUVOVWNWNU0zL3U4Rml0QXhaMjVQNkdBSFQzVVgzOVNydytRT2IxWmZmQTk4RGwyV3kxQllrQUFBQUFFbEZUa1N1UW1DQ1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgNXB4IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxNnB4O1xufVxuXG4uZW1vamktbWVudS1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uZW1vamktbWVudS1saXN0LWl0ZW0ge1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogM3B4O1xuICBtYXJnaW4tbGVmdDogMXB4O1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cblxuLmVtb2ppLW1lbnUtYnRuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgd2lkdGg6IDMwcHg7XG4gIGhlaWdodDogMzBweDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgY3ViaWMtYmV6aWVyKDAuMywgMCwgMC4yLCAyKTtcbn1cbi5lbW9qaS1tZW51LWJ0bjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvdXRsaW5lOiAwO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMyk7XG59XG4uZW1vamktbWVudS1idG46Zm9jdXMtdmlzaWJsZSwgLmVtb2ppLW1lbnUtYnRuOmFjdGl2ZSB7XG4gIG91dGxpbmU6IDA7XG59XG4uZW1vamktbWVudS1idG4gLmVtb2ppLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAzcHg7XG59XG4uZW1vamktbWVudS1idG4gPiBnbC1lbW9qaSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi5hd2FyZC1tZW51LWhvbGRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5hd2FyZC1tZW51LWhvbGRlciAudG9vbHRpcCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5nbC1idXR0b24uYnRuLmF3YXJkLWNvbnRyb2wuYWN0aXZlIC5hd2FyZC1jb250cm9sLWljb24tbmV1dHJhbCwgLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbDpob3ZlciAuYXdhcmQtY29udHJvbC1pY29uLW5ldXRyYWwsIC5nbC1idXR0b24uYnRuLmF3YXJkLWNvbnRyb2w6YWN0aXZlIC5hd2FyZC1jb250cm9sLWljb24tbmV1dHJhbCwgLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbC5pcy1hY3RpdmUgLmF3YXJkLWNvbnRyb2wtaWNvbi1uZXV0cmFsIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5nbC1idXR0b24uYnRuLmF3YXJkLWNvbnRyb2wuYWN0aXZlIC5hd2FyZC1jb250cm9sLWljb24tcG9zaXRpdmUsIC5nbC1idXR0b24uYnRuLmF3YXJkLWNvbnRyb2w6aG92ZXIgLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSwgLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbDphY3RpdmUgLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSwgLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbC5pcy1hY3RpdmUgLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG59XG4uZ2wtYnV0dG9uLmJ0bi5hd2FyZC1jb250cm9sLmFjdGl2ZSwgLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbC5pcy1hY3RpdmUsIC5nbC1idXR0b24uYnRuLmF3YXJkLWNvbnRyb2w6YWN0aXZlIHtcbiAgQGFwcGx5IGdsLWJnLWJsdWUtNTA7XG4gIEBhcHBseSBnbC1ib3JkZXItYmx1ZS0yMDA7XG59XG4uZ2wtYnV0dG9uLmJ0bi5hd2FyZC1jb250cm9sLmlzLWFjdGl2ZSAuYXdhcmQtY29udHJvbC1pY29uLXBvc2l0aXZlIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5nbC1idXR0b24uYnRuLmF3YXJkLWNvbnRyb2wuaXMtYWN0aXZlIC5hd2FyZC1jb250cm9sLWljb24tc3VwZXItcG9zaXRpdmUge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbC5idG46Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDA7XG59XG4uZ2wtYnV0dG9uLmJ0bi5hd2FyZC1jb250cm9sLmlzLWxvYWRpbmcgLmVtb2ppLWljb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbCAuaWNvbixcbi5nbC1idXR0b24uYnRuLmF3YXJkLWNvbnRyb2wgZ2wtZW1vamkge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBsaW5lLWhlaWdodDogMC41ZW07XG59XG4uZ2wtYnV0dG9uLmJ0bi5hd2FyZC1jb250cm9sIC5hd2FyZC1jb250cm9sLWljb24tcG9zaXRpdmUsXG4uZ2wtYnV0dG9uLmJ0bi5hd2FyZC1jb250cm9sIC5hd2FyZC1jb250cm9sLWljb24tc3VwZXItcG9zaXRpdmUge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5LCB0cmFuc2Zvcm07XG59XG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuZ2wtYnV0dG9uLmJ0bi5hd2FyZC1jb250cm9sIC5hd2FyZC1jb250cm9sLWljb24tcG9zaXRpdmUsXG4gIC5nbC1idXR0b24uYnRuLmF3YXJkLWNvbnRyb2wgLmF3YXJkLWNvbnRyb2wtaWNvbi1zdXBlci1wb3NpdGl2ZSB7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxufVxuLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbCAuYXdhcmQtY29udHJvbC1pY29uLXBvc2l0aXZlLFxuLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbCAuYXdhcmQtY29udHJvbC1pY29uLXN1cGVyLXBvc2l0aXZlIHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbCAuYXdhcmQtY29udHJvbC1pY29uLXBvc2l0aXZlIHBhdGgsXG4uZ2wtYnV0dG9uLmJ0bi5hd2FyZC1jb250cm9sIC5hd2FyZC1jb250cm9sLWljb24tc3VwZXItcG9zaXRpdmUgcGF0aCB7XG4gIGZpbGw6ICNiYjljMTM7XG59XG4uZ2wtYnV0dG9uLmJ0bi5hd2FyZC1jb250cm9sIC5hd2FyZC1jb250cm9sLXRleHQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uZ2wtYnV0dG9uIC5hd2FyZC1lbW9qaS1ibG9jayB7XG4gIGRpc3BsYXk6IGNvbnRlbnRzO1xufVxuLmdsLWJ1dHRvbiAuYXdhcmQtZW1vamktYmxvY2sgZ2wtZW1vamkge1xuICBtYXJnaW4tYmxvY2s6IC0wLjFlbTtcbn1cbi5nbC1idXR0b24gLmF3YXJkLWVtb2ppLWJsb2NrIGdsLWVtb2ppIGltZyB7XG4gIHRvcDogLTAuMDI1ZW07XG59XG5cbi5hZGQtcmVhY3Rpb24tYnV0dG9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmFkZC1yZWFjdGlvbi1idXR0b24gLnJlYWN0aW9uLWNvbnRyb2wtaWNvbiAuZ2wtaWNvbiB7XG4gIGhlaWdodDogMXJlbTtcbiAgd2lkdGg6IDFyZW07XG59XG4uYWRkLXJlYWN0aW9uLWJ1dHRvbiAucmVhY3Rpb24tY29udHJvbC1pY29uLW5ldXRyYWwge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmFkZC1yZWFjdGlvbi1idXR0b24gLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSxcbi5hZGQtcmVhY3Rpb24tYnV0dG9uIC5yZWFjdGlvbi1jb250cm9sLWljb24tc3VwZXItcG9zaXRpdmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmFkZC1yZWFjdGlvbi1idXR0b246aG92ZXIgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1uZXV0cmFsLCAuYWRkLXJlYWN0aW9uLWJ1dHRvbi5hY3RpdmUgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1uZXV0cmFsLCAuYWRkLXJlYWN0aW9uLWJ1dHRvbjphY3RpdmUgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1uZXV0cmFsLCAuYWRkLXJlYWN0aW9uLWJ1dHRvbi5pcy1hY3RpdmUgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1uZXV0cmFsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5hZGQtcmVhY3Rpb24tYnV0dG9uOmhvdmVyIC5yZWFjdGlvbi1jb250cm9sLWljb24tcG9zaXRpdmUge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLmFkZC1yZWFjdGlvbi1idXR0b24uYWN0aXZlIC5yZWFjdGlvbi1jb250cm9sLWljb24tcG9zaXRpdmUsIC5hZGQtcmVhY3Rpb24tYnV0dG9uOmFjdGl2ZSAucmVhY3Rpb24tY29udHJvbC1pY29uLXBvc2l0aXZlLCAuYWRkLXJlYWN0aW9uLWJ1dHRvbi5pcy1hY3RpdmUgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYWRkLXJlYWN0aW9uLWJ1dHRvbi5hY3RpdmUgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1zdXBlci1wb3NpdGl2ZSwgLmFkZC1yZWFjdGlvbi1idXR0b246YWN0aXZlIC5yZWFjdGlvbi1jb250cm9sLWljb24tc3VwZXItcG9zaXRpdmUsIC5hZGQtcmVhY3Rpb24tYnV0dG9uLmlzLWFjdGl2ZSAucmVhY3Rpb24tY29udHJvbC1pY29uLXN1cGVyLXBvc2l0aXZlIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5hZGQtcmVhY3Rpb24tYnV0dG9uLmRpc2FibGVkIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmFkZC1yZWFjdGlvbi1idXR0b24uZGlzYWJsZWQ6aG92ZXIgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbiAuZ2wtaWNvbiwgLmFkZC1yZWFjdGlvbi1idXR0b24uZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSAucmVhY3Rpb24tY29udHJvbC1pY29uIC5nbC1pY29uLCAuYWRkLXJlYWN0aW9uLWJ1dHRvbi5kaXNhYmxlZDphY3RpdmUgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbiAuZ2wtaWNvbiB7XG4gIGNvbG9yOiBpbmhlcml0O1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xufVxuLmFkZC1yZWFjdGlvbi1idXR0b24uZGlzYWJsZWQ6aG92ZXIgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1uZXV0cmFsLCAuYWRkLXJlYWN0aW9uLWJ1dHRvbi5kaXNhYmxlZDpmb2N1cy12aXNpYmxlIC5yZWFjdGlvbi1jb250cm9sLWljb24tbmV1dHJhbCwgLmFkZC1yZWFjdGlvbi1idXR0b24uZGlzYWJsZWQ6YWN0aXZlIC5yZWFjdGlvbi1jb250cm9sLWljb24tbmV1dHJhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uYWRkLXJlYWN0aW9uLWJ1dHRvbi5kaXNhYmxlZDpob3ZlciAucmVhY3Rpb24tY29udHJvbC1pY29uLXBvc2l0aXZlLFxuLmFkZC1yZWFjdGlvbi1idXR0b24uZGlzYWJsZWQ6aG92ZXIgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1zdXBlci1wb3NpdGl2ZSwgLmFkZC1yZWFjdGlvbi1idXR0b24uZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSAucmVhY3Rpb24tY29udHJvbC1pY29uLXBvc2l0aXZlLFxuLmFkZC1yZWFjdGlvbi1idXR0b24uZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSAucmVhY3Rpb24tY29udHJvbC1pY29uLXN1cGVyLXBvc2l0aXZlLCAuYWRkLXJlYWN0aW9uLWJ1dHRvbi5kaXNhYmxlZDphY3RpdmUgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSxcbi5hZGQtcmVhY3Rpb24tYnV0dG9uLmRpc2FibGVkOmFjdGl2ZSAucmVhY3Rpb24tY29udHJvbC1pY29uLXN1cGVyLXBvc2l0aXZlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmFkZC1yZWFjdGlvbi1zZWFyY2ggaW5wdXQge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiBjYWxjKDAuNXJlbSAtIDFweCkgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGNhbGMoMC41cmVtIC0gMXB4KSAhaW1wb3J0YW50O1xufVxuXG4uZGVzaWduLW5vdGUubm90ZS1mb3JtIC5lbW9qaS1waWNrZXIgLmdsLW5ldy1kcm9wZG93bi1wYW5lbCB7XG4gIGxlZnQ6IDAgIWltcG9ydGFudDtcbn1cblxuLmFwcGVhcmFuY2UtbG9nby1wcmV2aWV3LFxuLmFwcGVhcmFuY2UtcHdhLWljb24tcHJldmlldyB7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5hcHBlYXJhbmNlLWxpZ2h0LWxvZ28tcHJldmlldyB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIG1heC13aWR0aDogNzJweDtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnN2Zy1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxNnB4O1xufVxuLnN2Zy1jb250ZW50IHN2Zyxcbi5zdmctY29udGVudCBpbWcge1xuICBtYXgtd2lkdGg6IDQyNXB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5zdmctY29udGVudC5zdmctODAgaW1nLFxuLnN2Zy1jb250ZW50LnN2Zy04MCBzdmcge1xuICBtYXgtd2lkdGg6IDgwcHg7XG59XG4uc3ZnLWNvbnRlbnQuc3ZnLTEzMCBpbWcsXG4uc3ZnLWNvbnRlbnQuc3ZnLTEzMCBzdmcge1xuICBtYXgtd2lkdGg6IDEzMHB4O1xufVxuLnN2Zy1jb250ZW50LnN2Zy0xNTAgaW1nLFxuLnN2Zy1jb250ZW50LnN2Zy0xNTAgc3ZnIHtcbiAgbWF4LXdpZHRoOiAxNTBweDtcbn1cbi5zdmctY29udGVudC5zdmctMjI1IGltZyxcbi5zdmctY29udGVudC5zdmctMjI1IHN2ZyB7XG4gIG1heC13aWR0aDogMjI1cHg7XG59XG4uc3ZnLWNvbnRlbnQuc3ZnLTI1MCBpbWcsXG4uc3ZnLWNvbnRlbnQuc3ZnLTI1MCBzdmcge1xuICBtYXgtd2lkdGg6IDI1MHB4O1xufVxuLnN2Zy1jb250ZW50LnN2Zy0zMDYgaW1nLFxuLnN2Zy1jb250ZW50LnN2Zy0zMDYgc3ZnIHtcbiAgbWF4LXdpZHRoOiAzMDZweDtcbn1cbi5zdmctY29udGVudC5zdmctMzk0IGltZyxcbi5zdmctY29udGVudC5zdmctMzk0IHN2ZyB7XG4gIG1heC13aWR0aDogMzk0cHg7XG59XG4uc3ZnLWNvbnRlbnQuc3ZnLTQzMCBpbWcsXG4uc3ZnLWNvbnRlbnQuc3ZnLTQzMCBzdmcge1xuICBtYXgtd2lkdGg6IDQzMHB4O1xufVxuXG5zdmcge1xuICBmaWxsOiBjdXJyZW50Q29sb3I7XG59XG5cbnN2ZzppcyhbaWQqPS1zbV0sIFtpZCo9LW1kXSwgW2lkKj0tbGddKSB7XG4gIGZpbGw6IG5vbmU7XG59XG5cbi5zcXVhcmUuczgsXG5zdmcuczgge1xuICB3aWR0aDogOHB4O1xuICBoZWlnaHQ6IDhweDtcbn1cbi5zcXVhcmUuczEwLFxuc3ZnLnMxMCB7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG59XG4uc3F1YXJlLnMxMixcbnN2Zy5zMTIge1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xufVxuLnNxdWFyZS5zMTQsXG5zdmcuczE0IHtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcbn1cbi5zcXVhcmUuczE2LFxuc3ZnLnMxNiB7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG59XG4uc3F1YXJlLnMxOCxcbnN2Zy5zMTgge1xuICB3aWR0aDogMThweDtcbiAgaGVpZ2h0OiAxOHB4O1xufVxuLnNxdWFyZS5zMjQsXG5zdmcuczI0IHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbi5zcXVhcmUuczMyLFxuc3ZnLnMzMiB7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG59XG4uc3F1YXJlLnM0OCxcbnN2Zy5zNDgge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xufVxuLnNxdWFyZS5zNzIsXG5zdmcuczcyIHtcbiAgd2lkdGg6IDcycHg7XG4gIGhlaWdodDogNzJweDtcbn1cbi5zcXVhcmUuczEyLFxuc3ZnLnMxMiB7XG4gIHZlcnRpY2FsLWFsaWduOiAtMXB4O1xufVxuLnNxdWFyZS5zMTYsXG5zdmcuczE2IHtcbiAgdmVydGljYWwtYWxpZ246IC0zcHg7XG59XG5cbi5nbC1kYXJrIC5pbnRlZ3JhdGlvbi1sb2dvW2FsdD1cIkRpZmZibHVlIENvdmVyXCJdLCAuZ2wtZGFyayAuaW50ZWdyYXRpb24tbG9nb1thbHQ9RHJvbmVdLCAuZ2wtZGFyayAuaW50ZWdyYXRpb24tbG9nb1thbHQ9R2l0SHViXSwgLmdsLWRhcmsgLmludGVncmF0aW9uLWxvZ29bYWx0PVwiTWF0dGVybW9zdCBub3RpZmljYXRpb25zXCJdLCAuZ2wtZGFyayAuaW50ZWdyYXRpb24tbG9nb1thbHQ9XCJNYXR0ZXJtb3N0IHNsYXNoIGNvbW1hbmRzXCJdLCAuZ2wtZGFyayAuaW50ZWdyYXRpb24tbG9nb1thbHQ9UGhvcmdlXSB7XG4gIGZpbHRlcjogaW52ZXJ0KDEpIGJyaWdodG5lc3MoMik7XG59XG5cbmJvZHkuaW1hZ2UtbGlnaHRib3gtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmdsLWVtb2ppIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgZm9udC1mYW1pbHk6IFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5nbC1lbW9qaSBpbWcge1xuICB3aWR0aDogMWVtO1xuICBvYmplY3QtZml0OiBzY2FsZS1kb3duO1xuICBoZWlnaHQ6IDFlbTtcbn1cblxuLnVzZXItc3RhdHVzLWVtb2ppIHtcbiAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgbWFyZ2luLXJpZ2h0OiA0cHg7XG59XG4udXNlci1zdGF0dXMtZW1vamkgZ2wtZW1vamkge1xuICBmb250LXNpemU6IDFlbTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuLmRhc2hib2FyZC1zdGF0dXMtZW1vamkge1xuICBAYXBwbHkgZ2wtdGV4dC1bMS41cmVtXTtcbiAgQGFwcGx5IGdsLW10LTE7XG59XG5cbi5nbC1wbGF0Zm9ybS13aW5kb3dzIC5kYXNoYm9hcmQtc3RhdHVzLWVtb2ppIHtcbiAgQGFwcGx5IC1nbC1tdC1bMC4ycmVtXTtcbiAgQGFwcGx5IC1nbC1tbC0yO1xufVxuXG4uZ2wtcGxhdGZvcm0tbGludXggLmRhc2hib2FyZC1zdGF0dXMtZW1vamkge1xuICBAYXBwbHkgZ2wtdGV4dC1bMS4xMjVyZW1dO1xuICBAYXBwbHkgLWdsLW10LTE7XG59XG5cbi5lbW9qaS1waWNrZXItY2F0ZWdvcnktaGVhZGVyIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKSA1MCUsIHRyYW5zcGFyZW50IDEwMCUpO1xufVxuXG4uZW1vamktcGlja2VyLWVtb2ppIHtcbiAgaGVpZ2h0OiAzMHB4O1xuICB3aWR0aDogMTEuMTExMTExMTExMSU7XG4gIG1peC1ibGVuZC1tb2RlOiBub3JtYWwgIWltcG9ydGFudDtcbn1cbi5lbW9qaS1waWNrZXItZW1vamkgZ2wtZW1vamkge1xuICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xufVxuLmVtb2ppLXBpY2tlci1lbW9qaSBnbC1lbW9qaSBpbWcge1xuICB0b3A6IGF1dG87XG4gIG1heC13aWR0aDogdW5zZXQ7XG59XG5cbi5lbW9qaS1waWNrZXIgLmdsLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51LFxuLmVtb2ppLXBpY2tlciAuZ2wtbmV3LWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24tcGFuZWwge1xuICB3aWR0aDogMzU0cHggIWltcG9ydGFudDtcbn1cblxuLmVtb2ppLXBpY2tlciAuZ2wtbmV3LWRyb3Bkb3duLWNvbnRlbnRzIHtcbiAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICBvdmVyZmxvdy15OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLmVtb2ppLXBpY2tlci1jYXRlZ29yeS10YWIge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5lbW9qaS1waWNrZXItY2F0ZWdvcnktdGFiOmhvdmVyOm5vdCguZW1vamktcGlja2VyLWNhdGVnb3J5LWFjdGl2ZSkge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG59XG4uZW1vamktcGlja2VyLWNhdGVnb3J5LXRhYjpmb2N1cy12aXNpYmxlIHtcbiAgei1pbmRleDogMjtcbn1cblxuLmVtb2ppLXBpY2tlci1jYXRlZ29yeS1hY3RpdmUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAjM2EzODNkICFpbXBvcnRhbnQ7XG59XG5cbi5lbW9qaS1waWNrZXIgLmdsLWRyb3Bkb3duLWNvbnRlbnRzID4gOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4uY2ktc3RhdHVzLWljb24tc3VjY2VzcyBzdmcsXG4uY2ktc3RhdHVzLWljb24tc3VjY2VzcyAuZ2wtaWNvbixcbi5jaS1zdGF0dXMtaWNvbi1wYXNzZWQgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLXBhc3NlZCAuZ2wtaWNvbiB7XG4gIEBhcHBseSBnbC1maWxsLWljb24tc3VjY2Vzcztcbn1cblxuLmNpLXN0YXR1cy1pY29uLWVycm9yIHN2Zyxcbi5jaS1zdGF0dXMtaWNvbi1lcnJvciAuZ2wtaWNvbixcbi5jaS1zdGF0dXMtaWNvbi1mYWlsZWQgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLWZhaWxlZCAuZ2wtaWNvbiB7XG4gIGZpbGw6ICNkZTFkNGI7XG59XG5cbi5jaS1zdGF0dXMtaWNvbi1wZW5kaW5nIHN2Zyxcbi5jaS1zdGF0dXMtaWNvbi1wZW5kaW5nIC5nbC1pY29uLFxuLmNpLXN0YXR1cy1pY29uLXdhaXRpbmctZm9yLXJlc291cmNlIHN2Zyxcbi5jaS1zdGF0dXMtaWNvbi13YWl0aW5nLWZvci1yZXNvdXJjZSAuZ2wtaWNvbixcbi5jaS1zdGF0dXMtaWNvbi13YWl0aW5nLWZvci1jYWxsYmFjayBzdmcsXG4uY2ktc3RhdHVzLWljb24td2FpdGluZy1mb3ItY2FsbGJhY2sgLmdsLWljb24sXG4uY2ktc3RhdHVzLWljb24tZmFpbGVkLXdpdGgtd2FybmluZ3Mgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLWZhaWxlZC13aXRoLXdhcm5pbmdzIC5nbC1pY29uLFxuLmNpLXN0YXR1cy1pY29uLXN1Y2Nlc3Mtd2l0aC13YXJuaW5ncyBzdmcsXG4uY2ktc3RhdHVzLWljb24tc3VjY2Vzcy13aXRoLXdhcm5pbmdzIC5nbC1pY29uIHtcbiAgZmlsbDogI2M3NDgxNjtcbn1cblxuLmNpLXN0YXR1cy1pY29uLXJ1bm5pbmcgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLXJ1bm5pbmcgLmdsLWljb24ge1xuICBmaWxsOiAjMWY3M2NhO1xufVxuXG4uY2ktc3RhdHVzLWljb24tY2FuY2VsZWQgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLWNhbmNlbGVkIC5nbC1pY29uLFxuLmNpLXN0YXR1cy1pY29uLWRpc2FibGVkIHN2Zyxcbi5jaS1zdGF0dXMtaWNvbi1kaXNhYmxlZCAuZ2wtaWNvbixcbi5jaS1zdGF0dXMtaWNvbi1zY2hlZHVsZWQgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLXNjaGVkdWxlZCAuZ2wtaWNvbixcbi5jaS1zdGF0dXMtaWNvbi1tYW51YWwgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLW1hbnVhbCAuZ2wtaWNvbiB7XG4gIGZpbGw6ICMyODI3MmQ7XG59XG5cbi5jaS1zdGF0dXMtaWNvbi1ub3RpZmljYXRpb24gc3ZnLFxuLmNpLXN0YXR1cy1pY29uLW5vdGlmaWNhdGlvbiAuZ2wtaWNvbixcbi5jaS1zdGF0dXMtaWNvbi1wcmVwYXJpbmcgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLXByZXBhcmluZyAuZ2wtaWNvbixcbi5jaS1zdGF0dXMtaWNvbi1jcmVhdGVkIHN2Zyxcbi5jaS1zdGF0dXMtaWNvbi1jcmVhdGVkIC5nbC1pY29uLFxuLmNpLXN0YXR1cy1pY29uLXNraXBwZWQgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLXNraXBwZWQgLmdsLWljb24sXG4uY2ktc3RhdHVzLWljb24tbm90Zm91bmQgc3ZnLFxuLmNpLXN0YXR1cy1pY29uLW5vdGZvdW5kIC5nbC1pY29uIHtcbiAgZmlsbDogIzc0NzI3Mztcbn1cblxuYS5jaS1pY29uOmZvY3VzLXZpc2libGUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG5cbi5jaS1pY29uIHtcbiAgYm9yZGVyLXJhZGl1czogMjBweDtcbn1cbi5jaS1pY29uIC5jaS1pY29uLWdsLWljb24td3JhcHBlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogOTk5OXB4O1xuICBsaW5lLWhlaWdodDogMDtcbn1cbi5jaS1pY29uIC5nbC1pY29uIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luOiAtMnB4O1xufVxuLmNpLWljb24uY2ktaWNvbi12YXJpYW50LXN1Y2Nlc3Mge1xuICBjb2xvcjogdmFyKC0tY2ktaWNvbi1zdWNjZXNzLXRleHQtY29sb3IpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNpLWljb24tc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY2ktaWNvbi1zdWNjZXNzLWJhY2tncm91bmQtY29sb3IpO1xufVxuLmNpLWljb24uY2ktaWNvbi12YXJpYW50LXN1Y2Nlc3MgLmNpLWljb24tZ2wtaWNvbi13cmFwcGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY2ktaWNvbi1zdWNjZXNzLWJhY2tncm91bmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jaS1pY29uLXN1Y2Nlc3MtaWNvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWNpLWljb24tc3VjY2Vzcy1pY29uLWNvbG9yKTtcbn1cbi5nbC1kYXJrIC5jaS1pY29uLmNpLWljb24tdmFyaWFudC1zdWNjZXNzIC5jaS1pY29uLWdsLWljb24td3JhcHBlciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uY2ktaWNvbi5jaS1pY29uLXZhcmlhbnQtd2FybmluZyB7XG4gIGNvbG9yOiB2YXIoLS1jaS1pY29uLXdhcm5pbmctdGV4dC1jb2xvcikgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2ktaWNvbi13YXJuaW5nLWJhY2tncm91bmQtY29sb3IpO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jaS1pY29uLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcik7XG59XG4uY2ktaWNvbi5jaS1pY29uLXZhcmlhbnQtd2FybmluZyAuY2ktaWNvbi1nbC1pY29uLXdyYXBwZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jaS1pY29uLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNpLWljb24td2FybmluZy1pY29uLWJhY2tncm91bmQtY29sb3IpO1xuICBjb2xvcjogdmFyKC0tY2ktaWNvbi13YXJuaW5nLWljb24tY29sb3IpO1xufVxuLmdsLWRhcmsgLmNpLWljb24uY2ktaWNvbi12YXJpYW50LXdhcm5pbmcgLmNpLWljb24tZ2wtaWNvbi13cmFwcGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5jaS1pY29uLmNpLWljb24tdmFyaWFudC1kYW5nZXIge1xuICBjb2xvcjogdmFyKC0tY2ktaWNvbi1kYW5nZXItdGV4dC1jb2xvcikgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2ktaWNvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvcik7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWNpLWljb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3IpO1xufVxuLmNpLWljb24uY2ktaWNvbi12YXJpYW50LWRhbmdlciAuY2ktaWNvbi1nbC1pY29uLXdyYXBwZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jaS1pY29uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2ktaWNvbi1kYW5nZXItaWNvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWNpLWljb24tZGFuZ2VyLWljb24tY29sb3IpO1xufVxuLmdsLWRhcmsgLmNpLWljb24uY2ktaWNvbi12YXJpYW50LWRhbmdlciAuY2ktaWNvbi1nbC1pY29uLXdyYXBwZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmNpLWljb24uY2ktaWNvbi12YXJpYW50LWluZm8ge1xuICBjb2xvcjogdmFyKC0tY2ktaWNvbi1pbmZvLXRleHQtY29sb3IpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNpLWljb24taW5mby1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY2ktaWNvbi1pbmZvLWJhY2tncm91bmQtY29sb3IpO1xufVxuLmNpLWljb24uY2ktaWNvbi12YXJpYW50LWluZm8gLmNpLWljb24tZ2wtaWNvbi13cmFwcGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tY2ktaWNvbi1pbmZvLWJhY2tncm91bmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jaS1pY29uLWluZm8taWNvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWNpLWljb24taW5mby1pY29uLWNvbG9yKTtcbn1cbi5nbC1kYXJrIC5jaS1pY29uLmNpLWljb24tdmFyaWFudC1pbmZvIC5jaS1pY29uLWdsLWljb24td3JhcHBlciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uY2ktaWNvbi5jaS1pY29uLXZhcmlhbnQtbmV1dHJhbCB7XG4gIGNvbG9yOiB2YXIoLS1jaS1pY29uLW5ldXRyYWwtdGV4dC1jb2xvcikgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2ktaWNvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3IpO1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jaS1pY29uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcik7XG59XG4uY2ktaWNvbi5jaS1pY29uLXZhcmlhbnQtbmV1dHJhbCAuY2ktaWNvbi1nbC1pY29uLXdyYXBwZXIge1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1jaS1pY29uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNpLWljb24tbmV1dHJhbC1pY29uLWJhY2tncm91bmQtY29sb3IpO1xuICBjb2xvcjogdmFyKC0tY2ktaWNvbi1uZXV0cmFsLWljb24tY29sb3IpO1xufVxuLmdsLWRhcmsgLmNpLWljb24uY2ktaWNvbi12YXJpYW50LW5ldXRyYWwgLmNpLWljb24tZ2wtaWNvbi13cmFwcGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnVzZXItYXZhdGFyLWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5jaXJjbGUtaWNvbi1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnNuaXBwZXQtZmlsZS1jb250ZW50IHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xufVxuLnNuaXBwZXQtZmlsZS1jb250ZW50ICsgLnNuaXBwZXQtZmlsZS1jb250ZW50IHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbi5zbmlwcGV0LWZpbGUtY29udGVudDpsYXN0LW9mLXR5cGUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3csXG4uZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3ctbGF5b3V0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3csXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdy1sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3cgPiA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3c6bm90KDpmaXJzdC1jaGlsZCksXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdyA+IDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdy1sYXlvdXQ6bm90KDpmaXJzdC1jaGlsZCksXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdy1sYXlvdXQgPiA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3c6bm90KDpmaXJzdC1jaGlsZCksXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdy1sYXlvdXQgPiA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3ctbGF5b3V0Om5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdyxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93LWxheW91dCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdyA+IDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdzpub3QoOmZpcnN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93ID4gOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93LWxheW91dDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93LWxheW91dCA+IDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdzpub3QoOmZpcnN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93LWxheW91dCA+IDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdy1sYXlvdXQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gIH1cbn1cblxuLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93LmdsLXJlc3BvbnNpdmUtdGFibGUtcm93LWNsaWNrYWJsZTpob3ZlciB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG4uZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3cuZ2wtcmVzcG9uc2l2ZS10YWJsZS1yb3ctY2xpY2thYmxlOmhvdmVyIC51bmRlcmxpbmUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDE2cHggMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWNlYmVhO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDE2cHggMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWNlYmVhO1xuICB9XG59XG5cbi5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdy1jb2wtc3BhbiB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnRhYmxlLXNlY3Rpb24ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi01IHtcbiAgZmxleDogMCAwIDUlO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi01IHtcbiAgICBtYXgtd2lkdGg6IDUlO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1zZWN0aW9uLnNlY3Rpb24tNSB7XG4gICAgbWF4LXdpZHRoOiA1JTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi0xMCB7XG4gIGZsZXg6IDAgMCAxMCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTEwIHtcbiAgICBtYXgtd2lkdGg6IDEwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTEwIHtcbiAgICBtYXgtd2lkdGg6IDEwJTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi0xNSB7XG4gIGZsZXg6IDAgMCAxNSU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTE1IHtcbiAgICBtYXgtd2lkdGg6IDE1JTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTE1IHtcbiAgICBtYXgtd2lkdGg6IDE1JTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi0yMCB7XG4gIGZsZXg6IDAgMCAyMCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTIwIHtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTIwIHtcbiAgICBtYXgtd2lkdGg6IDIwJTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi0yNSB7XG4gIGZsZXg6IDAgMCAyNSU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTI1IHtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTI1IHtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi0zMCB7XG4gIGZsZXg6IDAgMCAzMCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTMwIHtcbiAgICBtYXgtd2lkdGg6IDMwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTMwIHtcbiAgICBtYXgtd2lkdGg6IDMwJTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi00MCB7XG4gIGZsZXg6IDAgMCA0MCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTQwIHtcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTQwIHtcbiAgICBtYXgtd2lkdGg6IDQwJTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi01MCB7XG4gIGZsZXg6IDAgMCA1MCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTUwIHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTUwIHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi02MCB7XG4gIGZsZXg6IDAgMCA2MCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTYwIHtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTYwIHtcbiAgICBtYXgtd2lkdGg6IDYwJTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi03MCB7XG4gIGZsZXg6IDAgMCA3MCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTcwIHtcbiAgICBtYXgtd2lkdGg6IDcwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTcwIHtcbiAgICBtYXgtd2lkdGg6IDcwJTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi04MCB7XG4gIGZsZXg6IDAgMCA4MCU7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTgwIHtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLTgwIHtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi0xMDAge1xuICBmbGV4OiAwIDAgMTAwJTtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1zZWN0aW9uLnNlY3Rpb24tMTAwIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLXNlY3Rpb24uc2VjdGlvbi0xMDAge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtaW4taGVpZ2h0OiA2MnB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1zZWN0aW9uOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VjZWJlYTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1zZWN0aW9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDYycHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLXNlY3Rpb246bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWNlYmVhO1xuICB9XG59XG4udGFibGUtc2VjdGlvbi5zZWN0aW9uLXdyYXAge1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtc2VjdGlvbi5zZWN0aW9uLXdyYXAge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1zZWN0aW9uLnNlY3Rpb24td3JhcCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1idXR0b24tZm9vdGVyIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtYnV0dG9uLWZvb3RlciB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLWJ1dHRvbi1mb290ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICAgIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zIC5idG4ge1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgPiAuYnRuLWdyb3VwLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgPiAuZXh0ZXJuYWwtdXJsLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgPiAuYnRuIHtcbiAgICBmbGV4OiAxIDEgMjhweDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgPiAuZXh0ZXJuYWwtdXJsOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1idXR0b24tZm9vdGVyIC50YWJsZS1hY3Rpb24tYnV0dG9ucyA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zID4gLmV4dGVybmFsLXVybDpub3QoOmxhc3QtY2hpbGQpLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1idXR0b24tZm9vdGVyIC50YWJsZS1hY3Rpb24tYnV0dG9ucyAuZHJvcGRvd24tbmV3IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1pbi13aWR0aDogaW5pdGlhbDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1idXR0b24tZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1idXR0b24tZm9vdGVyIC50YWJsZS1hY3Rpb24tYnV0dG9ucyAuYnRuIHtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zID4gLmJ0bi1ncm91cCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zID4gLmV4dGVybmFsLXVybCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zID4gLmJ0biB7XG4gICAgZmxleDogMSAxIDI4cHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zID4gLmV4dGVybmFsLXVybDpub3QoOmZpcnN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCksXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50YWJsZS1idXR0b24tZm9vdGVyIC50YWJsZS1hY3Rpb24tYnV0dG9ucyA+IC5leHRlcm5hbC11cmw6bm90KDpsYXN0LWNoaWxkKSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtYnV0dG9uLWZvb3RlciAudGFibGUtYWN0aW9uLWJ1dHRvbnMgLmRyb3Bkb3duLW5ldyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLWJ1dHRvbi1mb290ZXIgLnRhYmxlLWFjdGlvbi1idXR0b25zIC5kcm9wZG93bi1tZW51IHtcbiAgICBtaW4td2lkdGg6IGluaXRpYWw7XG4gIH1cbn1cblxuLnRhYmxlLXJvdy1oZWFkZXIge1xuICBmb250LXNpemU6IDEzcHg7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50YWJsZS1yb3ctaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLXJvdy1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRhYmxlLW1vYmlsZS1oZWFkZXIge1xuICBmbGV4OiAwIDAgNDAlO1xuICBtYXgtd2lkdGg6IDQwJTtcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnRhYmxlLW1vYmlsZS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnRhYmxlLW1vYmlsZS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudGFibGUtbW9iaWxlLWNvbnRlbnQge1xuICAgIGZsZXg6IDAgMCA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudGFibGUtbW9iaWxlLWNvbnRlbnQge1xuICAgIGZsZXg6IDAgMCA2MCU7XG4gICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLnN0YWNrZWQtcHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkYmQ5O1xufVxuLnN0YWNrZWQtcHJvZ3Jlc3MtYmFyIC5zdGF0dXMtdW5hdmFpbGFibGUsXG4uc3RhY2tlZC1wcm9ncmVzcy1iYXIgLnN0YXR1cy1ncmVlbixcbi5zdGFja2VkLXByb2dyZXNzLWJhciAuc3RhdHVzLW5ldXRyYWwsXG4uc3RhY2tlZC1wcm9ncmVzcy1iYXIgLnN0YXR1cy1yZWQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi13aWR0aDogNDBweDtcbiAgcGFkZGluZzogMCA1cHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICNmZmY7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xufVxuLnN0YWNrZWQtcHJvZ3Jlc3MtYmFyIC5zdGF0dXMtdW5hdmFpbGFibGU6aG92ZXIsXG4uc3RhY2tlZC1wcm9ncmVzcy1iYXIgLnN0YXR1cy1ncmVlbjpob3Zlcixcbi5zdGFja2VkLXByb2dyZXNzLWJhciAuc3RhdHVzLW5ldXRyYWw6aG92ZXIsXG4uc3RhY2tlZC1wcm9ncmVzcy1iYXIgLnN0YXR1cy1yZWQ6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3RhY2tlZC1wcm9ncmVzcy1iYXIgLnN0YXR1cy11bmF2YWlsYWJsZSB7XG4gIHBhZGRpbmc6IDAgMTBweDtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuLnN0YWNrZWQtcHJvZ3Jlc3MtYmFyIC5zdGF0dXMtZ3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ4MDcwO1xufVxuLnN0YWNrZWQtcHJvZ3Jlc3MtYmFyIC5zdGF0dXMtZ3JlZW46aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGM3MjY1O1xufVxuLnN0YWNrZWQtcHJvZ3Jlc3MtYmFyIC5zdGF0dXMtbmV1dHJhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkY2RiZDk7XG4gIGNvbG9yOiAjMjgyNzJkO1xufVxuLnN0YWNrZWQtcHJvZ3Jlc3MtYmFyIC5zdGF0dXMtbmV1dHJhbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWJmYmU7XG59XG4uc3RhY2tlZC1wcm9ncmVzcy1iYXIgLnN0YXR1cy1yZWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGUxZDRiO1xufVxuLnN0YWNrZWQtcHJvZ3Jlc3MtYmFyIC5zdGF0dXMtcmVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M1MjA0Mjtcbn1cblxuLnNvcnRhYmxlLWNvbnRhaW5lciAuZmxleC1saXN0IHtcbiAgcGFkZGluZzogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc29ydGFibGUtcm93IC5mbGV4LXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uc29ydGFibGUtcm93IC5mbGV4LXJvdy5pc3N1YWJsZS1pbmZvLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uc29ydGFibGUtcm93IC5zb3J0YWJsZS1saW5rIHtcbiAgY29sb3I6ICMwNTA0MDg7XG59XG5cbi5pcy1kcmFnZ2luZyB7XG4gIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbn1cbi5pcy1kcmFnZ2luZyAqIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgY3Vyc29yOiBncmFiYmluZyAhaW1wb3J0YW50O1xufVxuLmlzLWRyYWdnaW5nLm5vLWRyb3AgKiB7XG4gIGN1cnNvcjogbm8tZHJvcCAhaW1wb3J0YW50O1xufVxuXG4udHJlZS1pdGVtLmlzLWRyYWdnaW5nLFxuLmxpbmtlZC1pdGVtLmlzLWRyYWdnaW5nIHtcbiAgYm9yZGVyLXRvcDogMDtcbn1cbi50cmVlLWl0ZW0uaXMtZHJhZ2dpbmcgLml0ZW0tYm9keSxcbi5saW5rZWQtaXRlbS5pcy1kcmFnZ2luZyAuaXRlbS1ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAycHggc29saWQgI2MxYmZiZTtcbn1cblxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAucmVhZC1tb3JlLWNvbnRhaW5lcjpub3QoOmhhcygucmVhZC1tb3JlLWNvbnRlbnQpKTpub3QoLmlzLWV4cGFuZGVkKSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5yZWFkLW1vcmUtY29udGFpbmVyOm5vdCg6aGFzKC5yZWFkLW1vcmUtY29udGVudCkpOm5vdCguaXMtZXhwYW5kZWQpID4gKiB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnJlYWQtbW9yZS1jb250YWluZXI6bm90KDpoYXMoLnJlYWQtbW9yZS1jb250ZW50KSk6bm90KC5pcy1leHBhbmRlZCkge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAucmVhZC1tb3JlLWNvbnRhaW5lcjpub3QoOmhhcygucmVhZC1tb3JlLWNvbnRlbnQpKTpub3QoLmlzLWV4cGFuZGVkKSA+ICoge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgfVxufVxuLnJlYWQtbW9yZS1jb250YWluZXI6aGFzKC5yZWFkLW1vcmUtY29udGVudDpub3QoLmlzLWV4cGFuZGVkKSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC1oZWlnaHQ6IHZhcigtLXJlYWQtbW9yZS1oZWlnaHQsIDI4MXB4KTtcbiAgc2Nyb2xsLXBhZGRpbmctdG9wOiAxMDAwdmg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucmVhZC1tb3JlLWNvbnRhaW5lciAucmVhZC1tb3JlLWNvbnRlbnQtLWhhcy1zY3JpbTpub3QoLmlzLWV4cGFuZGVkKTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiBjYWxjKHZhcigtLXJlYWQtbW9yZS1oZWlnaHQsIDMyMHB4KSAtIDJyZW0gLSAzOXB4KTtcbiAgaGVpZ2h0OiAycmVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB0cmFuc3BhcmVudCwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSk7XG59XG5cbi5kZXNjcmlwdGlvbi1tb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLmRlc2NyaXB0aW9uLW1vcmU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDNyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB0cmFuc3BhcmVudCAwJSwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSAxMDAlKTtcbn1cbi5kZXNjcmlwdGlvbi1tb3JlIC5zaG93LWFsbC1idG4ge1xuICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cbi5kZXNjcmlwdGlvbi1tb3JlIC5zaG93LWFsbC1idG46OmJlZm9yZSwgLmRlc2NyaXB0aW9uLW1vcmUgLnNob3ctYWxsLWJ0bjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgZmxleDogMTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWdsLWJvcmRlci1jb2xvci1zdWJ0bGUpO1xufVxuXG4ud29yay1pdGVtLWRlc2NyaXB0aW9uIC50cnVuY2F0ZWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5OjpiZWZvcmUsXG4ud29yay1pdGVtLWRlc2NyaXB0aW9uIC50cnVuY2F0ZWQgLmdsLXRhYmxlLXNoYWRvdy1vdmVybGF5OjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud29yay1pdGVtLWRlc2NyaXB0aW9uIC50cnVuY2F0ZWQgLmdsLXRhYmxlLXNoYWRvdyB7XG4gIGFuaW1hdGlvbjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmhlYWRlci1tZXNzYWdlLFxuLmZvb3Rlci1tZXNzYWdlIHtcbiAgcGFkZGluZzogMCAxNXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmhlYWRlci1tZXNzYWdlIHAsXG4uZm9vdGVyLW1lc3NhZ2UgcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAwO1xuICBvdmVyZmxvdy14OiBjbGlwO1xuICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tdG9wOiAtMXB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi5oZWFkZXItbWVzc2FnZSB7XG4gIGhlaWdodDogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG59XG5cbi5mb290ZXItbWVzc2FnZSB7XG4gIGhlaWdodDogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG59XG5cbi5jYXJkLWhlYWRlcjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogY2FsYygwLjI1cmVtIC0gMXB4KTtcbn1cblxuLmV4cGFuZGFibGUtY2FyZC5pcy1jb2xsYXBzZWQge1xuICBAYXBwbHkgZ2wtcGItMDtcbn1cbi5leHBhbmRhYmxlLWNhcmQuaXMtY29sbGFwc2VkIC5jcnVkLWJvZHkge1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtbS0wO1xufVxuXG5Aa2V5ZnJhbWVzIHNvdXJjZS1lZGl0b3Itc3Bpbm5lci1yb3RhdGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuW2RhdGEtZWRpdG9yLWxvYWRpbmddIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgei1pbmRleDogMDtcbn1cbltkYXRhLWVkaXRvci1sb2FkaW5nXSA+ICoge1xuICBmaWx0ZXI6IGJsdXIoNXB4KTtcbn1cbltkYXRhLWVkaXRvci1sb2FkaW5nXTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlIGNhbGMoMzJweCAvIDIgKyAzcHgpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlIGNhbGMoMzJweCAvIDIgKyAzcHgpO1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBib3JkZXItd2lkdGg6IDNweDtcbiAgYm9yZGVyLWNvbG9yOiByZ2JhKDc3LCA3NSwgNzgsIDAuMjUpO1xuICBib3JkZXItdG9wLWNvbG9yOiAjNGQ0YjRlO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBhbmltYXRpb24tbmFtZTogc291cmNlLWVkaXRvci1zcGlubmVyLXJvdGF0ZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjZzO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xufVxuW2RhdGEtZWRpdG9yLWxvYWRpbmddIHByZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbltpZF49c291cmNlLWVkaXRvci1dIHtcbiAgaGVpZ2h0OiA1MDBweDtcbn1cblxuLnNvdXJjZS1lZGl0b3ItcHJldmlldyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uc291cmNlLWVkaXRvci1wcmV2aWV3IC5tZCB7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG4gIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc291cmNlLWVkaXRvci1wcmV2aWV3IC5nbC1zb3VyY2UtZWRpdG9yIHtcbiAgb3JkZXI6IC0xO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMC4yNXJlbSAwLjI1cmVtO1xufVxuXG4ubW9uYWNvLWVkaXRvci5nbC1zb3VyY2UtZWRpdG9yLnZzLWRhcmsgLm1hcmtkb3duLWhvdmVyIGgxLFxuLm1vbmFjby1lZGl0b3IuZ2wtc291cmNlLWVkaXRvci52cy1kYXJrIC5tYXJrZG93bi1ob3ZlciBoMixcbi5tb25hY28tZWRpdG9yLmdsLXNvdXJjZS1lZGl0b3IudnMtZGFyayAubWFya2Rvd24taG92ZXIgaDMsXG4ubW9uYWNvLWVkaXRvci5nbC1zb3VyY2UtZWRpdG9yLnZzLWRhcmsgLm1hcmtkb3duLWhvdmVyIGg0LFxuLm1vbmFjby1lZGl0b3IuZ2wtc291cmNlLWVkaXRvci52cy1kYXJrIC5tYXJrZG93bi1ob3ZlciBoNSxcbi5tb25hY28tZWRpdG9yLmdsLXNvdXJjZS1lZGl0b3IudnMtZGFyayAubWFya2Rvd24taG92ZXIgaDYge1xuICBjb2xvcjogI2VjZWJlYTtcbn1cbi5tb25hY28tZWRpdG9yLmdsLXNvdXJjZS1lZGl0b3IudnMgLm1hcmtkb3duLWhvdmVyIGgxLFxuLm1vbmFjby1lZGl0b3IuZ2wtc291cmNlLWVkaXRvci52cyAubWFya2Rvd24taG92ZXIgaDIsXG4ubW9uYWNvLWVkaXRvci5nbC1zb3VyY2UtZWRpdG9yLnZzIC5tYXJrZG93bi1ob3ZlciBoMyxcbi5tb25hY28tZWRpdG9yLmdsLXNvdXJjZS1lZGl0b3IudnMgLm1hcmtkb3duLWhvdmVyIGg0LFxuLm1vbmFjby1lZGl0b3IuZ2wtc291cmNlLWVkaXRvci52cyAubWFya2Rvd24taG92ZXIgaDUsXG4ubW9uYWNvLWVkaXRvci5nbC1zb3VyY2UtZWRpdG9yLnZzIC5tYXJrZG93bi1ob3ZlciBoNiB7XG4gIGNvbG9yOiAjMjgyNzJkO1xufVxuLm1vbmFjby1lZGl0b3IuZ2wtc291cmNlLWVkaXRvciAubWFyZ2luLXZpZXctb3ZlcmxheXMgLmxpbmUtbnVtYmVycyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5tb25hY28tZWRpdG9yLmdsLXNvdXJjZS1lZGl0b3IgLm1hcmdpbi12aWV3LW92ZXJsYXlzIC5saW5lLW51bWJlcnM6OmJlZm9yZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4ODg4O1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIHdpZHRoOiAwLjc1cmVtO1xuICBoZWlnaHQ6IDAuNzVyZW07XG4gIG1hc2staW1hZ2U6IHVybChcIkBnaXRsYWIvc3Zncy9kaXN0L2ljb25zLXN0YWNrZWQuc3ZnI2xpbmtcIik7XG4gIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gIG1hc2stc2l6ZTogY292ZXI7XG4gIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tb25hY28tZWRpdG9yLmdsLXNvdXJjZS1lZGl0b3IgLm1hcmdpbi12aWV3LW92ZXJsYXlzIC5saW5lLW51bWJlcnM6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG59XG4ubW9uYWNvLWVkaXRvci5nbC1zb3VyY2UtZWRpdG9yIC5tYXJnaW4tdmlldy1vdmVybGF5cyAubGluZS1udW1iZXJzOmhvdmVyOjpiZWZvcmUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLm1vbmFjby1lZGl0b3IuZ2wtc291cmNlLWVkaXRvciAubWFyZ2luLXZpZXctb3ZlcmxheXMgLmxpbmUtbnVtYmVyczpmb2N1cy12aXNpYmxlOjpiZWZvcmUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBvdXRsaW5lOiBhdXRvO1xufVxuLm1vbmFjby1lZGl0b3IuZ2wtc291cmNlLWVkaXRvciAubWFyZ2luLXZpZXctb3ZlcmxheXMgLmxpbmUtbnVtYmVycyAubGluay1hbmNob3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLm1vbmFjby1lZGl0b3IuZ2wtc291cmNlLWVkaXRvciAuaW5wdXRhcmVhIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLmFjdGl2ZS1saW5lLXRleHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjM0MDEzO1xuICBvcGFjaXR5OiAwLjM7XG59XG5cbi8qKlxuKiBMaW5lIG5vdGUgYnV0dG9uIG9uIHRoZSBzaWRlIG9mIGRpZmZzXG4qL1xuLmRpZmYtZ3JpZC1sZWZ0OmhvdmVyIC5hZGQtZGlmZi1ub3RlLFxuLmRpZmYtZ3JpZC1yaWdodDpob3ZlciAuYWRkLWRpZmYtbm90ZSxcbi5saW5lX2hvbGRlciAuaXMtb3Zlcjpub3QoLm5vLWNvbW1lbnQtYnRuKSAuYWRkLWRpZmYtbm90ZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHotaW5kZXg6IDEwMTtcbn1cblxuLnRvb2x0aXAtd3JhcHBlci5hZGQtZGlmZi1ub3RlIHtcbiAgbWFyZ2luLWxlZnQ6IC01MnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHotaW5kZXg6IDEwO1xufVxuXG4ubm90ZS1idXR0b24uYWRkLWRpZmYtbm90ZSB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtdGV4dC1mZWVkYmFjay1pbmZvO1xuICBvcGFjaXR5OiAwO1xuICB3aWxsLWNoYW5nZTogb3BhY2l0eTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwYWRkaW5nOiAxcHg7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtZmVlZGJhY2staW5mby1pY29uLWNvbG9yKTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbn1cbi5ub3RlLWJ1dHRvbi5hZGQtZGlmZi1ub3RlOmhvdmVyLCAubm90ZS1idXR0b24uYWRkLWRpZmYtbm90ZS5pbnZlcnRlZCB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8taWNvbi1jb2xvcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1pY29uLWNvbG9yKTtcbn1cbi5ub3RlLWJ1dHRvbi5hZGQtZGlmZi1ub3RlOmFjdGl2ZSB7XG4gIG91dGxpbmU6IDA7XG59XG4ubm90ZS1idXR0b24uYWRkLWRpZmYtbm90ZVtkaXNhYmxlZF0ge1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1kaXNhYmxlZCk7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi51bmlmaWVkLWRpZmYtY29tcG9uZW50cy1kaWZmLW5vdGUtYnV0dG9uOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1pbmZvLWljb24tY29sb3IpO1xuICBtYXNrLWltYWdlOiB1cmwoXCJAZ2l0bGFiL3N2Z3MvZGlzdC9pY29ucy1zdGFja2VkLnN2ZyNjb21tZW50XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMnB4O1xuICBoZWlnaHQ6IDEycHg7XG59XG4udW5pZmllZC1kaWZmLWNvbXBvbmVudHMtZGlmZi1ub3RlLWJ1dHRvbjpob3Zlcjpub3QoW2Rpc2FibGVkXSk6OmJlZm9yZSwgLnVuaWZpZWQtZGlmZi1jb21wb25lbnRzLWRpZmYtbm90ZS1idXR0b24uaW52ZXJ0ZWQ6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xufVxuXG4uZGlzYWJsZWQtY29tbWVudCB7XG4gIEBhcHBseSBnbC10ZXh0LWRpc2FibGVkO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1sZztcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1weC0wO1xufVxuLmRpc2FibGVkLWNvbW1lbnQgYTpub3QoLmxlYXJuLW1vcmUpIHtcbiAgQGFwcGx5IGdsLXRleHQtbGluaztcbn1cblxuLmZpbGVzIC5kaWZmLWRpc2N1c3Npb25zIC5ub3RlLWRpc2N1c3Npb24udGltZWxpbmUtZW50cnkge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZmlsZXMgLmRpZmYtZGlzY3Vzc2lvbnMgLm5vdGUtZGlzY3Vzc2lvbi50aW1lbGluZS1lbnRyeSB1bC5ub3RlcyBsaS5ub3RlLXdyYXBwZXIgLnRpbWVsaW5lLWNvbnRlbnQge1xuICBwYWRkaW5nOiA4cHggOHB4IDhweCAxNnB4O1xufVxuLmZpbGVzIC5kaWZmLWRpc2N1c3Npb25zIC5ub3RlLWRpc2N1c3Npb24udGltZWxpbmUtZW50cnkgdWwubm90ZXMgbGkubm90ZS13cmFwcGVyIC50aW1lbGluZS1hdmF0YXIge1xuICBtYXJnaW46IDhweCAwIDAgMTZweDtcbn1cbi5maWxlcyAuZGlmZi1kaXNjdXNzaW9ucyAubm90ZS1kaXNjdXNzaW9uLnRpbWVsaW5lLWVudHJ5IHVsLm5vdGVzIGxpLnRvZ2dsZS1yZXBsaWVzLXdpZGdldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG59XG4uZmlsZXMgLmRpZmYtZGlzY3Vzc2lvbnMgLm5vdGUtZGlzY3Vzc2lvbi50aW1lbGluZS1lbnRyeSB1bC5ub3RlcyAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5maWxlcyAuZGlmZi1kaXNjdXNzaW9ucyAubm90ZS1kaXNjdXNzaW9uLnRpbWVsaW5lLWVudHJ5Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLmZpbGVzIC5kaWZmLWRpc2N1c3Npb25zIC5ub3RlLWRpc2N1c3Npb24udGltZWxpbmUtZW50cnkgPiAudGltZWxpbmUtZW50cnktaW5uZXIge1xuICBwYWRkaW5nOiAwO1xufVxuLmZpbGVzIC5kaWZmLWRpc2N1c3Npb25zIC5ub3RlLWRpc2N1c3Npb24udGltZWxpbmUtZW50cnkgPiAudGltZWxpbmUtZW50cnktaW5uZXIgPiAudGltZWxpbmUtY29udGVudCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmZpbGVzIC5kaWZmLWRpc2N1c3Npb25zIC5ub3RlLWRpc2N1c3Npb24udGltZWxpbmUtZW50cnkgPiAudGltZWxpbmUtZW50cnktaW5uZXIgPiAudGltZWxpbmUtaWNvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uZmlsZXMgLmRpZmYtZGlzY3Vzc2lvbnMgLm5vdGUtZGlzY3Vzc2lvbi50aW1lbGluZS1lbnRyeSAuZGlzY3Vzc2lvbi1ib2R5IHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4uZmlsZXMgLmRpZmYtZGlzY3Vzc2lvbnMgLm5vdGUtZGlzY3Vzc2lvbi50aW1lbGluZS1lbnRyeSAuZGlzY3Vzc2lvbi1ib2R5IC5kaXNjdXNzaW9uLXdyYXBwZXIge1xuICBib3JkZXI6IDA7XG59XG4uZmlsZXMgLmRpZmYtY29tbWVudC1mb3JtIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5kaXNjdXNzaW9uLWZpbHRlci1jb250YWluZXIgLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG59XG5cbi5kaXNjdXNzaW9uLWJvZHkgLmRpZmYtZmlsZSAuZmlsZS10aXRsZSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbn1cbi5kaXNjdXNzaW9uLWJvZHkgLmRpZmYtZmlsZSAuZmlsZS10aXRsZTpob3ZlciB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG4uZGlzY3Vzc2lvbi1ib2R5IC5kaWZmLWZpbGUgLmxpbmVfY29udGVudCB7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cbi5kaXNjdXNzaW9uLWJvZHkgLmRpZmYtZmlsZSAuZGlmZi1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbn1cbi5kaXNjdXNzaW9uLWJvZHkgLmRpZmYtZmlsZSAuZGlmZi1jb250ZW50IC5saW5lX2hvbGRlciB0ZDpmaXJzdC1vZi10eXBlIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1sO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWwtc2VjdGlvbjtcbn1cbi5kaXNjdXNzaW9uLWJvZHkgLmRpZmYtZmlsZSAuZGlmZi1jb250ZW50IC5saW5lX2hvbGRlciB0ZDpsYXN0LW9mLXR5cGUge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXI7XG4gIEBhcHBseSBnbC1ib3JkZXItci1zZWN0aW9uO1xufVxuLmRpc2N1c3Npb24tYm9keSAuZGlmZi1maWxlIC5kaWZmLWNvbnRlbnQgLmRpc2N1c3Npb24tbm90ZXMge1xuICBtYXJnaW4tbGVmdDogLTIuNXJlbTtcbn1cbi5kaXNjdXNzaW9uLWJvZHkgLmRpZmYtZmlsZSAuZGlmZi1jb250ZW50IC5kaXNjdXNzaW9uLW5vdGVzIC5ub3RlcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmRpc2N1c3Npb24tYm9keSAuZGlmZi1maWxlIC5kaWZmLWNvbnRlbnQgLmRpc2N1c3Npb24tbm90ZXMgLm5vdGVzLWNvbnRlbnQge1xuICBib3JkZXI6IDA7XG59XG4uZGlzY3Vzc2lvbi1ib2R5IC5kaWZmLWZpbGUgLmRpZmYtY29udGVudCAuZGlzY3Vzc2lvbi1ub3RlcyAudGltZWxpbmUtY29udGVudCB7XG4gIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xufVxuXG4udGFiLXBhbmUubm90ZXMgLmRpZmYtZmlsZSAubm90ZXMgLnN5c3RlbS1ub3RlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4udGFiLXBhbmUuZGlmZnMgLnN5c3RlbS1ub3RlIHtcbiAgcGFkZGluZzogMCAxNnB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbn1cbi50YWItcGFuZS5kaWZmcyAubm90ZXMgPiAubm90ZS1kaXNjdXNzaW9uIGxpLm5vdGUuc3lzdGVtLW5vdGUge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uZGlmZi1maWxlIC5kaWZmLWdyaWQtbGVmdDpob3ZlciAuYWRkLWRpZmYtbm90ZSxcbi5kaWZmLWZpbGUgLmRpZmYtZ3JpZC1yaWdodDpob3ZlciAuYWRkLWRpZmYtbm90ZSxcbi5kaWZmLWZpbGUgLmlzLW92ZXIgLmFkZC1kaWZmLW5vdGUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZGlmZi1maWxlIC5kaXNjdXNzaW9uLW5vdGVzOm5vdCg6bGFzdC1jaGlsZCkge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmRpZmYtZmlsZSAuZGlzY3Vzc2lvbi1ub3RlcyAuc3lzdGVtLW5vdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbn1cbi5kaWZmLWZpbGUgLm5vdGVzLWNvbnRlbnQgLm5vdGUtaGVhZGVyIC5ub3RlLWhlYWRsaW5lLWxpZ2h0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZGlmZi1maWxlIC5ub3Rlc19ob2xkZXIge1xuICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQsIFwiR2l0TGFiIFNhbnNcIiksIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiTm90byBTYW5zXCIsIFVidW50dSwgQ2FudGFyZWxsLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbn1cbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciAuZGlmZi10ZCxcbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciB0ZCB7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuLmRpZmYtZmlsZSAubm90ZXNfaG9sZGVyIC5kaWZmLXRkIC5kaXNjdXNzaW9uLW5vdGVzIC50aW1lbGluZS1lbnRyeTpmaXJzdC1vZi10eXBlID4gLnRpbWVsaW5lLWVudHJ5LWlubmVyLFxuLmRpZmYtZmlsZSAubm90ZXNfaG9sZGVyIHRkIC5kaXNjdXNzaW9uLW5vdGVzIC50aW1lbGluZS1lbnRyeTpmaXJzdC1vZi10eXBlID4gLnRpbWVsaW5lLWVudHJ5LWlubmVyIHtcbiAgQGFwcGx5IGdsLWJnLXNlY3Rpb247XG4gIEBhcHBseSBkYXJrOmdsLWJvcmRlci1iLXNlY3Rpb247XG59XG4uZGlmZi1maWxlIC5ub3Rlc19ob2xkZXIgLmRpZmYtdGQgLmRpc2N1c3Npb24tbm90ZXMgLnRpbWVsaW5lLWVudHJ5OmZpcnN0LW9mLXR5cGUgPiAudGltZWxpbmUtZW50cnktaW5uZXIgLnRvZ2dsZS1yZXBsaWVzLXdpZGdldCxcbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciB0ZCAuZGlzY3Vzc2lvbi1ub3RlcyAudGltZWxpbmUtZW50cnk6Zmlyc3Qtb2YtdHlwZSA+IC50aW1lbGluZS1lbnRyeS1pbm5lciAudG9nZ2xlLXJlcGxpZXMtd2lkZ2V0IHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbiAgQGFwcGx5IGRhcms6Z2wtYm9yZGVyLWItc2VjdGlvbjtcbn1cbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciAuZGlmZi10ZCAuZGlzY3Vzc2lvbi1ub3RlcyAudGltZWxpbmUtZW50cnk6Zmlyc3Qtb2YtdHlwZSA+IC50aW1lbGluZS1lbnRyeS1pbm5lciAudG9nZ2xlLXJlcGxpZXMtd2lkZ2V0W2FyaWEtZXhwYW5kZWQ9ZmFsc2VdLFxuLmRpZmYtZmlsZSAubm90ZXNfaG9sZGVyIHRkIC5kaXNjdXNzaW9uLW5vdGVzIC50aW1lbGluZS1lbnRyeTpmaXJzdC1vZi10eXBlID4gLnRpbWVsaW5lLWVudHJ5LWlubmVyIC50b2dnbGUtcmVwbGllcy13aWRnZXRbYXJpYS1leHBhbmRlZD1mYWxzZV0ge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWItMDtcbn1cbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciAuZGlmZi10ZCAubm90ZXMgPiAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXI6Zmlyc3QtY2hpbGQsXG4uZGlmZi1maWxlIC5ub3Rlc19ob2xkZXIgdGQgLm5vdGVzID4gLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy10b3A6IDEycHg7XG59XG4uZGlmZi1maWxlIC5ub3Rlc19ob2xkZXIgLmRpZmYtdGQgLm5vdGVzID4gLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bnRoLWNoaWxkKDIpKSxcbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciB0ZCAubm90ZXMgPiAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXI6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG4uZGlmZi1maWxlIC5ub3Rlc19ob2xkZXIgLmRpZmYtdGQubm90ZXMtY29udGVudCxcbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciB0ZC5ub3Rlcy1jb250ZW50IHtcbiAgYm9yZGVyLXdpZHRoOiAxcHggMDtcbiAgcGFkZGluZzogMDtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciAuZGlmZi10ZC5ub3Rlcy1jb250ZW50LnBhcmFsbGVsLFxuLmRpZmYtZmlsZSAubm90ZXNfaG9sZGVyIHRkLm5vdGVzLWNvbnRlbnQucGFyYWxsZWwge1xuICBib3JkZXItd2lkdGg6IDFweDtcbn1cbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciAuZGlmZi10ZC5ub3Rlcy1jb250ZW50LnBhcmFsbGVsLm5ldyxcbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciB0ZC5ub3Rlcy1jb250ZW50LnBhcmFsbGVsLm5ldyB7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbn1cbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciAuZGlmZi10ZC5ub3Rlcy1jb250ZW50LnBhcmFsbGVsIC5ub3RlLWhlYWRlcixcbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciB0ZC5ub3Rlcy1jb250ZW50LnBhcmFsbGVsIC5ub3RlLWhlYWRlciB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciAuZGlmZi10ZC5ub3Rlcy1jb250ZW50IC5ub3Rlcyxcbi5kaWZmLWZpbGUgLm5vdGVzX2hvbGRlciB0ZC5ub3Rlcy1jb250ZW50IC5ub3RlcyB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG4uZGlmZi1maWxlIC5kaWZmLWdyaWQtY29tbWVudHM6bGFzdC1jaGlsZCAubm90ZXMtY29udGVudCB7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC41cmVtIC0gMXB4KTtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC41cmVtIC0gMXB4KTtcbn1cblxuLmRpZmYtZmlsZXMtaG9sZGVyIC5kaXNjdXNzaW9uLW5vdGVzIC50aW1lbGluZS1lbnRyeTpmaXJzdC1vZi10eXBlID4gLnRpbWVsaW5lLWVudHJ5LWlubmVyIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWItc3VidGxlO1xuICBAYXBwbHkgZGFyazpnbC1ib3JkZXItYi1zZWN0aW9uO1xufVxuLmRpZmYtZmlsZXMtaG9sZGVyIC5kaXNjdXNzaW9uLW5vdGVzIC50aW1lbGluZS1lbnRyeTpmaXJzdC1vZi10eXBlID4gLnRpbWVsaW5lLWVudHJ5LWlubmVyIC50aW1lbGluZS1lbnRyeTpsYXN0LWNoaWxkIC50aW1lbGluZS1lbnRyeS1pbm5lciB7XG4gIEBhcHBseSBnbC1ib3JkZXItYi0wO1xufVxuXG4uZGlmZnMgLmRpc2N1c3Npb24tbm90ZXMge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG4uZGlmZnMgLm5vdGUtd3JhcHBlci5zeXN0ZW0tbm90ZSB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG59XG4uZGlmZnMgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdC1sZztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRpZmZzIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciAuZGlzY3Vzc2lvbi1mb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIHBhZGRpbmc6IDA7XG59XG4uZGlmZnMgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIC5kaXNhYmxlZC1jb21tZW50IHtcbiAgcGFkZGluZzogNnB4IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29kZS1jb21taXQgLm5vdGVzLWNvbnRlbnQsXG4uZGlmZi12aWV3ZXIgPiAuaW1hZ2UgfiAubm90ZS1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iLWxnO1xufVxuLmNvZGUtY29tbWl0IC5ub3Rlcy1jb250ZW50IGxpLm5vdGUtY29tbWVudCxcbi5kaWZmLXZpZXdlciA+IC5pbWFnZSB+IC5ub3RlLWNvbnRhaW5lciBsaS5ub3RlLWNvbW1lbnQge1xuICBwYWRkaW5nOiA4cHggOHB4IDhweCAxNnB4O1xufVxuLmNvZGUtY29tbWl0IC5ub3Rlcy1jb250ZW50IGxpLm5vdGUtY29tbWVudCAuYXZhdGFyLFxuLmRpZmYtdmlld2VyID4gLmltYWdlIH4gLm5vdGUtY29udGFpbmVyIGxpLm5vdGUtY29tbWVudCAuYXZhdGFyIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmNvZGUtY29tbWl0IC5ub3Rlcy1jb250ZW50IGxpLm5vdGUtY29tbWVudCAubm90ZS1ib2R5LFxuLmRpZmYtdmlld2VyID4gLmltYWdlIH4gLm5vdGUtY29udGFpbmVyIGxpLm5vdGUtY29tbWVudCAubm90ZS1ib2R5IHtcbiAgcGFkZGluZzogNHB4IDAgOHB4O1xuICBAYXBwbHkgLWdsLW10LTQ7XG4gIG1hcmdpbi1sZWZ0OiAyLjVyZW07XG59XG5cbi5kaWZmLXZpZXdlciA+IC5pbWFnZSB+IC5ub3RlLWNvbnRhaW5lciBmb3JtLm5ldy1ub3RlIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5ub3Rlcy50aW1lbGluZSA+IC50aW1lbGluZS1lbnRyeS5ub3RlLWRpc2N1c3Npb24gLnRpbWVsaW5lLWNvbnRlbnQgLmRpZmYtY29udGVudCB1bCBsaTpmaXJzdC1vZi10eXBlIC50aW1lbGluZS1jb250ZW50IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5ub3Rlcy50aW1lbGluZSA+IC50aW1lbGluZS1lbnRyeS5ub3RlLWRpc2N1c3Npb24gLnRpbWVsaW5lLWNvbnRlbnQgLmRpZmYtY29udGVudCB1bCBsaTpmaXJzdC1vZi10eXBlIC50aW1lbGluZS1lbnRyeS1pbm5lciB7XG4gIG1hcmdpbi1sZWZ0OiAyLjVyZW07XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIEBhcHBseSBnbC1ib3JkZXItbDtcbiAgQGFwcGx5IGdsLWJvcmRlci1sLXNlY3Rpb247XG4gIEBhcHBseSBnbC1ib3JkZXItcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1yLXNlY3Rpb247XG59XG4ubm90ZXMudGltZWxpbmUgPiAudGltZWxpbmUtZW50cnkubm90ZS1kaXNjdXNzaW9uIC50aW1lbGluZS1jb250ZW50IC5kaWZmLWNvbnRlbnQgdWwgbGk6Zmlyc3Qtb2YtdHlwZSAudGltZWxpbmUtZW50cnktaW5uZXIgLnRpbWVsaW5lLWNvbnRlbnQge1xuICBwYWRkaW5nOiA4cHggOHB4IDhweCAxNnB4O1xuICBAYXBwbHkgZ2wtYmctc2VjdGlvbjtcbn1cbi5ub3Rlcy50aW1lbGluZSA+IC50aW1lbGluZS1lbnRyeS5ub3RlLWRpc2N1c3Npb24gLnRpbWVsaW5lLWNvbnRlbnQgLmRpZmYtY29udGVudCB1bCBsaTpmaXJzdC1vZi10eXBlIC50aW1lbGluZS1lbnRyeS1pbm5lciAudGltZWxpbmUtY29udGVudDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWItc3VidGxlO1xuICBAYXBwbHkgZGFyazpnbC1ib3JkZXItYi1zZWN0aW9uO1xufVxuLm5vdGVzLnRpbWVsaW5lID4gLnRpbWVsaW5lLWVudHJ5Lm5vdGUtZGlzY3Vzc2lvbiAudGltZWxpbmUtY29udGVudCAuZGlmZi1jb250ZW50IHVsIGxpOmZpcnN0LW9mLXR5cGUgLnRpbWVsaW5lLWVudHJ5LWlubmVyIC50aW1lbGluZS1hdmF0YXIge1xuICBtYXJnaW46IDhweCAwIDAgMTZweDtcbn1cbi5ub3Rlcy50aW1lbGluZSA+IC50aW1lbGluZS1lbnRyeS5ub3RlLWRpc2N1c3Npb24gLnRpbWVsaW5lLWNvbnRlbnQgLmRpZmYtY29udGVudCB1bCBsaTpmaXJzdC1vZi10eXBlIC50aW1lbGluZS1lbnRyeS1pbm5lciAudGltZWxpbmUtZGlzY3Vzc2lvbi1ib2R5IHtcbiAgbWFyZ2luLWxlZnQ6IDJyZW07XG59XG5cbi5mcmFtZS5jbGljay10by1jb21tZW50LFxuLmltYWdlLWRpZmYtb3ZlcmxheSAuaW1hZ2UtZGlmZi1vdmVybGF5LWFkZC1jb21tZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHVybChcImlsbHVzdHJhdGlvbnMvaW1hZ2VfY29tbWVudF9saWdodF9jdXJzb3Iuc3ZnXCIpIDEyIDEyLCBhdXRvO1xuICBjdXJzb3I6IGltYWdlLXNldCh1cmwoXCJpbGx1c3RyYXRpb25zL2ltYWdlX2NvbW1lbnRfbGlnaHRfY3Vyc29yLnN2Z1wiKSAxeCwgdXJsKFwiaWxsdXN0cmF0aW9ucy9pbWFnZV9jb21tZW50X2xpZ2h0X2N1cnNvckAyeC5zdmdcIikgMngpIDEyIDEyLCBhdXRvO1xufVxuLmZyYW1lLmNsaWNrLXRvLWNvbW1lbnQgLmNvbW1lbnQtaW5kaWNhdG9yLFxuLmltYWdlLWRpZmYtb3ZlcmxheSAuaW1hZ2UtZGlmZi1vdmVybGF5LWFkZC1jb21tZW50IC5jb21tZW50LWluZGljYXRvciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgY29sb3I6ICMzZjhlZGQ7XG4gIG1hcmdpbi10b3A6IC0xMHB4O1xuICBtYXJnaW4tbGVmdDogLTExcHg7XG59XG4uZnJhbWUuY2xpY2stdG8tY29tbWVudCAuY29tbWVudC1pbmRpY2F0b3Igc3ZnLFxuLmltYWdlLWRpZmYtb3ZlcmxheSAuaW1hZ2UtZGlmZi1vdmVybGF5LWFkZC1jb21tZW50IC5jb21tZW50LWluZGljYXRvciBzdmcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmZyYW1lLmNsaWNrLXRvLWNvbW1lbnQgLmNvbW1lbnQtaW5kaWNhdG9yOmZvY3VzLXZpc2libGUsXG4uaW1hZ2UtZGlmZi1vdmVybGF5IC5pbWFnZS1kaWZmLW92ZXJsYXktYWRkLWNvbW1lbnQgLmNvbW1lbnQtaW5kaWNhdG9yOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uZnJhbWUgLmltYWdlLWNvbW1lbnQtYmFkZ2UsXG4uZnJhbWUgLmNvbW1lbnQtaW5kaWNhdG9yIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi5pbWFnZS1jb21tZW50LWJhZGdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG59XG4uaW1hZ2UtY29tbWVudC1iYWRnZSA+IHN2ZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi5pbWFnZS1kaWZmLWF2YXRhci1saW5rLFxuLnVzZXItYXZhdGFyLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaW1hZ2UtZGlmZi1hdmF0YXItbGluayAuYmFkZ2UuYmFkZ2UtcGlsbCxcbi5pbWFnZS1kaWZmLWF2YXRhci1saW5rIC5pbWFnZS1jb21tZW50LWJhZGdlLFxuLnVzZXItYXZhdGFyLWxpbmsgLmJhZGdlLmJhZGdlLXBpbGwsXG4udXNlci1hdmF0YXItbGluayAuaW1hZ2UtY29tbWVudC1iYWRnZSB7XG4gIHRvcDogMjVweDtcbiAgcmlnaHQ6IDhweDtcbn1cblxuLmltYWdlLWRpZmYtb3ZlcmxheSxcbi5pbWFnZS1kaWZmLW92ZXJsYXktYWRkLWNvbW1lbnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG4uaW1hZ2UtZGlmZi1vdmVybGF5OmFjdGl2ZSwgLmltYWdlLWRpZmYtb3ZlcmxheTpmb2N1cy12aXNpYmxlLFxuLmltYWdlLWRpZmYtb3ZlcmxheS1hZGQtY29tbWVudDphY3RpdmUsXG4uaW1hZ2UtZGlmZi1vdmVybGF5LWFkZC1jb21tZW50OmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uZGlmZi1maWxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cbi5kaWZmLWZpbGUgLmNvZGUubWQtc3VnZ2VzdGlvbi1kaWZmIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjVyZW0gLSAxcHgpO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYygwLjVyZW0gLSAxcHgpO1xufVxuLmRpZmYtZmlsZSAuZmlsZS10aXRsZSxcbi5kaWZmLWZpbGUgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5Ac3VwcG9ydHMgKGNvbnRhaW5lci10eXBlOiBzY3JvbGwtc3RhdGUpIHtcbiAgLmRpZmYtZmlsZSAuZmlsZS10aXRsZSxcbiAgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS1mbGV4LXBhcmVudCB7XG4gICAgY29udGFpbmVyLXR5cGU6IHNjcm9sbC1zdGF0ZTtcbiAgICBjb250YWluZXItbmFtZTogZmlsZS1ob2xkZXItd3JhcHBlcjtcbiAgfVxuICBAY29udGFpbmVyIGZpbGUtaG9sZGVyLXdyYXBwZXIgc2Nyb2xsLXN0YXRlKHN0dWNrOiB0b3ApIHtcbiAgICAuZGlmZi1maWxlIC5maWxlLXRpdGxlOjpiZWZvcmUsIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGU6OmFmdGVyLFxuICAgIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQ6OmJlZm9yZSxcbiAgICAuZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50OjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGFwcGx5IGdsLWFic29sdXRlO1xuICAgICAgQGFwcGx5IGdsLXRvcC0wO1xuICAgICAgQGFwcGx5IGdsLXctNDtcbiAgICAgIEBhcHBseSBnbC1oLTQ7XG4gICAgICBAYXBwbHkgZ2wtYmctaW5oZXJpdDtcbiAgICB9XG4gICAgLmRpZmYtZmlsZSAuZmlsZS10aXRsZTo6YmVmb3JlLFxuICAgIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQ6OmJlZm9yZSB7XG4gICAgICBAYXBwbHkgZ2wtbGVmdC0wO1xuICAgIH1cbiAgICAuZGlmZi1maWxlIC5maWxlLXRpdGxlOjphZnRlcixcbiAgICAuZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50OjphZnRlciB7XG4gICAgICBAYXBwbHkgZ2wtcmlnaHQtMDtcbiAgICB9XG4gIH1cbn1cbi5kaWZmLWZpbGUgLmZpbGUtdGl0bGUgLmRyb3Bkb3duLW1lbnUsXG4uZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50IC5kcm9wZG93bi1tZW51IHtcbiAgY3Vyc29yOiBhdXRvO1xufVxuLmRpZmYtZmlsZSAuZmlsZS10aXRsZTpoYXMoLmdsLW5ldy1kcm9wZG93bi10b2dnbGVbYXJpYS1leHBhbmRlZD10cnVlXSksXG4uZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50OmhhcyguZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdKSB7XG4gIHotaW5kZXg6IDMwMDtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmRpZmYtZmlsZSAuZmlsZS10aXRsZSAuZmlsZS1oZWFkZXItY29udGVudCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS1mbGV4LXBhcmVudCAuZmlsZS1oZWFkZXItY29udGVudCB7XG4gICAgd2lkdGg6IDA7XG4gICAgZmxleDogMTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZGlmZi1maWxlIC5maWxlLXRpdGxlIC5maWxlLWFjdGlvbnMsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQgLmZpbGUtYWN0aW9ucyB7XG4gICAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZGlmZi1maWxlIC5maWxlLXRpdGxlIC5maWxlLWhlYWRlci1jb250ZW50LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50IC5maWxlLWhlYWRlci1jb250ZW50IHtcbiAgICB3aWR0aDogMDtcbiAgICBmbGV4OiAxO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUgLmZpbGUtYWN0aW9ucyxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS1mbGV4LXBhcmVudCAuZmlsZS1hY3Rpb25zIHtcbiAgICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgfVxufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmRpZmYtZmlsZSAuZmlsZS10aXRsZSxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS1mbGV4LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IGNhbGMoY2FsYyhjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2FsYyh2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSkpICsgdmFyKC0tdG9wLWJhci1oZWlnaHQpKSArIGNhbGMoMi41cmVtICsgMS41cmVtICsgMC4yNXJlbSArIDFweCkgLSAxcHgpO1xuICAgIHotaW5kZXg6IDEyMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZGlmZi1maWxlIC5maWxlLXRpdGxlICsgLmRpZmYtY29udGVudCAubWQtaGVhZGVyLXByZXZpZXcsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQgKyAuZGlmZi1jb250ZW50IC5tZC1oZWFkZXItcHJldmlldyB7XG4gICAgdG9wOiBjYWxjKGNhbGMoY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSkgKyBjYWxjKDIuNXJlbSArIDEuNXJlbSArIDAuMjVyZW0gKyAxcHgpICsgNDFweCAtIDFweCk7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS5pcy1jb21taXQsIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUuaXMtY29tcGFyZSwgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS5pcy13aWtpLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50LmlzLWNvbW1pdCxcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS1mbGV4LXBhcmVudC5pcy1jb21wYXJlLFxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50LmlzLXdpa2kge1xuICAgIHRvcDogY2FsYyhjYWxjKGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSkgKyB2YXIoLS10b3AtYmFyLWhlaWdodCkpKTtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiBjYWxjKGNhbGMoY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSkgKyBjYWxjKDIuNXJlbSArIDEuNXJlbSArIDAuMjVyZW0gKyAxcHgpIC0gMXB4KTtcbiAgICB6LWluZGV4OiAxMjA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRpZmYtZmlsZSAuZmlsZS10aXRsZSArIC5kaWZmLWNvbnRlbnQgLm1kLWhlYWRlci1wcmV2aWV3LFxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50ICsgLmRpZmYtY29udGVudCAubWQtaGVhZGVyLXByZXZpZXcge1xuICAgIHRvcDogY2FsYyhjYWxjKGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSkgKyB2YXIoLS10b3AtYmFyLWhlaWdodCkpICsgY2FsYygyLjVyZW0gKyAxLjVyZW0gKyAwLjI1cmVtICsgMXB4KSArIDQxcHggLSAxcHgpO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUuaXMtY29tbWl0LCA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZGlmZi1maWxlIC5maWxlLXRpdGxlLmlzLWNvbXBhcmUsIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUuaXMtd2lraSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS1mbGV4LXBhcmVudC5pcy1jb21taXQsXG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaWZmLWZpbGUgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQuaXMtY29tcGFyZSxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRpZmYtZmlsZSAuZmlsZS10aXRsZS1mbGV4LXBhcmVudC5pcy13aWtpIHtcbiAgICB0b3A6IGNhbGMoY2FsYyhjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2FsYyh2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSkpICsgdmFyKC0tdG9wLWJhci1oZWlnaHQpKSk7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuLmRpZmYtZmlsZSAuZmlsZS10aXRsZTpob3Zlcixcbi5kaWZmLWZpbGUgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQ6aG92ZXIge1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xufVxuLmRpZmYtZmlsZSAuZmlsZS10aXRsZSBzdmcsXG4uZGlmZi1maWxlIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50IHN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRvcDogLTFweDtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaWZmLWZpbGUuY29uZmxpY3QgLmZpbGUtdGl0bGUsIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaWZmLWZpbGUuY29uZmxpY3QgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQge1xuICAgIHRvcDogY2FsYyhjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2FsYyh2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSkpICsgdmFyKC0tdG9wLWJhci1oZWlnaHQpKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZGlmZi1maWxlLmNvbmZsaWN0IC5maWxlLXRpdGxlLCA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZGlmZi1maWxlLmNvbmZsaWN0IC5maWxlLXRpdGxlLWZsZXgtcGFyZW50IHtcbiAgICB0b3A6IGNhbGMoY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSk7XG4gIH1cbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaWZmLWZpbGUuY29uZmxpY3QgLmZpbGUtdGl0bGUsIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaWZmLWZpbGUuY29uZmxpY3QgLmZpbGUtdGl0bGUtZmxleC1wYXJlbnQge1xuICAgIHRvcDogMDtcbiAgfVxufVxuLmRpZmYtZmlsZSAuZGlmZi1jb250ZW50IHtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG4uZGlmZi1maWxlIC5kaWZmLWNvbnRlbnQgLnVuZm9sZCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kaWZmLWZpbGUgLmRpZmYtY29udGVudCAuc3VwcHJlc3NlZC1jb250YWluZXIge1xuICBwYWRkaW5nOiAxMXB4IDE2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5kaWZmLWZpbGUgLmRpZmYtY29udGVudCAuc3VwcHJlc3NlZC1jb250YWluZXIgLnNob3ctc3VwcHJlc3NlZC1kaWZmIHtcbiAgZm9udC1zaXplOiAxMTAlO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLmRpZmYtZmlsZSAuZGlmZi1jb250ZW50IC5kaWZmLWxvYWRpbmctZXJyb3ItYmxvY2sge1xuICBwYWRkaW5nOiAzMnB4IDE2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxNnB4O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1kaWZmLWZpbGUtaW1hZ2Utdmlld2VyLWJvcmRlci1yYWRpdXMpO1xufVxuLmRpZmYtZmlsZSAuaW1hZ2U6aGFzKD4gLnZpZXcpIHtcbiAgcGFkZGluZy1ib3R0b206IDMycHg7XG59XG4uZGlmZi1maWxlIC5pbWFnZSAud3JhcCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC5mcmFtZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuLmRpZmYtZmlsZSAuaW1hZ2UgLmZyYW1lIGltZyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdHJvbmcpIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA3NSUsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3Ryb25nKSA3NSUsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3Ryb25nKSAxMDAlKSwgbGluZWFyLWdyYWRpZW50KDQ1ZGVnLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZykgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDc1JSwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdHJvbmcpIDc1JSwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdHJvbmcpIDEwMCUpO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggMTBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCA1cHggNXB4O1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG4uZGlmZi1maWxlIC5pbWFnZSAuZnJhbWUuZGVsZXRlZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdsLXN0YXR1cy1kYW5nZXItaWNvbi1jb2xvcik7XG59XG4uZGlmZi1maWxlIC5pbWFnZSAuZnJhbWUuYWRkZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1zdGF0dXMtc3VjY2Vzcy1pY29uLWNvbG9yKTtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC5pbWFnZS1pbmZvIHtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBtYXJnaW46IDVweCAwIDA7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC52aWV3LnN3aXBlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRpZmYtZmlsZSAuaW1hZ2UgLnZpZXcuc3dpcGUgLnN3aXBlLWZyYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRpZmYtZmlsZSAuaW1hZ2UgLnZpZXcuc3dpcGUgLnN3aXBlLXdyYXAge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjYTVhM2EzO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDEzcHg7XG4gIHJpZ2h0OiA3cHg7XG59XG4uZGlmZi1maWxlIC5pbWFnZSAudmlldy5zd2lwZSAuc3dpcGUtd3JhcC5sZWZ0LW9yaWVudGVkIHtcbiAgLyogb25seSBmb3IgY29tbWl0IHZpZXcgKGRpZmZlcmVudCBzd2lwZSB2aWV3ZXIpICovXG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYTVhM2EzO1xufVxuLmRpZmYtZmlsZSAuaW1hZ2UgLnZpZXcuc3dpcGUgLmZyYW1lIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC52aWV3LnN3aXBlIC5mcmFtZS5vbGQtZGlmZiB7XG4gIC8qIG9ubHkgZm9yIGNvbW1pdCAvIGNvbXBhcmUgdmlldyAqL1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4uZGlmZi1maWxlIC5pbWFnZSAudmlldy5zd2lwZSAuZnJhbWUuZGVsZXRlZCB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogMTNweDtcbiAgcmlnaHQ6IDdweDtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC52aWV3LnN3aXBlIC5zd2lwZS1iYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTVweDtcbiAgei1pbmRleDogMTAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC52aWV3LnN3aXBlIC5zd2lwZS1iYXI6aG92ZXIgLnRvcC1oYW5kbGUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTVweCAzcHg7XG59XG4uZGlmZi1maWxlIC5pbWFnZSAudmlldy5zd2lwZSAuc3dpcGUtYmFyOmhvdmVyIC5ib3R0b20taGFuZGxlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1cHggLTExcHg7XG59XG4uZGlmZi1maWxlIC5pbWFnZSAudmlldy5zd2lwZSAuc3dpcGUtYmFyIC50b3AtaGFuZGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTRweDtcbiAgd2lkdGg6IDE1cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJzd2lwZW1vZGVfc3ByaXRlcy5naWZcIikgMCAzcHggbm8tcmVwZWF0O1xufVxuLmRpZmYtZmlsZSAuaW1hZ2UgLnZpZXcuc3dpcGUgLnN3aXBlLWJhciAuYm90dG9tLWhhbmRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAxNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogdXJsKFwic3dpcGVtb2RlX3Nwcml0ZXMuZ2lmXCIpIDAgLTExcHggbm8tcmVwZWF0O1xufVxuLmRpZmYtZmlsZSAuaW1hZ2UgLnZpZXcub25pb24tc2tpbiAub25pb24tc2tpbi1mcmFtZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IGF1dG87XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC52aWV3Lm9uaW9uLXNraW4gLmZyYW1lLmFkZGVkLFxuLmRpZmYtZmlsZSAuaW1hZ2UgLnZpZXcub25pb24tc2tpbiAuZnJhbWUuZGVsZXRlZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC52aWV3Lm9uaW9uLXNraW4gLmNvbnRyb2xzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTRweDtcbiAgd2lkdGg6IDMwMHB4O1xuICB6LWluZGV4OiAxMDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtMTUwcHg7XG59XG4uZGlmZi1maWxlIC5pbWFnZSAudmlldy5vbmlvbi1za2luIC5jb250cm9scyAuZHJhZy10cmFjayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTJweDtcbiAgaGVpZ2h0OiAxMHB4O1xuICB3aWR0aDogMjc2cHg7XG4gIGJhY2tncm91bmQ6IHVybChcIm9uaW9uX3NraW5fc3ByaXRlcy5naWZcIikgLTRweCAtMjBweCByZXBlYXQteDtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC52aWV3Lm9uaW9uLXNraW4gLmNvbnRyb2xzIC5kcmFnZ2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDE0cHg7XG4gIHdpZHRoOiAxNHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJvbmlvbl9za2luX3Nwcml0ZXMuZ2lmXCIpIDAgLTM0cHggcmVwZWF0LXg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kaWZmLWZpbGUgLmltYWdlIC52aWV3Lm9uaW9uLXNraW4gLmNvbnRyb2xzIC50cmFuc3BhcmVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMnB4O1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMHB4O1xuICB3aWR0aDogMTBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwib25pb25fc2tpbl9zcHJpdGVzLmdpZlwiKSAtMnB4IDAgbm8tcmVwZWF0O1xufVxuLmRpZmYtZmlsZSAuaW1hZ2UgLnZpZXcub25pb24tc2tpbiAuY29udHJvbHMgLm9wYXF1ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMnB4O1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwcHg7XG4gIHdpZHRoOiAxMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJvbmlvbl9za2luX3Nwcml0ZXMuZ2lmXCIpIC0ycHggLTEwcHggbm8tcmVwZWF0O1xufVxuLmRpZmYtZmlsZSAudmlldy1tb2RlcyB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbn1cbi5kaWZmLWZpbGUgLnZpZXctbW9kZXMgdWwsXG4uZGlmZi1maWxlIC52aWV3LW1vZGVzIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uZGlmZi1maWxlIC52aWV3LW1vZGVzIGxpIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWw7XG4gIHBhZGRpbmc6IDAgMTJweCAwIDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5kaWZmLWZpbGUgLnZpZXctbW9kZXMgbGk6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cbi5kaWZmLWZpbGUgLnZpZXctbW9kZXMgbGk6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5kaWZmLWZpbGUgLnZpZXctbW9kZXMgbGkuYWN0aXZlIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuLmRpZmYtZmlsZSAudmlldy1tb2RlcyBsaS5hY3RpdmU6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uZGlmZi1maWxlIC52aWV3LW1vZGVzIGxpLmRpc2FibGVkIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kaWZmLWZpbGUgLmRpZmYtZmlsZS1jb250YWluZXIgLmZyYW1lLmRlbGV0ZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1zdGF0dXMtZGFuZ2VyLWljb24tY29sb3IpO1xufVxuLmRpZmYtZmlsZSAuZGlmZi1maWxlLWNvbnRhaW5lciAuZnJhbWUuYWRkZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1zdGF0dXMtc3VjY2Vzcy1pY29uLWNvbG9yKTtcbn1cbi5kaWZmLWZpbGUgLmRpZmYtZmlsZS1jb250YWluZXIgLnN3aXBlLnZpZXcgLnN3aXBlLXdyYXAsXG4uZGlmZi1maWxlIC5kaWZmLWZpbGUtY29udGFpbmVyIC5vbmlvbi1za2luLnZpZXcgLnN3aXBlLXdyYXAge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG4uZGlmZi1maWxlIC5kaWZmLWZpbGUtY29udGFpbmVyIC5zd2lwZS52aWV3IC5mcmFtZS5kZWxldGVkLFxuLmRpZmYtZmlsZSAuZGlmZi1maWxlLWNvbnRhaW5lciAub25pb24tc2tpbi52aWV3IC5mcmFtZS5kZWxldGVkIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbn1cbi5kaWZmLWZpbGUgLmRpZmYtZmlsZS1jb250YWluZXIgLnN3aXBlLnZpZXcgLnN3aXBlLWJhcixcbi5kaWZmLWZpbGUgLmRpZmYtZmlsZS1jb250YWluZXIgLm9uaW9uLXNraW4udmlldyAuc3dpcGUtYmFyIHtcbiAgdG9wOiAwO1xufVxuLmRpZmYtZmlsZSAuZGlmZi1maWxlLWNvbnRhaW5lciAuc3dpcGUudmlldyAuc3dpcGUtYmFyIC50b3AtaGFuZGxlLFxuLmRpZmYtZmlsZSAuZGlmZi1maWxlLWNvbnRhaW5lciAub25pb24tc2tpbi52aWV3IC5zd2lwZS1iYXIgLnRvcC1oYW5kbGUge1xuICB0b3A6IC0xNHB4O1xuICBsZWZ0OiAtN3B4O1xufVxuLmRpZmYtZmlsZSAuZGlmZi1maWxlLWNvbnRhaW5lciAuc3dpcGUudmlldyAuc3dpcGUtYmFyIC5ib3R0b20taGFuZGxlLFxuLmRpZmYtZmlsZSAuZGlmZi1maWxlLWNvbnRhaW5lciAub25pb24tc2tpbi52aWV3IC5zd2lwZS1iYXIgLmJvdHRvbS1oYW5kbGUge1xuICBib3R0b206IC0xNHB4O1xuICBsZWZ0OiAtN3B4O1xufVxuLmRpZmYtZmlsZSAuZGlmZi1maWxlLWNvbnRhaW5lciAuc3dpcGUudmlldyAuZmlsZS1jb250YWluZXIsXG4uZGlmZi1maWxlIC5kaWZmLWZpbGUtY29udGFpbmVyIC5vbmlvbi1za2luLnZpZXcgLmZpbGUtY29udGFpbmVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLmRpZmYtZmlsZSAuZGlmZi1maWxlLWNvbnRhaW5lciAuc3dpcGUudmlldyAuZmlsZS1jb250YWluZXIgLmZpbGUtY29udGVudCxcbi5kaWZmLWZpbGUgLmRpZmYtZmlsZS1jb250YWluZXIgLm9uaW9uLXNraW4udmlldyAuZmlsZS1jb250YWluZXIgLmZpbGUtY29udGVudCB7XG4gIHBhZGRpbmc6IDA7XG59XG4uZGlmZi1maWxlIC5kaWZmLWZpbGUtY29udGFpbmVyIC5zd2lwZS52aWV3IC5maWxlLWNvbnRhaW5lciAuZmlsZS1jb250ZW50IGltZyxcbi5kaWZmLWZpbGUgLmRpZmYtZmlsZS1jb250YWluZXIgLm9uaW9uLXNraW4udmlldyAuZmlsZS1jb250YWluZXIgLmZpbGUtY29udGVudCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4uZGlmZi1maWxlIC5kaWZmLWZpbGUtY29udGFpbmVyIC5vbmlvbi1za2luLnZpZXcgLmNvbnRyb2xzIHtcbiAgYm90dG9tOiAtMjVweDtcbn1cbi5kaWZmLWZpbGUgLmRpc2N1c3Npb24tbm90ZXMgLmRpc2N1c3Npb24tbm90ZXMge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi5jb2RlIC5kaWZmLWdyaWQtcm93LmxpbmVfaG9sZGVyLmRpZmYtdHIgLmRpZmYtdGQuY29tbWVudGVkOm5vdCguaGxsKSB7XG4gIC0taGlnaGxpZ2h0LWJvcmRlci1jb2xvcjogIzY0YTdlOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4ZjJmZDtcbn1cblxuLmRpZmYtdGFibGUuY29kZSxcbnRhYmxlLmNvZGUge1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWRlZmF1bHQtbW9uby1mb250LCBcIkdpdExhYiBNb25vXCIpLCBcIkpldEJyYWlucyBNb25vXCIsIFwiTWVubG9cIiwgXCJEZWphVnUgU2FucyBNb25vXCIsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ29uc29sYXNcIiwgXCJVYnVudHUgTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIFwiYW5kYWxlIG1vbm9cIiwgXCJsdWNpZGEgY29uc29sZVwiLCBtb25vc3BhY2U7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItcmFkaXVzOiAwIDAgY2FsYygwLjVyZW0gLSAxcHgpIGNhbGMoMC41cmVtIC0gMXB4KTtcbn1cbi5kaWZmLXRhYmxlLmNvZGUgLmRpZmYtdGQuaGlnaGxpZ2h0LXRvcCxcbnRhYmxlLmNvZGUgLmRpZmYtdGQuaGlnaGxpZ2h0LXRvcCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IHZhcigtLWhpZ2hsaWdodC1ib3JkZXItY29sb3IsICM2NGE3ZTkpO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ZC5oaWdobGlnaHQtYm90dG9tLFxudGFibGUuY29kZSAuZGlmZi10ZC5oaWdobGlnaHQtYm90dG9tIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IHZhcigtLWhpZ2hsaWdodC1ib3JkZXItY29sb3IsICM2NGE3ZTkpO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ZC5oaWdobGlnaHQtdG9wLmhpZ2hsaWdodC1ib3R0b20sXG50YWJsZS5jb2RlIC5kaWZmLXRkLmhpZ2hsaWdodC10b3AuaGlnaGxpZ2h0LWJvdHRvbSB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCB2YXIoLS1oaWdobGlnaHQtYm9yZGVyLWNvbG9yLCAjNjRhN2U5KSwgaW5zZXQgMCAxcHggdmFyKC0taGlnaGxpZ2h0LWJvcmRlci1jb2xvciwgIzY0YTdlOSk7XG59XG4uZGlmZi10YWJsZS5jb2RlIC5kaWZmLXRyLmxpbmVfaG9sZGVyIC5kaWZmLXRkLFxuLmRpZmYtdGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZCxcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQsXG50YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC1zaXplOiA5MCU7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbn1cbi5kaWZmLXRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQgc3Bhbixcbi5kaWZmLXRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQgc3BhbixcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQgc3BhbixcbnRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQgc3BhbiB7XG4gIHdoaXRlLXNwYWNlOiBicmVhay1zcGFjZXM7XG59XG4uZGlmZi10YWJsZS5jb2RlIC5kaWZmLXRyLmxpbmVfaG9sZGVyIC5kaWZmLXRkLmRpZmYtbGluZS1udW0sXG4uZGlmZi10YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmRpZmYtbGluZS1udW0sXG50YWJsZS5jb2RlIC5kaWZmLXRyLmxpbmVfaG9sZGVyIC5kaWZmLXRkLmRpZmYtbGluZS1udW0sXG50YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmRpZmYtbGluZS1udW0ge1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDEwcHggMCA1cHg7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICB3aWR0aDogNTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5kaWZmLWxpbmUtbnVtOm50aC1vZi10eXBlKDIpLFxuLmRpZmYtdGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5kaWZmLWxpbmUtbnVtOm50aC1vZi10eXBlKDIpLFxudGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5kaWZmLWxpbmUtbnVtOm50aC1vZi10eXBlKDIpLFxudGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5kaWZmLWxpbmUtbnVtOm50aC1vZi10eXBlKDIpIHtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG59XG4uZGlmZi10YWJsZS5jb2RlIC5kaWZmLXRyLmxpbmVfaG9sZGVyIC5kaWZmLXRkLmRpZmYtbGluZS1udW0gYSxcbi5kaWZmLXRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQuZGlmZi1saW5lLW51bSBhLFxudGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5kaWZmLWxpbmUtbnVtIGEsXG50YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmRpZmYtbGluZS1udW0gYSB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5kaWZmLWxpbmUtbnVtIGFbZGlzYWJsZWRdLFxuLmRpZmYtdGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5kaWZmLWxpbmUtbnVtIGFbZGlzYWJsZWRdLFxudGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5kaWZmLWxpbmUtbnVtIGFbZGlzYWJsZWRdLFxudGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5kaWZmLWxpbmUtbnVtIGFbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5kaWZmLWxpbmUtbnVtIGFbZGlzYWJsZWRdOmhvdmVyLCAuZGlmZi10YWJsZS5jb2RlIC5kaWZmLXRyLmxpbmVfaG9sZGVyIC5kaWZmLXRkLmRpZmYtbGluZS1udW0gYVtkaXNhYmxlZF06YWN0aXZlLFxuLmRpZmYtdGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5kaWZmLWxpbmUtbnVtIGFbZGlzYWJsZWRdOmhvdmVyLFxuLmRpZmYtdGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5kaWZmLWxpbmUtbnVtIGFbZGlzYWJsZWRdOmFjdGl2ZSxcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQuZGlmZi1saW5lLW51bSBhW2Rpc2FibGVkXTpob3ZlcixcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQuZGlmZi1saW5lLW51bSBhW2Rpc2FibGVkXTphY3RpdmUsXG50YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmRpZmYtbGluZS1udW0gYVtkaXNhYmxlZF06aG92ZXIsXG50YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmRpZmYtbGluZS1udW0gYVtkaXNhYmxlZF06YWN0aXZlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5kaWZmLWxpbmUtbnVtOm5vdCguanMtdW5mb2xkLWJvdHRvbSkgYSxcbi5kaWZmLXRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQuZGlmZi1saW5lLW51bTpub3QoLmpzLXVuZm9sZC1ib3R0b20pIGEsXG50YWJsZS5jb2RlIC5kaWZmLXRyLmxpbmVfaG9sZGVyIC5kaWZmLXRkLmRpZmYtbGluZS1udW06bm90KC5qcy11bmZvbGQtYm90dG9tKSBhLFxudGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5kaWZmLWxpbmUtbnVtOm5vdCguanMtdW5mb2xkLWJvdHRvbSkgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5kaWZmLXRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQuZGlmZi1saW5lLW51bTpub3QoLmpzLXVuZm9sZC1ib3R0b20pIGE6OmJlZm9yZSxcbi5kaWZmLXRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQuZGlmZi1saW5lLW51bTpub3QoLmpzLXVuZm9sZC1ib3R0b20pIGE6OmJlZm9yZSxcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQuZGlmZi1saW5lLW51bTpub3QoLmpzLXVuZm9sZC1ib3R0b20pIGE6OmJlZm9yZSxcbnRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQuZGlmZi1saW5lLW51bTpub3QoLmpzLXVuZm9sZC1ib3R0b20pIGE6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1saW5lbnVtYmVyKTtcbn1cbi5kaWZmLXRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQuZGlmZi1saW5lLW51bTpub3QoLmpzLXVuZm9sZC1ib3R0b20pIGE6OmFmdGVyLFxuLmRpZmYtdGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5kaWZmLWxpbmUtbnVtOm5vdCguanMtdW5mb2xkLWJvdHRvbSkgYTo6YWZ0ZXIsXG50YWJsZS5jb2RlIC5kaWZmLXRyLmxpbmVfaG9sZGVyIC5kaWZmLXRkLmRpZmYtbGluZS1udW06bm90KC5qcy11bmZvbGQtYm90dG9tKSBhOjphZnRlcixcbnRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQuZGlmZi1saW5lLW51bTpub3QoLmpzLXVuZm9sZC1ib3R0b20pIGE6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogLTVweDtcbiAgcmlnaHQ6IC0xMHB4O1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5saW5lX2NvbnRlbnQsXG4uZGlmZi10YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmxpbmVfY29udGVudCxcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQubGluZV9jb250ZW50LFxudGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5saW5lX2NvbnRlbnQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwIDEuNWVtO1xuICBib3JkZXI6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5saW5lX2NvbnRlbnQucGFyYWxsZWwsXG4uZGlmZi10YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmxpbmVfY29udGVudC5wYXJhbGxlbCxcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQubGluZV9jb250ZW50LnBhcmFsbGVsLFxudGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5saW5lX2NvbnRlbnQucGFyYWxsZWwge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB3aWR0aDogNDYlO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5saW5lX2NvbnRlbnQub2xkOjpiZWZvcmUsXG4uZGlmZi10YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmxpbmVfY29udGVudC5vbGQ6OmJlZm9yZSxcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQubGluZV9jb250ZW50Lm9sZDo6YmVmb3JlLFxudGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5saW5lX2NvbnRlbnQub2xkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIi1cIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwLjVlbTtcbn1cbi5kaWZmLXRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQubGluZV9jb250ZW50Lm9sZC53aXRoLWNvdmVyYWdlOjpiZWZvcmUsXG4uZGlmZi10YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmxpbmVfY29udGVudC5vbGQud2l0aC1jb3ZlcmFnZTo6YmVmb3JlLFxudGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5saW5lX2NvbnRlbnQub2xkLndpdGgtY292ZXJhZ2U6OmJlZm9yZSxcbnRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQubGluZV9jb250ZW50Lm9sZC53aXRoLWNvdmVyYWdlOjpiZWZvcmUge1xuICBsZWZ0OiAwO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5saW5lX2NvbnRlbnQubmV3OjpiZWZvcmUsXG4uZGlmZi10YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmxpbmVfY29udGVudC5uZXc6OmJlZm9yZSxcbnRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQubGluZV9jb250ZW50Lm5ldzo6YmVmb3JlLFxudGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5saW5lX2NvbnRlbnQubmV3OjpiZWZvcmUge1xuICBjb250ZW50OiBcIitcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwLjVlbTtcbn1cbi5kaWZmLXRhYmxlLmNvZGUgLmRpZmYtdHIubGluZV9ob2xkZXIgLmRpZmYtdGQubGluZV9jb250ZW50Lm5ldy53aXRoLWNvdmVyYWdlOjpiZWZvcmUsXG4uZGlmZi10YWJsZS5jb2RlIHRyLmxpbmVfaG9sZGVyIHRkLmxpbmVfY29udGVudC5uZXcud2l0aC1jb3ZlcmFnZTo6YmVmb3JlLFxudGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5saW5lX2NvbnRlbnQubmV3LndpdGgtY292ZXJhZ2U6OmJlZm9yZSxcbnRhYmxlLmNvZGUgdHIubGluZV9ob2xkZXIgdGQubGluZV9jb250ZW50Lm5ldy53aXRoLWNvdmVyYWdlOjpiZWZvcmUge1xuICBsZWZ0OiAwO1xufVxuLmRpZmYtdGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5saW5lX2NvbnRlbnQgaW1nLFxuLmRpZmYtdGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5saW5lX2NvbnRlbnQgaW1nLFxudGFibGUuY29kZSAuZGlmZi10ci5saW5lX2hvbGRlciAuZGlmZi10ZC5saW5lX2NvbnRlbnQgaW1nLFxudGFibGUuY29kZSB0ci5saW5lX2hvbGRlciB0ZC5saW5lX2NvbnRlbnQgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuLmRpZmYtdGFibGUuY29kZSAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIC5kaWZmLWdyaWQtbGVmdCAuZGlmZi10ZDpmaXJzdC1jaGlsZCxcbi5kaWZmLXRhYmxlLmNvZGUgLmxpbmVfaG9sZGVyOmxhc3Qtb2YtdHlwZSAuZGlmZi1ncmlkLWxlZnQgdGQ6Zmlyc3QtY2hpbGQsXG50YWJsZS5jb2RlIC5saW5lX2hvbGRlcjpsYXN0LW9mLXR5cGUgLmRpZmYtZ3JpZC1sZWZ0IC5kaWZmLXRkOmZpcnN0LWNoaWxkLFxudGFibGUuY29kZSAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIC5kaWZmLWdyaWQtbGVmdCB0ZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IGNhbGMoMC41cmVtIC0gMXB4KTtcbn1cbi5kaWZmLXRhYmxlLmNvZGUgLmxpbmVfaG9sZGVyOmxhc3Qtb2YtdHlwZSAuZGlmZi1ncmlkLWxlZnQgLmRpZmYtdGQ6Zmlyc3QtY2hpbGQgLmRpZmYtbGluZS1leHBhbmQtYnV0dG9uLFxuLmRpZmYtdGFibGUuY29kZSAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIC5kaWZmLWdyaWQtbGVmdCB0ZDpmaXJzdC1jaGlsZCAuZGlmZi1saW5lLWV4cGFuZC1idXR0b24sXG50YWJsZS5jb2RlIC5saW5lX2hvbGRlcjpsYXN0LW9mLXR5cGUgLmRpZmYtZ3JpZC1sZWZ0IC5kaWZmLXRkOmZpcnN0LWNoaWxkIC5kaWZmLWxpbmUtZXhwYW5kLWJ1dHRvbixcbnRhYmxlLmNvZGUgLmxpbmVfaG9sZGVyOmxhc3Qtb2YtdHlwZSAuZGlmZi1ncmlkLWxlZnQgdGQ6Zmlyc3QtY2hpbGQgLmRpZmYtbGluZS1leHBhbmQtYnV0dG9uIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogY2FsYygwLjVyZW0gLSAxcHgpO1xufVxuLmRpZmYtdGFibGUuY29kZSAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIC5kaWZmLXRkOmxhc3QtY2hpbGQ6bm90KC5sZWZ0LXNpZGUucGFyYWxsZWwpLFxuLmRpZmYtdGFibGUuY29kZSAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIHRkOmxhc3QtY2hpbGQ6bm90KC5sZWZ0LXNpZGUucGFyYWxsZWwpLFxudGFibGUuY29kZSAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIC5kaWZmLXRkOmxhc3QtY2hpbGQ6bm90KC5sZWZ0LXNpZGUucGFyYWxsZWwpLFxudGFibGUuY29kZSAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIHRkOmxhc3QtY2hpbGQ6bm90KC5sZWZ0LXNpZGUucGFyYWxsZWwpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IGNhbGMoMC41cmVtIC0gMXB4KTtcbn1cbi5kaWZmLXRhYmxlLmNvZGUgLmxpbmVfaG9sZGVyOmxhc3Qtb2YtdHlwZSAuZGlmZi1ncmlkLWxlZnQubGVmdC1zaWRlLnBhcmFsbGVsIC5kaWZmLXRkOmxhc3QtY2hpbGQsXG4uZGlmZi10YWJsZS5jb2RlIC5saW5lX2hvbGRlcjpsYXN0LW9mLXR5cGUgLmRpZmYtZ3JpZC1sZWZ0LmxlZnQtc2lkZS5wYXJhbGxlbCB0ZDpsYXN0LWNoaWxkLFxudGFibGUuY29kZSAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIC5kaWZmLWdyaWQtbGVmdC5sZWZ0LXNpZGUucGFyYWxsZWwgLmRpZmYtdGQ6bGFzdC1jaGlsZCxcbnRhYmxlLmNvZGUgLmxpbmVfaG9sZGVyOmxhc3Qtb2YtdHlwZSAuZGlmZi1ncmlkLWxlZnQubGVmdC1zaWRlLnBhcmFsbGVsIHRkOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5kaWZmLXRhYmxlLmNvZGUubGVmdC1zaWRlLXNlbGVjdGVkIC5kaWZmLXRkLmxpbmVfY29udGVudC5wYXJhbGxlbC5yaWdodC1zaWRlLFxuLmRpZmYtdGFibGUuY29kZS5sZWZ0LXNpZGUtc2VsZWN0ZWQgdGQubGluZV9jb250ZW50LnBhcmFsbGVsLnJpZ2h0LXNpZGUsXG50YWJsZS5jb2RlLmxlZnQtc2lkZS1zZWxlY3RlZCAuZGlmZi10ZC5saW5lX2NvbnRlbnQucGFyYWxsZWwucmlnaHQtc2lkZSxcbnRhYmxlLmNvZGUubGVmdC1zaWRlLXNlbGVjdGVkIHRkLmxpbmVfY29udGVudC5wYXJhbGxlbC5yaWdodC1zaWRlIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4uZGlmZi10YWJsZS5jb2RlLnJpZ2h0LXNpZGUtc2VsZWN0ZWQgLmRpZmYtdGQubGluZV9jb250ZW50LnBhcmFsbGVsLmxlZnQtc2lkZSxcbi5kaWZmLXRhYmxlLmNvZGUucmlnaHQtc2lkZS1zZWxlY3RlZCB0ZC5saW5lX2NvbnRlbnQucGFyYWxsZWwubGVmdC1zaWRlLFxudGFibGUuY29kZS5yaWdodC1zaWRlLXNlbGVjdGVkIC5kaWZmLXRkLmxpbmVfY29udGVudC5wYXJhbGxlbC5sZWZ0LXNpZGUsXG50YWJsZS5jb2RlLnJpZ2h0LXNpZGUtc2VsZWN0ZWQgdGQubGluZV9jb250ZW50LnBhcmFsbGVsLmxlZnQtc2lkZSB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZGlmZi1zdGF0cyB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cbi5kaWZmLXN0YXRzIC5kaWZmLXN0YXRzLWNvbnRlbnRzIHtcbiAgZGlzcGxheTogY29udGVudHM7XG59XG4uZGlmZi1zdGF0cyAuZGlmZi1zdGF0cy1ncm91cCB7XG4gIHBhZGRpbmc6IDAgMC4yNXJlbTtcbn1cbi5kaWZmLXN0YXRzIHN2Zy5kaWZmLXN0YXRzLWljb24ge1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG59XG4uZGlmZi1zdGF0cy5pcy1jb21wYXJlLXZlcnNpb25zLWhlYWRlciAuZGlmZi1zdGF0cy1ncm91cCB7XG4gIHBhZGRpbmc6IDAgMC4yNXJlbTtcbn1cblxuLmZpbGUtY29udGVudCAuZGlmZi1maWxlIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5kaWZmLXdyYXAtbGluZXMgLmxpbmVfY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuXG4uaW5saW5lLXBhcmFsbGVsLWJ1dHRvbnMge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5tZXJnZS1yZXF1ZXN0LWRldGFpbHMgLmZpbGUtY29udGVudC5pbWFnZV9maWxlIGltZyB7XG4gIG1heC1oZWlnaHQ6IDUwdmg7XG59XG5cbi5kaWZmLWNvbW1lbnRzLW1vcmUtY291bnQsXG4uZGlmZi1ub3Rlcy1jb2xsYXBzZSxcbi5pbmxpbmUtZmluZGluZ3MtY29sbGFwc2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4ODg4O1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VjZWJlYTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQsIFwiR2l0TGFiIFNhbnNcIiksIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiTm90byBTYW5zXCIsIFVidW50dSwgQ2FudGFyZWxsLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgZm9udC1zaXplOiA5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5kaWZmLW5vdGVzLWNvbGxhcHNlLFxuLmlubGluZS1maW5kaW5ncy1jb2xsYXBzZSB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwYWRkaW5nOiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xcyBlYXNlLW91dDtcbiAgei1pbmRleDogMTAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDEuMjZyZW07XG4gIGhlaWdodDogMS4yNnJlbTtcbn1cbi5kaWZmLW5vdGVzLWNvbGxhcHNlIC5jb2xsYXBzZS1pY29uLFxuLmlubGluZS1maW5kaW5ncy1jb2xsYXBzZSAuY29sbGFwc2UtaWNvbiB7XG4gIGhlaWdodDogNTAlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5kaWZmLW5vdGVzLWNvbGxhcHNlIHN2Zyxcbi5pbmxpbmUtZmluZGluZ3MtY29sbGFwc2Ugc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5kaWZmLW5vdGVzLWNvbGxhcHNlIC5jb2xsYXBzZS1pY29uLFxuLmRpZmYtbm90ZXMtY29sbGFwc2UgcGF0aCxcbi5pbmxpbmUtZmluZGluZ3MtY29sbGFwc2UgLmNvbGxhcHNlLWljb24sXG4uaW5saW5lLWZpbmRpbmdzLWNvbGxhcHNlIHBhdGgge1xuICBmaWxsOiAjZmZmO1xufVxuLmRpZmYtbm90ZXMtY29sbGFwc2U6Zm9jdXMtdmlzaWJsZSxcbi5pbmxpbmUtZmluZGluZ3MtY29sbGFwc2U6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5ub3RlLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgQGFwcGx5IGdsLWJvcmRlci10LXN1YnRsZTtcbn1cbi5ub3RlLWNvbnRhaW5lciAuZGlzY3Vzc2lvbi1ub3RlcyArIC5kaXNjdXNzaW9uLW5vdGVzOjpiZWZvcmUsXG4ubm90ZS1jb250YWluZXIgLmRpZmYtZmlsZS1kaXNjdXNzaW9ucyArIC5kaXNjdXNzaW9uLWZvcm06OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwcHg7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCg0NWRlZywgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50IDczJSwgI2MxYmZiZSA3NSUsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3VidGxlKSA4MCUpLCBsaW5lYXItZ3JhZGllbnQoMjI1ZGVnLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQgNzMlLCAjYzFiZmJlIDc1JSwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdWJ0bGUpIDgwJSksIGxpbmVhci1ncmFkaWVudCgxMzVkZWcsIHRyYW5zcGFyZW50LCB0cmFuc3BhcmVudCA3MyUsICNjMWJmYmUgNzUlLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN1YnRsZSkgODAlKSwgbGluZWFyLWdyYWRpZW50KC00NWRlZywgdHJhbnNwYXJlbnQsIHRyYW5zcGFyZW50IDczJSwgI2MxYmZiZSA3NSUsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3VidGxlKSA4MCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1cHggNXB4LCAwIDVweCwgMCA1cHgsIDVweCA1cHg7XG4gIGJhY2tncm91bmQtc2l6ZTogMTBweCAxMHB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xufVxuLm5vdGUtY29udGFpbmVyIC5kaWZmLWZpbGUtZGlzY3Vzc2lvbnMgKyAuZGlzY3Vzc2lvbi1mb3JtIHtcbiAgcGFkZGluZzogMTZweDtcbn1cbi5ub3RlLWNvbnRhaW5lciAuZGlmZi1maWxlLWRpc2N1c3Npb25zICsgLmRpc2N1c3Npb24tZm9ybTo6YmVmb3JlIHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiAtMTZweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTZweDtcbiAgbWFyZ2luLWJvdHRvbTogMTZweDtcbn1cbi5ub3RlLWNvbnRhaW5lciAubm90ZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ubm90ZS1jb250YWluZXIgLmRpZmYtbm90ZXMtY29sbGFwc2UsXG4ubm90ZS1jb250YWluZXIgLmlubGluZS1maW5kaW5ncy1jb2xsYXBzZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEycHg7XG59XG5cbi5kaWZmLWZpbGUgLm5vdGUtY29udGFpbmVyID4gLm5ldy1ub3RlIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlcixcbi5ub3RlLWNvbnRhaW5lciAuZGlzY3Vzc2lvbi1ub3Rlcy5kaWZmLWRpc2N1c3Npb25zIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xuICBtYXJnaW4tYm90dG9tOiAtMXB4O1xufVxuXG4ubm90ZXMuYWN0aXZlIC5kaWZmLWZpbGUgLm5vdGUtY29udGFpbmVyID4gLm5ldy1ub3RlLFxuLm5vdGVzLmFjdGl2ZSAubm90ZS1jb250YWluZXIgLmRpc2N1c3Npb24tbm90ZXMge1xuICBtYXJnaW4tbGVmdDogaW5oZXJpdDtcbiAgYm9yZGVyLWxlZnQ6IGluaGVyaXQ7XG59XG5cbi5maWxlczpub3QoW2RhdGEtY2FuLWNyZWF0ZS1ub3RlXSkgLmZyYW1lIHtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG4uZGlzY3Vzc2lvbi1ub3RlcyB7XG4gIG1pbi1oZWlnaHQ6IDM1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmRpc2N1c3Npb24tbm90ZXM6Zmlyc3QtY2hpbGQge1xuICBtaW4taGVpZ2h0OiAyNXB4O1xufVxuLmRpc2N1c3Npb24tbm90ZXMgLmRpZmYtbm90ZXMtZXhwYW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kaXNjdXNzaW9uLW5vdGVzLmNvbGxhcHNlZCB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xufVxuLmRpc2N1c3Npb24tbm90ZXMuY29sbGFwc2VkIC5kaWZmLW5vdGVzLWV4cGFuZCB7XG4gIGRpc3BsYXk6IGluaXRpYWw7XG59XG4uZGlzY3Vzc2lvbi1ub3Rlcy5jb2xsYXBzZWQgLmRpZmYtbm90ZXMtY29sbGFwc2UsXG4uZGlzY3Vzc2lvbi1ub3Rlcy5jb2xsYXBzZWQgLmlubGluZS1maW5kaW5ncy1jb2xsYXBzZSxcbi5kaXNjdXNzaW9uLW5vdGVzLmNvbGxhcHNlZCAubm90ZSxcbi5kaXNjdXNzaW9uLW5vdGVzLmNvbGxhcHNlZCAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmRpc2N1c3Npb24tbm90ZXMgdWwubm90ZXMgbGkudG9nZ2xlLXJlcGxpZXMtd2lkZ2V0LFxuLmRpc2N1c3Npb24tbm90ZXMgdWwubm90ZXMgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDIuNXJlbTtcbn1cbi5kaXNjdXNzaW9uLW5vdGVzIHVsLm5vdGVzIGxpLnRvZ2dsZS1yZXBsaWVzLXdpZGdldFthcmlhLWV4cGFuZGVkPWZhbHNlXSxcbi5kaXNjdXNzaW9uLW5vdGVzIHVsLm5vdGVzIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlclthcmlhLWV4cGFuZGVkPWZhbHNlXSB7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLXNlY3Rpb247XG59XG5cbi5kaXNjdXNzaW9uLWJvZHkgLmltYWdlIC5mcmFtZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRpc2N1c3Npb24tY29sbGFwc2libGUge1xuICBtYXJnaW46IDAgMTZweCAxNnB4O1xufVxuLmRpc2N1c3Npb24tY29sbGFwc2libGUgLm5vdGVzIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbGc7XG59XG5cbi5kaWZmLXN1Z2dlc3QtcG9wb3Zlci5wb3BvdmVyIHtcbiAgd2lkdGg6IDI1MHB4O1xuICBtaW4td2lkdGg6IDI1MHB4O1xuICB6LWluZGV4OiA2MTA7XG59XG4uZGlmZi1zdWdnZXN0LXBvcG92ZXIgLnBvcG92ZXItaGVhZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZGlmZnMgLmZpbGVzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaXNjdXNzaW9uLWNvbGxhcHNpYmxlIHtcbiAgICBtYXJnaW46IDE2cHg7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaWZmcyAuZmlsZXMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRpc2N1c3Npb24tY29sbGFwc2libGUge1xuICAgIG1hcmdpbjogMTZweDtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG4uZGlmZi1maWxlcy1ob2xkZXIgLnZ1ZS1yZWN5Y2xlLXNjcm9sbGVyX19pdGVtLXZpZXcgPiBkaXY6bm90KC5hY3RpdmUpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwMHZoO1xufVxuXG4uZGlmZi1ncmlkLXJvdy5leHBhbnNpb24ubWF0Y2gge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZGlmZi1leHBhbnNpb24tYmFja2dyb3VuZC1jb2xvcik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1kaWZmLWV4cGFuc2lvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cbi5kaWZmLWdyaWQtcm93LmV4cGFuc2lvbi5tYXRjaDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3A6IDA7XG59XG4uZGlmZi1ncmlkLXJvdy5leHBhbnNpb24ubWF0Y2g6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi50b29sdGlwLmNvdmVyYWdlIHtcbiAgbGVmdDogLTNweCAhaW1wb3J0YW50O1xufVxuLnRvb2x0aXAubm8tY292ZXJhZ2Uge1xuICBsZWZ0OiAtMnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5kaWZmLWZpbGUubGlua2VkLWZpbGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJsdWUtMjAwKTtcbn1cbi5kaWZmLWZpbGUubGlua2VkLWZpbGUgLmZpbGUtdGl0bGUge1xuICBAYXBwbHkgZ2wtYmctZmVlZGJhY2staW5mbztcbn1cblxuLmNvbGxhcHNlZC1maWxlLXdhcm5pbmcge1xuICBjb2xvcjogdmFyKC0tZGlmZi13YXJuaW5nLXRleHQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kaWZmLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi8qXG4qIFNBU1MgcHJlc2VydmVzIHVuaXRzIGluIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4gRm9yIGV4YW1wbGU6XG4qIDEyZW0gKiAwID0gMGVtLiBUaGlzIGZ1bmN0aW9uIHJldHVybiB0aGUgdW5pdCBvZiBhIG51bWVyaWMgdmFsdWUuXG4qXG4qIEZvciBtb3JlIGV4YW1wbGVzLCBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9wYXVsZ3YvcGVuL1hXcnFNZ1FcbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWVuYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qXG4gKiBMYXlvdXRcbiAqL1xuLyoqXG4gIPCfmqggRG8gbm90IHVzZSB0aGlzIHNwYWNpbmcgc2NhbGUg4oCUIGl0IGlzIGRlcHJlY2F0ZWQgYW5kIGJlaW5nIHJlbW92ZWQuIPCfmqhcbiAgU2VlIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi9pc3N1ZXMvMzY4NTcgZm9yIG1vcmUgZGV0YWlscy5cblxuICBJbnN0ZWFkLCBpZiB5b3UgbmVlZCBhIHNwYWNpbmcgY2xhc3MsIGFkZCBpdCB0byBhcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9jb21tb24uc2NzcyxcbiAgdXNpbmcgdGhlIGZvbGxvd2luZyB2YWx1ZXMuXG5cbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0wOiAwO1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTE6IDJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0yOiA0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMzogOHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTQ6IDEycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNTogMTZweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS02OiAyNHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTc6IDMycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtODogNDBweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS05OiA0OHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEwOiA1NnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTExOiA2NHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEyOiA4MHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEzOiA5NnB4O1xuXG4gIEUuZy4sIGEgcGFkZGluZyB0b3Agb2YgOTZweCBjYW4gYmUgYWRkZWQgdXNpbmc6XG4gIC5nbC1zaGltLXB0LTEzIHtcbiAgICBwYWRkaW5nLXRvcDogOTZweDtcbiAgfVxuXG4gIFBsZWFzZSB1c2UgLXNoaW0tIHNvIGl0IGNhbiBiZSBkaWZmZXJlbnRpYXRlZCBmcm9tIHRoZSBvbGQgc2NhbGUgY2xhc3Nlcy5cblxuICBUaGVzZSB3aWxsIGJlIHJlcGxhY2VkIHdoZW4gdGhlIEdpdGxhYiBVSSB1dGlsaXRpZXMgYXJlIGluY2x1ZGVkLlxuKiovXG4vKiBXaWxsIGJlIG1vdmVkIHRvIEBnaXRsYWIvdWkgYnkgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXNlcnZpY2VzL2Rlc2lnbi5naXRsYWIuY29tLy0vaXNzdWVzLzI3OTIgKi9cbi8qIEVuZCBnaXRsYWItdWkjMTcwOSAqL1xuLypcbiAqIFRleHRcbiAqL1xuLypcbiAqIExpc3RzXG4gKi9cbi8qXG4gKiBDb2RlXG4gKi9cbi8qXG4gKiBUb29sdGlwc1xuICovXG4vKlxuICogUGFkZGluZ1xuICovXG4vKlxuICogTWlzY1xuICovXG4vKlxuICogTWVyZ2UgcmVxdWVzdHNcbiAqL1xuLypcbiAqIENhbGN1bGF0ZWQgaGVpZ2h0c1xuICovXG4vKiB0YW51a2kgbG9nbyBjb2xvcnMgKi9cbi8qXG4gKiBTdGF0ZSBjb2xvcnM6XG4gKi9cbi8qXG4gKiBDb21taXQgRGlmZiBDb2xvcnNcbiAqL1xuLypcbiAqIFRoZSB0cmFuc3BhcmVudCBjb2xvcnMgYXJlIHVzZWQgaW4gTW9uYWNvIGVkaXRvci4gVXNpbmcgZnVsbCBvcGFjaXR5IGNvbG9yc1xuICogd291bGQgaGlkZSBvdGhlciBsYXllcnMgKHNlbGVjdGVkIHRleHQsIG1hdGNoaW5nIGJyYWNrZXRzKS5cbiAqXG4gKiBXaGVuIHRoZSB0cmFuc3BhcmVudCBjb2xvcnMgZ2V0IGxheWVyZWQgb24gd2hpdGUgYmFja2dyb3VuZCwgdGhleSBjcmVhdGUgdGhlaXJcbiAqIGZ1bGwgb3BhY2l0eSBjb3VudGVycGFydHM6XG4gKlxuICogIC0gd2hpdGUgKyAkbGluZS1hZGRlZC10cmFuc3BhcmVudCA9ICRsaW5lLWFkZGVkXG4gKiAgLSB3aGl0ZSArICRsaW5lLWFkZGVkLXRyYW5zcGFyZW50ICsgJGxpbmUtYWRkZWQtZGFyay10cmFuc3BhcmVudCA9ICRsaW5lLWFkZGVkLWRhcmtcbiAqXG4gKiBNb3JlIGRldGFpbHM6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzQxNTUzXG4gKi9cbi8qXG4gKiBGb250c1xuICogVGhlIC0tZGVmYXVsdC1tb25vLWZvbnQgYW5kIC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQgdmFyaWFibGVzIGdpdmUgdXNlcnNcbiAqIGEgd2F5IHRvIG92ZXJyaWRlIG91ciBmb250IGNob2ljZXMgZm9yIHRoZW0uXG4gKi9cbi8qXG4qIERyb3Bkb3duc1xuKi9cbi8qXG4qIFNpZGViYXJcbiovXG4vKlxuKiBCdXR0b25zXG4qL1xuLypcbiogQmFkZ2VzXG4qL1xuLypcbiAqICBBd2FyZCBlbW9qaVxuICovXG4vKlxuICogU2VhcmNoIEJveFxuICovXG4vKlxuICogIE5vdGVzXG4gKi9cbi8qXG4qIEJvYXJkc1xuKi9cbi8qXG4qIEJ1aWxkc1xuKi9cbi8qXG4qIENvbW1pdCBQYWdlXG4qL1xuLypcbiogRmlsZXNcbiovXG4vKlxuKiBGb3Jtc1xuKi9cbi8qXG4qIExhYmVsXG4qL1xuLypcbiogQW5pbWF0aW9uXG4qL1xuLypcbiogTG9naW5cbiovXG4vKlxuKiBUeXBvZ3JhcGh5XG4qL1xuLypcblBpcGVsaW5lIEdyYXBoXG4qL1xuLypcbkdpdExhYiBQbGFuc1xuKi9cbi8qXG5QZXJmb3JtYW5jZSBCYXJcbiovXG4vKlxuSW1hZ2UgQ29tbWVudGluZyBjdXJzb3JcbiovXG4vKlxuUG9wdXBcbiovXG4vKlxuRHJhd2Vyc1xuKi9cbi8qXG5Nb2RhbHNcbiovXG4vKlxuUG9wb3ZlcnNcbiovXG4vKlxuTWVyZ2UgcmVxdWVzdHNcbiovXG4vKlxuQm9hcmQgU3dpbWxhbmVzXG4qL1xuLypcblNvdXJjZSBFZGl0b3IgdGhlbWUgb3ZlcnJpZGVzXG4qL1xuLyoqXG4gQm9vdHN0cmFwIDQuMi4wIGludHJvZHVjZWQgbmV3IGljb25zIGZvciB2YWxpZGF0aW5nIGZvcm1zLlxuIE91ciBkZXNpZ24gc3lzdGVtIGRvZXMgbm90IHVzZSB0aG9zZSwgc28gd2UgYXJlIGRpc2FibGluZyB0aGVtIGZvciBub3c6XG4gLSBEb2NzOiBodHRwczovL2dldGJvb3RzdHJhcC5jb20vZG9jcy80LjMvY29tcG9uZW50cy9mb3Jtcy8jc2VydmVyLXNpZGVcbiAtIElzc3VlOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9kZXNpZ24uZ2l0bGFiLmNvbS9pc3N1ZXMvMjQyXG4gKi9cbi8qXG4gKiBUaGlzIGZpbGUgaXMgb25seSBmb3Igb3ZlcnJpZGluZyBCb290c3RyYXAgNCB2YXJpYWJsZXMuXG4gKiBQbGVhc2UgYWRkIGFueSBuZXcgdmFyaWFibGVzIHRvIHZhcmlhYmxlcy5zY3NzXG4gKi9cbi8qKlxuICogQ1NTIEN1c3RvbSBwcm9wZXJ0aWVzXG4gKi9cbjpyb290IHtcbiAgLS1kdW8tY2hhdC1idWJibGUtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7XG4gIC0tZHVvLWNoYXQtYnViYmxlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7XG59XG5cbjpyb290LmdsLWRhcmsge1xuICAtLWR1by1jaGF0LWJ1YmJsZS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApO1xuICAtLWR1by1jaGF0LWJ1YmJsZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTtcbn1cblxuOnJvb3QudWktbmV1dHJhbCB7XG4gIC0tZHVvLWNoYXQtYnViYmxlLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS04MDApO1xuICAtLWR1by1jaGF0LWJ1YmJsZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTApO1xufVxuXG46cm9vdC51aS1uZXV0cmFsLmdsLWRhcmsge1xuICAtLWR1by1jaGF0LWJ1YmJsZS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTApO1xuICAtLWR1by1jaGF0LWJ1YmJsZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTtcbn1cblxuLmR1by1jaGF0LWxheW91dCB7XG4gIHotaW5kZXg6IDEwMzk7XG59XG5cbnByZS5kdW8tbWVzc2FnZS1wcmUtYmxvY2suY29kZS1zeW50YXgtaGlnaGxpZ2h0LXRoZW1lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1iYWNrZ3JvdW5kLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXByZWZvcm1hdCkpO1xuICBjb2xvcjogdmFyKC0tY29kZS10ZXh0LWNvbG9yLCB2YXIoLS1nbC10ZXh0LWNvbG9yLXN0cm9uZykpO1xufVxucHJlLmR1by1tZXNzYWdlLXByZS1ibG9jay5jb2RlLXN5bnRheC1oaWdobGlnaHQtdGhlbWUgY29kZSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4uZHVvLWNoYXQtbWVzc2FnZSBhLmFuY2hvciB7XG4gIEBhcHBseSBnbC1oaWRkZW47XG59XG5cbi5kdW8tY2hhdC1tZXNzYWdlLWNvbnRhaW5lciAuZHVvLWNoYXQtbWVzc2FnZTpoYXMoLmVycm9yLWljb24pIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbn1cblxuLyoqXG4gKiBZb3VyIG1lc3NhZ2VzIHN0eWxlc1xuICovXG4uZHVvLWNoYXQtbWVzc2FnZS1jb250YWluZXI6aGFzKC5kdW8tY2hhdC1tZXNzYWdlIC5nbC1hdmF0YXIpIHtcbiAgQGFwcGx5IGdsLWp1c3RpZnktZW5kO1xufVxuLmR1by1jaGF0LW1lc3NhZ2UtY29udGFpbmVyOmhhcyguZHVvLWNoYXQtbWVzc2FnZSAuZ2wtYXZhdGFyKSAuZHVvLWNoYXQtbWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWR1by1jaGF0LWJ1YmJsZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1ibC1bMXJlbV07XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJyLW5vbmU7XG59XG5cbi5kdW8tY2hhdC1tZXNzYWdlLWNvbnRhaW5lcjpoYXMoLmR1by1jaGF0LW1lc3NhZ2UuZ2wtdGV4dC1mZWVkYmFjay1pbmZvKSAuZHVvLWNoYXQtbWVzc2FnZTpub3QoOmhhcyguZXJyb3ItaWNvbikpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHVvLWNoYXQtYnViYmxlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG4uZHVvLWNoYXQtbWVzc2FnZS1jb250YWluZXI6aGFzKC5kdW8tY2hhdC1tZXNzYWdlLmdsLXRleHQtZmVlZGJhY2staW5mbykgLmR1by1jaGF0LW1lc3NhZ2U6bm90KDpoYXMoLmVycm9yLWljb24pKSBwIHtcbiAgY29sb3I6IHZhcigtLWR1by1jaGF0LWJ1YmJsZS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xufVxuXG4vKipcbiAqIFF1ZXVlZCBtZXNzYWdlIHN0eWxlcyDigJQgcGVuZGluZyB1c2VyIHByb21wdHMsIG1hdGNoaW5nIHlvdXIgbWVzc2FnZSBidWJibGVzXG4gKi9cbi5kdW8tY2hhdC1xdWV1ZWQtbWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWR1by1jaGF0LWJ1YmJsZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBjb2xvcjogdmFyKC0tZHVvLWNoYXQtYnViYmxlLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG5cbi5jcnVkLWhlYWRlciB7XG4gIG1pbi1oZWlnaHQ6IDIuNXJlbTtcbn1cblxuLmNydWQtY291bnQgLmdsLWJhZGdlIHtcbiAgQGFwcGx5IC1nbC1tbC0yO1xuICBAYXBwbHkgLWdsLW15LTE7XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbn1cblxuLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuYi10YWJsZS1maXhlZCxcbi5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuYi10YWJsZS1zdGFja2VkLXNtLFxuLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQsXG4uY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmItdGFibGUtZml4ZWQgdHI6Zmlyc3Qtb2YtdHlwZSB0aCxcbi5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRyOmZpcnN0LW9mLXR5cGUgdGgsXG4uY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0cjpmaXJzdC1vZi10eXBlIHRoLFxuLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdHI6Zmlyc3Qtb2YtdHlwZSB0aCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG59XG4uY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmItdGFibGUtZml4ZWQgdHI6bGFzdC1vZi10eXBlIHRkLFxuLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdHI6bGFzdC1vZi10eXBlIHRkLFxuLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdHI6bGFzdC1vZi10eXBlIHRkLFxuLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdHI6bGFzdC1vZi10eXBlIHRkIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyOmZpcnN0LW9mLXR5cGUgPiB0ZFtkYXRhLWxhYmVsXSwgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyOmZpcnN0LW9mLXR5cGUgPiB0ZDpmaXJzdC1vZi10eXBlOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHI6bGFzdC1vZi10eXBlIHRkOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0ciA+IHRoIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHI6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHI6Zmlyc3Qtb2YtdHlwZSA+IHRkW2RhdGEtbGFiZWxdLCA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHI6Zmlyc3Qtb2YtdHlwZSA+IHRkOmZpcnN0LW9mLXR5cGU6bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0cjpsYXN0LW9mLXR5cGUgdGQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF0ge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB0Ym9keSA+IHRyID4gdGgge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLXNtIHRib2R5ID4gdHI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtc20gdGJvZHkgPiB0cjpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHI6Zmlyc3Qtb2YtdHlwZSA+IHRkW2RhdGEtbGFiZWxdLCA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHI6Zmlyc3Qtb2YtdHlwZSA+IHRkOmZpcnN0LW9mLXR5cGU6bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0cjpsYXN0LW9mLXR5cGUgdGQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyID4gdGRbZGF0YS1sYWJlbF0ge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1sZWZ0LXN0eWxlOiBub25lO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItcmlnaHQtc3R5bGU6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyID4gW2RhdGEtbGFiZWxdOjpiZWZvcmUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyID4gdGgge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHI6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0cjpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0cjpmaXJzdC1vZi10eXBlID4gdGRbZGF0YS1sYWJlbF0sIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0cjpmaXJzdC1vZi10eXBlID4gdGQ6Zmlyc3Qtb2YtdHlwZTpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyOmxhc3Qtb2YtdHlwZSB0ZDpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXSB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF06OmJlZm9yZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLW1kIHRib2R5ID4gdHIgPiB0aCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQgdGJvZHkgPiB0cjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB0Ym9keSA+IHRyOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0cjpmaXJzdC1vZi10eXBlID4gdGRbZGF0YS1sYWJlbF0sIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0cjpmaXJzdC1vZi10eXBlID4gdGQ6Zmlyc3Qtb2YtdHlwZTpsYXN0LW9mLXR5cGUge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyOmxhc3Qtb2YtdHlwZSB0ZDpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiB0ZFtkYXRhLWxhYmVsXSB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogbm9uZTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiBbZGF0YS1sYWJlbF06OmJlZm9yZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHIgPiB0aCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMXB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0cjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyOmxhc3QtY2hpbGQ6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyOmZpcnN0LW9mLXR5cGUgPiB0ZFtkYXRhLWxhYmVsXSwgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyOmZpcnN0LW9mLXR5cGUgPiB0ZDpmaXJzdC1vZi10eXBlOmxhc3Qtb2YtdHlwZSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHI6bGFzdC1vZi10eXBlIHRkOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0ciA+IHRkW2RhdGEtbGFiZWxdIHtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItbGVmdC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0ciA+IFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcnVkLWJvZHk6aGFzKC5nbC10YWJsZSkgdGFibGUuZ2wtdGFibGUuYi10YWJsZS5iLXRhYmxlLXN0YWNrZWQtbGcgdGJvZHkgPiB0ciA+IHRoIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAxcHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNydWQtYm9keTpoYXMoLmdsLXRhYmxlKSB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB0Ym9keSA+IHRyOjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHRhYmxlLmdsLXRhYmxlLmItdGFibGUuYi10YWJsZS1zdGFja2VkLWxnIHRib2R5ID4gdHI6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmNydWQtYm9keSAuZ2wtdGFibGUtc2hhZG93ID4gdGFibGUgdGQ6Zmlyc3Qtb2YtdHlwZSxcbi5jcnVkLWJvZHkgLmdsLXRhYmxlLXNoYWRvdyA+IHRhYmxlIHRoOmZpcnN0LW9mLXR5cGUge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWwtMDtcbn1cbi5jcnVkLWJvZHkgLmdsLXRhYmxlLXNoYWRvdyA+IHRhYmxlIHRkOmxhc3Qtb2YtdHlwZSxcbi5jcnVkLWJvZHkgLmdsLXRhYmxlLXNoYWRvdyA+IHRhYmxlIHRoOmxhc3Qtb2YtdHlwZSB7XG4gIEBhcHBseSBnbC1ib3JkZXItci0wICFpbXBvcnRhbnQ7XG59XG4uY3J1ZC1ib2R5IC5nbC10YWJsZS1zaGFkb3cgPiB0YWJsZSB0cjpmaXJzdC1vZi10eXBlIHRoIHtcbiAgQGFwcGx5IGdsLWJvcmRlci10LTA7XG59XG4uY3J1ZC1ib2R5IC5nbC10YWJsZS1zaGFkb3cgPiB0YWJsZSB0cjpsYXN0LW9mLXR5cGUgdGQge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWItMDtcbn1cbi5jcnVkLWJvZHkgLmdsLXRhYmxlLXNoYWRvdyA+IHRhYmxlIHRyOmhvdmVyIHRkIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbn1cblxuLmNydWQtYm9keTpoYXMoLmNvbnRlbnQtbGlzdCkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uY3J1ZC1ib2R5OmhhcyguY29udGVudC1saXN0KSAuY29udGVudC1saXN0ID4gbGkge1xuICBAYXBwbHkgZ2wtbXgtMjtcbiAgQGFwcGx5IGdsLXB4LTM7XG59XG5cbi5jcnVkLXBhZ2luYXRpb24ge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuLmNydWQtcGFnaW5hdGlvbjpub3QoOmhhcyg+IC5nbC1wYWdpbmF0aW9uLCA+IC5jcnVkLXBhZ2luYXRpb24tY29udGFpbmVyKSkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNydWQtcGFnaW5hdGlvbiAuZ2wtcGFnaW5hdGlvbiB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY3J1ZC1wYWdpbmF0aW9uIC5nbC1wYWdpbmF0aW9uIHVsLFxuLmNydWQtcGFnaW5hdGlvbiAucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zZXZlcml0eS10ZXh0LWNyaXRpY2FsIHtcbiAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWNyaXRpY2FsKTtcbn1cblxuLnNldmVyaXR5LXRleHQtaGlnaCB7XG4gIGNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1oaWdoKTtcbn1cblxuLnNldmVyaXR5LXRleHQtbWVkaXVtIHtcbiAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLW1lZGl1bSk7XG59XG5cbi5zZXZlcml0eS10ZXh0LWxvdyB7XG4gIGNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1sb3cpO1xufVxuXG4uc2V2ZXJpdHktdGV4dC1pbmZvIHtcbiAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWluZm8pO1xufVxuXG4uc2V2ZXJpdHktdGV4dC11bmtub3duIHtcbiAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLXVua25vd24pO1xufVxuXG4uc2V2ZXJpdHktYmctY3JpdGljYWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1jcml0aWNhbCk7XG59XG5cbi5zZXZlcml0eS1iZy1oaWdoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItaGlnaCk7XG59XG5cbi5zZXZlcml0eS1iZy1tZWRpdW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1tZWRpdW0pO1xufVxuXG4uc2V2ZXJpdHktYmctbG93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItbG93KTtcbn1cblxuLnNldmVyaXR5LWJnLWluZm8ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1pbmZvKTtcbn1cblxuLnNldmVyaXR5LWJnLXVua25vd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci11bmtub3duKTtcbn1cblxuLmdsLWNvbC14bCxcbi5nbC1jb2wteGwtYXV0bywgLmdsLWNvbC14bC0xMiwgLmdsLWNvbC14bC0xMSwgLmdsLWNvbC14bC0xMCwgLmdsLWNvbC14bC05LCAuZ2wtY29sLXhsLTgsIC5nbC1jb2wteGwtNywgLmdsLWNvbC14bC02LCAuZ2wtY29sLXhsLTUsIC5nbC1jb2wteGwtNCwgLmdsLWNvbC14bC0zLCAuZ2wtY29sLXhsLTIsIC5nbC1jb2wteGwtMSwgLmdsLWNvbC1sZyxcbi5nbC1jb2wtbGctYXV0bywgLmdsLWNvbC1sZy0xMiwgLmdsLWNvbC1sZy0xMSwgLmdsLWNvbC1sZy0xMCwgLmdsLWNvbC1sZy05LCAuZ2wtY29sLWxnLTgsIC5nbC1jb2wtbGctNywgLmdsLWNvbC1sZy02LCAuZ2wtY29sLWxnLTUsIC5nbC1jb2wtbGctNCwgLmdsLWNvbC1sZy0zLCAuZ2wtY29sLWxnLTIsIC5nbC1jb2wtbGctMSwgLmdsLWNvbC1tZCxcbi5nbC1jb2wtbWQtYXV0bywgLmdsLWNvbC1tZC0xMiwgLmdsLWNvbC1tZC0xMSwgLmdsLWNvbC1tZC0xMCwgLmdsLWNvbC1tZC05LCAuZ2wtY29sLW1kLTgsIC5nbC1jb2wtbWQtNywgLmdsLWNvbC1tZC02LCAuZ2wtY29sLW1kLTUsIC5nbC1jb2wtbWQtNCwgLmdsLWNvbC1tZC0zLCAuZ2wtY29sLW1kLTIsIC5nbC1jb2wtbWQtMSwgLmdsLWNvbC1zbSxcbi5nbC1jb2wtc20tYXV0bywgLmdsLWNvbC1zbS0xMiwgLmdsLWNvbC1zbS0xMSwgLmdsLWNvbC1zbS0xMCwgLmdsLWNvbC1zbS05LCAuZ2wtY29sLXNtLTgsIC5nbC1jb2wtc20tNywgLmdsLWNvbC1zbS02LCAuZ2wtY29sLXNtLTUsIC5nbC1jb2wtc20tNCwgLmdsLWNvbC1zbS0zLCAuZ2wtY29sLXNtLTIsIC5nbC1jb2wtc20tMSwgLmdsLWNvbCxcbi5nbC1jb2wtYXV0bywgLmdsLWNvbC0xMiwgLmdsLWNvbC0xMSwgLmdsLWNvbC0xMCwgLmdsLWNvbC05LCAuZ2wtY29sLTgsIC5nbC1jb2wtNywgLmdsLWNvbC02LCAuZ2wtY29sLTUsIC5nbC1jb2wtNCwgLmdsLWNvbC0zLCAuZ2wtY29sLTIsIC5nbC1jb2wtMSwgLmNvbC0xLCAuY29sLTIsIC5jb2wtMywgLmNvbC00LCAuY29sLTUsIC5jb2wtNiwgLmNvbC03LCAuY29sLTgsIC5jb2wtOSwgLmNvbC0xMCwgLmNvbC0xMSwgLmNvbC0xMiwgLmNvbCxcbi5jb2wtYXV0bywgLmNvbC1zbS0xLCAuY29sLXNtLTIsIC5jb2wtc20tMywgLmNvbC1zbS00LCAuY29sLXNtLTUsIC5jb2wtc20tNiwgLmNvbC1zbS03LCAuY29sLXNtLTgsIC5jb2wtc20tOSwgLmNvbC1zbS0xMCwgLmNvbC1zbS0xMSwgLmNvbC1zbS0xMiwgLmNvbC1zbSxcbi5jb2wtc20tYXV0bywgLmNvbC1tZC0xLCAuY29sLW1kLTIsIC5jb2wtbWQtMywgLmNvbC1tZC00LCAuY29sLW1kLTUsIC5jb2wtbWQtNiwgLmNvbC1tZC03LCAuY29sLW1kLTgsIC5jb2wtbWQtOSwgLmNvbC1tZC0xMCwgLmNvbC1tZC0xMSwgLmNvbC1tZC0xMiwgLmNvbC1tZCxcbi5jb2wtbWQtYXV0bywgLmNvbC1sZy0xLCAuY29sLWxnLTIsIC5jb2wtbGctMywgLmNvbC1sZy00LCAuY29sLWxnLTUsIC5jb2wtbGctNiwgLmNvbC1sZy03LCAuY29sLWxnLTgsIC5jb2wtbGctOSwgLmNvbC1sZy0xMCwgLmNvbC1sZy0xMSwgLmNvbC1sZy0xMiwgLmNvbC1sZyxcbi5jb2wtbGctYXV0bywgLmNvbC14bC0xLCAuY29sLXhsLTIsIC5jb2wteGwtMywgLmNvbC14bC00LCAuY29sLXhsLTUsIC5jb2wteGwtNiwgLmNvbC14bC03LCAuY29sLXhsLTgsIC5jb2wteGwtOSwgLmNvbC14bC0xMCwgLmNvbC14bC0xMSwgLmNvbC14bC0xMiwgLmNvbC14bCxcbi5jb2wteGwtYXV0byB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuLmdsLXJvdyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgbWFyZ2luLXJpZ2h0OiAtMTVweDtcbiAgbWFyZ2luLWxlZnQ6IC0xNXB4O1xufVxuXG4uZ2wtbm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZ2wtbm8tZ3V0dGVycyA+IC5nbC1jb2wsXG4uZ2wtbm8tZ3V0dGVycyA+IFtjbGFzcyo9Z2wtY29sLV0ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5nbC1jb2wge1xuICBmbGV4LWJhc2lzOiAwO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmdsLXJvdy1jb2xzLTEgPiAqIHtcbiAgZmxleDogMCAwIDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmdsLXJvdy1jb2xzLTIgPiAqIHtcbiAgZmxleDogMCAwIDUwJTtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG5cbi5nbC1yb3ctY29scy0zID4gKiB7XG4gIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLmdsLXJvdy1jb2xzLTQgPiAqIHtcbiAgZmxleDogMCAwIDI1JTtcbiAgbWF4LXdpZHRoOiAyNSU7XG59XG5cbi5nbC1yb3ctY29scy01ID4gKiB7XG4gIGZsZXg6IDAgMCAyMCU7XG4gIG1heC13aWR0aDogMjAlO1xufVxuXG4uZ2wtcm93LWNvbHMtNiA+ICoge1xuICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5nbC1jb2wtYXV0byB7XG4gIGZsZXg6IDAgMCBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uZ2wtY29sLTEge1xuICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gIG1heC13aWR0aDogOC4zMzMzMzMzMyU7XG59XG5cbi5nbC1jb2wtMiB7XG4gIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogMTYuNjY2NjY2NjclO1xufVxuXG4uZ2wtY29sLTMge1xuICBmbGV4OiAwIDAgMjUlO1xuICBtYXgtd2lkdGg6IDI1JTtcbn1cblxuLmdsLWNvbC00IHtcbiAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMyU7XG59XG5cbi5nbC1jb2wtNSB7XG4gIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNDEuNjY2NjY2NjclO1xufVxuXG4uZ2wtY29sLTYge1xuICBmbGV4OiAwIDAgNTAlO1xuICBtYXgtd2lkdGg6IDUwJTtcbn1cblxuLmdsLWNvbC03IHtcbiAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgbWF4LXdpZHRoOiA1OC4zMzMzMzMzMyU7XG59XG5cbi5nbC1jb2wtOCB7XG4gIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gIG1heC13aWR0aDogNjYuNjY2NjY2NjclO1xufVxuXG4uZ2wtY29sLTkge1xuICBmbGV4OiAwIDAgNzUlO1xuICBtYXgtd2lkdGg6IDc1JTtcbn1cblxuLmdsLWNvbC0xMCB7XG4gIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gIG1heC13aWR0aDogODMuMzMzMzMzMzMlO1xufVxuXG4uZ2wtY29sLTExIHtcbiAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgbWF4LXdpZHRoOiA5MS42NjY2NjY2NyU7XG59XG5cbi5nbC1jb2wtMTIge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uZ2wtb3JkZXItZmlyc3Qge1xuICBvcmRlcjogLTE7XG59XG5cbi5nbC1vcmRlci1sYXN0IHtcbiAgb3JkZXI6IDEzO1xufVxuXG4uZ2wtb3JkZXItMCB7XG4gIG9yZGVyOiAwO1xufVxuXG4uZ2wtb3JkZXItMSB7XG4gIG9yZGVyOiAxO1xufVxuXG4uZ2wtb3JkZXItMiB7XG4gIG9yZGVyOiAyO1xufVxuXG4uZ2wtb3JkZXItMyB7XG4gIG9yZGVyOiAzO1xufVxuXG4uZ2wtb3JkZXItNCB7XG4gIG9yZGVyOiA0O1xufVxuXG4uZ2wtb3JkZXItNSB7XG4gIG9yZGVyOiA1O1xufVxuXG4uZ2wtb3JkZXItNiB7XG4gIG9yZGVyOiA2O1xufVxuXG4uZ2wtb3JkZXItNyB7XG4gIG9yZGVyOiA3O1xufVxuXG4uZ2wtb3JkZXItOCB7XG4gIG9yZGVyOiA4O1xufVxuXG4uZ2wtb3JkZXItOSB7XG4gIG9yZGVyOiA5O1xufVxuXG4uZ2wtb3JkZXItMTAge1xuICBvcmRlcjogMTA7XG59XG5cbi5nbC1vcmRlci0xMSB7XG4gIG9yZGVyOiAxMTtcbn1cblxuLmdsLW9yZGVyLTEyIHtcbiAgb3JkZXI6IDEyO1xufVxuXG4uZ2wtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMyU7XG59XG5cbi5nbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG59XG5cbi5nbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5nbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMyU7XG59XG5cbi5nbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG59XG5cbi5nbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5nbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMyU7XG59XG5cbi5nbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG59XG5cbi5nbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5nbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMlO1xufVxuXG4uZ2wtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbn1cblxuQGNvbnRhaW5lciAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1zbSB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1zbS0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1zbS0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMtc20tMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1zbS00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMtc20tNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXJvdy1jb2xzLXNtLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXNtLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXNtLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtc20tMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXNtLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1zbS00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtc20tNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXNtLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1zbS03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtc20tOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXNtLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1zbS0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXNtLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtc20tMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItc20tZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItc20tbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1zbS0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItc20tMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXNtLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1zbS0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItc20tNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXNtLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1zbS02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItc20tNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXNtLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1zbS05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItc20tMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItc20tMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItc20tMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXNtLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtc20tMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtc20tMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXNtLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1zbS00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtc20tNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXNtLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1zbS03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtc20tOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXNtLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1zbS0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXNtLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtc20ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtc20tMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtc20tMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJvdy1jb2xzLXNtLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtc20tNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJvdy1jb2xzLXNtLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yb3ctY29scy1zbS02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1zbS1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1zbS0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXNtLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1zbS0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtc20tNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXNtLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1zbS02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtc20tNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXNtLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1zbS05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtc20tMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1zbS0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXNtLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXNtLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXNtLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItc20tMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXNtLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1zbS0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItc20tMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXNtLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1zbS01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItc20tNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXNtLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1zbS04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItc20tOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXNtLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXNtLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXNtLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1zbS0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXNtLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXNtLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1zbS0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtc20tNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXNtLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1zbS02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtc20tNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXNtLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1zbS05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtc20tMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1zbS0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuQGNvbnRhaW5lciAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1tZCB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1tZC0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1tZC0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMtbWQtMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1tZC00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMtbWQtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXJvdy1jb2xzLW1kLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLW1kLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLW1kLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtbWQtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLW1kLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1tZC00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtbWQtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLW1kLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1tZC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtbWQtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLW1kLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1tZC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLW1kLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtbWQtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbWQtZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbWQtbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1tZC0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbWQtMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLW1kLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1tZC0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbWQtNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLW1kLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1tZC02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbWQtNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLW1kLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1tZC05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbWQtMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbWQtMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbWQtMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LW1kLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtbWQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtbWQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LW1kLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1tZC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtbWQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LW1kLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1tZC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtbWQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LW1kLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1tZC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LW1kLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtbWQge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtbWQtMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtbWQtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJvdy1jb2xzLW1kLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtbWQtNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJvdy1jb2xzLW1kLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yb3ctY29scy1tZC02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1tZC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1tZC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLW1kLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1tZC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtbWQtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLW1kLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1tZC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtbWQtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLW1kLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1tZC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtbWQtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1tZC0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLW1kLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLW1kLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLW1kLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItbWQtMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLW1kLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1tZC0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItbWQtMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLW1kLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1tZC01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItbWQtNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLW1kLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1tZC04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItbWQtOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLW1kLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLW1kLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLW1kLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1tZC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LW1kLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LW1kLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1tZC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtbWQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LW1kLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1tZC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtbWQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LW1kLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1tZC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtbWQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1tZC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuQGNvbnRhaW5lciAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1sZyB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1sZy0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1sZy0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMtbGctMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy1sZy00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMtbGctNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXJvdy1jb2xzLWxnLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLWxnLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLWxnLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtbGctMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLWxnLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1sZy00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtbGctNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLWxnLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1sZy03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtbGctOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLWxnLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC1sZy0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLWxnLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wtbGctMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbGctZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbGctbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1sZy0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbGctMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLWxnLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1sZy0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbGctNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLWxnLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1sZy02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbGctNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLWxnLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci1sZy05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbGctMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbGctMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXItbGctMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LWxnLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtbGctMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtbGctMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LWxnLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1sZy00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtbGctNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LWxnLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1sZy03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQtbGctOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LWxnLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC1sZy0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LWxnLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtbGcge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtbGctMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtbGctMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJvdy1jb2xzLWxnLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMtbGctNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJvdy1jb2xzLWxnLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yb3ctY29scy1sZy02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1sZy1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1sZy0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLWxnLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1sZy0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtbGctNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLWxnLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1sZy02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtbGctNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLWxnLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1sZy05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wtbGctMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC1sZy0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLWxnLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLWxnLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLWxnLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItbGctMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLWxnLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1sZy0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItbGctMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLWxnLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1sZy01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItbGctNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLWxnLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci1sZy04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXItbGctOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLWxnLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLWxnLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLWxnLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1sZy0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LWxnLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LWxnLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1sZy0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtbGctNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LWxnLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1sZy02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtbGctNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LWxnLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1sZy05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQtbGctMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC1sZy0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuQGNvbnRhaW5lciAod2lkdGggPj0gMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wteGwge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMteGwtMSA+ICoge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMteGwtMiA+ICoge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXJvdy1jb2xzLXhsLTMgPiAqIHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtcm93LWNvbHMteGwtNCA+ICoge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLXJvdy1jb2xzLXhsLTUgPiAqIHtcbiAgICBmbGV4OiAwIDAgMjAlO1xuICAgIG1heC13aWR0aDogMjAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1yb3ctY29scy14bC02ID4gKiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC14bC1hdXRvIHtcbiAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC14bC0xIHtcbiAgICBmbGV4OiAwIDAgOC4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXhsLTIge1xuICAgIGZsZXg6IDAgMCAxNi42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC14bC0zIHtcbiAgICBmbGV4OiAwIDAgMjUlO1xuICAgIG1heC13aWR0aDogMjUlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wteGwtNCB7XG4gICAgZmxleDogMCAwIDMzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXhsLTUge1xuICAgIGZsZXg6IDAgMCA0MS42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC14bC02IHtcbiAgICBmbGV4OiAwIDAgNTAlO1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wteGwtNyB7XG4gICAgZmxleDogMCAwIDU4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXhsLTgge1xuICAgIGZsZXg6IDAgMCA2Ni42NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC14bC05IHtcbiAgICBmbGV4OiAwIDAgNzUlO1xuICAgIG1heC13aWR0aDogNzUlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1jb2wteGwtMTAge1xuICAgIGZsZXg6IDAgMCA4My4zMzMzMzMzMyU7XG4gICAgbWF4LXdpZHRoOiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWNvbC14bC0xMSB7XG4gICAgZmxleDogMCAwIDkxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDkxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtY29sLXhsLTEyIHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXhsLWZpcnN0IHtcbiAgICBvcmRlcjogLTE7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXhsLWxhc3Qge1xuICAgIG9yZGVyOiAxMztcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXIteGwtMCB7XG4gICAgb3JkZXI6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXhsLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci14bC0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXIteGwtMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXhsLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci14bC01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXIteGwtNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXhsLTcge1xuICAgIG9yZGVyOiA3O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vcmRlci14bC04IHtcbiAgICBvcmRlcjogODtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb3JkZXIteGwtOSB7XG4gICAgb3JkZXI6IDk7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXhsLTEwIHtcbiAgICBvcmRlcjogMTA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXhsLTExIHtcbiAgICBvcmRlcjogMTE7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9yZGVyLXhsLTEyIHtcbiAgICBvcmRlcjogMTI7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC14bC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXhsLTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXhsLTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC14bC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQteGwtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXhsLTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC14bC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQteGwtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtb2Zmc2V0LXhsLTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC14bC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1vZmZzZXQteGwtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMyU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLW9mZnNldC14bC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY3JTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSAxMjAwcHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC14bCB7XG4gICAgZmxleC1iYXNpczogMDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yb3ctY29scy14bC0xID4gKiB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yb3ctY29scy14bC0yID4gKiB7XG4gICAgZmxleDogMCAwIDUwJTtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMteGwtMyA+ICoge1xuICAgIGZsZXg6IDAgMCAzMy4zMzMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1yb3ctY29scy14bC00ID4gKiB7XG4gICAgZmxleDogMCAwIDI1JTtcbiAgICBtYXgtd2lkdGg6IDI1JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtcm93LWNvbHMteGwtNSA+ICoge1xuICAgIGZsZXg6IDAgMCAyMCU7XG4gICAgbWF4LXdpZHRoOiAyMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLXJvdy1jb2xzLXhsLTYgPiAqIHtcbiAgICBmbGV4OiAwIDAgMTYuNjY2NjY2NjY2NyU7XG4gICAgbWF4LXdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXhsLWF1dG8ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXhsLTEge1xuICAgIGZsZXg6IDAgMCA4LjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wteGwtMiB7XG4gICAgZmxleDogMCAwIDE2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXhsLTMge1xuICAgIGZsZXg6IDAgMCAyNSU7XG4gICAgbWF4LXdpZHRoOiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC14bC00IHtcbiAgICBmbGV4OiAwIDAgMzMuMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wteGwtNSB7XG4gICAgZmxleDogMCAwIDQxLjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXhsLTYge1xuICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC14bC03IHtcbiAgICBmbGV4OiAwIDAgNTguMzMzMzMzMzMlO1xuICAgIG1heC13aWR0aDogNTguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wteGwtOCB7XG4gICAgZmxleDogMCAwIDY2LjY2NjY2NjY3JTtcbiAgICBtYXgtd2lkdGg6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXhsLTkge1xuICAgIGZsZXg6IDAgMCA3NSU7XG4gICAgbWF4LXdpZHRoOiA3NSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWNvbC14bC0xMCB7XG4gICAgZmxleDogMCAwIDgzLjMzMzMzMzMzJTtcbiAgICBtYXgtd2lkdGg6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtY29sLXhsLTExIHtcbiAgICBmbGV4OiAwIDAgOTEuNjY2NjY2NjclO1xuICAgIG1heC13aWR0aDogOTEuNjY2NjY2NjclO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1jb2wteGwtMTIge1xuICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXIteGwtZmlyc3Qge1xuICAgIG9yZGVyOiAtMTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXIteGwtbGFzdCB7XG4gICAgb3JkZXI6IDEzO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci14bC0wIHtcbiAgICBvcmRlcjogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXIteGwtMSB7XG4gICAgb3JkZXI6IDE7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXhsLTIge1xuICAgIG9yZGVyOiAyO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci14bC0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXIteGwtNCB7XG4gICAgb3JkZXI6IDQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXhsLTUge1xuICAgIG9yZGVyOiA1O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci14bC02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXIteGwtNyB7XG4gICAgb3JkZXI6IDc7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9yZGVyLXhsLTgge1xuICAgIG9yZGVyOiA4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vcmRlci14bC05IHtcbiAgICBvcmRlcjogOTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXIteGwtMTAge1xuICAgIG9yZGVyOiAxMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXIteGwtMTEge1xuICAgIG9yZGVyOiAxMTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb3JkZXIteGwtMTIge1xuICAgIG9yZGVyOiAxMjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXhsLTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQteGwtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQteGwtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXhsLTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC14bC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQteGwtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXhsLTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC14bC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1vZmZzZXQteGwtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY3JTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXhsLTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLW9mZnNldC14bC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtb2Zmc2V0LXhsLTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjclO1xuICB9XG59XG4uc3VnZ2VzdC1jb2xvcnMge1xuICBwYWRkaW5nLXRvcDogM3B4O1xufVxuLnN1Z2dlc3QtY29sb3JzIGEge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHdpZHRoOiAzMHB4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uc3VnZ2VzdC1jb2xvcnMgYTpmb2N1cy12aXNpYmxlLCAuc3VnZ2VzdC1jb2xvcnMgYTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLnN1Z2dlc3QtY29sb3JzLnN1Z2dlc3QtY29sb3JzLWRyb3Bkb3duIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cbi5zdWdnZXN0LWNvbG9ycy5zdWdnZXN0LWNvbG9ycy1kcm9wZG93biBhIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IC01cHg7XG59XG4uc3VnZ2VzdC1jb2xvcnMuc3VnZ2VzdC1jb2xvcnMtZHJvcGRvd24gYTpmaXJzdC1vZi10eXBlIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMC4yNXJlbTtcbn1cbi5zdWdnZXN0LWNvbG9ycy5zdWdnZXN0LWNvbG9ycy1kcm9wZG93biBhOm50aC1vZi10eXBlKDcpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDAuMjVyZW07XG59XG4uc3VnZ2VzdC1jb2xvcnMuc3VnZ2VzdC1jb2xvcnMtZHJvcGRvd24gYTpudGgtbGFzdC1jaGlsZCg3KSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDAuMjVyZW07XG59XG4uc3VnZ2VzdC1jb2xvcnMuc3VnZ2VzdC1jb2xvcnMtZHJvcGRvd24gYTpsYXN0LW9mLXR5cGUge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMC4yNXJlbTtcbn1cblxuLmJyYW5jaC1pbmZvIC5jb21taXQtaWNvbiBzdmcge1xuICB0b3A6IDNweDtcbn1cblxuLypcbiAqIENvbW1pdCBtZXNzYWdlIHRleHRhcmVhIGZvciB3ZWIgZWRpdG9yIGFuZFxuICogY3VzdG9tIG1lcmdlIHJlcXVlc3QgbWVzc2FnZVxuICovXG4uY29tbWl0LW1lc3NhZ2UtY29udGFpbmVyIHtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWRlZmF1bHQtbW9uby1mb250LCBcIkdpdExhYiBNb25vXCIpLCBcIkpldEJyYWlucyBNb25vXCIsIFwiTWVubG9cIiwgXCJEZWphVnUgU2FucyBNb25vXCIsIFwiTGliZXJhdGlvbiBNb25vXCIsIFwiQ29uc29sYXNcIiwgXCJVYnVudHUgTW9ub1wiLCBcIkNvdXJpZXIgTmV3XCIsIFwiYW5kYWxlIG1vbm9cIiwgXCJsdWNpZGEgY29uc29sZVwiLCBtb25vc3BhY2U7XG59XG4uY29tbWl0LW1lc3NhZ2UtY29udGFpbmVyIC5tYXgtd2lkdGgtbWFya2VyIHtcbiAgd2lkdGg6IDcyY2g7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDApO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgbGVmdDogMTJweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2IoMjM3LjUsIDIzNywgMjM2KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xufVxuLmNvbW1pdC1tZXNzYWdlLWNvbnRhaW5lciB0ZXh0YXJlYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cblxuLmNvbW1pdC1yb3ctdGl0bGUgLnN0ci10cnVuY2F0ZWQge1xuICBtYXgtd2lkdGg6IDcwJTtcbn1cblxuLmNvbW1pdC1jb250ZW50IHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbWluLXdpZHRoOiAwO1xufVxuLmNvbW1pdC1jb250ZW50IC5jb21taXQtdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmNvbW1pdC1jb250ZW50IC5jb21taXR0ZXIge1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG4uY29tbWl0LWNvbnRlbnQgLmNvbW1pdHRlciAuY29tbWl0LWF1dGhvci1saW5rIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cbi5jb21taXQtY29udGVudCAuY29tbWl0dGVyLmdsLWlubGluZS1mbGV4IHtcbiAgZ2FwOiAwLjVjaDtcbn1cbi5jb21taXQtY29udGVudCAuY29tbWl0dGVyIC5jb21taXQtYXV0aG9yLWxpbmsge1xuICBtYXgtd2lkdGg6IDE5Y2g7XG59XG5cbi5jb21taXQtbmF2LWJ1dHRvbnMge1xuICBtYXJnaW46IDAgMC41cmVtO1xufVxuLmNvbW1pdC1uYXYtYnV0dG9ucyBhLmJ0bjpsYXN0LWNoaWxkID4gc3ZnLFxuLmNvbW1pdC1uYXYtYnV0dG9ucyBidXR0b246bGFzdC1jaGlsZCA+IHN2ZyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5jb21taXQgYSxcbi5nZW5lcmljLWNvbW1pdC1zdGF0dXMgYSB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG4uY29tbWl0IC5jb21taXQtcm93LWRlc2NyaXB0aW9uLFxuLmdlbmVyaWMtY29tbWl0LXN0YXR1cyAuY29tbWl0LXJvdy1kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGZsZXg6IDE7XG59XG4uY29tbWl0IC5jb21taXQtcm93LWRlc2NyaXB0aW9uIGEsXG4uZ2VuZXJpYy1jb21taXQtc3RhdHVzIC5jb21taXQtcm93LWRlc2NyaXB0aW9uIGEge1xuICBjb2xvcjogIzI1NjZiNTtcbn1cbi5jb21taXQuaW5saW5lLWNvbW1pdCAuY29tbWl0LXJvdy10aXRsZSxcbi5nZW5lcmljLWNvbW1pdC1zdGF0dXMuaW5saW5lLWNvbW1pdCAuY29tbWl0LXJvdy10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbn1cblxuLmJyYW5jaC1jb21taXQgLmNvbW1pdC1pY29uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4uYnJhbmNoLWNvbW1pdCAuY29tbWl0LWljb24gc3ZnIHtcbiAgaGVpZ2h0OiAxNHB4O1xuICB3aWR0aDogMTRweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgQGFwcGx5IGdsLWZpbGwtaWNvbi1zdWJ0bGU7XG59XG5cbi5jb21taXQgLmNvbW1pdC1zaGEsXG4uZ2VuZXJpYy1jb21taXQtc3RhdHVzIC5jb21taXQtc2hhLFxuLmJyYW5jaC1jb21taXQgLmNvbW1pdC1zaGEge1xuICBAYXBwbHkgZ2wtdGV4dC1saW5rO1xufVxuXG4uc2lnbmF0dXJlLWJhZGdlOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmhlYWRlci1tYWluLWNvbnRlbnQgLnNpZ25hdHVyZS1iYWRnZSB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cblxuLmdwZy1wb3BvdmVyLWNlcnRpZmljYXRlLWRldGFpbHMgdWwge1xuICBwYWRkaW5nLWxlZnQ6IDE2cHg7XG59XG4uZ3BnLXBvcG92ZXItY2VydGlmaWNhdGUtZGV0YWlscyBsaS51bnN0eWxlZCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLnNpZ25hdHVyZS1wb3BvdmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLyoqXG4gKiBEYXNoYm9hcmQgZXZlbnRzIGZlZWRcbiAqXG4gKi9cbi5ldmVudC1pdGVtIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwYWRkaW5nOiAxNnB4IDAgMTZweCAyLjVyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWNlYmVhO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDIwcHg7XG59XG4uZXZlbnQtaXRlbSAuc3lzdGVtLW5vdGUtaW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG59XG4uZXZlbnQtaXRlbSAuc3lzdGVtLW5vdGUtaW1hZ2Ugc3ZnIHtcbiAgQGFwcGx5IGdsLWZpbGwtaWNvbi1zdWJ0bGU7XG59XG4uZXZlbnQtaXRlbSAuc3lzdGVtLW5vdGUtaW1hZ2UtaW5saW5lIHN2ZyB7XG4gIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xufVxuLmV2ZW50LWl0ZW0gLnN5c3RlbS1ub3RlLWltYWdlLm9wZW5lZC1pY29uIHN2ZywgLmV2ZW50LWl0ZW0gLnN5c3RlbS1ub3RlLWltYWdlLmNyZWF0ZWQtaWNvbiBzdmcsIC5ldmVudC1pdGVtIC5zeXN0ZW0tbm90ZS1pbWFnZS50cmFuc2ZlcnJlZC1pY29uIHN2Zyxcbi5ldmVudC1pdGVtIC5zeXN0ZW0tbm90ZS1pbWFnZS1pbmxpbmUub3BlbmVkLWljb24gc3ZnLFxuLmV2ZW50LWl0ZW0gLnN5c3RlbS1ub3RlLWltYWdlLWlubGluZS5jcmVhdGVkLWljb24gc3ZnLFxuLmV2ZW50LWl0ZW0gLnN5c3RlbS1ub3RlLWltYWdlLWlubGluZS50cmFuc2ZlcnJlZC1pY29uIHN2ZyB7XG4gIEBhcHBseSBnbC1maWxsLXN0YXR1cy1zdWNjZXNzO1xufVxuLmV2ZW50LWl0ZW0gLnN5c3RlbS1ub3RlLWltYWdlLmNsb3NlZC1pY29uIHN2Zyxcbi5ldmVudC1pdGVtIC5zeXN0ZW0tbm90ZS1pbWFnZS1pbmxpbmUuY2xvc2VkLWljb24gc3ZnIHtcbiAgQGFwcGx5IGdsLWZpbGwtc3RhdHVzLWRhbmdlcjtcbn1cbi5ldmVudC1pdGVtIC5zeXN0ZW0tbm90ZS1pbWFnZS5hY2NlcHRlZC1pY29uIHN2ZywgLmV2ZW50LWl0ZW0gLnN5c3RlbS1ub3RlLWltYWdlLmNvbW1lbnRlZC1vbi1pY29uIHN2Zyxcbi5ldmVudC1pdGVtIC5zeXN0ZW0tbm90ZS1pbWFnZS1pbmxpbmUuYWNjZXB0ZWQtaWNvbiBzdmcsXG4uZXZlbnQtaXRlbSAuc3lzdGVtLW5vdGUtaW1hZ2UtaW5saW5lLmNvbW1lbnRlZC1vbi1pY29uIHN2ZyB7XG4gIEBhcHBseSBnbC1maWxsLXN0YXR1cy1pbmZvO1xufVxuLmV2ZW50LWl0ZW0gLmV2ZW50LXVzZXItaW5mbyB7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbn1cbi5ldmVudC1pdGVtIC5ldmVudC11c2VyLWluZm8gLmF1dGhvci1uYW1lIGEge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLmV2ZW50LWl0ZW0gLmV2ZW50LXRpdGxlIHtcbiAgQGFwcGx5IGdsLXdyYXAtYW55d2hlcmU7XG59XG4uZXZlbnQtaXRlbSAuZXZlbnQtdGl0bGUgLmV2ZW50LXRpdGxlLWJsb2NrOjpmaXJzdC1sZXR0ZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbi5ldmVudC1pdGVtIC5ldmVudC1ib2R5IHtcbiAgbWFyZ2luLXRvcDogNHB4O1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuLmV2ZW50LWl0ZW0gLmV2ZW50LWJvZHkgLmV2ZW50LW5vdGUge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG4uZXZlbnQtaXRlbSAuZXZlbnQtYm9keSAuZXZlbnQtbm90ZSAubWQge1xuICBmb250LXNpemU6IDE0cHg7XG59XG4uZXZlbnQtaXRlbSAuZXZlbnQtYm9keSAuZXZlbnQtbm90ZSBjb2RlIHtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuLmV2ZW50LWl0ZW0gLmV2ZW50LWJvZHkgLmV2ZW50LW5vdGUgcHJlIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZXZlbnQtaXRlbSAuZXZlbnQtYm9keSAuZXZlbnQtbm90ZSAubm90ZS1pbWFnZS1hdHRhY2gge1xuICBtYXJnaW4tdG9wOiA0cHg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICBmbG9hdDogbm9uZTtcbn1cbi5ldmVudC1pdGVtIC5ldmVudC1ib2R5IC5ldmVudC1ub3RlIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZXZlbnQtaXRlbTpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyOiAwO1xufVxuLmV2ZW50LWl0ZW0gLmV2ZW50LWNvbW1pdHMgbGkuY29tbWl0IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cbi5ldmVudC1pdGVtIC5ldmVudC1jb21taXRzIGxpLmNvbW1pdCAuY29tbWl0LXJvdy10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cbi5ldmVudC1pdGVtIC5ldmVudC1jb21taXRzIGxpLmNvbW1pdHMtc3RhdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwIDNweCAwIDA7XG59XG4uZXZlbnQtaXRlbSAuZXZlbnQtY29tbWl0cyBsaS5jb21taXRzLXN0YXQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLmV2ZW50LWl0ZW0gLmV2ZW50LWNvbW1pdHMgbGkuY29tbWl0cy1zdGF0IGEge1xuICBAYXBwbHkgZ2wtdGV4dC1saW5rO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmV2ZW50LWl0ZW0gLmV2ZW50LWl0ZW0tdGltZXN0YW1wIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmV2ZW50LWl0ZW0gLmV2ZW50LWl0ZW0tdGltZXN0YW1wIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuLnByb2plY3QtYWN0aXZpdHkgLmV2ZW50LXNjb3BlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByb2plY3QtYWN0aXZpdHktaXRlbTpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ucHJvamVjdC1hY3Rpdml0eS1pdGVtOm5vdCg6bGFzdC1vZi10eXBlKTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMnB4O1xuICBsZWZ0OiAxNXB4O1xuICB0b3A6IDBweDtcbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAwcHgpO1xuICB0b3A6IGF1dG87XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG59XG5cbi5kYXNoYm9hcmQgLnNpZGUgLmNhcmQgLmNhcmQtaGVhZGVyIC5pbnB1dC1ncm91cCAuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiA0MnB4O1xufVxuXG4uZ3JvdXBzLWxpc3Qge1xuICBtYXJnaW46IDVweCAwO1xuICBwYWRkaW5nOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmdyb3Vwcy1saXN0ID4gbGk6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBjb250ZW50OiBcIlwiO1xufVxuLmdyb3Vwcy1saXN0ID4gbGkge1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbn1cbi5ncm91cHMtbGlzdCA+IGxpOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuLmdyb3Vwcy1saXN0ID4gbGkuYWN0aXZlIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbn1cbi5ncm91cHMtbGlzdCA+IGxpLmFjdGl2ZSBhIHtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbn1cbi5ncm91cHMtbGlzdCA+IGxpLmhpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmdyb3Vwcy1saXN0ID4gbGkubGlnaHQgYSB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5ncm91cC1yb290LXBhdGgge1xuICBtYXgtd2lkdGg6IDQwdnc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3b3JkLXdyYXA6IG5vd3JhcDtcbn1cblxuLmdyb3VwLXJvdyAuZGVzY3JpcHRpb24gcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cblxuLnNhdmUtZ3JvdXAtbG9hZGVyIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuXG4uaXNzdWUtdG9rZW4tbGlua1tocmVmXSB7XG4gIGNvbG9yOiAjMjU2NmI1O1xufVxuLmlzc3VlLXRva2VuLWxpbms6aG92ZXIsIC5pc3N1ZS10b2tlbi1saW5rOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5pc3N1ZS10b2tlbi1yZWZlcmVuY2Uge1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAxMDBtcyBsaW5lYXIsIGNvbG9yIDEwMG1zIGxpbmVhcjtcbn1cbi5pc3N1ZS10b2tlbjpob3ZlciAuaXNzdWUtdG9rZW4tcmVmZXJlbmNlLCAuaXNzdWUtdG9rZW4tbGluazpmb2N1cy12aXNpYmxlID4gLmlzc3VlLXRva2VuLXJlZmVyZW5jZSB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIGNvbG9yOiAjMjU0NTgxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5pc3N1ZS10b2tlbi10aXRsZSB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMTAwbXMgbGluZWFyO1xufVxuLmlzc3VlLXRva2VuOmhvdmVyIC5pc3N1ZS10b2tlbi10aXRsZSwgLmlzc3VlLXRva2VuLWxpbms6Zm9jdXMtdmlzaWJsZSA+IC5pc3N1ZS10b2tlbi10aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkY2RiZDk7XG59XG5cbi5pc3N1ZS10b2tlbi1yZW1vdmUtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAxMDBtcyBsaW5lYXI7XG59XG4uaXNzdWUtdG9rZW4tcmVtb3ZlLWJ1dHRvbjpob3ZlciwgLmlzc3VlLXRva2VuLXJlbW92ZS1idXR0b246Zm9jdXMtdmlzaWJsZSwgLmlzc3VlLXRva2VuOmhvdmVyIC5pc3N1ZS10b2tlbi1yZW1vdmUtYnV0dG9uLCAuaXNzdWUtdG9rZW4tbGluazpmb2N1cy12aXNpYmxlICsgLmlzc3VlLXRva2VuLXJlbW92ZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGNkYmQ5O1xuICBvdXRsaW5lOiBub25lO1xufVxuXG4uaXNzdWUtcmVhbHRpbWUtcHJlLXB1bHNlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmlzc3VlLXJlYWx0aW1lLXRyaWdnZXItcHVsc2Uge1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zIGxpbmVhcjtcbiAgb3BhY2l0eTogMTtcbn1cblxudWwucmVsYXRlZC1tZXJnZS1yZXF1ZXN0cyA+IGxpIGdsLWVtb2ppIHtcbiAgZm9udC1zaXplOiAxZW07XG59XG5cbi5tZXJnZS1yZXF1ZXN0LXN0YXR1cy5tZXJnZWQge1xuICBjb2xvcjogIzFmNzNjYTtcbn1cbi5tZXJnZS1yZXF1ZXN0LXN0YXR1cy5jbG9zZWQge1xuICBAYXBwbHkgZ2wtdGV4dC1kYW5nZXI7XG59XG4ubWVyZ2UtcmVxdWVzdC1zdGF0dXMub3BlbiB7XG4gIEBhcHBseSBnbC10ZXh0LXN1Y2Nlc3M7XG59XG5cbi5tZXJnZS1yZXF1ZXN0LmNsb3NlZCwgLm1lcmdlLXJlcXVlc3QubWVyZ2VkLFxuLmlzc3VlLmNsb3NlZCxcbi5pc3N1ZS5tZXJnZWQge1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xufVxuXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kZXRhaWwtcGFnZS1oZWFkZXIgLmlzc3VhYmxlLW1ldGEge1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRldGFpbC1wYWdlLWhlYWRlciAuaXNzdWFibGUtbWV0YSB7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIH1cbn1cbi5yZWNhcHRjaGEge1xuICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4ubmV3LWJyYW5jaC1jb2wgLmRpc2N1c3Npb24tZmlsdGVyLWNvbnRhaW5lcjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5uZXctYnJhbmNoLWNvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLm5ldy1icmFuY2gtY29sID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5uZXctYnJhbmNoLWNvbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLm5ldy1icmFuY2gtY29sID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxufVxuXG4uY3JlYXRlLW1yLWRyb3Bkb3duLXdyYXAgLnJlZjo6c2VsZWN0aW9uIHtcbiAgY29sb3I6ICM4YTg4ODg7XG59XG4uY3JlYXRlLW1yLWRyb3Bkb3duLXdyYXAgLmRyb3Bkb3duIC5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gIG1pbi13aWR0aDogMjg1cHg7XG59XG4uY3JlYXRlLW1yLWRyb3Bkb3duLXdyYXAgLmRyb3Bkb3duIC5kcm9wZG93bi1zZWxlY3Qge1xuICB3aWR0aDogMjg1cHg7XG59XG4uY3JlYXRlLW1yLWRyb3Bkb3duLXdyYXAgLmJ0bi1ncm91cDpub3QoLmhpZGRlbikge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY3JlYXRlLW1yLWRyb3Bkb3duLXdyYXAgLmJ0bi1ncm91cDpub3QoLmhpZGRlbikgLmJ0bi5idG4tY29uZmlybSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5jcmVhdGUtbXItZHJvcGRvd24td3JhcCAuYnRuLWdyb3VwOm5vdCguaGlkZGVuKSAuYnRuLmJ0bi1jb25maXJtLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgZmxleC1ncm93OiAwO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNyZWF0ZS1tci1kcm9wZG93bi13cmFwIC5idG4tZ3JvdXA6bm90KC5oaWRkZW4pIC5idG4uYnRuLWNvbmZpcm0ge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY3JlYXRlLW1yLWRyb3Bkb3duLXdyYXAgLmJ0bi1ncm91cDpub3QoLmhpZGRlbikgLmJ0bi5idG4tY29uZmlybS5kcm9wZG93bi10b2dnbGUge1xuICAgIGZsZXgtZ3JvdzogMDtcbiAgfVxufVxuLmNyZWF0ZS1tci1kcm9wZG93bi13cmFwIC5qcy1jcmVhdGUtbWVyZ2UtcmVxdWVzdCB7XG4gIGZsZXgtZ3JvdzogMTtcbiAgZmxleC1zaHJpbms6IDA7XG59XG4uY3JlYXRlLW1yLWRyb3Bkb3duLXdyYXAgLmNyZWF0ZS1tZXJnZS1yZXF1ZXN0LWRyb3Bkb3duLW1lbnUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDRweDtcbn1cblxuLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyLFxuLm5vdGUtZWRpdC1mb3JtIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5lbW9qaS1ibG9jayAucm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5lbW9qaS1ibG9jayAucm93IC5uZXctYnJhbmNoLWNvbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgYWxpZ24tc2VsZjogZmxleC1lbmQ7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNyZWF0ZS1tci1kcm9wZG93bi13cmFwIC5idG4tZ3JvdXA6bm90KC5oaWRkZW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZW1vamktYmxvY2sgLnJvdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZW1vamktYmxvY2sgLnJvdyAubmV3LWJyYW5jaC1jb2wge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5jcmVhdGUtbXItZHJvcGRvd24td3JhcCAuYnRuLWdyb3VwOm5vdCguaGlkZGVuKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5uZXctYnJhbmNoLWNvbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLm5ldy1icmFuY2gtY29sIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuLmlzc3VlLXN0aWNreS1oZWFkZXIge1xuICBsZWZ0OiAwO1xuICByaWdodDogdmFyKC0tYXBwbGljYXRpb24tYmFyLXJpZ2h0KTtcbiAgd2lkdGg6IGF1dG87XG4gIHRvcDogMDtcbn1cbi5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCAuaXNzdWUtc3RpY2t5LWhlYWRlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDYycHg7XG59XG4ucmlnaHQtc2lkZWJhci1leHBhbmRlZCAuaXNzdWUtc3RpY2t5LWhlYWRlciB7XG4gIHBhZGRpbmctcmlnaHQ6IDI5MHB4O1xufVxuXG4ubGltaXQtY29udGFpbmVyLXdpZHRoIC5pc3N1ZS1zdGlja3ktaGVhZGVyLXRleHQge1xuICBtYXgtd2lkdGg6IDEwMDZweDtcbn1cblxuLmlzc3VlLXN0aWNreS1oZWFkZXItdGV4dCB7XG4gIHBhZGRpbmc6IDAgdmFyKC0tY29udGFpbmVyLXBhZGRpbmcteCk7XG59XG5cbi5pc3N1YWJsZS1oZWFkZXItc2xpZGUtZW50ZXItYWN0aXZlLFxuLmlzc3VhYmxlLWhlYWRlci1zbGlkZS1sZWF2ZS1hY3RpdmUge1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi1hbGw7XG59XG5cbi5pc3N1YWJsZS1oZWFkZXItc2xpZGUtZW50ZXIsXG4uaXNzdWFibGUtaGVhZGVyLXNsaWRlLWxlYXZlLXRvIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLmlzc3VhYmxlLXN0aWNreS1oZWFkZXItdmlzaWJsZSB7XG4gIC0taXNzdWFibGUtc3RpY2t5LWhlYWRlci1oZWlnaHQ6IDQwcHg7XG59XG5cbi5tZC1oZWFkZXItcHJldmlldyB7XG4gIHotaW5kZXg6IDE7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogY2FsYyhjYWxjKGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSkgKyB2YXIoLS10b3AtYmFyLWhlaWdodCkpICsgdmFyKC0tbGF5b3V0LXN0aWNreS1oZWFkZXItaGVpZ2h0LCAwcHgpICsgdmFyKC0taXNzdWFibGUtc3RpY2t5LWhlYWRlci1oZWlnaHQsIDBweCkgLSAycHgpO1xuICBtYXJnaW4tbGVmdDogMXB4O1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbn1cblxuLmRldGFpbC1wYWdlLWRlc2NyaXB0aW9uIC5tZC1oZWFkZXIge1xuICB0b3A6IGNhbGMoY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSk7XG59XG5cbi5nbC1kcmF3ZXIgLm1kLWhlYWRlciB7XG4gIHRvcDogMDtcbn1cblxuLmdsLW1vZGFsIC5tZC1oZWFkZXIge1xuICB0b3A6IC04cHg7XG59XG5cbi53b3JrLWl0ZW0tZGV0YWlsOm5vdCg6aGFzKC5pc3N1ZS1zdGlja3ktaGVhZGVyKSkgLm1kLWhlYWRlciB7XG4gIHRvcDogMDtcbn1cblxuLyoqXG4gKiBOb3RlIEZvcm1cbiAqL1xuLmRpZmYtZmlsZSAubmV3LW5vdGUsXG4uZGlzY3Vzc2lvbiAubmV3LW5vdGUge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLm5ldy1ub3RlIC5ub3RlLWZvcm0tYWN0aW9ucyxcbi5ub3RlLWVkaXQtZm9ybSAubm90ZS1mb3JtLWFjdGlvbnMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMTZweCAwIDA7XG59XG4ubmV3LW5vdGUgaW1nLFxuLm5vdGUtZWRpdC1mb3JtIGltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm5vdGUtdGV4dGFyZWEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweCAxNnB4O1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQsIFwiR2l0TGFiIFNhbnNcIiksIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiTm90byBTYW5zXCIsIFVidW50dSwgQ2FudGFyZWxsLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbiAgYm9yZGVyOiAwO1xufVxuLm5vdGUtdGV4dGFyZWE6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5nZm0tZm9ybSAubm90ZS10ZXh0YXJlYSwgLm1kIC5Qcm9zZU1pcnJvciB7XG4gIG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcbiAgcmVzaXplOiB2ZXJ0aWNhbCAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiA3MHZoICFpbXBvcnRhbnQ7XG59XG5cbi5ub3RlLWltYWdlLWF0dGFjaCB7XG4gIG1hcmdpbi1sZWZ0OiA0NXB4O1xuICBmbG9hdDogbm9uZTtcbn1cblxuLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWEtd3JhcHBlciB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xufVxuLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWEge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1sZztcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IDAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IDAuMTVzO1xufVxuLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWEuaXMtZHJvcHpvbmUtaG92ZXIge1xuICBib3JkZXItY29sb3I6ICMwZDgwNzA7XG4gIGJveC1zaGFkb3c6IDAgMCAycHggdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yNCksIDAgMCA0cHggcmdiYSgxMywgMTI4LCAxMTIsIDAuNCk7XG59XG4uY29tbW9uLW5vdGUtZm9ybSAubWQtYXJlYS5pcy1kcm9wem9uZS1ob3ZlciAuY29tbWVudC10b29sYmFyLFxuLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWEuaXMtZHJvcHpvbmUtaG92ZXIgLm5hdi1saW5rcyB7XG4gIGJvcmRlci1jb2xvcjogIzBkODA3MDtcbn1cbi5jb21tb24tbm90ZS1mb3JtIC5tZC1hcmVhOmhvdmVyLCAuY29tbW9uLW5vdGUtZm9ybSAubWQtYXJlYTpmb2N1cy13aXRoaW4ge1xuICBAYXBwbHkgZ2wtc2hhZG93LW1kO1xufVxuLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWE6aG92ZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzQ3MjczO1xufVxuLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWE6Zm9jdXMtd2l0aGluIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzI4MjcyZDtcbn1cbi5jb21tb24tbm90ZS1mb3JtIC5tZC1hcmVhIC56ZW4tYmFja2Ryb3A6bm90KC5mdWxsc2NyZWVuKSB0ZXh0YXJlYSB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0cHgpO1xuICBtYXJnaW46IDJweDtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDFyZW0gLSAycHgpO1xufVxuLmdsLWRhcmsgLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWEgLnplbi1iYWNrZHJvcDpub3QoLmZ1bGxzY3JlZW4pIHRleHRhcmVhIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDZweCk7XG4gIG1hcmdpbjogMnB4IDNweDtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKDFyZW0gLSAzcHgpO1xufVxuLmdsLWRhcmsgLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWEgLnplbi1iYWNrZHJvcDpub3QoLmZ1bGxzY3JlZW4pIHRleHRhcmVhLm5vdGUtdGV4dGFyZWEtcm91bmRlZC1ib3R0b20ge1xuICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWItYmFzZTtcbn1cbi5jb21tb24tbm90ZS1mb3JtIC5tZC1hcmVhIC56ZW4tYmFja2Ryb3A6bm90KC5mdWxsc2NyZWVuKSB0ZXh0YXJlYTpmb2N1cy12aXNpYmxlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLmNvbW1vbi1ub3RlLWZvcm0gLm1kLWFyZWEgLm5vdGUtdGV4dGFyZWEtcm91bmRlZC1ib3R0b20ge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKDhweCAtIDNweCk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKDhweCAtIDNweCk7XG59XG4uY29tbW9uLW5vdGUtZm9ybS5pcy1pbnZhbGlkIC5tZC1hcmVhIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1yZWQtNTAwLCAjZGUxZDRiKTtcbn1cblxuLm1kLWhlYWRlciB7XG4gIG1pbi1oZWlnaHQ6IDMycHg7XG59XG5cbi5tZC1oZWFkZXIgLm5hdi1saW5rcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1kLWhlYWRlciAubmF2LWxpbmtzIC5nbC1mbG9hdC1yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4ubWQtaGVhZGVyIC5nbC10YWJzLW5hdiB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5pc3N1YWJsZS1ub3RlLXdhcm5pbmcge1xuICBjb2xvcjogI2IzNDAxMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZjBkNTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdC1sZztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYi1ub25lO1xuICBwYWRkaW5nOiAzcHggMTJweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmlzc3VhYmxlLW5vdGUtd2FybmluZyBhIHtcbiAgY29sb3I6ICNiMzQwMTM7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmlzc3VhYmxlLW5vdGUtd2FybmluZyAuaWNvbiB7XG4gIG1hcmdpbi1yaWdodDogNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gIGZpbGw6ICNiMzQwMTM7XG59XG4uaXNzdWFibGUtbm90ZS13YXJuaW5nICsgLm1kLWFyZWEge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQtMDtcbn1cbi5pc3N1YWJsZS1ub3RlLXdhcm5pbmcgLmRpc2FibGVkLWNvbW1lbnQge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBwYWRkaW5nLXRvcDogNnB4O1xuICBwYWRkaW5nLWJvdHRvbTogNnB4O1xufVxuXG4uc2lkZWJhci1pdGVtLWljb24ge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xuICBtYXJnaW46IDAgNXB4IDAgMDtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xufVxuLnNpZGViYXItaXRlbS1pY29uLmlzLWFjdGl2ZSB7XG4gIGZpbGw6ICNiMzQwMTM7XG59XG4uc2lkZWJhci1jb2xsYXBzZWQtaWNvbiAuc2lkZWJhci1pdGVtLWljb24ge1xuICBtYXJnaW46IDA7XG59XG4uc2lkZWJhci1pdGVtLXZhbHVlIC5zaWRlYmFyLWl0ZW0taWNvbiB7XG4gIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xufVxuXG4uc2lkZWJhci1pdGVtLXdhcm5pbmctbWVzc2FnZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBhZGRpbmc6IDE2cHg7XG59XG4uc2lkZWJhci1pdGVtLXdhcm5pbmctbWVzc2FnZSAudGV4dCB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG4uc2lkZWJhci1pdGVtLXdhcm5pbmctbWVzc2FnZSAuc2lkZWJhci1pdGVtLXdhcm5pbmctbWVzc2FnZS1hY3Rpb25zIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5zaWRlYmFyLWl0ZW0td2FybmluZy1tZXNzYWdlIC5zaWRlYmFyLWl0ZW0td2FybmluZy1tZXNzYWdlLWFjdGlvbnMgLmJ0biB7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLmRpc2N1c3Npb24tZm9ybSB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZGlzY3Vzc2lvbi1mb3JtIC51c2VyLWF2YXRhci1saW5rIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaXNjdXNzaW9uLWZvcm0gLm5vdGUtZWRpdC1mb3JtIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaXNjdXNzaW9uLWZvcm0gLnVzZXItYXZhdGFyLWxpbmsge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRpc2N1c3Npb24tZm9ybSAubm90ZS1lZGl0LWZvcm0ge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbnRhYmxlIC5kaXNjdXNzaW9uLWZvcm0tY29udGFpbmVyIHtcbiAgcGFkZGluZzogMTZweDtcbn1cblxuLmRpc2N1c3Npb24tbm90ZXMgLmRpc2FibGVkLWNvbW1lbnQge1xuICBAYXBwbHkgZ2wtcC0wO1xufVxuXG5AY29udGFpbmVyICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5ub3Rlcy5ub3Rlcy1mb3JtID4gbGkudGltZWxpbmUtZW50cnkge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAubm90ZXMubm90ZXMtZm9ybSA+IGxpLnRpbWVsaW5lLWVudHJ5IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AY29udGFpbmVyICh3aWR0aCA8IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5ub3Rlcy1jb250ZW50LnBhcmFsbGVsIC5ub3Rlcy5ub3Rlcy1mb3JtID4gbGkudGltZWxpbmUtZW50cnkge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAubm90ZXMtY29udGVudC5wYXJhbGxlbCAubm90ZXMubm90ZXMtZm9ybSA+IGxpLnRpbWVsaW5lLWVudHJ5IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5AY29udGFpbmVyICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5ub3Rlcy5ub3Rlcy1mb3JtID4gbGkudGltZWxpbmUtZW50cnkgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5ub3Rlcy5ub3Rlcy1mb3JtID4gbGkudGltZWxpbmUtZW50cnkgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuQGNvbnRhaW5lciAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAubm90ZXMtY29udGVudC5wYXJhbGxlbCAubm90ZXMubm90ZXMtZm9ybSA+IGxpLnRpbWVsaW5lLWVudHJ5IC50aW1lbGluZS1jb250ZW50IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAubm90ZXMtY29udGVudC5wYXJhbGxlbCAubm90ZXMubm90ZXMtZm9ybSA+IGxpLnRpbWVsaW5lLWVudHJ5IC50aW1lbGluZS1jb250ZW50IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5ub3Rlcy5ub3Rlcy1mb3JtID4gbGkudGltZWxpbmUtZW50cnkgLnRpbWVsaW5lLWVudHJ5LWlubmVyIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4uc25pcHBldHMubm90ZS1lZGl0LWZvcm0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubm90ZS1lZGl0LWZvcm0ge1xuICBmb250LXNpemU6IDE0cHg7XG59XG4ubm90ZS1lZGl0LWZvcm0gLm1kLWFyZWEtd3JhcHBlciB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG5cbi5qcy1ub3RlLWF0dGFjaG1lbnQtZGVsZXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmVycm9yLWFsZXJ0ID4gLmFsZXJ0IHtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4uZXJyb3ItYWxlcnQgPiAuYWxlcnQuYWxlcnQtZGlzbWlzc2FibGUgLmNsb3NlIHtcbiAgY29sb3I6ICNmZmY7XG4gIG9wYWNpdHk6IDAuODU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uZXJyb3ItYWxlcnQgPiAuYWxlcnQuYWxlcnQtZGlzbWlzc2FibGUgLmNsb3NlOmhvdmVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmRpc2N1c3Npb24tYm9keSAubm90ZXMgLnRpbWVsaW5lLWVudHJ5OmZpcnN0LW9mLXR5cGUgKyAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIge1xuICBwYWRkaW5nLXRvcDogMTZweCAhaW1wb3J0YW50O1xufVxuXG4uZGlzY3Vzc2lvbi1ib2R5IC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlcixcbi5kaWZmLWZpbGUgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyLFxuLmNvbW1pdC1kaWZmIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciB7XG4gIHBhZGRpbmc6IDAgMTZweCAxMnB4IDE2cHg7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXQtbm9uZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYi1sZztcbn1cbi5kaXNjdXNzaW9uLWJvZHkgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyICsgLm5ldy1ub3RlLFxuLmRpZmYtZmlsZSAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIgKyAubmV3LW5vdGUsXG4uY29tbWl0LWRpZmYgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyICsgLm5ldy1ub3RlIHtcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQtc3VidGxlO1xufVxuLmRpc2N1c3Npb24tYm9keSAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIuaW50ZXJuYWwtbm90ZSwgLmRpc2N1c3Npb24tYm9keSAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIuaW50ZXJuYWwtbm90ZS5pcy1yZXBseWluZyxcbi5kaWZmLWZpbGUgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyLmludGVybmFsLW5vdGUsXG4uZGlmZi1maWxlIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlci5pbnRlcm5hbC1ub3RlLmlzLXJlcGx5aW5nLFxuLmNvbW1pdC1kaWZmIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlci5pbnRlcm5hbC1ub3RlLFxuLmNvbW1pdC1kaWZmIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlci5pbnRlcm5hbC1ub3RlLmlzLXJlcGx5aW5nIHtcbiAgcGFkZGluZy10b3A6IDEycHggIWltcG9ydGFudDtcbn1cbi5kaXNjdXNzaW9uLWJvZHkgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIC51c2VyLWF2YXRhci1saW5rIGltZyxcbi5kaWZmLWZpbGUgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIC51c2VyLWF2YXRhci1saW5rIGltZyxcbi5jb21taXQtZGlmZiAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIgLnVzZXItYXZhdGFyLWxpbmsgaW1nIHtcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cblxuLmNvZGUtY29tbWl0IC5kaXNjdXNzaW9uLW5vdGVzIC5ub3RlcyAubm90ZS1jb21tZW50OmZpcnN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbn1cbi5nbC1kYXJrIC5jb2RlLWNvbW1pdCAuZGlzY3Vzc2lvbi1ub3RlcyAubm90ZXMgLm5vdGUtY29tbWVudDpmaXJzdC1jaGlsZCB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIEBhcHBseSBnbC1ib3JkZXItYi1kZWZhdWx0O1xufVxuXG4uY29kZS1jb21taXQgLmRpc2N1c3Npb24tbm90ZXMgLm5vdGVzIC5ub3RlLWNvbW1lbnQ6Zmlyc3QtY2hpbGQgKyAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIsXG4uY29kZS1jb21taXQgLmRpc2N1c3Npb24tbm90ZXMgLm5vdGVzIC5ub3RlLWNvbW1lbnQ6Zmlyc3QtY2hpbGQgKyAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIgKyAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIge1xuICBtYXJnaW4tdG9wOiAxNnB4O1xufVxuXG4uY29kZS1jb21taXQgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyLFxuLmRpZmYtdGQgPiAuY29udGVudCA+IC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciB7XG4gIHBhZGRpbmctdG9wOiAxMnB4O1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iLW5vbmU7XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaXNjdXNzaW9uLXdpdGgtcmVzb2x2ZS1idG4ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRpc2N1c3Npb24td2l0aC1yZXNvbHZlLWJ0biB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuLmRpc2N1c3Npb24td2l0aC1yZXNvbHZlLWJ0biAuZGlzY3Vzc2lvbi1hY3Rpb25zIHtcbiAgZGlzcGxheTogdGFibGU7XG59XG4uZGlzY3Vzc2lvbi13aXRoLXJlc29sdmUtYnRuIC5kaXNjdXNzaW9uLWFjdGlvbnMgLmJ0bi1ncm91cCB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG59XG4uZGlzY3Vzc2lvbi13aXRoLXJlc29sdmUtYnRuIC5kaXNjdXNzaW9uLWFjdGlvbnMgLmJ0bi1ncm91cDpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uZGlzY3Vzc2lvbi13aXRoLXJlc29sdmUtYnRuIC5kaXNjdXNzaW9uLWFjdGlvbnMgLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpID4gZGl2IHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuXG4uZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIgLnJlcGx5LXBsYWNlaG9sZGVyLXRleHQtZmllbGQge1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHJlc2l6ZTogbm9uZTtcbiAgcGFkZGluZzogOHB4IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzFiZmJlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgMC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgMC4xNXM7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciAucmVwbHktcGxhY2Vob2xkZXItdGV4dC1maWVsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIC5yZXBseS1wbGFjZWhvbGRlci10ZXh0LWZpZWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIH1cbn1cbi5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciAucmVwbHktcGxhY2Vob2xkZXItdGV4dC1maWVsZDpob3ZlciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3NDcyNzM7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciAucmVwbHktcGxhY2Vob2xkZXItaW5wdXQtZmllbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciAucmVwbHktcGxhY2Vob2xkZXItaW5wdXQtZmllbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgfVxufVxuXG4uY29tbWVudC10b29sYmFyIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuXG4udG9vbGJhci1idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG59XG4udG9vbGJhci1idXR0b246aG92ZXIsIC50b29sYmFyLWJ1dHRvbjpmb2N1cy12aXNpYmxlIHtcbiAgQGFwcGx5IGdsLXRleHQtbGluaztcbiAgb3V0bGluZTogMDtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b29sYmFyLWJ1dHRvbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC50b29sYmFyLWJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b29sYmFyLWJ1dHRvbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC50b29sYmFyLWJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi50b29sYmFyLXRleHQge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xufVxuXG4ubm90ZS1mb3JtLWFjdGlvbnMge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAubm90ZS1mb3JtLWFjdGlvbnMgLmJ0biB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAubm90ZS1mb3JtLWFjdGlvbnMgLmJ0biB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuY29tbWVudC10eXBlLWRyb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmNvbW1lbnQtdHlwZS1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDE7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuY29tbWVudC10eXBlLWRyb3Bkb3duIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmNvbW1lbnQtdHlwZS1kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBmbGV4LWdyb3c6IDA7XG4gICAgZmxleC1zaHJpbms6IDE7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLnVwbG9hZGluZy1jb250YWluZXIge1xuICBmbG9hdDogcmlnaHQ7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC51cGxvYWRpbmctY29udGFpbmVyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudXBsb2FkaW5nLWNvbnRhaW5lciB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG59XG4udXBsb2FkaW5nLWNvbnRhaW5lciBidXR0b24ge1xuICBmb250LXNpemU6IDAuNzVyZW0gIWltcG9ydGFudDtcbn1cblxuLnVwbG9hZGluZy1lcnJvci1pY29uLFxuLnVwbG9hZGluZy1lcnJvci1tZXNzYWdlIHtcbiAgQGFwcGx5IGdsLXRleHQtZGFuZ2VyO1xufVxuXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC51cGxvYWRpbmctZXJyb3ItbWVzc2FnZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxhXCI7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC51cGxvYWRpbmctZXJyb3ItbWVzc2FnZTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXFxhXCI7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgfVxufVxuXG4udXBsb2FkaW5nLXByb2dyZXNzIHtcbiAgbWFyZ2luLXJpZ2h0OiA1cHg7XG59XG5cbi5tYXJrZG93bi1zZWxlY3RvciB7XG4gIEBhcHBseSBnbC10ZXh0LWxpbms7XG59XG5cbi5jb21tZW50LXdhcm5pbmctd3JhcHBlciB7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAwLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAwLjE1cztcbn1cblxuLnRleHQtZmlsZSAubm90ZXMtY29udGVudCB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWItbm9uZTtcbn1cblxuLmltbWVyc2l2ZSAuZ2ZtLWZvcm0gLm5vdGUtdGV4dGFyZWE6Zm9jdXMtdmlzaWJsZSB7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xufVxuLmltbWVyc2l2ZSAuZ2ZtLWZvcm0gLm5vdGUtdGV4dGFyZWEge1xuICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgbWF4LXdpZHRoOiB2YXIoLS1pbW1lcnNpdmUtZWRpdG9yLXRleHQtd2lkdGgpO1xuICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qKlxuICogISEgTk9URTogRG8gbm90IGFkZCBtb3JlIGNvZGUgaW4gdGhpcyBmaWxlOlxuICpcbiAqIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL2lzc3Vlcy8yNjc2MDJcbiAqXG4gKiBGb3IgbmV3IHBpcGVsaW5lIENTUyBwbGVhc2UgY29uc2lkZXI6XG4gKlxuICogRm9yIHBpcGVsaW5lcyB0YWJsZXMgYW5kIGxpc3RzOlxuICogLSBgYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlX2J1bmRsZXMvcGlwZWxpbmVzLnNjc3NgXG4gKlxuICogRm9yIGluZGl2aWR1YWwgcGlwZWxpbmVzIGFuZCBtaW5pLXBpcGVsaW5lczpcbiAqIC0gYGFwcC9hc3NldHMvc3R5bGVzaGVldHMvcGFnZV9idW5kbGVzL3BpcGVsaW5lLnNjc3NgXG4gKlxuKiovXG4uY2ktdGFibGUgLmF2YXRhciB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBmbG9hdDogbm9uZTtcbn1cbi5jaS10YWJsZSAuYnJhbmNoLWNvbW1pdCAucmVmLW5hbWUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXgtd2lkdGg6IDEwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xufVxuLmNpLXRhYmxlIC5icmFuY2gtY29tbWl0IHN2ZyB7XG4gIGhlaWdodDogMTRweDtcbiAgd2lkdGg6IDE0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xufVxuLmNpLXRhYmxlIC5icmFuY2gtY29tbWl0IC5zcHJpdGUge1xuICB3aWR0aDogMTJweDtcbiAgaGVpZ2h0OiAxMnB4O1xuICBAYXBwbHkgZ2wtZmlsbC1pY29uLWRlZmF1bHQ7XG59XG4uY2ktdGFibGUgLmJyYW5jaC1jb21taXQgLmNvbW1pdC1zaGEge1xuICBjb2xvcjogIzI1NjZiNTtcbn1cbi5jaS10YWJsZSAuYnJhbmNoLWNvbW1pdCAuYmFkZ2Uge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cbi5jaS10YWJsZSAuZHVyYXRpb24sXG4uY2ktdGFibGUgLmZpbmlzaGVkLWF0IHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uY2ktdGFibGUgLmJ1aWxkLWxpbmsgYSB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi52aXNpYmlsaXR5LWxldmVsLXNldHRpbmcgLm9wdGlvbi1kaXNhYmxlZC1yZWFzb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnZpc2liaWxpdHktbGV2ZWwtc2V0dGluZyAuZGlzYWJsZWQgc3ZnIHtcbiAgb3BhY2l0eTogMC41O1xufVxuLnZpc2liaWxpdHktbGV2ZWwtc2V0dGluZyAuZGlzYWJsZWQgLm9wdGlvbi1kZXNjcmlwdGlvbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udmlzaWJpbGl0eS1sZXZlbC1zZXR0aW5nIC5kaXNhYmxlZCAub3B0aW9uLWRpc2FibGVkLXJlYXNvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2FtbC1zZXR0aW5ncy5pbmZvLXdlbGwgLmZvcm0tY29udHJvbFtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSwgI2ZmZik7XG59XG5cbi5kb29ya2VlcGVyLWF1dGhvcml6ZSB7XG4gIG1heC13aWR0aDogMzEuMjVyZW07XG59XG5cbi5zZXR0aW5ncy1zZWN0aW9uOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cblxuLnNldHRpbmdzLXNlY3Rpb24sXG4uc2V0dGluZ3Mtc2VjdGlvbi1uby1ib3R0b20gfiAuc2V0dGluZ3Mtc2VjdGlvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuXG4uZmxhc2gtY29udGFpbmVyICsgLnNldHRpbmdzLXNlY3Rpb24ge1xuICBAYXBwbHkgZ2wtcHQtMTtcbn1cblxuLnNldHRpbmdzLXNlY3Rpb246bm90KC5zZXR0aW5ncy1zZWN0aW9uLW5vLWJvdHRvbSkgfiAuc2V0dGluZ3Mtc2VjdGlvbiB7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgQGFwcGx5IGdsLXB0LTY7XG59XG5cbi5zZXR0aW5ncy1zZWN0aW9uLW5vLWJvdHRvbTo6YWZ0ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnNldHRpbmdzLXNlY3Rpb24tbm8tYm90dG9tOjphZnRlciB7XG4gICAgQGFwcGx5IGdsLXBiLTU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnNldHRpbmdzLXNlY3Rpb24tbm8tYm90dG9tOjphZnRlciB7XG4gICAgQGFwcGx5IGdsLXBiLTU7XG4gIH1cbn1cblxuLnNldHRpbmdzLXN0aWNreS1oZWFkZXIge1xuICB6LWluZGV4OiA5ODtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiBjYWxjKGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSkgKyB2YXIoLS10b3AtYmFyLWhlaWdodCkpO1xuICBtaW4taGVpZ2h0OiAzcmVtO1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXB5LTM7XG59XG4uc2V0dGluZ3Mtc3RpY2t5LWhlYWRlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogLTE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gMXB4KTtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG59XG4uc2V0dGluZ3Mtc3RpY2t5LWhlYWRlcjo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICB6LWluZGV4OiAtMjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogY2FsYyhjYWxjKGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSkgKyB2YXIoLS10b3AtYmFyLWhlaWdodCkpICsgMi41cmVtKTtcbiAgbGVmdDogMDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMXB4O1xuICBib3gtc2hhZG93OiAwIDAuNXJlbSAwIHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbn1cblxuLnNldHRpbmdzLXN0aWNreS1mb290ZXIge1xuICB6LWluZGV4OiA5OTtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgYm90dG9tOiAwO1xuICBtaW4taGVpZ2h0OiAyLjVyZW07XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtcHQtMztcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xufVxuXG4uc2V0dGluZ3Mtc3RpY2t5LWhlYWRlcjpmaXJzdC1vZi10eXBlOmxhc3Qtb2YtdHlwZSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG5cbi5hdmF0YXIsXG4uYXZhdGFyLWNvbnRhaW5lciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xufVxuLmF2YXRhci5zMTYsXG4uYXZhdGFyLWNvbnRhaW5lci5zMTYge1xuICB3aWR0aDogMTZweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbi5hdmF0YXIuczIwLFxuLmF2YXRhci1jb250YWluZXIuczIwIHtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG4uYXZhdGFyLnMyNCxcbi5hdmF0YXItY29udGFpbmVyLnMyNCB7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuLmF2YXRhci5zMjYsXG4uYXZhdGFyLWNvbnRhaW5lci5zMjYge1xuICB3aWR0aDogMjZweDtcbiAgaGVpZ2h0OiAyNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDhweDtcbn1cbi5hdmF0YXIuczMyLFxuLmF2YXRhci1jb250YWluZXIuczMyIHtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbiAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG4uYXZhdGFyLnM0MCxcbi5hdmF0YXItY29udGFpbmVyLnM0MCB7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuLmF2YXRhci5zNDgsXG4uYXZhdGFyLWNvbnRhaW5lci5zNDgge1xuICB3aWR0aDogNDhweDtcbiAgaGVpZ2h0OiA0OHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG59XG4uYXZhdGFyLnM2MCxcbi5hdmF0YXItY29udGFpbmVyLnM2MCB7XG4gIHdpZHRoOiA2MHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbn1cbi5hdmF0YXIuczY0LFxuLmF2YXRhci1jb250YWluZXIuczY0IHtcbiAgd2lkdGg6IDY0cHg7XG4gIGhlaWdodDogNjRweDtcbiAgbWFyZ2luLXJpZ2h0OiAxNnB4O1xufVxuLmF2YXRhci5zOTAsXG4uYXZhdGFyLWNvbnRhaW5lci5zOTAge1xuICB3aWR0aDogOTBweDtcbiAgaGVpZ2h0OiA5MHB4O1xuICBtYXJnaW4tcmlnaHQ6IDE2cHg7XG59XG4uYXZhdGFyLnM5Nixcbi5hdmF0YXItY29udGFpbmVyLnM5NiB7XG4gIHdpZHRoOiA5NnB4O1xuICBoZWlnaHQ6IDk2cHg7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbn1cbi5hdmF0YXIuczEwMCxcbi5hdmF0YXItY29udGFpbmVyLnMxMDAge1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbn1cbi5hdmF0YXIuczE2MCxcbi5hdmF0YXItY29udGFpbmVyLnMxNjAge1xuICB3aWR0aDogMTYwcHg7XG4gIGhlaWdodDogMTYwcHg7XG4gIG1hcmdpbi1yaWdodDogMTZweDtcbn1cblxuLmF2YXRhciB7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG5vbmU7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3VidGxlKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMXB4IHZhcigtLWdsLWF2YXRhci1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG4uYXZhdGFyLmF2YXRhci1pbmxpbmUge1xuICBmbG9hdDogbm9uZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMnB4O1xuICBmbGV4LXNocmluazogMDtcbn1cbi5hdmF0YXIuYXZhdGFyLWlubGluZS5zMTYsIC5hdmF0YXIuYXZhdGFyLWlubGluZS5zMjQge1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cbi5hdmF0YXIuY2VudGVyIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBsaW5lLWhlaWdodDogMS44ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5hdmF0YXIuYXZhdGFyLXRpbGUge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5pZGVudGljb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXN0cm9uZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLW5ldXRyYWwpO1xufVxuLmlkZW50aWNvbi5zMTYge1xuICBmb250LXNpemU6IDEwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xufVxuLmlkZW50aWNvbi5zMjQge1xuICBmb250LXNpemU6IDEycHg7XG4gIGxpbmUtaGVpZ2h0OiAyNHB4O1xufVxuLmlkZW50aWNvbi5zMjYge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xufVxuLmlkZW50aWNvbi5zMzIge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAzMnB4O1xufVxuLmlkZW50aWNvbi5zNDAge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAzOHB4O1xufVxuLmlkZW50aWNvbi5zNDgge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiA0OHB4O1xufVxuLmlkZW50aWNvbi5zNjAge1xuICBmb250LXNpemU6IDMycHg7XG4gIGxpbmUtaGVpZ2h0OiA2MHB4O1xufVxuLmlkZW50aWNvbi5zNjQge1xuICBmb250LXNpemU6IDI4cHg7XG4gIGxpbmUtaGVpZ2h0OiA2NHB4O1xufVxuLmlkZW50aWNvbi5zOTAge1xuICBmb250LXNpemU6IDM2cHg7XG4gIGxpbmUtaGVpZ2h0OiA5MHB4O1xufVxuLmlkZW50aWNvbi5zOTYge1xuICBmb250LXNpemU6IDM2cHg7XG4gIGxpbmUtaGVpZ2h0OiA5NHB4O1xufVxuLmlkZW50aWNvbi5zMTAwIHtcbiAgZm9udC1zaXplOiAzNnB4O1xuICBsaW5lLWhlaWdodDogOThweDtcbn1cbi5pZGVudGljb24uczE2MCB7XG4gIGZvbnQtc2l6ZTogOTZweDtcbiAgbGluZS1oZWlnaHQ6IDE1OHB4O1xufVxuLmlkZW50aWNvbi5iZzEge1xuICBjb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItcmVkKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItcmVkKTtcbn1cbi5pZGVudGljb24uYmcyIHtcbiAgY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXB1cnBsZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLXB1cnBsZSk7XG59XG4uaWRlbnRpY29uLmJnMyB7XG4gIGNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stdGV4dC1jb2xvci1wdXJwbGUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1wdXJwbGUpO1xufVxuLmlkZW50aWNvbi5iZzQge1xuICBjb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItYmx1ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLWJsdWUpO1xufVxuLmlkZW50aWNvbi5iZzUge1xuICBjb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItZ3JlZW4pO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ncmVlbik7XG59XG4uaWRlbnRpY29uLmJnNiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stdGV4dC1jb2xvci1vcmFuZ2UpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1vcmFuZ2UpO1xufVxuLmlkZW50aWNvbi5iZzcge1xuICBjb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItbmV1dHJhbCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLW5ldXRyYWwpO1xufVxuXG4uYXZhdGFyLWNvbnRhaW5lciB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uYXZhdGFyLWNvbnRhaW5lciBhIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmF2YXRhci1jb250YWluZXIgLmF2YXRhciB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJvcmRlcjogMDtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBhbGlnbi1zZWxmOiBjZW50ZXI7XG59XG4uYXZhdGFyLWNvbnRhaW5lci5zNDAge1xuICBtaW4td2lkdGg6IDQwcHg7XG4gIG1pbi1oZWlnaHQ6IDQwcHg7XG59XG4uYXZhdGFyLWNvbnRhaW5lci5zNjQge1xuICBtaW4td2lkdGg6IDY0cHg7XG4gIG1pbi1oZWlnaHQ6IDY0cHg7XG59XG5cbi5yZWN0LWF2YXRhciB7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbn1cbi5yZWN0LWF2YXRhci5zMTYge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG4ucmVjdC1hdmF0YXIuczE2IC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG4ucmVjdC1hdmF0YXIuczIwIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuLnJlY3QtYXZhdGFyLnMyMCAuYXZhdGFyIHtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuLnJlY3QtYXZhdGFyLnMyNCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4ucmVjdC1hdmF0YXIuczI0IC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLnJlY3QtYXZhdGFyLnMyNiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4ucmVjdC1hdmF0YXIuczI2IC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLnJlY3QtYXZhdGFyLnMzMiB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4ucmVjdC1hdmF0YXIuczMyIC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLnJlY3QtYXZhdGFyLnM0MCB7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG59XG4ucmVjdC1hdmF0YXIuczQwIC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLnJlY3QtYXZhdGFyLnM0OCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi5yZWN0LWF2YXRhci5zNDggLmF2YXRhciB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi5yZWN0LWF2YXRhci5zNjAge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG4ucmVjdC1hdmF0YXIuczYwIC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG4ucmVjdC1hdmF0YXIuczY0IHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuLnJlY3QtYXZhdGFyLnM2NCAuYXZhdGFyIHtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xufVxuLnJlY3QtYXZhdGFyLnM5MCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi5yZWN0LWF2YXRhci5zOTAgLmF2YXRhciB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi5yZWN0LWF2YXRhci5zOTYge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG4ucmVjdC1hdmF0YXIuczk2IC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG4ucmVjdC1hdmF0YXIuczEwMCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi5yZWN0LWF2YXRhci5zMTAwIC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG4ucmVjdC1hdmF0YXIuczE2MCB7XG4gIGJvcmRlci1yYWRpdXM6IDhweDtcbn1cbi5yZWN0LWF2YXRhci5zMTYwIC5hdmF0YXIge1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG59XG5cbi5hdmF0YXItY291bnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YTg4ODg7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWNlYmVhO1xuICBib3JkZXItcmFkaXVzOiAxZW07XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LXJlZ3VsYXItZm9udCwgXCJHaXRMYWIgU2Fuc1wiKSwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJOb3RvIFNhbnNcIiwgVWJ1bnR1LCBDYW50YXJlbGwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXNpemU6IDlweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnVzZXItcG9wb3Zlci51c2VyLXBvcG92ZXItY2Fubm90LW1lcmdlIC5wb3BvdmVyLWhlYWRlciB7XG4gIEBhcHBseSBnbC10ZXh0LWZlZWRiYWNrLXdhcm5pbmc7XG4gIEBhcHBseSBnbC1iZy1mZWVkYmFjay13YXJuaW5nO1xufVxuLnVzZXItcG9wb3Zlci51c2VyLXBvcG92ZXItcmVjb21tZW5kYXRpb24gLnBvcG92ZXItaGVhZGVyIHtcbiAgQGFwcGx5IGdsLXRleHQtZmVlZGJhY2staW5mbztcbiAgQGFwcGx5IGdsLWJnLWZlZWRiYWNrLWluZm87XG59XG4udXNlci1wb3BvdmVyLnVzZXItcG9wb3Zlci1yZWNvbW1lbmRhdGlvbi1idXN5IC5wb3BvdmVyLWhlYWRlciB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG5cbi5hY3Rpb24tY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xufVxuLmFjdGlvbi1jYXJkIC5hY3Rpb24tY2FyZC10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGdhcDogMC4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC13cmFwOiBiYWxhbmNlO1xufVxuLmFjdGlvbi1jYXJkIC5hY3Rpb24tY2FyZC10aXRsZTppcyguZ2wtbGluayk6bm90KDpob3Zlcikge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuLmFjdGlvbi1jYXJkIC5hY3Rpb24tY2FyZC10aXRsZTppcyguZ2wtbGluaykge1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbi5hY3Rpb24tY2FyZCAuYWN0aW9uLWNhcmQtdGl0bGU6aXMoLmdsLWxpbmspOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5hY3Rpb24tY2FyZCAuYWN0aW9uLWNhcmQtYXJyb3cge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2xhdGU6IC0wLjI1cmVtO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpLCB0cmFuc2xhdGUgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG59XG4uYWN0aW9uLWNhcmQgLmFjdGlvbi1jYXJkLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tdG9wOiAwLjI1cmVtO1xuICB0ZXh0LXdyYXA6IGJhbGFuY2U7XG59XG4uYWN0aW9uLWNhcmQgLmFjdGlvbi1jYXJkLWNvbnRyb2xzOm5vdCg6ZW1wdHkpIHtcbiAgbWFyZ2luLXRvcDogMC43NXJlbTtcbn1cblxuLmFjdGlvbi1jYXJkLXRpdGxlOmhvdmVyIC5hY3Rpb24tY2FyZC1hcnJvdyB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zbGF0ZTogMDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmFjdGlvbi1jYXJkLXRpdGxlLCAuYWN0aW9uLWNhcmQtYXJyb3cge1xuICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICB9XG59XG5AY29udGFpbmVyIGRhc2hib2FyZC1wYW5lbC1ib2R5IChoZWlnaHQgPCAxODhweCkge1xuICAuZGFzaGJvYXJkLXBhbmVsLWJvZHkgLmFuYWx5dGljcy1wYW5lbC1zdGF0ZS13aXRoLWFjdGlvbiAuYW5hbHl0aWNzLXBhbmVsLXN0YXRlLWRlc2NyaXB0aW9uIHtcbiAgICBAYXBwbHkgZ2wtaGlkZGVuO1xuICB9XG59XG5AY29udGFpbmVyIGRhc2hib2FyZC1wYW5lbC1ib2R5IChoZWlnaHQgPCAxNDhweCkge1xuICAuZGFzaGJvYXJkLXBhbmVsLWJvZHkgLmFuYWx5dGljcy1wYW5lbC1zdGF0ZSB7XG4gICAgQGFwcGx5IGdsLWgtYXV0bztcbiAgICBAYXBwbHkgZ2wtaXRlbXMtc3RhcnQ7XG4gICAgQGFwcGx5IGdsLWp1c3RpZnktc3RhcnQ7XG4gICAgQGFwcGx5IGdsLXAtMDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICB9XG4gIC5kYXNoYm9hcmQtcGFuZWwtYm9keSAuYW5hbHl0aWNzLXBhbmVsLXN0YXRlLWljb24ge1xuICAgIEBhcHBseSBnbC1teC0wO1xuICAgIEBhcHBseSBnbC1tYi0wO1xuICAgIEBhcHBseSBnbC1tci0yO1xuICAgIEBhcHBseSBnbC1pbmxpbmUtYmxvY2s7XG4gICAgQGFwcGx5IGdsLWFsaWduLW1pZGRsZTtcbiAgfVxuICAuZGFzaGJvYXJkLXBhbmVsLWJvZHkgLmFuYWx5dGljcy1wYW5lbC1zdGF0ZS10aXRsZSB7XG4gICAgQGFwcGx5IGdsLXRleHQtbGc7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIH1cbiAgLmRhc2hib2FyZC1wYW5lbC1ib2R5IC5hbmFseXRpY3MtcGFuZWwtc3RhdGUtYWN0aW9uIHtcbiAgICBAYXBwbHkgZ2wtbXQtMztcbiAgICBAYXBwbHkgZ2wtc2VsZi1zdGFydDtcbiAgfVxufVxuQGNvbnRhaW5lciBkYXNoYm9hcmQtcGFuZWwtYm9keSAoaGVpZ2h0IDwgNDhweCkge1xuICAuZGFzaGJvYXJkLXBhbmVsLWJvZHkgLmFuYWx5dGljcy1wYW5lbC1zdGF0ZS1kZXNjcmlwdGlvbiB7XG4gICAgQGFwcGx5IGdsLWhpZGRlbjtcbiAgfVxufVxuLlByb3NlTWlycm9yIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDRweCk7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMXJlbSAtIDJweCk7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIG1hcmdpbjogMnB4O1xuICBtaW4taGVpZ2h0OiAxNDBweDtcbiAgbWF4LWhlaWdodDogNTV2aDtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyBlYXNlLWluLW91dCAwLjE1cztcbn1cbi5nbC1kYXJrIC5Qcm9zZU1pcnJvciB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA2cHgpO1xuICBwYWRkaW5nLWxlZnQ6IGNhbGMoMXJlbSAtIDNweCk7XG59XG4uUHJvc2VNaXJyb3IgOjpzZWxlY3Rpb24ge1xuICBAYXBwbHkgZ2wtYmctYmx1ZS0xMDA7XG59XG4uUHJvc2VNaXJyb3IgZ2wtZW1vamkge1xuICB1c2VyLXNlbGVjdDogdGV4dDtcbn1cbi5Qcm9zZU1pcnJvcjpmb2N1cy12aXNpYmxlIHtcbiAgQGFwcGx5IGdsLWZvY3VzO1xufVxuLlByb3NlTWlycm9yIC5jb250ZW50LWVkaXRvci1zZWxlY3Rpb24sXG4uUHJvc2VNaXJyb3IgLlByb3NlTWlycm9yLXNlbGVjdGVkbm9kZSB7XG4gIEBhcHBseSBnbC1iZy1ibHVlLTEwMDtcbn1cbi5Qcm9zZU1pcnJvciAuY29udGVudC1lZGl0b3Itc2VsZWN0aW9uLmdmbS1wcm9qZWN0X21lbWJlcjpub3QoLmN1cnJlbnQtdXNlciksIC5Qcm9zZU1pcnJvciAuY29udGVudC1lZGl0b3Itc2VsZWN0aW9uIC5nZm0tcHJvamVjdF9tZW1iZXI6bm90KC5jdXJyZW50LXVzZXIpLFxuLlByb3NlTWlycm9yIC5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUuZ2ZtLXByb2plY3RfbWVtYmVyOm5vdCguY3VycmVudC11c2VyKSxcbi5Qcm9zZU1pcnJvciAuUHJvc2VNaXJyb3Itc2VsZWN0ZWRub2RlIC5nZm0tcHJvamVjdF9tZW1iZXI6bm90KC5jdXJyZW50LXVzZXIpIHtcbiAgQGFwcGx5IGdsLWJnLWJsdWUtMjAwO1xufVxuLlByb3NlTWlycm9yIC5jb250ZW50LWVkaXRvci1zZWxlY3Rpb24uZ2ZtLXByb2plY3RfbWVtYmVyLFxuLlByb3NlTWlycm9yIC5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUuZ2ZtLXByb2plY3RfbWVtYmVyIHtcbiAgYm94LXNoYWRvdzogMCAwIDAgMnB4IHZhcigtLWJsdWUtMTAwLCAjYzhlMGY5KTtcbn1cbi5Qcm9zZU1pcnJvciBoci5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUge1xuICBib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0tYmx1ZS0xMDAsICNjOGUwZjkpO1xufVxuLlByb3NlTWlycm9yIC5zZWxlY3RlZENlbGwgLmNvbnRlbnQtZWRpdG9yLXNlbGVjdGlvbixcbi5Qcm9zZU1pcnJvciAuc2VsZWN0ZWRDZWxsIC5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUge1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG59XG4uUHJvc2VNaXJyb3IgcHJlID4gY29kZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLlByb3NlTWlycm9yIHRoW2FsaWduXSAqLCAuUHJvc2VNaXJyb3IgdGRbYWxpZ25dICoge1xuICB0ZXh0LWFsaWduOiBpbmhlcml0O1xufVxuLlByb3NlTWlycm9yIHRkID4gW2RhdGEtbm9kZS12aWV3LWNvbnRlbnRdID4gW2RhdGEtbm9kZS12aWV3LXdyYXBwZXJdOm9ubHktY2hpbGQgOmZpcnN0LWNoaWxkLFxuLlByb3NlTWlycm9yIHRoID4gW2RhdGEtbm9kZS12aWV3LWNvbnRlbnRdID4gW2RhdGEtbm9kZS12aWV3LXdyYXBwZXJdOm9ubHktY2hpbGQgOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLlByb3NlTWlycm9yIGxpIDpmaXJzdC1jaGlsZCxcbi5Qcm9zZU1pcnJvciBkZCA6Zmlyc3QtY2hpbGQsXG4uUHJvc2VNaXJyb3IgZHQgOmZpcnN0LWNoaWxkLFxuLlByb3NlTWlycm9yIHN1bW1hcnkgOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLlByb3NlTWlycm9yIGltZy5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUsXG4uUHJvc2VNaXJyb3IgYXVkaW8uUHJvc2VNaXJyb3Itc2VsZWN0ZWRub2RlLFxuLlByb3NlTWlycm9yIC5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUgYXVkaW8sXG4uUHJvc2VNaXJyb3IgdmlkZW8uUHJvc2VNaXJyb3Itc2VsZWN0ZWRub2RlLFxuLlByb3NlTWlycm9yIC5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUgdmlkZW8ge1xuICBvdXRsaW5lOiAzcHggc29saWQgIzlkYzhmMjtcbiAgb3V0bGluZS1vZmZzZXQ6IC0zcHg7XG59XG4uUHJvc2VNaXJyb3IgLlByb3NlTWlycm9yLXNlbGVjdGVkbm9kZSAuaWZyYW1lLWVtYmVkLFxuLlByb3NlTWlycm9yIC5jb250ZW50LWVkaXRvci1zZWxlY3Rpb24gLmlmcmFtZS1lbWJlZCB7XG4gIG91dGxpbmU6IDNweCBzb2xpZCAjOWRjOGYyO1xufVxuLlByb3NlTWlycm9yIC5zZWxlY3RlZENlbGw6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTU3LCAyMDAsIDI0MiwgMC4yNSk7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLlByb3NlTWlycm9yIC5pbWFnZS1yZXNpemUtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLlByb3NlTWlycm9yIC5pbWFnZS1yZXNpemUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDhweDtcbiAgaGVpZ2h0OiA4cHg7XG4gIGJhY2tncm91bmQ6ICM5ZGM4ZjI7XG4gIG91dGxpbmU6IDFweCBzb2xpZCAjZmZmO1xufVxuLlByb3NlTWlycm9yIC5pbWFnZS1yZXNpemU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgdG9wOiAtOHB4O1xuICBsZWZ0OiAtOHB4O1xufVxuLlByb3NlTWlycm9yIC5pbWFnZS1yZXNpemUtbncge1xuICB0b3A6IC00cHg7XG4gIGxlZnQ6IC00cHg7XG4gIGN1cnNvcjogbnctcmVzaXplO1xufVxuLlByb3NlTWlycm9yIC5pbWFnZS1yZXNpemUtbmUge1xuICB0b3A6IC00cHg7XG4gIHJpZ2h0OiAtNHB4O1xuICBjdXJzb3I6IG5lLXJlc2l6ZTtcbn1cbi5Qcm9zZU1pcnJvciAuaW1hZ2UtcmVzaXplLXN3IHtcbiAgYm90dG9tOiAtNHB4O1xuICBsZWZ0OiAtNHB4O1xuICBjdXJzb3I6IHN3LXJlc2l6ZTtcbn1cbi5Qcm9zZU1pcnJvciAuaW1hZ2UtcmVzaXplLXNlIHtcbiAgYm90dG9tOiAtNHB4O1xuICByaWdodDogLTRweDtcbiAgY3Vyc29yOiBzZS1yZXNpemU7XG59XG4uUHJvc2VNaXJyb3IgaW1nLlByb3NlTWlycm9yLXNlbGVjdGVkbm9kZSB7XG4gIG91dGxpbmU6IDJweCBzb2xpZCAjOWRjOGYyO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbi5Qcm9zZU1pcnJvciBpbWcsXG4uUHJvc2VNaXJyb3IgaWZyYW1lIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuLlByb3NlTWlycm9yID4gdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG4uUHJvc2VNaXJyb3IgPiB1bCB1bCB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xufVxuLlByb3NlTWlycm9yID4gdWwgdWwgdWwge1xuICBsaXN0LXN0eWxlLXR5cGU6IHNxdWFyZTtcbn1cbi5Qcm9zZU1pcnJvciB1bFtkYXRhLXR5cGU9dGFza0xpc3RdIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cbi5Qcm9zZU1pcnJvciB1bFtkYXRhLXR5cGU9dGFza0xpc3RdIHVsLFxuLlByb3NlTWlycm9yIHVsW2RhdGEtdHlwZT10YXNrTGlzdF0gb2wsXG4uUHJvc2VNaXJyb3IgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5Qcm9zZU1pcnJvciB1bFtkYXRhLXR5cGU9dGFza0xpc3RdID4gbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW46IDA7XG59XG4uUHJvc2VNaXJyb3IgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSA+IGxpID4gbGFiZWwsXG4uUHJvc2VNaXJyb3IgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSA+IGxpID4gZGl2IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLlByb3NlTWlycm9yIHVsW2RhdGEtdHlwZT10YXNrTGlzdF0gPiBsaSA+IGxhYmVsIHtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC41cmVtIDAgMDtcbiAgbWFyZ2luOiAwO1xufVxuLlByb3NlTWlycm9yIHVsW2RhdGEtdHlwZT10YXNrTGlzdF0gPiBsaVtkYXRhLWluYXBwbGljYWJsZV0gKiB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbn1cbi5Qcm9zZU1pcnJvciBvbFtkYXRhLXR5cGU9dGFza0xpc3RdIHVsLFxuLlByb3NlTWlycm9yIG9sW2RhdGEtdHlwZT10YXNrTGlzdF0gb2wsXG4uUHJvc2VNaXJyb3Igb2xbZGF0YS10eXBlPXRhc2tMaXN0XSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5Qcm9zZU1pcnJvciBvbFtkYXRhLXR5cGU9dGFza0xpc3RdID4gbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctaW5saW5lLXN0YXJ0OiAzMnB4O1xufVxuLlByb3NlTWlycm9yIG9sW2RhdGEtdHlwZT10YXNrTGlzdF0gPiBsaSA+IGxhYmVsLFxuLlByb3NlTWlycm9yIG9sW2RhdGEtdHlwZT10YXNrTGlzdF0gPiBsaSA+IGRpdiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cbi5Qcm9zZU1pcnJvciBvbFtkYXRhLXR5cGU9dGFza0xpc3RdID4gbGkgPiBsYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiA4cHg7XG4gIGluc2V0LWJsb2NrLXN0YXJ0OiAzcHg7XG59XG4uUHJvc2VNaXJyb3Igb2xbZGF0YS10eXBlPXRhc2tMaXN0XSA+IGxpW2RhdGEtaW5hcHBsaWNhYmxlXSAqIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gIEBhcHBseSBnbC10ZXh0LWRpc2FibGVkO1xufVxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWFkZGVkLFxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWRlbGV0ZWQsXG4uUHJvc2VNaXJyb3IgLnN1Z2dlc3Rpb24tYWRkZWQtaW5wdXQge1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG59XG4uUHJvc2VNaXJyb3IgLnN1Z2dlc3Rpb24tYWRkZWQgPiBjb2RlLFxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWRlbGV0ZWQgPiBjb2RlLFxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWFkZGVkLWlucHV0ID4gY29kZSB7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWFkZGVkLWlucHV0IHtcbiAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNlY3Rpb247XG59XG4uUHJvc2VNaXJyb3IgLnN1Z2dlc3Rpb24tYWRkZWQtaW5wdXQgPiBjb2RlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbn1cbi5Qcm9zZU1pcnJvciAuc3VnZ2VzdGlvbi1hZGRlZCxcbi5Qcm9zZU1pcnJvciAuc3VnZ2VzdGlvbi1kZWxldGVkIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uUHJvc2VNaXJyb3IgLnN1Z2dlc3Rpb24tYWRkZWQgPiBjb2RlLFxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWRlbGV0ZWQgPiBjb2RlIHtcbiAgYm9yZGVyLWxlZnQ6IDEwMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRpZmYtYWRkaXRpb24tY29sb3IpICFpbXBvcnRhbnQ7XG59XG4uUHJvc2VNaXJyb3IgLnN1Z2dlc3Rpb24tYWRkZWQgPiBjb2RlOjpiZWZvcmUsXG4uUHJvc2VNaXJyb3IgLnN1Z2dlc3Rpb24tZGVsZXRlZCA+IGNvZGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS1saW5lLW51bWJlcik7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMHB4O1xuICBtYXJnaW4tbGVmdDogLTEyMHB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xufVxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWFkZGVkID4gY29kZTo6YWZ0ZXIsXG4uUHJvc2VNaXJyb3IgLnN1Z2dlc3Rpb24tZGVsZXRlZCA+IGNvZGU6OmFmdGVyIHtcbiAgY29udGVudDogXCIrXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICB3aWR0aDogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWFkZGVkID4gY29kZSB7XG4gIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xufVxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWRlbGV0ZWQge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1ub25lO1xufVxuLlByb3NlTWlycm9yIC5zdWdnZXN0aW9uLWRlbGV0ZWQgPiBjb2RlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGlmZi1kZWxldGlvbi1jb2xvcikgIWltcG9ydGFudDtcbn1cbi5Qcm9zZU1pcnJvciAuc3VnZ2VzdGlvbi1kZWxldGVkID4gY29kZTo6YmVmb3JlIHtcbiAgcGFkZGluZy1yaWdodDogNjBweDtcbn1cbi5Qcm9zZU1pcnJvciAuc3VnZ2VzdGlvbi1kZWxldGVkID4gY29kZTo6YWZ0ZXIge1xuICBjb250ZW50OiBcIi1cIjtcbn1cbi5Qcm9zZU1pcnJvciAuY29udGVudC1lZGl0b3ItY29kZS1ibG9jayAuaGxqcy1hZGRpdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRpZmYtYWRkaXRpb24tY29sb3IpO1xufVxuLlByb3NlTWlycm9yIC5jb250ZW50LWVkaXRvci1jb2RlLWJsb2NrIC5obGpzLWRlbGV0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGlmZi1kZWxldGlvbi1jb2xvcik7XG59XG4uUHJvc2VNaXJyb3IgLmRsLWNvbnRlbnQge1xuICB3aWR0aDogMTAwJTtcbn1cbi5Qcm9zZU1pcnJvciAuZGwtY29udGVudCA+IGxpIHtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbi5Qcm9zZU1pcnJvciAuZGwtY29udGVudCA+IGxpLmRsLXRlcm0ge1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uUHJvc2VNaXJyb3IgLmRldGFpbHMtdG9nZ2xlLWljb24ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDE7XG59XG4uUHJvc2VNaXJyb3IgLmRldGFpbHMtdG9nZ2xlLWljb246OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pa2XCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDAuNzVyZW07XG59XG4uUHJvc2VNaXJyb3IgLmRldGFpbHMtdG9nZ2xlLWljb24uaXMtb3Blbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCLilrxcIjtcbn1cbi5Qcm9zZU1pcnJvciAuZGV0YWlscy1jb250ZW50IHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDAuNzVyZW0pO1xufVxuLlByb3NlTWlycm9yIC5kZXRhaWxzLWNvbnRlbnQgPiBsaSB7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG59XG4uUHJvc2VNaXJyb3IgLmRldGFpbHMtY29udGVudCA+IDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uUHJvc2VNaXJyb3IgLmRldGFpbHMtY29udGVudC5pcy1vcGVuID4gOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZGlzcGxheTogaW5oZXJpdDtcbn1cbi5Qcm9zZU1pcnJvciAuZ2wtbmV3LWRyb3Bkb3duLWlubmVyIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbn1cbi5Qcm9zZU1pcnJvciAuZ2wtbmV3LWRyb3Bkb3duLWlubmVyIGxpLmdsLW5ldy1kcm9wZG93bi1pdGVtIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjI1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjI1cmVtO1xufVxuLlByb3NlTWlycm9yIC5tYXJrZG93bi1hbGVydCA+ICo6bGFzdC1jaGlsZCAqOm9ubHktY2hpbGQge1xuICBAYXBwbHkgZ2wtbWItMDtcbn1cblxuLm1kID4gLlByb3NlTWlycm9yIHtcbiAgbWFyZ2luOiAycHg7XG59XG4uZ2wtZGFyayAubWQgPiAuUHJvc2VNaXJyb3Ige1xuICBtYXJnaW46IDJweCAzcHg7XG59XG5cbi50YWJsZS1jcmVhdG9yLWdyaWQtaXRlbSB7XG4gIG1pbi1oZWlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgbWluLXdpZHRoOiAxcmVtICFpbXBvcnRhbnQ7XG59XG4udGFibGUtY3JlYXRvci1ncmlkLWl0ZW0uYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1pbmZvLXRleHQtY29sb3IpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8tYmFja2dyb3VuZC1jb2xvcikgIWltcG9ydGFudDtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG59XG4udGFibGUtY3JlYXRvci1ncmlkLWl0ZW06Zm9jdXMtdmlzaWJsZSB7XG4gIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmNvbnRlbnQtZWRpdG9yLXN3aXRjaGVyIHtcbiAgbWluLWhlaWdodDogMzJweDtcbn1cblxuLmNvbnRlbnQtZWRpdG9yLWNvbG9yLWNoaXA6OmFmdGVyIHtcbiAgY29udGVudDogXCIgXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgd2lkdGg6IDExcHg7XG4gIGhlaWdodDogMTFweDtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBAYXBwbHkgZ2wtYm9yZGVyLTE7XG4gIEBhcHBseSBnbC1ib3JkZXItc29saWQ7XG4gIEBhcHBseSBnbC1ib3JkZXItYWxwaGEtZGFyay0yNDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItY2hpcC1jb2xvcik7XG59XG5cbi5jb250ZW50LWVkaXRvci1wbGFjZWhvbGRlciB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIEBhcHBseSBnbC1ib3JkZXItMTtcbiAgQGFwcGx5IGdsLWJvcmRlci1kYXNoZWQ7XG4gIEBhcHBseSBnbC1ib3JkZXItZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXB4LTI7XG59XG4uY29udGVudC1lZGl0b3ItcGxhY2Vob2xkZXIuY29udGVudC1lZGl0b3ItcGxhY2Vob2xkZXItc2VsZWN0ZWQge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNvbGlkO1xuICBib3JkZXItY29sb3I6IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpO1xufVxuXG4uY29udGVudC1lZGl0b3ItY29tbWVudDo6YmVmb3JlIHtcbiAgY29udGVudDogXCI8IS0tXCI7XG59XG4uY29udGVudC1lZGl0b3ItY29tbWVudDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIi0tPlwiO1xufVxuXG4uY29udGVudC1lZGl0b3ItdGFibGUtZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1wYW5lbCB7XG4gIG1pbi13aWR0aDogYXV0bztcbn1cblxuLmNvbnRlbnQtZWRpdG9yLXN1Z2dlc3Rpb25zLWRyb3Bkb3duIC5jb250ZW50LWVkaXRvci1zdWdnZXN0aW9ucy1wYW5lbCB7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbiAgbWF4LXdpZHRoOiBtaW4oMjguNXJlbSwgMTAwdncgLSAycmVtKTtcbn1cbi5jb250ZW50LWVkaXRvci1zdWdnZXN0aW9ucy1kcm9wZG93biAuZm9jdXNlZCAuY29udGVudC1lZGl0b3Itc3VnZ2VzdGlvbnMtaXRlbS1jb250ZW50IHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpLCBpbnNldCAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksIGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5jb250ZW50LWVkaXRvci1zdWdnZXN0aW9ucy1kcm9wZG93biAuZm9jdXNlZCAuY29udGVudC1lZGl0b3Itc3VnZ2VzdGlvbnMtaXRlbS1jb250ZW50IHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQ7XG4gIH1cbn1cbi5jb250ZW50LWVkaXRvci1zdWdnZXN0aW9ucy1kcm9wZG93biAuZm9jdXNlZCAuY29udGVudC1lZGl0b3Itc3VnZ2VzdGlvbnMtaXRlbS1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1ob3Zlcik7XG59XG5cbi5idWJibGUtbWVudS1mb3JtIHtcbiAgbWluLXdpZHRoOiAzMjBweDtcbn1cblxuLlByb3NlTWlycm9yIHA6aGFzKG1hcmspIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xufVxuXG4uaW1tZXJzaXZlIC5ydGUtdGV4dC1ib3ggPiAqLCAuaW1tZXJzaXZlIC5wbGFjZWhvbGRlciB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBtYXgtd2lkdGg6IHZhcigtLWltbWVyc2l2ZS1lZGl0b3ItdGV4dC13aWR0aCwgNzY4cHgpO1xufVxuLmltbWVyc2l2ZSAucnRlLXRleHQtYm94OmZvY3VzLXZpc2libGUge1xuICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLmltbWVyc2l2ZSAubWQtYXJlYSwgLmltbWVyc2l2ZSAubWQtYXJlYTpob3ZlciB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG59XG4uaW1tZXJzaXZlIC5ydGUtdGV4dC1ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgcmVzaXplOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pZnJhbWUtZHJhZy1wbGFjZWhvbGRlciB7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM5ZGM4ZjI7XG4gIGJvcmRlci1yYWRpdXM6IDAuMjVyZW07XG4gIGJhY2tncm91bmQ6ICM4YTg4ODg7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgdG9wOiAtOTk5OXB4O1xufVxuXG4uY29sbGFib3JhdGlvbi1jdXJzb3ItY2FyZXQge1xuICBAYXBwbHkgZ2wtcG9pbnRlci1ldmVudHMtbm9uZTtcbiAgQGFwcGx5IGdsLXJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtYnJlYWstbm9ybWFsO1xuICBtYXJnaW4tbGVmdDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZDtcbn1cblxuLmNvbGxhYm9yYXRpb24tY3Vyc29yLWxhYmVsIHtcbiAgQGFwcGx5IGdsLWFic29sdXRlO1xuICBAYXBwbHkgZ2wtc2VsZWN0LW5vbmU7XG4gIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vd3JhcDtcbiAgQGFwcGx5IGdsLXB4LTE7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICBAYXBwbHkgZ2wtbm90LWl0YWxpYztcbiAgQGFwcGx5IGdsLXRleHQtd2hpdGU7XG4gIHRvcDogLTEuNGVtO1xuICBsZWZ0OiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtIDAuMjVyZW0gMC4yNXJlbSAwO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuXG4uZ3JpZC1zdGFjay1pdGVtIC5kYXNoYm9hcmQtcGFuZWwtYm9keSB7XG4gIGNvbnRhaW5lci1uYW1lOiBkYXNoYm9hcmQtcGFuZWwtYm9keTtcbiAgY29udGFpbmVyLXR5cGU6IHNpemU7XG59XG5cbi5kZXBsb3ltZW50LWluc3RhbmNlIHtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbiAgbWFyZ2luOiAxcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRlcGxveW1lbnQtaW5zdGFuY2Utc3VjY2VlZGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBjNzI2NTtcbiAgYm9yZGVyLWNvbG9yOiAjMDc1MDQ4O1xufVxuLmRlcGxveW1lbnQtaW5zdGFuY2Utc3VjY2VlZGVkLmxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDc1MDQ4O1xuICBib3JkZXItY29sb3I6ICMwMDJjMjY7XG59XG5cbi5kZXBsb3ltZW50LWluc3RhbmNlLXJ1bm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzViNTk3O1xuICBib3JkZXItY29sb3I6ICMwYzcyNjU7XG59XG4uZGVwbG95bWVudC1pbnN0YW5jZS1ydW5uaW5nLmxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGQ4MDcwO1xuICBib3JkZXItY29sb3I6ICMwNzUwNDg7XG59XG5cbi5kZXBsb3ltZW50LWluc3RhbmNlLWZhaWxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjNTIwNDI7XG4gIGJvcmRlci1jb2xvcjogIzg5MWMyZjtcbn1cbi5kZXBsb3ltZW50LWluc3RhbmNlLWZhaWxlZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgdG9wOiAtMnB4O1xuICBib3R0b206IC0ycHg7XG59XG4uZGVwbG95bWVudC1pbnN0YW5jZS1mYWlsZWQubGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4OTFjMmY7XG4gIGJvcmRlci1jb2xvcjogIzQ4MTUxZDtcbn1cblxuLmRlcGxveW1lbnQtaW5zdGFuY2UtcGVuZGluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjMWJmYmU7XG4gIGJvcmRlci1jb2xvcjogIzc0NzI3Mztcbn1cbi5kZXBsb3ltZW50LWluc3RhbmNlLXBlbmRpbmcubGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNhNWEzYTM7XG4gIGJvcmRlci1jb2xvcjogIzI4MjcyZDtcbn1cblxuLmRlcGxveW1lbnQtaW5zdGFuY2UtdW5rbm93biB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzc0NzI3Mztcbn1cbi5kZXBsb3ltZW50LWluc3RhbmNlLXVua25vd24ubGluazpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogIzI4MjcyZDtcbn1cblxuLmRlcGxveW1lbnQtaW5zdGFuY2UuZGVwbG95bWVudC1pbnN0YW5jZS1jYW5hcnk6OmFmdGVyIHtcbiAgd2lkdGg6IDdweDtcbiAgaGVpZ2h0OiA3cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmY7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmYjgwMTc7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogMTtcbn1cblxuLmRlcGxveW1lbnQtaW5zdGFuY2UtY2FuYXJ5LWljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuLmRlcGxveW1lbnQtaW5zdGFuY2UtY2FuYXJ5LWljb246OmFmdGVyIHtcbiAgd2lkdGg6IDE2cHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5kZXRhaWwtcGFnZS1oZWFkZXIge1xuICBwYWRkaW5nLXRvcDogMC43NXJlbTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uZGV0YWlsLXBhZ2UtaGVhZGVyIC5hdXRob3ItbGluayB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5kZXRhaWwtcGFnZS1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmRldGFpbC1wYWdlLWhlYWRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLmRldGFpbC1wYWdlLWhlYWRlciBhIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbn1cblxuLmRldGFpbC1wYWdlLWhlYWRlciBhLmxpbmssXG4uZGV0YWlsLXBhZ2UtaGVhZGVyIC50aXRsZSBhIHtcbiAgY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItbGluayk7XG59XG5cbi5kZXRhaWwtcGFnZS1oZWFkZXItYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleDogMSAxO1xuICBtaW4td2lkdGg6IDA7XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZGV0YWlsLXBhZ2UtaGVhZGVyLWJvZHkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5kZXRhaWwtcGFnZS1oZWFkZXItYm9keSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmRldGFpbC1wYWdlLWhlYWRlci1hY3Rpb25zIHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5kZXRhaWwtcGFnZS1kZXNjcmlwdGlvbiAudGl0bGUge1xuICBtYXJnaW46IDAgMCAwLjc1cmVtO1xuICBAYXBwbHkgZ2wtdGV4dC1oZWFkaW5nO1xuICBwYWRkaW5nOiAwIDAgMC4zZW07XG59XG4uZGV0YWlsLXBhZ2UtZGVzY3JpcHRpb24gLmRlc2NyaXB0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbiAgY29udGVudDogXCJcIjtcbn1cbi5kZXRhaWwtcGFnZS1kZXNjcmlwdGlvbiAuZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tdG9wOiA2cHg7XG59XG4uZGV0YWlsLXBhZ2UtZGVzY3JpcHRpb24gLmRlc2NyaXB0aW9uICsgLmVkaXRlZC10ZXh0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xufVxuLmRldGFpbC1wYWdlLWRlc2NyaXB0aW9uIC5hdXRob3ItbGluayB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5mb2N1cy1jYXJvdXNlbCB7XG4gIGNvbnRhaW5lci10eXBlOiBpbmxpbmUtc2l6ZTtcbn1cblxuLmZvY3VzLWNhcm91c2VsLWl0ZW0tdGl0bGUge1xuICBmb250LXNpemU6IGNsYW1wKDEuNzVyZW0sIDdjcWksIDIuNXJlbSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1ib2xkKTtcbiAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi5mb2N1cy1jYXJvdXNlbC1yYWlsLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1ib2xkKTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGUpO1xuICBvcGFjaXR5OiAwLjc1O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xufVxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7XG4gIC5mb2N1cy1jYXJvdXNlbC1yYWlsLXRpdGxlIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXMgIWltcG9ydGFudDtcbiAgfVxufVxuLmZvY3VzLWNhcm91c2VsLXJhaWwtdGl0bGUge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzIC0tIG1vZGUgY2xhc3MsIG5vdCB1dGlsaXR5ICovXG59XG4uZ2wtZGFyayAuZm9jdXMtY2Fyb3VzZWwtcmFpbC10aXRsZSB7XG4gIG9wYWNpdHk6IDAuNjU7XG59XG5AbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAuZm9jdXMtY2Fyb3VzZWwtcmFpbC10aXRsZSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uZm9jdXMtY2Fyb3VzZWwtcmFpbC1yb3c6aG92ZXIsXG4uZm9jdXMtY2Fyb3VzZWwtcmFpbC1yb3c6Zm9jdXMtdmlzaWJsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLmZvY3VzLWNhcm91c2VsLXJhaWwtcm93OmhvdmVyIC5mb2N1cy1jYXJvdXNlbC1yYWlsLXRpdGxlLFxuLmZvY3VzLWNhcm91c2VsLXJhaWwtcm93OmZvY3VzLXZpc2libGUgLmZvY3VzLWNhcm91c2VsLXJhaWwtdGl0bGUge1xuICBvcGFjaXR5OiAwLjk7XG59XG5cbi5mb2N1cy1jYXJvdXNlbDpmb2N1cy12aXNpYmxlIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5mb2N1cy1jYXJvdXNlbDpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi5mb2N1cy1jYXJvdXNlbDpmb2N1cy12aXNpYmxlIC5mb2N1cy1jYXJvdXNlbC1zdGFnZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uKSB7XG4gIC5tdWx0aXBsZS1jaG9pY2Utc2VsZWN0b3ItaXRlbSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4wMW1zICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNpdGlvbi1kZWxheTogMG1zICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5tdWx0aXBsZS1jaG9pY2Utc2VsZWN0b3ItaXRlbSB7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIGJvcmRlci1jb2xvciAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKSwgYm94LXNoYWRvdyAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cbi5tdWx0aXBsZS1jaG9pY2Utc2VsZWN0b3ItaXRlbTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xufVxuLm11bHRpcGxlLWNob2ljZS1zZWxlY3Rvci1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdC1iYXNlO1xufVxuLm11bHRpcGxlLWNob2ljZS1zZWxlY3Rvci1pdGVtOmxhc3QtY2hpbGQge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iLWJhc2U7XG59XG4ubXVsdGlwbGUtY2hvaWNlLXNlbGVjdG9yLWl0ZW0ubXVsdGlwbGUtY2hvaWNlLXNlbGVjdG9yLWl0ZW0gLmdsLWZvcm0tY2hlY2tib3guZ2wtZm9ybS1jaGVja2JveCBsYWJlbCwgLm11bHRpcGxlLWNob2ljZS1zZWxlY3Rvci1pdGVtLm11bHRpcGxlLWNob2ljZS1zZWxlY3Rvci1pdGVtIC5nbC1mb3JtLXJhZGlvLmdsLWZvcm0tcmFkaW8gbGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5tdWx0aXBsZS1jaG9pY2Utc2VsZWN0b3ItaXRlbTpoYXMoaW5wdXQ6Y2hlY2tlZCkge1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbiAgYm94LXNoYWRvdzogMCAtMXB4IDAgMCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KSwgaW5zZXQgLTFweCAwIDAgMCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KSwgaW5zZXQgMCAtMXB4IDAgMCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KSwgaW5zZXQgMXB4IDAgMCAwIHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xufVxuLm11bHRpcGxlLWNob2ljZS1zZWxlY3Rvci1pdGVtOmhhcyhpbnB1dDpjaGVja2VkKSArIC5tdWx0aXBsZS1jaG9pY2Utc2VsZWN0b3ItaXRlbTpoYXMoaW5wdXQ6Y2hlY2tlZCkge1xuICBAYXBwbHkgZ2wtcm91bmRlZC10LW5vbmU7XG59XG4ubXVsdGlwbGUtY2hvaWNlLXNlbGVjdG9yLWl0ZW06aGFzKGlucHV0OmNoZWNrZWQpOmhhcygrIC5tdWx0aXBsZS1jaG9pY2Utc2VsZWN0b3ItaXRlbSBpbnB1dDpjaGVja2VkKSB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWItbm9uZTtcbn1cbi5tdWx0aXBsZS1jaG9pY2Utc2VsZWN0b3ItaXRlbTpub3QoOmxhc3QtY2hpbGQpOmhhcyhpbnB1dDpjaGVja2VkKSB7XG4gIG1hcmdpbjogLTFweCAtMXB4IDA7XG59XG4ubXVsdGlwbGUtY2hvaWNlLXNlbGVjdG9yLWl0ZW06bGFzdC1jaGlsZDpoYXMoaW5wdXQ6Y2hlY2tlZCkge1xuICBtYXJnaW46IC0xcHg7XG59XG4ubXVsdGlwbGUtY2hvaWNlLXNlbGVjdG9yLWl0ZW0gLmN1c3RvbS1jb250cm9sIHtcbiAgbWluLWhlaWdodDogYXV0bztcbn1cblxuLm11bHRpcGxlLWNob2ljZS1zZWxlY3Rvci1jbGljay1hcmVhIHtcbiAgQGFwcGx5IGdsLWFic29sdXRlO1xuICBAYXBwbHkgLWdsLXRvcC01O1xuICBAYXBwbHkgLWdsLWxlZnQtNztcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgQGFwcGx5IGdsLXAtNTtcbiAgQGFwcGx5IGdsLXBsLTc7XG4gIEBhcHBseSBnbC1ib3gtY29udGVudDtcbiAgQGFwcGx5IC1nbC16LTE7XG59XG5cbi5yZWYtc2VsZWN0b3IgLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAyMHJlbTtcbn1cbi5yZWYtc2VsZWN0b3IgLmRyb3Bkb3duLW1lbnUuc2hvdyxcbi5yZWYtc2VsZWN0b3IgLmRyb3Bkb3duLW1lbnUuc2hvdyAuZ2wtZHJvcGRvd24taW5uZXIge1xuICBtYXgtaGVpZ2h0OiA0NDVweDtcbn1cblxuLnJlbGF0ZWQtaXRlbXMtbGlzdCB7XG4gIHBhZGRpbmc6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogM3B4O1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogM3B4O1xufVxuLnJlbGF0ZWQtaXRlbXMtbGlzdCxcbi5yZWxhdGVkLWl0ZW1zLWxpc3QgLmxpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLml0ZW0tYm9keSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwLjI1cmVtO1xufVxuLml0ZW0tYm9keTpob3ZlciwgLml0ZW0tYm9keTpmb2N1cy13aXRoaW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN1YnRsZSk7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLXN1YnRsZSk7XG59XG4uaXRlbS1ib2R5IC5pc3N1ZS10b2tlbi1zdGF0ZS1pY29uLFxuLml0ZW0tYm9keSAuaXRlbS1taWxlc3RvbmUgLmljb24sXG4uaXRlbS1ib2R5IC5pdGVtLXdlaWdodCAuYm9hcmQtY2FyZC1pbmZvLWljb24ge1xuICBtaW4td2lkdGg6IDE2cHg7XG4gIGN1cnNvcjogaGVscDtcbn1cbi5pdGVtLWJvZHkgLmlzc3VlLXRva2VuLXN0YXRlLWljb246Zm9jdXMtdmlzaWJsZSxcbi5pdGVtLWJvZHkgLml0ZW0tbWlsZXN0b25lIC5pY29uOmZvY3VzLXZpc2libGUsXG4uaXRlbS1ib2R5IC5pdGVtLXdlaWdodCAuYm9hcmQtY2FyZC1pbmZvLWljb246Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbi5pdGVtLWJvZHkgLml0ZW0tdGl0bGUge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xufVxuLml0ZW0tYm9keSAuaXRlbS10aXRsZSAuc29ydGFibGUtbGluayB7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXN0cm9uZyk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4uaXRlbS1ib2R5IC5pdGVtLXBhdGgtaWQgLnBhdGgtaWQtdGV4dCxcbi5pdGVtLWJvZHkgLml0ZW0tbWlsZXN0b25lIC5taWxlc3RvbmUtdGl0bGUsXG4uaXRlbS1ib2R5IC5pdGVtLWR1ZS1kYXRlLFxuLml0ZW0tYm9keSAuaXRlbS13ZWlnaHQgLmJvYXJkLWNhcmQtaW5mby10ZXh0IHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLml0ZW0tbWV0YSB7XG4gIGZsZXgtYmFzaXM6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuLml0ZW0tbWV0YSAuaXRlbS1kdWUtZGF0ZS5ib2FyZC1jYXJkLWluZm8sXG4uaXRlbS1tZXRhIC5ib2FyZC1jYXJkLXdlaWdodC5ib2FyZC1jYXJkLWluZm8ge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uaXRlbS1tZXRhIC5pdGVtLW1pbGVzdG9uZSxcbi5pdGVtLW1ldGEgLml0ZW0td2VpZ2h0IHtcbiAgY3Vyc29yOiBoZWxwO1xufVxuLml0ZW0tbWV0YSAuaXRlbS1taWxlc3RvbmUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIG1heC13aWR0aDogMTIwcHg7XG59XG4uaXRlbS1tZXRhIC5pdGVtLXdlaWdodCB7XG4gIG1heC13aWR0aDogNDhweDtcbn1cblxuLml0ZW0tYXNzaWduZWVzIC51c2VyLWF2YXRhci1saW5rIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xufVxuLml0ZW0tYXNzaWduZWVzIC51c2VyLWF2YXRhci1saW5rOm50aC1vZi10eXBlKDEpIHtcbiAgei1pbmRleDogMjtcbn1cbi5pdGVtLWFzc2lnbmVlcyAudXNlci1hdmF0YXItbGluazpudGgtb2YtdHlwZSgyKSB7XG4gIHotaW5kZXg6IDE7XG59XG4uaXRlbS1hc3NpZ25lZXMgLnVzZXItYXZhdGFyLWxpbms6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5pdGVtLWFzc2lnbmVlcyAuYXZhdGFyIHtcbiAgaGVpZ2h0OiAxNnB4O1xuICB3aWR0aDogMTZweDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuLml0ZW0tYXNzaWduZWVzIC5hdmF0YXItY291bnRlciB7XG4gIGhlaWdodDogMTZweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YTg4ODg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDAgNHB4O1xuICBsaW5lLWhlaWdodDogMTZweDtcbn1cblxuLml0ZW0tcGF0aC1pZCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5pdGVtLXBhdGgtaWQgLnBhdGgtaWQtdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1heC13aWR0aDogMTYwcHg7XG59XG5cbi5tci1jaS1zdGF0dXMge1xuICBsaW5lLWhlaWdodDogMDtcbn1cbi5tci1jaS1zdGF0dXMgYTpmb2N1cy12aXNpYmxlIHtcbiAgYm9yZGVyLXJhZGl1czogOTk5OXB4O1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG5cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmJ0bi1zbS5kcm9wZG93bi10b2dnbGUtc3BsaXQsIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5idG4tZ3JvdXAtc20gPiAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LmJ0biB7XG4gICAgbWF4LXdpZHRoOiA0MHB4O1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmJ0bi1zbS5kcm9wZG93bi10b2dnbGUtc3BsaXQsIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5idG4tZ3JvdXAtc20gPiAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0LmJ0biB7XG4gICAgbWF4LXdpZHRoOiA0MHB4O1xuICB9XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuc29ydGFibGUtbGluayB7XG4gICAgbWF4LXdpZHRoOiA5MCU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnNvcnRhYmxlLWxpbmsge1xuICAgIG1heC13aWR0aDogOTAlO1xuICB9XG59XG4vKiBTbWFsbCBkZXZpY2VzIChsYW5kc2NhcGUgcGhvbmVzLCA3NjhweCBhbmQgdXApICovXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuaXRlbS1ib2R5IC5pdGVtLXRpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnNvcnRhYmxlLWxpbmsge1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLml0ZW0tYm9keSAuaXRlbS1jb250ZW50cyB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5pdGVtLWJvZHkgLml0ZW0tdGl0bGUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuc29ydGFibGUtbGluayB7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuaXRlbS1ib2R5IC5pdGVtLWNvbnRlbnRzIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cbn1cbi8qIE1lZGl1bSBkZXZpY2VzIChkZXNrdG9wcywgOTkycHggYW5kIHVwKSAqL1xuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLml0ZW0tYm9keSAuaXRlbS1tZXRhIC5pdGVtLXBhdGgtaWQge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuaXRlbS1ib2R5IC5pdGVtLW1ldGEgLml0ZW0tcGF0aC1pZCB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG59XG4vKiBMYXJnZSBkZXZpY2VzIChsYXJnZSBkZXNrdG9wcywgMTIwMHB4IGFuZCB1cCkgKi9cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDEyMDBweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuaXRlbS1ib2R5IC5pdGVtLXRpdGxlIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBmbGV4LWJhc2lzOiBhdXRvO1xuICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLml0ZW0tY29udGVudHMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLml0ZW0tYXNzaWduZWVzIC5hdmF0YXIge1xuICAgIGhlaWdodDogMjRweDtcbiAgICB3aWR0aDogMjRweDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuaXRlbS1hc3NpZ25lZXMgLmF2YXRhci1jb3VudGVyIHtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gICAgbWluLXdpZHRoOiAyNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDI0cHg7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnNvcnRhYmxlLWxpbmsge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gMTIwMHB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5pdGVtLWJvZHkgLml0ZW0tdGl0bGUge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgZmxleC1zaHJpbms6IDE7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuaXRlbS1jb250ZW50cyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuaXRlbS1hc3NpZ25lZXMgLmF2YXRhciB7XG4gICAgaGVpZ2h0OiAyNHB4O1xuICAgIHdpZHRoOiAyNHB4O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5pdGVtLWFzc2lnbmVlcyAuYXZhdGFyLWNvdW50ZXIge1xuICAgIGhlaWdodDogMjRweDtcbiAgICBtaW4td2lkdGg6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogMjRweDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuc29ydGFibGUtbGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgfVxufVxuLmluY2lkZW50LXNldmVyaXR5IC5pY29uLWNyaXRpY2FsLFxuLmluY2lkZW50LW1hbmFnZW1lbnQtbGlzdCAuaWNvbi1jcml0aWNhbCxcbi5hbGVydC1tYW5hZ2VtZW50LWRldGFpbHMgLmljb24tY3JpdGljYWwge1xuICBjb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItY3JpdGljYWwpO1xufVxuLmluY2lkZW50LXNldmVyaXR5IC5pY29uLWhpZ2gsXG4uaW5jaWRlbnQtbWFuYWdlbWVudC1saXN0IC5pY29uLWhpZ2gsXG4uYWxlcnQtbWFuYWdlbWVudC1kZXRhaWxzIC5pY29uLWhpZ2gge1xuICBjb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItaGlnaCk7XG59XG4uaW5jaWRlbnQtc2V2ZXJpdHkgLmljb24tbWVkaXVtLFxuLmluY2lkZW50LW1hbmFnZW1lbnQtbGlzdCAuaWNvbi1tZWRpdW0sXG4uYWxlcnQtbWFuYWdlbWVudC1kZXRhaWxzIC5pY29uLW1lZGl1bSB7XG4gIGNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1tZWRpdW0pO1xufVxuLmluY2lkZW50LXNldmVyaXR5IC5pY29uLWxvdyxcbi5pbmNpZGVudC1tYW5hZ2VtZW50LWxpc3QgLmljb24tbG93LFxuLmFsZXJ0LW1hbmFnZW1lbnQtZGV0YWlscyAuaWNvbi1sb3cge1xuICBjb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItbG93KTtcbn1cbi5pbmNpZGVudC1zZXZlcml0eSAuaWNvbi1pbmZvLFxuLmluY2lkZW50LW1hbmFnZW1lbnQtbGlzdCAuaWNvbi1pbmZvLFxuLmFsZXJ0LW1hbmFnZW1lbnQtZGV0YWlscyAuaWNvbi1pbmZvIHtcbiAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWluZm8pO1xufVxuLmluY2lkZW50LXNldmVyaXR5IC5pY29uLXVua25vd24sXG4uaW5jaWRlbnQtbWFuYWdlbWVudC1saXN0IC5pY29uLXVua25vd24sXG4uYWxlcnQtbWFuYWdlbWVudC1kZXRhaWxzIC5pY29uLXVua25vd24ge1xuICBjb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItdW5rbm93bik7XG59XG5cbi5zaG9ydGN1dC1oZWxwLWJvZHkge1xuICBoZWlnaHQ6IDgwdmg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cblxuLnNob3J0Y3V0LWhlbHAtY29udGFpbmVyIHtcbiAgY29sdW1uLWNvdW50OiAxO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zaG9ydGN1dC1oZWxwLWNvbnRhaW5lciB7XG4gICAgY29sdW1uLWNvdW50OiAyO1xuICB9XG59XG4uc2hvcnRjdXQtaGVscC1jb250YWluZXIge1xuICBjb2x1bW4tZ2FwOiAxcmVtO1xufVxuXG4uc2hvcnRjdXQtaGVscC1tYXBwaW5nIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbn1cbi5zaG9ydGN1dC1oZWxwLW1hcHBpbmcga2JkIHtcbiAgbWFyZ2luOiAwLjFyZW0gMDtcbiAgbGluZS1oZWlnaHQ6IHVuc2V0O1xuICBmb250LXNpemU6IHVuc2V0O1xufVxuXG4uc2hvcnRjdXQtaGVscC1tYXBwaW5nLXRpdGxlIHtcbiAgbWFyZ2luLWxlZnQ6IDQwJTtcbn1cblxuLnVwbG9hZC1kcm9wem9uZS1ib3JkZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsICUzY3N2ZyB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3JlY3Qgd2lkdGg9JzEwMCUyNScgaGVpZ2h0PScxMDAlMjUnIGZpbGw9J25vbmUnIHJ4PScwLjI1cmVtJyByeT0nMC4yNXJlbScgc3Ryb2tlPSclMjM4QTg4ODgnIHN0cm9rZS13aWR0aD0nMicgc3Ryb2tlLWRhc2hhcnJheT0nNiUyYzQnIHN0cm9rZS1kYXNob2Zmc2V0PScwJyBzdHJva2UtbGluZWNhcD0nYnV0dCcgLyUzZSAlM2Mvc3ZnJTNlXCIpO1xufVxuXG4udXBsb2FkLWRyb3B6b25lLWJvcmRlci1lcnJvciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwgJTNjc3ZnIHdpZHRoPScxMDAlMjUnIGhlaWdodD0nMTAwJTI1JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcmVjdCB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgZmlsbD0nbm9uZScgcng9JzAuMjVyZW0nIHJ5PScwLjI1cmVtJyBzdHJva2U9JyUyM0YxNTE2OCcgc3Ryb2tlLXdpZHRoPScyJyBzdHJva2UtZGFzaGFycmF5PSc2JTJjNCcgc3Ryb2tlLWRhc2hvZmZzZXQ9JzAnIHN0cm9rZS1saW5lY2FwPSdidXR0JyAvJTNlICUzYy9zdmclM2VcIik7XG59XG5cbi51cGxvYWQtZHJvcHpvbmUtY2FyZCB7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLVtiYWNrZ3JvdW5kLGJvcmRlcl07XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbn1cbi51cGxvYWQtZHJvcHpvbmUtY2FyZDpob3ZlciwgLnVwbG9hZC1kcm9wem9uZS1jYXJkOmZvY3VzLXZpc2libGUsIC51cGxvYWQtZHJvcHpvbmUtY2FyZDpmb2N1cy13aXRoaW4sIC51cGxvYWQtZHJvcHpvbmUtY2FyZDphY3RpdmUge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsICUzY3N2ZyB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3JlY3Qgd2lkdGg9JzEwMCUyNScgaGVpZ2h0PScxMDAlMjUnIGZpbGw9J25vbmUnIHJ4PScwLjI1cmVtJyByeT0nMC4yNXJlbScgc3Ryb2tlPSclMjMxRjczQ0EnIHN0cm9rZS13aWR0aD0nNCcgc3Ryb2tlLWRhc2hhcnJheT0nNiUyYzQnIHN0cm9rZS1kYXNob2Zmc2V0PScwJyBzdHJva2UtbGluZWNhcD0nYnV0dCcgLyUzZSAlM2Mvc3ZnJTNlXCIpO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuLnVwbG9hZC1kcm9wem9uZS1jYXJkOmZvY3VzLXZpc2libGUsIC51cGxvYWQtZHJvcHpvbmUtY2FyZDpmb2N1cy13aXRoaW4sIC51cGxvYWQtZHJvcHpvbmUtY2FyZDphY3RpdmUge1xuICBAYXBwbHkgZ2wtZm9jdXM7XG59XG5cbi51cGxvYWQtZHJvcHpvbmUtb3ZlcmxheSxcbi5kZXNpZ24tdXBsb2FkLWRyb3B6b25lLW92ZXJsYXkge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAxO1xuICBib3JkZXI6IDA7XG59XG5cbi51cGxvYWQtZHJvcHpvbmUtb3ZlcmxheSB7XG4gIEBhcHBseSBnbC1iZy1mZWVkYmFjay1pbmZvO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsICUzY3N2ZyB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyUzZSUzY3JlY3Qgd2lkdGg9JzEwMCUyNScgaGVpZ2h0PScxMDAlMjUnIGZpbGw9J25vbmUnIHJ4PScwLjI1cmVtJyByeT0nMC4yNXJlbScgc3Ryb2tlPSclMjMxRjczQ0EnIHN0cm9rZS13aWR0aD0nNCcgc3Ryb2tlLWRhc2hhcnJheT0nNiUyYzQnIHN0cm9rZS1kYXNob2Zmc2V0PScwJyBzdHJva2UtbGluZWNhcD0nYnV0dCcgLyUzZSAlM2Mvc3ZnJTNlXCIpO1xufVxuXG4uZGVzaWduLXVwbG9hZC1kcm9wem9uZS1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWdsLWNvbG9yLWJsdWUtNTAwKSAyNCUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLCAlM2Nzdmcgd2lkdGg9JzEwMCUyNScgaGVpZ2h0PScxMDAlMjUnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyclM2UlM2NyZWN0IHdpZHRoPScxMDAlMjUnIGhlaWdodD0nMTAwJTI1JyBmaWxsPSdub25lJyByeD0nMC4yNXJlbScgcnk9JzAuMjVyZW0nIHN0cm9rZT0nJTIzMUY3M0NBJyBzdHJva2Utd2lkdGg9JzQnIHN0cm9rZS1kYXNoYXJyYXk9JzYlMmM0JyBzdHJva2UtZGFzaG9mZnNldD0nMCcgc3Ryb2tlLWxpbmVjYXA9J2J1dHQnIC8lM2UgJTNjL3N2ZyUzZVwiKTtcbiAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcbn1cblxuLnVwbG9hZC1kcm9wem9uZS1mYWRlLWVudGVyLWFjdGl2ZSxcbi51cGxvYWQtZHJvcHpvbmUtZmFkZS1sZWF2ZS1hY3RpdmUge1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi1vcGFjaXR5O1xuICBAYXBwbHkgZ2wtZHVyYXRpb24tZmFzdDtcbiAgQGFwcGx5IGdsLWVhc2UtbGluZWFyO1xufVxuXG4udXBsb2FkLWRyb3B6b25lLWZhZGUtZW50ZXIsXG4udXBsb2FkLWRyb3B6b25lLWZhZGUtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xufVxuXG4ud2hhdHMtbmV3LWRyYXdlciB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgLndoYXRzLW5ldy1kcmF3ZXIge1xuICAgIHdpZHRoOiA1MDBweDtcbiAgfVxufVxuLndoYXRzLW5ldy1kcmF3ZXIge1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tZ2wtY2xhc3MgKi9cbn1cbi53aGF0cy1uZXctZHJhd2VyIC5nbC1pbmZpbml0ZS1zY3JvbGwtbGVnZW5kIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53aGF0cy1uZXctZHJhd2VyIC5nbC10YWJzIHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbi53aGF0cy1uZXctZHJhd2VyIC5nbC10YWJzLW5hdiB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBvdmVyZmxvdy14OiBzY3JvbGw7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuLndoYXRzLW5ldy1kcmF3ZXIgLmdsLXRhYnMtbmF2IC5uYXYtaXRlbSB7XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuLndoYXRzLW5ldy1kcmF3ZXIgLmdsLXRhYnMtbmF2IC5uYXYtaXRlbSBhIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuLndoYXRzLW5ldy1kcmF3ZXIgLmdsLXNwaW5uZXItY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbi53aGF0cy1uZXctZHJhd2VyIHtcbiAgLyogc3R5bGVsaW50LWVuYWJsZSBnaXRsYWIvbm8tZ2wtY2xhc3MgKi9cbn1cblxuaDQud2hhdHMtbmV3LXJlbGVhc2UtaGVhZGluZzpub3QoOmZpcnN0LW9mLXR5cGUpIHtcbiAgQGFwcGx5IGdsLW10LTY7XG59XG5cbi53aGF0cy1uZXctbW9kYWwtYmFja2Ryb3Age1xuICB6LWluZGV4OiA2OTk7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAud2hhdHMtbmV3LWFydGljbGUtZHJhd2VyIHtcbiAgICB3aWR0aDogNTAwcHg7XG4gIH1cbn1cblxuLypcbiogU0FTUyBwcmVzZXJ2ZXMgdW5pdHMgaW4gYXJpdGhtZXRpYyBvcGVyYXRpb25zLiBGb3IgZXhhbXBsZTpcbiogMTJlbSAqIDAgPSAwZW0uIFRoaXMgZnVuY3Rpb24gcmV0dXJuIHRoZSB1bml0IG9mIGEgbnVtZXJpYyB2YWx1ZS5cbipcbiogRm9yIG1vcmUgZXhhbXBsZXMsIHNlZTogaHR0cHM6Ly9jb2RlcGVuLmlvL3BhdWxndi9wZW4vWFdycU1nUVxuKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZW5hYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLypcbiAqIExheW91dFxuICovXG4vKipcbiAg8J+aqCBEbyBub3QgdXNlIHRoaXMgc3BhY2luZyBzY2FsZSDigJQgaXQgaXMgZGVwcmVjYXRlZCBhbmQgYmVpbmcgcmVtb3ZlZC4g8J+aqFxuICBTZWUgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiL2lzc3Vlcy8zNjg1NyBmb3IgbW9yZSBkZXRhaWxzLlxuXG4gIEluc3RlYWQsIGlmIHlvdSBuZWVkIGEgc3BhY2luZyBjbGFzcywgYWRkIGl0IHRvIGFwcC9hc3NldHMvc3R5bGVzaGVldHMvZnJhbWV3b3JrL2NvbW1vbi5zY3NzLFxuICB1c2luZyB0aGUgZm9sbG93aW5nIHZhbHVlcy5cblxuICAgICRnbC1zcGFjaW5nLXNjYWxlLTA6IDA7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTogMnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTI6IDRweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0zOiA4cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNDogMTJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS01OiAxNnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTY6IDI0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNzogMzJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS04OiA0MHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTk6IDQ4cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTA6IDU2cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTE6IDY0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTI6IDgwcHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMTM6IDk2cHg7XG5cbiAgRS5nLiwgYSBwYWRkaW5nIHRvcCBvZiA5NnB4IGNhbiBiZSBhZGRlZCB1c2luZzpcbiAgLmdsLXNoaW0tcHQtMTMge1xuICAgIHBhZGRpbmctdG9wOiA5NnB4O1xuICB9XG5cbiAgUGxlYXNlIHVzZSAtc2hpbS0gc28gaXQgY2FuIGJlIGRpZmZlcmVudGlhdGVkIGZyb20gdGhlIG9sZCBzY2FsZSBjbGFzc2VzLlxuXG4gIFRoZXNlIHdpbGwgYmUgcmVwbGFjZWQgd2hlbiB0aGUgR2l0bGFiIFVJIHV0aWxpdGllcyBhcmUgaW5jbHVkZWQuXG4qKi9cbi8qIFdpbGwgYmUgbW92ZWQgdG8gQGdpdGxhYi91aSBieSBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWItc2VydmljZXMvZGVzaWduLmdpdGxhYi5jb20vLS9pc3N1ZXMvMjc5MiAqL1xuLyogRW5kIGdpdGxhYi11aSMxNzA5ICovXG4vKlxuICogVGV4dFxuICovXG4vKlxuICogTGlzdHNcbiAqL1xuLypcbiAqIENvZGVcbiAqL1xuLypcbiAqIFRvb2x0aXBzXG4gKi9cbi8qXG4gKiBQYWRkaW5nXG4gKi9cbi8qXG4gKiBNaXNjXG4gKi9cbi8qXG4gKiBNZXJnZSByZXF1ZXN0c1xuICovXG4vKlxuICogQ2FsY3VsYXRlZCBoZWlnaHRzXG4gKi9cbi8qIHRhbnVraSBsb2dvIGNvbG9ycyAqL1xuLypcbiAqIFN0YXRlIGNvbG9yczpcbiAqL1xuLypcbiAqIENvbW1pdCBEaWZmIENvbG9yc1xuICovXG4vKlxuICogVGhlIHRyYW5zcGFyZW50IGNvbG9ycyBhcmUgdXNlZCBpbiBNb25hY28gZWRpdG9yLiBVc2luZyBmdWxsIG9wYWNpdHkgY29sb3JzXG4gKiB3b3VsZCBoaWRlIG90aGVyIGxheWVycyAoc2VsZWN0ZWQgdGV4dCwgbWF0Y2hpbmcgYnJhY2tldHMpLlxuICpcbiAqIFdoZW4gdGhlIHRyYW5zcGFyZW50IGNvbG9ycyBnZXQgbGF5ZXJlZCBvbiB3aGl0ZSBiYWNrZ3JvdW5kLCB0aGV5IGNyZWF0ZSB0aGVpclxuICogZnVsbCBvcGFjaXR5IGNvdW50ZXJwYXJ0czpcbiAqXG4gKiAgLSB3aGl0ZSArICRsaW5lLWFkZGVkLXRyYW5zcGFyZW50ID0gJGxpbmUtYWRkZWRcbiAqICAtIHdoaXRlICsgJGxpbmUtYWRkZWQtdHJhbnNwYXJlbnQgKyAkbGluZS1hZGRlZC1kYXJrLXRyYW5zcGFyZW50ID0gJGxpbmUtYWRkZWQtZGFya1xuICpcbiAqIE1vcmUgZGV0YWlsczogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vbWVyZ2VfcmVxdWVzdHMvNDE1NTNcbiAqL1xuLypcbiAqIEZvbnRzXG4gKiBUaGUgLS1kZWZhdWx0LW1vbm8tZm9udCBhbmQgLS1kZWZhdWx0LXJlZ3VsYXItZm9udCB2YXJpYWJsZXMgZ2l2ZSB1c2Vyc1xuICogYSB3YXkgdG8gb3ZlcnJpZGUgb3VyIGZvbnQgY2hvaWNlcyBmb3IgdGhlbS5cbiAqL1xuLypcbiogRHJvcGRvd25zXG4qL1xuLypcbiogU2lkZWJhclxuKi9cbi8qXG4qIEJ1dHRvbnNcbiovXG4vKlxuKiBCYWRnZXNcbiovXG4vKlxuICogIEF3YXJkIGVtb2ppXG4gKi9cbi8qXG4gKiBTZWFyY2ggQm94XG4gKi9cbi8qXG4gKiAgTm90ZXNcbiAqL1xuLypcbiogQm9hcmRzXG4qL1xuLypcbiogQnVpbGRzXG4qL1xuLypcbiogQ29tbWl0IFBhZ2VcbiovXG4vKlxuKiBGaWxlc1xuKi9cbi8qXG4qIEZvcm1zXG4qL1xuLypcbiogTGFiZWxcbiovXG4vKlxuKiBBbmltYXRpb25cbiovXG4vKlxuKiBMb2dpblxuKi9cbi8qXG4qIFR5cG9ncmFwaHlcbiovXG4vKlxuUGlwZWxpbmUgR3JhcGhcbiovXG4vKlxuR2l0TGFiIFBsYW5zXG4qL1xuLypcblBlcmZvcm1hbmNlIEJhclxuKi9cbi8qXG5JbWFnZSBDb21tZW50aW5nIGN1cnNvclxuKi9cbi8qXG5Qb3B1cFxuKi9cbi8qXG5EcmF3ZXJzXG4qL1xuLypcbk1vZGFsc1xuKi9cbi8qXG5Qb3BvdmVyc1xuKi9cbi8qXG5NZXJnZSByZXF1ZXN0c1xuKi9cbi8qXG5Cb2FyZCBTd2ltbGFuZXNcbiovXG4vKlxuU291cmNlIEVkaXRvciB0aGVtZSBvdmVycmlkZXNcbiovXG4vKipcbiBCb290c3RyYXAgNC4yLjAgaW50cm9kdWNlZCBuZXcgaWNvbnMgZm9yIHZhbGlkYXRpbmcgZm9ybXMuXG4gT3VyIGRlc2lnbiBzeXN0ZW0gZG9lcyBub3QgdXNlIHRob3NlLCBzbyB3ZSBhcmUgZGlzYWJsaW5nIHRoZW0gZm9yIG5vdzpcbiAtIERvY3M6IGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9kb2NzLzQuMy9jb21wb25lbnRzL2Zvcm1zLyNzZXJ2ZXItc2lkZVxuIC0gSXNzdWU6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2Rlc2lnbi5naXRsYWIuY29tL2lzc3Vlcy8yNDJcbiAqL1xuLypcbiAqIFRoaXMgZmlsZSBpcyBvbmx5IGZvciBvdmVycmlkaW5nIEJvb3RzdHJhcCA0IHZhcmlhYmxlcy5cbiAqIFBsZWFzZSBhZGQgYW55IG5ldyB2YXJpYWJsZXMgdG8gdmFyaWFibGVzLnNjc3NcbiAqL1xuLmNvZGUtZmxvdy1jb250ZW50IHtcbiAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gMi41cmVtIC0gM3JlbSAtIHZhcigtLWJyb2FkY2FzdC1tZXNzYWdlLWhlaWdodCwgMHB4KSAtIDQ2cHggLSAzNXB4IC0gNTZweCAtIDUxcHgpO1xufVxuXG4uY29kZS1mbG93LWNvbnRlbnQtbW9kYWwge1xuICBoZWlnaHQ6IHZhcigtLW1vZGFsLWNvbnRlbnQtaGVpZ2h0KTtcbn1cblxuLmNvZGUtZmxvdy1jb250ZW50LWNhcmQge1xuICBtYXgtaGVpZ2h0OiA3MHZoO1xufVxuXG4uZ2wtc2Nyb2xsLXNjcmltID4gLnRvcC1zY3JpbS13cmFwcGVyLFxuLmdsLXNjcm9sbC1zY3JpbSA+IC5ib3R0b20tc2NyaW0td3JhcHBlciB7XG4gIGhlaWdodDogMi4yNXJlbTtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzO1xufVxuLmdsLXNjcm9sbC1zY3JpbSA+IC50b3Atc2NyaW0td3JhcHBlciAudG9wLXNjcmltLFxuLmdsLXNjcm9sbC1zY3JpbSA+IC50b3Atc2NyaW0td3JhcHBlciAuYm90dG9tLXNjcmltLFxuLmdsLXNjcm9sbC1zY3JpbSA+IC5ib3R0b20tc2NyaW0td3JhcHBlciAudG9wLXNjcmltLFxuLmdsLXNjcm9sbC1zY3JpbSA+IC5ib3R0b20tc2NyaW0td3JhcHBlciAuYm90dG9tLXNjcmltIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG4uZ2wtc2Nyb2xsLXNjcmltID4gLnRvcC1zY3JpbS13cmFwcGVyIHtcbiAgdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAtMi4yNXJlbTtcbn1cbi5nbC1zY3JvbGwtc2NyaW0gPiAudG9wLXNjcmltLXdyYXBwZXIgLnRvcC1zY3JpbSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstOCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG59XG4uZ2wtZGFyayAuZ2wtc2Nyb2xsLXNjcmltID4gLnRvcC1zY3JpbS13cmFwcGVyIC50b3Atc2NyaW0ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTI0KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbn1cbi5nbC1zY3JvbGwtc2NyaW0gPiAuYm90dG9tLXNjcmltLXdyYXBwZXIge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IC0yLjI1cmVtO1xufVxuLmdsLXNjcm9sbC1zY3JpbSA+IC5ib3R0b20tc2NyaW0td3JhcHBlciAuYm90dG9tLXNjcmltIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay04KSk7XG59XG4uZ2wtZGFyayAuZ2wtc2Nyb2xsLXNjcmltID4gLmJvdHRvbS1zY3JpbS13cmFwcGVyIC5ib3R0b20tc2NyaW0ge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDI1NSwgMjU1LCAyNTUsIDApIDAlLCB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTI0KSk7XG59XG4uZ2wtc2Nyb2xsLXNjcmltLnRvcC1zY3JpbS12aXNpYmxlID4gLnRvcC1zY3JpbS13cmFwcGVyLCAuZ2wtc2Nyb2xsLXNjcmltLmJvdHRvbS1zY3JpbS12aXNpYmxlID4gLmJvdHRvbS1zY3JpbS13cmFwcGVyIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUgZ2l0bGFiL25vLWdsLWNsYXNzICovXG4uZ2wtYmFzZS1sYXlvdXQtc3RpY2t5LWhlYWRlciB7XG4gIEBhcHBseSBnbC1maXhlZDtcbiAgQGFwcGx5IGdsLXRvcC0wO1xuICBAYXBwbHkgZ2wtbGVmdC0wO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtcGItMztcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLWludmlzaWJsZTtcbiAgQGFwcGx5IGdsLW9wYWNpdHktMDtcbiAgei1pbmRleDogOTg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zaXRpb246IHZpc2liaWxpdHkgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIG9wYWNpdHkgMC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksIHRyYW5zZm9ybSAwLjJzIGN1YmljLWJlemllcigwLjIyLCAwLjYxLCAwLjM2LCAxKTtcbn1cblxuLmdsLWJhc2UtbGF5b3V0LXN0aWNreS1oZWFkZXItbm8tYW5pbWF0aW9uIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMHM7XG59XG5cbi5nbC1iYXNlLWxheW91dC1zdGlja3ktaGVhZGVyLWlubmVyIHtcbiAgQGFwcGx5IGdsLXB4LVstLWNvbnRhaW5lci1wYWRkaW5nLXhdO1xufVxuXG4uZ2wtYmFzZS1sYXlvdXQuZ2wtYmFzZS1sYXlvdXQtaGVhZGVyLWlzLXN0dWNrIC5nbC1iYXNlLWxheW91dC1zdGlja3ktaGVhZGVyIHtcbiAgQGFwcGx5IGdsLXZpc2libGU7XG4gIEBhcHBseSBnbC1vcGFjaXR5LTEwO1xuICBAYXBwbHkgZ2wtdHJhbnNsYXRlLXktMDtcbn1cblxuLmdsLWJhc2UtbGF5b3V0LWFsZXJ0cyB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIEBhcHBseSBnbC1nYXAtMztcbiAgQGFwcGx5IGdsLW1iLTU7XG59XG5cbi5nbC1iYXNlLWxheW91dC1sb2FkaW5nLWljb24ge1xuICBAYXBwbHkgZ2wtbS01O1xufVxuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tZ2wtY2xhc3MgKi9cbi5nbC1kZXRhaWwtbGF5b3V0LWNvbnRhaW5lciB7XG4gIC0tZ2wtZGV0YWlsLWxheW91dC1nYXA6IDJyZW07XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogdmFyKC0tZ2wtZGV0YWlsLWxheW91dC1nYXApO1xufVxuXG4uZ2wtZGV0YWlsLWxheW91dC1jb250ZW50LFxuLmdsLWRldGFpbC1sYXlvdXQtc2lkZWJhcixcbi5nbC1kZXRhaWwtbGF5b3V0LWFjdGl2aXR5LFxuLmdsLWRldGFpbC1sYXlvdXQtd2lkZ2V0cyB7XG4gIG1pbi13aWR0aDogMDtcbn1cbi5nbC1kZXRhaWwtbGF5b3V0LWNvbnRlbnQgPiBkaXY6Zmlyc3QtY2hpbGQsXG4uZ2wtZGV0YWlsLWxheW91dC1jb250ZW50ID4gc2VjdGlvbjpmaXJzdC1jaGlsZCxcbi5nbC1kZXRhaWwtbGF5b3V0LXNpZGViYXIgPiBkaXY6Zmlyc3QtY2hpbGQsXG4uZ2wtZGV0YWlsLWxheW91dC1zaWRlYmFyID4gc2VjdGlvbjpmaXJzdC1jaGlsZCxcbi5nbC1kZXRhaWwtbGF5b3V0LWFjdGl2aXR5ID4gZGl2OmZpcnN0LWNoaWxkLFxuLmdsLWRldGFpbC1sYXlvdXQtYWN0aXZpdHkgPiBzZWN0aW9uOmZpcnN0LWNoaWxkLFxuLmdsLWRldGFpbC1sYXlvdXQtd2lkZ2V0cyA+IGRpdjpmaXJzdC1jaGlsZCxcbi5nbC1kZXRhaWwtbGF5b3V0LXdpZGdldHMgPiBzZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4uZ2wtZGV0YWlsLWxheW91dC1jb250YWluZXItaGFzLXNpZGViYXIge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xufVxuQGNvbnRhaW5lciAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyLWhhcy1zaWRlYmFyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg2NyUsIDFmcikgbWlubWF4KDEzcmVtLCAxOC4xMjVyZW0pO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byBhdXRvIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImNvbnRlbnQgc2lkZWJhclwiIFwid2lkZ2V0cyBzaWRlYmFyXCIgXCJhY3Rpdml0eSBzaWRlYmFyXCI7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyLWhhcy1zaWRlYmFyID4gLmdsLWRldGFpbC1sYXlvdXQtY29udGVudCB7XG4gICAgZ3JpZC1hcmVhOiBjb250ZW50O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5nbC1kZXRhaWwtbGF5b3V0LWNvbnRhaW5lci1oYXMtc2lkZWJhciA+IC5nbC1kZXRhaWwtbGF5b3V0LXNpZGViYXIge1xuICAgIGdyaWQtYXJlYTogc2lkZWJhcjtcbiAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgIHRvcDogdmFyKC0tZGV0YWlsLWxheW91dC1zaWRlYmFyLXRvcCwgdmFyKC0tbGF5b3V0LXN0aWNreS1oZWFkZXItaGVpZ2h0LCAwKSk7XG4gICAgYWxpZ24tc2VsZjogc3RhcnQ7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1kZXRhaWwtbGF5b3V0LXNpZGViYXItaGVpZ2h0LCBjYWxjKHZhcigtLXBhbmVsLWNvbnRlbnQtaW5uZXItaGVpZ2h0LCBjYWxjKDEwMHZoIC0gY2FsYyhjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2FsYyh2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSkpICsgdmFyKC0tdG9wLWJhci1oZWlnaHQpKSAtIHZhcigtLXN5c3RlbS1mb290ZXItaGVpZ2h0KSkpIC0gdmFyKC0tZGV0YWlsLWxheW91dC1zaWRlYmFyLXNwYWNlLCAwcHgpKSk7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgb3ZlcnNjcm9sbC1iZWhhdmlvcjogY29udGFpbjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBhcHBseSBnbC1weC0zO1xuICAgIEBhcHBseSBnbC1weS00O1xuICAgIEBhcHBseSAtZ2wtbXQtNDtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAuZ2wtZGV0YWlsLWxheW91dC1jb250YWluZXItaGFzLXNpZGViYXIgPiAuZ2wtZGV0YWlsLWxheW91dC13aWRnZXRzIHtcbiAgICBncmlkLWFyZWE6IHdpZGdldHM7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyLWhhcy1zaWRlYmFyID4gLmdsLWRldGFpbC1sYXlvdXQtYWN0aXZpdHkge1xuICAgIGdyaWQtYXJlYTogYWN0aXZpdHk7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyLWhhcy1zaWRlYmFyOm5vdCg6aGFzKD4gLmdsLWRldGFpbC1sYXlvdXQtYWN0aXZpdHkpKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImNvbnRlbnQgc2lkZWJhclwiIFwid2lkZ2V0cyBzaWRlYmFyXCI7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyLWhhcy1zaWRlYmFyOm5vdCg6aGFzKD4gLmdsLWRldGFpbC1sYXlvdXQtd2lkZ2V0cykpIHtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiY29udGVudCBzaWRlYmFyXCIgXCJhY3Rpdml0eSBzaWRlYmFyXCI7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyLWhhcy1zaWRlYmFyOm5vdCg6aGFzKD4gLmdsLWRldGFpbC1sYXlvdXQtd2lkZ2V0cykpOm5vdCg6aGFzKD4gLmdsLWRldGFpbC1sYXlvdXQtYWN0aXZpdHkpKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJjb250ZW50IHNpZGViYXJcIjtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA3NjhweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtZGV0YWlsLWxheW91dC1jb250YWluZXItaGFzLXNpZGViYXIge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWlubWF4KDY3JSwgMWZyKSBtaW5tYXgoMTNyZW0sIDE4LjEyNXJlbSk7XG4gICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIGF1dG8gMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiY29udGVudCBzaWRlYmFyXCIgXCJ3aWRnZXRzIHNpZGViYXJcIiBcImFjdGl2aXR5IHNpZGViYXJcIjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtZGV0YWlsLWxheW91dC1jb250YWluZXItaGFzLXNpZGViYXIgPiAuZ2wtZGV0YWlsLWxheW91dC1jb250ZW50IHtcbiAgICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyLWhhcy1zaWRlYmFyID4gLmdsLWRldGFpbC1sYXlvdXQtc2lkZWJhciB7XG4gICAgZ3JpZC1hcmVhOiBzaWRlYmFyO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiB2YXIoLS1kZXRhaWwtbGF5b3V0LXNpZGViYXItdG9wLCB2YXIoLS1sYXlvdXQtc3RpY2t5LWhlYWRlci1oZWlnaHQsIDApKTtcbiAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIG1heC1oZWlnaHQ6IHZhcigtLWRldGFpbC1sYXlvdXQtc2lkZWJhci1oZWlnaHQsIGNhbGModmFyKC0tcGFuZWwtY29udGVudC1pbm5lci1oZWlnaHQsIGNhbGMoMTAwdmggLSBjYWxjKGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSkgKyB2YXIoLS10b3AtYmFyLWhlaWdodCkpIC0gdmFyKC0tc3lzdGVtLWZvb3Rlci1oZWlnaHQpKSkgLSB2YXIoLS1kZXRhaWwtbGF5b3V0LXNpZGViYXItc3BhY2UsIDBweCkpKTtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyc2Nyb2xsLWJlaGF2aW9yOiBjb250YWluO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGFwcGx5IGdsLXB4LTM7XG4gICAgQGFwcGx5IGdsLXB5LTQ7XG4gICAgQGFwcGx5IC1nbC1tdC00O1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5nbC1kZXRhaWwtbGF5b3V0LWNvbnRhaW5lci1oYXMtc2lkZWJhciA+IC5nbC1kZXRhaWwtbGF5b3V0LXdpZGdldHMge1xuICAgIGdyaWQtYXJlYTogd2lkZ2V0cztcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtZGV0YWlsLWxheW91dC1jb250YWluZXItaGFzLXNpZGViYXIgPiAuZ2wtZGV0YWlsLWxheW91dC1hY3Rpdml0eSB7XG4gICAgZ3JpZC1hcmVhOiBhY3Rpdml0eTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtZGV0YWlsLWxheW91dC1jb250YWluZXItaGFzLXNpZGViYXI6bm90KDpoYXMoPiAuZ2wtZGV0YWlsLWxheW91dC1hY3Rpdml0eSkpIHtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiY29udGVudCBzaWRlYmFyXCIgXCJ3aWRnZXRzIHNpZGViYXJcIjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtZGV0YWlsLWxheW91dC1jb250YWluZXItaGFzLXNpZGViYXI6bm90KDpoYXMoPiAuZ2wtZGV0YWlsLWxheW91dC13aWRnZXRzKSkge1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJjb250ZW50IHNpZGViYXJcIiBcImFjdGl2aXR5IHNpZGViYXJcIjtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuZ2wtZGV0YWlsLWxheW91dC1jb250YWluZXItaGFzLXNpZGViYXI6bm90KDpoYXMoPiAuZ2wtZGV0YWlsLWxheW91dC13aWRnZXRzKSk6bm90KDpoYXMoPiAuZ2wtZGV0YWlsLWxheW91dC1hY3Rpdml0eSkpIHtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IDFmcjtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcImNvbnRlbnQgc2lkZWJhclwiO1xuICB9XG59XG5cbi5wYW5lbC10b3Atb2Zmc2V0LXBhbmVsLWhlYWRlci1oZWlnaHQge1xuICB0b3A6IDIuMjVyZW07XG59XG5cbi5wYW5lbGVkLXZpZXcge1xuICBAYXBwbHkgZ2wtcmVsYXRpdmU7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1jbGlwO1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXAtMDtcbn1cblxuLnBhbmVsZWQtdmlldyxcbi5wYW5lbGVkLXZpZXctcG9ydGFsIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LTE7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgQGFwcGx5IGdsLWgtZnVsbDtcbn1cblxuLnBhbmVsZWQtdmlldy1wb3J0YWwge1xuICBAYXBwbHkgZ2wtQGNvbnRhaW5lci9wYW5lbDtcbiAgei1pbmRleDogMjUyO1xuICBAYXBwbHkgZ2wtYWJzb2x1dGU7XG4gIEBhcHBseSBnbC1yaWdodC0wO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbC14bDtcbiAgQGFwcGx5IGdsLXNoYWRvdy1sZztcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWNsaXA7XG4gIEBhcHBseSBzbTpnbC13LTgvMTA7XG4gIEBhcHBseSBAeGwvY29udGVudC1wYW5lbHM6Z2wtcmVsYXRpdmU7XG4gIEBhcHBseSBAeGwvY29udGVudC1wYW5lbHM6Z2wtdy0xLzI7XG4gIEBhcHBseSBAeGwvY29udGVudC1wYW5lbHM6Z2wtYmctdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBAeGwvY29udGVudC1wYW5lbHM6Z2wtcm91bmRlZC1sLW5vbmU7XG4gIEBhcHBseSBAeGwvY29udGVudC1wYW5lbHM6Z2wtc2hhZG93LW5vbmU7XG59XG4ucGFuZWxlZC12aWV3LXBvcnRhbDplbXB0eSB7XG4gIEBhcHBseSBnbC1oaWRkZW47XG59XG4ucGFuZWxlZC12aWV3LXBvcnRhbDpub3QoOmhhcyg+IC52dWUtcG9ydGFsLXRhcmdldCkpIHtcbiAgQGFwcGx5IGdsLWhpZGRlbjtcbn1cbi5wYW5lbGVkLXZpZXctcG9ydGFsID4gLnZ1ZS1wb3J0YWwtdGFyZ2V0IHtcbiAgZmxleDogMTtcbiAgbWluLWhlaWdodDogMDtcbn1cblxuLnBhbmVscy1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQteGw7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1jbGlwO1xuICBAYXBwbHkgZ2wtYm9yZGVyLTE7XG4gIEBhcHBseSBnbC1ib3JkZXItc29saWQ7XG4gIEBhcHBseSBnbC1ib3JkZXItdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBkYXJrOmdsLWJvcmRlci1zdWJ0bGU7XG4gIEBhcHBseSBnbC1zaGFkb3ctc207XG59XG5cbi5wYW5lbHMtY29udGFpbmVyOmhhcygrIC5haS1yZWxhdGVkLXBhbmVscyA+IC5haS1wYW5lbC13cmFwcGVyID4gLmFpLXBhbmVsKSB7XG4gIEBhcHBseSBsZzpnbC1yb3VuZGVkLXItbm9uZTtcbiAgQGFwcGx5IGxnOmdsLWJvcmRlci1yLTA7XG59XG5cbi5wYW5lbGVkLXZpZXctcG9ydGFsIHtcbiAgQGFwcGx5IHNtOmdsLWJvcmRlci1sO1xufVxuXG4uYWktcGFuZWwge1xuICBAYXBwbHkgZ2wtcm91bmRlZC14bDtcbiAgQGFwcGx5IGdsLXNoYWRvdy1zbTtcbiAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNvbGlkO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgZGFyazpnbC1ib3JkZXItZGVmYXVsdDtcbiAgQGFwcGx5IGRhcms6bGc6Z2wtYm9yZGVyLXN1YnRsZTtcbiAgQGFwcGx5IGxnOmdsLWJvcmRlci1sLWRlZmF1bHQ7XG4gIEBhcHBseSBsZzpnbC1yb3VuZGVkLWwtbm9uZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAuYWktcGFuZWwge1xuICAgIGNsaXAtcGF0aDogaW5zZXQoLTAuNXJlbSAtMC41cmVtIC0wLjVyZW0gMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzZXNzaW9uLXBpbGwtcHVsc2Uge1xuICAwJSwgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDAuNDtcbiAgfVxufVxuLnBhbmVsLWhlYWRlci1pbm5lciB7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LXN0YXJ0O1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtcHQtMjtcbiAgQGFwcGx5IGdsLXBsLVstLWNvbnRhaW5lci1wYWRkaW5nLXhdO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjQzNzVyZW07XG4gIEBhcHBseSBnbC1yb3VuZGVkLXQtbGc7XG4gIHotaW5kZXg6IDk5O1xuICBtaW4taGVpZ2h0OiAyLjI1cmVtO1xufVxuLnBhbmVsLWhlYWRlci1pbm5lciAuZ2wtYnV0dG9uLmJ1dHRvbi1lbGxpcHNpcy1ob3Jpem9udGFsLmJ0bi1zbSwgLnBhbmVsLWhlYWRlci1pbm5lciAuYnRuLWdyb3VwLXNtID4gLmdsLWJ1dHRvbi5idXR0b24tZWxsaXBzaXMtaG9yaXpvbnRhbC5idG4ge1xuICBAYXBwbHkgZ2wtcHgtMDtcbiAgbWluLWhlaWdodDogMS41cmVtO1xuICBtaW4td2lkdGg6IDEuNXJlbTtcbn1cblxuLnBhbmVsLWhlYWRlci1pbm5lci10ZXh0IHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtbWluLXctMDtcbiAgQGFwcGx5IGdsLWdhcC0zO1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbn1cblxuLnBhbmVsLWhlYWRlci1pbm5lci1hY3Rpb25zIHtcbiAgQGFwcGx5IGdsLW1sLWF1dG87XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG59XG5cbi5wYW5lbC1oZWFkZXItY29udHJvbHMge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMDtcbiAgQGFwcGx5IGdsLW1sLTI7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1sZykgKyAxcHgpO1xufVxuXG4ucGFuZWwtaGVhZGVyLWlubmVyLWFjdGlvbnMtcG9ydGFsLXRhcmdldCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucGFuZWwtaGVhZGVyLWlubmVyLWFjdGlvbnMtcG9ydGFsLXRhcmdldDpoYXMoPiAudnVlLXBvcnRhbC10YXJnZXQpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ucGFuZWwtaGVhZGVyLWlubmVyLWFjdGlvbnMtcG9ydGFsLXRhcmdldCA+IC52dWUtcG9ydGFsLXRhcmdldCB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG59XG5cbi5wYW5lbC1jb250ZW50IHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgQGFwcGx5IGdsLWZsZXgtMTtcbiAgQGFwcGx5IGdsLW1pbi1oLTA7XG4gIGNvbnRhaW46IGxheW91dDtcbiAgQGFwcGx5IGdsLXBiLTM7XG59XG5cbi5zdGF0aWMtcGFuZWwtLWhlYWRlcmxlc3MgLnBhbmVsLWNvbnRlbnQge1xuICBAYXBwbHkgZ2wtbXQtMztcbn1cbi5zdGF0aWMtcGFuZWwtLWhlYWRlcmxlc3MgLnBhbmVsLWNvbnRlbnQgLnBhbmVsLWNvbnRlbnQtaW5uZXI6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1oaWRkZW47XG59XG5cbi5wYW5lbC1jb250ZW50LWlubmVyIHtcbiAgQGFwcGx5IGdsLWZsZXgtMTtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LXgtaGlkZGVuO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3cteS1hdXRvO1xuICBzY3JvbGxiYXItZ3V0dGVyOiBzdGFibGU7XG4gIGNvbnRhaW5lci10eXBlOiBzY3JvbGwtc3RhdGU7XG59XG4ucGFuZWwtY29udGVudC1pbm5lcjpmb2N1cyB7XG4gIEBhcHBseSBnbC1vdXRsaW5lLW5vbmU7XG59XG5cbi5wYW5lbC1jb250ZW50LWlubmVyOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG4gIEBhcHBseSBnbC1ibG9jaztcbiAgQGFwcGx5IGdsLXN0aWNreTtcbiAgQGFwcGx5IGdsLXRvcC0wO1xuICBAYXBwbHkgZ2wtbGVmdC0wO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtaC0yO1xuICBAYXBwbHkgLWdsLW1iLTI7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIEBhcHBseSBnbC1ib3JkZXItYi1zdWJ0bGU7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBjb250YWluZXIgc2Nyb2xsLXN0YXRlKHNjcm9sbGFibGU6IHRvcCkge1xuICAucGFuZWwtY29udGVudC1pbm5lcjo6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cblxuLnBhbmVsLWNvbnRlbnQtaW5uZXIgPiAuY29udGFpbmVyLWZsdWlkLCAucGFuZWwtY29udGVudC1pbm5lciA+IC5jb250YWluZXItc20sIC5wYW5lbC1jb250ZW50LWlubmVyID4gLmNvbnRhaW5lci1tZCwgLnBhbmVsLWNvbnRlbnQtaW5uZXIgPiAuY29udGFpbmVyLWxnLCAucGFuZWwtY29udGVudC1pbm5lciA+IC5jb250YWluZXIteGwge1xuICBAYXBwbHkgZ2wtcHgtWy0tY29udGFpbmVyLXBhZGRpbmcteF07XG59XG5cbi5wYW5lbC1mb290ZXIge1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXBsLVstLWNvbnRhaW5lci1wYWRkaW5nLXhdO1xuICBAYXBwbHkgZ2wtcHItMztcbiAgQGFwcGx5IGdsLXB0LTM7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbn1cbkBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gIC5wYW5lbC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZDtcbiAgfVxufVxuXG4ucGFuZWwtaGVhZGVyIC5wYW5lbC1oZWFkZXItaW5uZXIud2l0aG91dC1icmVhZGNydW1icyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3MsIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGEgc3BlY2lmaWMgcGFuZWwtaGVhZGVyLWlubmVyIGVsZW1lbnQgKi9cbn1cbi5wYW5lbC1oZWFkZXIgLnBhbmVsLWhlYWRlci1pbm5lci53aXRob3V0LWJyZWFkY3J1bWJzOmhhcyg+IDppcyguZ2wtYmFkZ2UsIC5nbC1idXR0b24pLCAucGFuZWwtaGVhZGVyLWlubmVyLWFjdGlvbnMgOmlzKC5nbC1iYWRnZSwgLmdsLWJ1dHRvbikpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBlbmQ7XG59XG5cbi5wYW5lbGVkLXZpZXcuYWktcGFuZWwge1xuICBAYXBwbHkgZ2wtZ3JvdztcbiAgQGFwcGx5IG1heC1sZzpnbC1maXhlZDtcbiAgQGFwcGx5IG1heC1sZzpnbC1zaGFkb3ctbGc7XG4gIEBhcHBseSBnbC1sZWZ0LTM7XG4gIEBhcHBseSAtZ2wtbXQtMjtcbiAgdG9wOiBjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2FsYyh2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSkpO1xuICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0zKSAqIDIpO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyBjYWxjKHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArIHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpKSkgLSB2YXIoLS1haS1uYXZpZ2F0aW9uLXJhaWwtc2l6ZSkgKyB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTIpICogMik7XG4gIHotaW5kZXg6IDk5OTtcbn1cbi5wYW5lbGVkLXZpZXcuYWktcGFuZWwgLnBhbmVsLWhlYWRlci1pbm5lciB7XG4gIHotaW5kZXg6IDEwMDA7XG59XG5AbWVkaWEgKG1pbi13aWR0aDogNTc2cHgpIHtcbiAgLnBhbmVsZWQtdmlldy5haS1wYW5lbCB7XG4gICAgQGFwcGx5IGdsLWxlZnQtNTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS01KSAqIDIpO1xuICB9XG59XG5AbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhbmVsZWQtdmlldy5haS1wYW5lbCB7XG4gICAgQGFwcGx5IGdsLXRvcC0wO1xuICAgIEBhcHBseSBnbC1sZWZ0LTA7XG4gICAgQGFwcGx5IGdsLW0tMDtcbiAgICB3aWR0aDogdmFyKC0tYWktcGFuZWwtd2lkdGgpO1xuICAgIEBhcHBseSBnbC1oLWZ1bGw7XG4gICAgei1pbmRleDogYXV0bztcbiAgfVxufVxuXG4uYWktcGFuZWwtY29udGVudC1pbm5lciB7XG4gIHNjcm9sbGJhci1ndXR0ZXI6IGF1dG87XG59XG5cbi8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3MgLS0gc2NvcGVkIHRvIGEgc3BlY2lmaWMgcGFuZWwtY29udGVudCB1c2UgKi9cbi5wYWdlLXdpdGgtcGFuZWxzIC5nbC1kcmF3ZXIge1xuICB3aWR0aDogbWluKDEwMCUgLSB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTYpLCA0MDBweCk7XG59XG5cbi5hdHdoby12aWV3IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBtaW4td2lkdGg6IDE1LjVyZW07XG4gIG1heC13aWR0aDogMjguNXJlbTtcbiAgQGFwcGx5IGdsLWJvcmRlci1kcm9wZG93bjtcbiAgQGFwcGx5IGdsLWJnLWRyb3Bkb3duO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBib3JkZXItcmFkaXVzOiAwLjVyZW07XG4gIEBhcHBseSBnbC1zaGFkb3ctbWQ7XG59XG4uYXR3aG8tdmlldyBzbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuLmF0d2hvLXZpZXcgc21hbGwuZGVzY3JpcHRpb24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi10b3A6IDAuMjVyZW07XG59XG4uYXR3aG8tdmlldyAuYXZhdGFyLWlubGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYXR3aG8tdmlldyAuaGFzLXdhcm5pbmcgLmRlc2NyaXB0aW9uIHtcbiAgY29sb3I6ICMyODI3MmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZGYwZDU7XG59XG4uYXR3aG8tdmlldyAuY3VyIC5hdmF0YXIge1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmZjtcbn1cbi5hdHdoby12aWV3IC5hdHdoby12aWV3LXVsIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBtYXgtaGVpZ2h0OiAxOS41cmVtO1xufVxuLmF0d2hvLXZpZXcgLmF0d2hvLXZpZXctdWwgbGkge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDZweDtcbiAgbWFyZ2luLXRvcDogMC4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMXJlbTtcbn1cbi5hdHdoby12aWV3IC5hdHdoby12aWV3LXVsIGxpLmN1ciB7XG4gIEBhcHBseSBnbC1mb2N1cztcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWhvdmVyKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1ob3Zlcik7XG59XG4uYXR3aG8tdmlldyAuYXR3aG8tdmlldy11bCBsaS5jdXIgc21hbGwge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cbi5hdHdoby12aWV3IC5hdHdoby12aWV3LXVsIGxpLmN1ci5oYXMtd2FybmluZyB7XG4gIEBhcHBseSBnbC10ZXh0LXdhcm5pbmc7XG59XG4uYXR3aG8tdmlldyAuYXR3aG8tdmlldy11bCBsaSBkaXYuYXZhdGFyIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmF0d2hvLXZpZXcgLmF0d2hvLXZpZXctdWwgbGkgc3Ryb25nIHtcbiAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xufVxuLmF0d2hvLXZpZXcgLmF0d2hvLXZpZXctdWwgbGkgZ2wtZW1vamkge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcbn1cbi5hdHdoby12aWV3IC5hdHdoby12aWV3LXVsIGxpIGdsLWVtb2ppIGltZyB7XG4gIG1hcmdpbi1ibG9jazogLTAuMWVtO1xuICB0b3A6IDAuMDVlbTtcbn1cbi5hdHdoby12aWV3IC5hdHdoby12aWV3LXVsIGxpIC5kcm9wZG93bi1sYWJlbC1ib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTFweDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuXG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5hdHdoby12aWV3IHVsIGxpIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmF0d2hvLXZpZXcgdWwgbGkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cbn1cblt2LWNsb2FrPXRydWVdIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4vKlxuIEVudHJ5IHBvaW50IGZvciBFRSBzcGVjaWZpYyBDU1NcbiAqL1xuLmR1by1jaGF0LXJlc2l6YWJsZSB7XG4gIHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xufVxuXG4uZHVvLWNoYXQtY29udGFpbmVyIC5kdW8tY2hhdC1kcmF3ZXIge1xuICB6LWluZGV4OiAxMDQwO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLmR1by1jaGF0LWNvbnRhaW5lciAuZHVvLWNoYXQtZHJhd2VyIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLmR1by1jaGF0LWNvbnRhaW5lciAuZHVvLWNoYXQtZHJhd2VyIHtcbiAgICB3aWR0aDogNDAwcHg7XG4gIH1cbn1cblxuLmR1by1jaGF0LWNhbGxvdXQtcG9wb3ZlciB7XG4gIHdpZHRoOiAzODRweDtcbiAgei1pbmRleDogNjAwO1xufVxuLmR1by1jaGF0LWNhbGxvdXQtcG9wb3Zlci5icy1wb3BvdmVyLWJvdHRvbSAuYXJyb3c6OmFmdGVyLCAuZHVvLWNoYXQtY2FsbG91dC1wb3BvdmVyLmJzLXBvcG92ZXItYXV0b1t4LXBsYWNlbWVudF49Ym90dG9tXSAuYXJyb3c6OmFmdGVyIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogI2M0YmFlMjtcbiAgdG9wOiAxcHg7XG59XG5cbi5kdW8tY2hhdC1tZXNzYWdlIHByZSB7XG4gIHBvc2l0aW9uOiBpbml0aWFsO1xufVxuLmR1by1jaGF0LW1lc3NhZ2UgcHJlLnNjcmltLWJvdHRvbTo6YWZ0ZXIsIC5kdW8tY2hhdC1tZXNzYWdlIHByZS5zY3JpbS10b3A6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHJnYmEoMCwgMCwgMCwgMCksIHZhcigtLWNvZGUtYmFja2dyb3VuZCkpO1xufVxuXG4vKipcbiogU3RhcnQ6IFRoZXNlIHN0eWxlcyBvbmx5IGFmZmVjdCBEdW8gQ2hhdCBDbGFzc2ljIChOb24tQWdlbnRpYylcbiovXG4uZHVvLWNoYXQud2ViLW9ubHkgLmR1by1jaGF0LWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cbi5kdW8tY2hhdC53ZWItb25seSAuZHVvLWNoYXQtaW5wdXQ6OmFmdGVyIHtcbiAgQGFwcGx5IGdsLXAtMjtcbn1cblxuLmR1by1jaGF0LndlYi1vbmx5IC5kdW8tY2hhdC1pbnB1dC13cmFwIHtcbiAgbWluLWhlaWdodDogODBweDtcbiAgbWF4LWhlaWdodDogMjQwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uZHVvLWNoYXQud2ViLW9ubHkgLmR1by1jaGF0LWlucHV0LXdyYXAuZHVvLWNoYXQtaW5wdXQtd3JhcC1maXhlZCB7XG4gIG1pbi1oZWlnaHQ6IDg0cHg7XG4gIG1heC1oZWlnaHQ6IDg0cHg7XG59XG4uZHVvLWNoYXQud2ViLW9ubHkgLmR1by1jaGF0LWlucHV0LXdyYXAgLmR1by1jaGF0LXRleHRhcmVhIHtcbiAgZmxleDogMTtcbiAgcmVzaXplOiBub25lO1xufVxuLmR1by1jaGF0LndlYi1vbmx5IC5kdW8tY2hhdC1pbnB1dC13cmFwOjphZnRlciB7XG4gIGNvbnRlbnQ6IGF0dHIoZGF0YS12YWx1ZSkgXCIgXCI7XG4gIEBhcHBseSBnbC1pbnZpc2libGU7XG4gIEBhcHBseSBnbC1wLTQ7XG4gIEBhcHBseSBnbC1mb250LXJlZ3VsYXI7XG4gIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi8qKlxuKiBFbmRcbiovXG4uYWdlbnRpYy1jaGF0LWlucHV0IHtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG59XG4uYWdlbnRpYy1jaGF0LWlucHV0OmZvY3VzLXdpdGhpbiB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDFweCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1cyksIDAgMCAwIDFweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSwgMCAwIDAgM3B4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpO1xuICBvdXRsaW5lOiBub25lO1xufVxuQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgLmFnZW50aWMtY2hhdC1pbnB1dDpmb2N1cy13aXRoaW4ge1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dDtcbiAgfVxufVxuXG4uYWdlbnRpYy1jaGF0LXRleHRhcmVhIHtcbiAgbWluLWhlaWdodDogODBweDtcbn1cbi5hZ2VudGljLWNoYXQtdGV4dGFyZWEuYWdlbnRpYy1jaGF0LXRleHRhcmVhLXBhZGRlZCB7XG4gIG1pbi1oZWlnaHQ6IGNhbGMoODBweCArIHZhcigtLWdsLXNwYWNpbmctc2NhbGUtNCkgLSAwLjVyZW0pO1xufVxuXG4ucGFuZWwtY29udGVudC1pbm5lci5kdW8tY2hhdC1zY3JvbGwtc2NyaW1zOjpiZWZvcmUsIC5wYW5lbC1jb250ZW50LWlubmVyLmR1by1jaGF0LXNjcm9sbC1zY3JpbXM6OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsZXgtc2hyaW5rOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycmVtO1xuICBib3JkZXI6IDA7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4ycyBlYXNlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5wYW5lbC1jb250ZW50LWlubmVyLmR1by1jaGF0LXNjcm9sbC1zY3JpbXM6OmJlZm9yZSB7XG4gIHRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogLTJyZW07XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCksIHRyYW5zcGFyZW50KTtcbn1cbkBjb250YWluZXIgc2Nyb2xsLXN0YXRlKHNjcm9sbGFibGU6IHRvcCkge1xuICAucGFuZWwtY29udGVudC1pbm5lci5kdW8tY2hhdC1zY3JvbGwtc2NyaW1zOjpiZWZvcmUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuLnBhbmVsLWNvbnRlbnQtaW5uZXIuZHVvLWNoYXQtc2Nyb2xsLXNjcmltczo6YWZ0ZXIge1xuICBib3R0b206IDA7XG4gIG1hcmdpbi10b3A6IC0ycmVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLCB0cmFuc3BhcmVudCk7XG59XG5AY29udGFpbmVyIHNjcm9sbC1zdGF0ZShzY3JvbGxhYmxlOiBib3R0b20pIHtcbiAgLnBhbmVsLWNvbnRlbnQtaW5uZXIuZHVvLWNoYXQtc2Nyb2xsLXNjcmltczo6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG4uZHVvLWNoYXQud2ViLW9ubHkgLmR1by1jaGF0LW1lc3NhZ2UgcHJlIGNvZGUge1xuICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4uYXVkaXQtbG9nLXRhYmxlIC5nbC10YWJsZSB0aCB7XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xufVxuXG4uZ2wtYmFubmVyIC5yb3VuZGVkLWJvdHRvbS1yaWdodC05IHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDNyZW07XG59XG5cbi5kcmFmdC1ub3RlIC5ub3RlLWhlYWRlci1pbmZvIHtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG59XG4uZHJhZnQtbm90ZSAudGltZWxpbmUtY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXRpbWVsaW5lLWVudHJ5LWRyYWZ0LW5vdGUtYmFja2dyb3VuZC1jb2xvcikgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAyLjVyZW07XG4gIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xufVxuXG4uZHJhZnQtbm90ZS1yZWZlcmVuY2VkLWNvbW1hbmRzIHAge1xuICBtYXJnaW46IDA7XG59XG5cbi5kaWZmLWNvbnRlbnQgLmRyYWZ0LW5vdGUgLnRpbWVsaW5lLWNvbnRlbnQsXG4uY2FyZCAuZHJhZnQtbm90ZSAudGltZWxpbmUtY29udGVudCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5kaWZmLWNvbnRlbnQgLmRyYWZ0LW5vdGU6bGFzdC1vZi10eXBlIC50aW1lbGluZS1jb250ZW50LFxuLmNhcmQgLmRyYWZ0LW5vdGU6bGFzdC1vZi10eXBlIC50aW1lbGluZS1jb250ZW50IHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xufVxuXG4uZmlsZXMgLmRyYWZ0LW5vdGUge1xuICBtYXJnaW46IDAgLTFweDtcbn1cbi5maWxlcyAuZHJhZnQtbm90ZSAudGltZWxpbmUtZW50cnktaW5uZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTk1ZjIxICFpbXBvcnRhbnQ7XG59XG4uZmlsZXMgLmRyYWZ0LW5vdGUgLnRpbWVsaW5lLWNvbnRlbnQge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmZpbGVzIC5kcmFmdC1ub3RlIC50aW1lbGluZS1hdmF0YXIge1xuICBtYXJnaW46IDAuNXJlbSAwIDAgMXJlbTtcbn1cblxuLmdlbmVyaWMtcmVwb3J0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyO1xufVxuQGNvbnRhaW5lciBwYW5lbCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuZ2VuZXJpYy1yZXBvcnQtY29udGFpbmVyIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1heC1jb250ZW50IG1pbm1heCgwLCAxZnIpO1xuICB9XG59XG5cbi5nZW5lcmljLXJlcG9ydC1yb3cge1xuICBkaXNwbGF5OiBjb250ZW50cztcbn1cbi5nZW5lcmljLXJlcG9ydC1yb3c6bGFzdC1jaGlsZCAuZ2VuZXJpYy1yZXBvcnQtY29sdW1uIHtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cblxuLmdlbmVyaWMtcmVwb3J0LWNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctdG9wOiAwLjI1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC4yNXJlbTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cbi5nZW5lcmljLXJlcG9ydC1jb2x1bW46Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cbi5nZW5lcmljLXJlcG9ydC1jb2x1bW46bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG59XG5AY29udGFpbmVyIHBhbmVsIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5nZW5lcmljLXJlcG9ydC1jb2x1bW4ge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgfVxuICAuZ2VuZXJpYy1yZXBvcnQtY29sdW1uOmZpcnN0LWNoaWxkIHtcbiAgICBtYXgtd2lkdGg6IDE1cmVtO1xuICB9XG59XG5cbi5nZW5lcmljLXJlcG9ydC1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uZ2VuZXJpYy1yZXBvcnQtbGlzdCBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4uZ2VuZXJpYy1yZXBvcnQtbGlzdCBsaTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5nZW5lcmljLXJlcG9ydC1saXN0LmdlbmVyaWMtcmVwb3J0LWxpc3QtbmVzdGVkIGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcbn1cblxuLmdlbmVyaWMtcmVwb3J0LW5hbWVkLWxpc3Qge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1heC1jb250ZW50IGF1dG87XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuLmdlbmVyaWMtcmVwb3J0LW5hbWVkLWxpc3QgPiAuZ2VuZXJpYy1yZXBvcnQtbmFtZWQtbGlzdC1pdGVtIHtcbiAgZGlzcGxheTogY29udGVudHM7XG59XG5cbi5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWl0ZW0ge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuLmdlbmVyaWMtcmVwb3J0LW5hbWVkLWxpc3QtaXRlbSAuZ2VuZXJpYy1yZXBvcnQtbmFtZWQtbGlzdC1sYWJlbCxcbi5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWl0ZW0gLmdlbmVyaWMtcmVwb3J0LW5hbWVkLWxpc3QtdmFsdWUge1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbn1cbi5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWl0ZW06Zmlyc3QtY2hpbGQgPiAuZ2VuZXJpYy1yZXBvcnQtbmFtZWQtbGlzdC1sYWJlbCxcbi5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWl0ZW06Zmlyc3QtY2hpbGQgPiAuZ2VuZXJpYy1yZXBvcnQtbmFtZWQtbGlzdC12YWx1ZSB7XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuLmdlbmVyaWMtcmVwb3J0LW5hbWVkLWxpc3QtaXRlbTpsYXN0LWNoaWxkID4gLmdlbmVyaWMtcmVwb3J0LW5hbWVkLWxpc3QtbGFiZWwsXG4uZ2VuZXJpYy1yZXBvcnQtbmFtZWQtbGlzdC1pdGVtOmxhc3QtY2hpbGQgPiAuZ2VuZXJpYy1yZXBvcnQtbmFtZWQtbGlzdC12YWx1ZSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xufVxuXG4uc2VjdXJpdHktcG9saWNpZXMtYWxlcnQge1xuICB0b3A6IGNhbGMoY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSk7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1wb3BvdmVyLWNvbnRlbnQtaGVpZ2h0IHtcbiAgaGVpZ2h0OiAxMnJlbTtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLXRleHRhcmVhLW1pbi1oZWlnaHQge1xuICBtaW4taGVpZ2h0OiAyMDBweDtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWxpY2Vuc2UtbW9kYWwtbWluLWhlaWdodCB7XG4gIG1pbi1oZWlnaHQ6IDcwMHB4O1xufVxuXG4uc2VjdXJpdHktcG9saWNpZXMtdmFyaWFibGVzLW1vZGFsLW1pbi1oZWlnaHQge1xuICBtaW4taGVpZ2h0OiA1MDBweDtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWFwcHJvdmVyLW1heC13aWR0aCB7XG4gIG1heC13aWR0aDogMzMwcHg7XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1leGNlcHRpb25zLW1vZGFsLWhlaWdodCB7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuXG4uc2VjdXJpdHktcG9saWNpZXMtYmctc3VidGxlIHtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzIHtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJjb250ZW50IHNpZGViYXJcIjtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMzUwcHg7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG4gIGdyaWQtZ2FwOiAxcmVtO1xufVxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPj0gOTkycHgpIHtcbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnNlY3VyaXR5LXBvbGljaWVzIHtcbiAgICBncmlkLWdhcDogMCAycmVtO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC5zZWN1cml0eS1wb2xpY2llcyB7XG4gICAgZ3JpZC1nYXA6IDAgMnJlbTtcbiAgfVxufVxuXG4uc2VjdXJpdHktcG9saWNpZXMtc3BsaXQtdmlldyB7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6IFwiY29udGVudCBzaWRlYmFyXCI7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDk5MnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5zZWN1cml0eS1wb2xpY2llcy1zcGxpdC12aWV3IC5zZWN1cml0eS1wb2xpY2llcy1ydWxlLXNlY3Rpb24ge1xuICAgIHdpZHRoOiB2YXIoLS1ydWxlLXNlY3Rpb24td2lkdGgsIDEwMCUpO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC5zZWN1cml0eS1wb2xpY2llcy1zcGxpdC12aWV3IC5zZWN1cml0eS1wb2xpY2llcy1zaWRlYmFyIHtcbiAgICB3aWR0aDogdmFyKC0teWFtbC1zZWN0aW9uLXdpZHRoLCAxMDAlKTtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA+PSA5OTJweCkge1xuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuc2VjdXJpdHktcG9saWNpZXMtc3BsaXQtdmlldyAuc2VjdXJpdHktcG9saWNpZXMtcnVsZS1zZWN0aW9uIHtcbiAgICB3aWR0aDogdmFyKC0tcnVsZS1zZWN0aW9uLXdpZHRoLCAxMDAlKTtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAuc2VjdXJpdHktcG9saWNpZXMtc3BsaXQtdmlldyAuc2VjdXJpdHktcG9saWNpZXMtc2lkZWJhciB7XG4gICAgd2lkdGg6IHZhcigtLXlhbWwtc2VjdGlvbi13aWR0aCwgMTAwJSk7XG4gIH1cbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWFjdGlvbnMge1xuICBncmlkLWFyZWE6IGNvbnRlbnQ7XG4gIGdyaWQtcm93OiBhdXRvO1xufVxuXG4uc2VjdXJpdHktcG9saWNpZXMtYWN0aW9ucy1zaWRlYmFyIHtcbiAgZ3JpZC1hcmVhOiBzaWRlYmFyO1xuICBncmlkLXJvdzogYXV0bztcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLXNpZGViYXIge1xuICBncmlkLWFyZWE6IHNpZGViYXI7XG4gIGdyaWQtcm93OiAxL3NwYW4gMjtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWRyYWctaGFuZGxlIHtcbiAgd2lkdGg6IDE2cHggIWltcG9ydGFudDtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWRyYWctaGFuZGxlOmhvdmVyIHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWRyYWctaGFuZGxlLmlzLWRyYWdnaW5nIHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWRyYWctdGh1bWJuYWlsIHtcbiAgaGVpZ2h0OiA0MHB4ICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5zZWN1cml0eS1kYXNoYm9hcmQtZmlsdGVycyB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogY2FsYyhjYWxjKHZhcigtLWhlYWRlci1oZWlnaHQpICsgY2FsYyh2YXIoLS1zeXN0ZW0taGVhZGVyLWhlaWdodCkgKyB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSkpICsgdmFyKC0tdG9wLWJhci1oZWlnaHQpKTtcbiAgei1pbmRleDogMTtcbn1cblxuLnZ1bG5lcmFiaWxpdHktbGlzdC1ncmFwaHFsIHtcbiAgLS1zdGlja3ktY29udGFpbmVyLWhlaWdodDogMDtcbn1cblxuLnZ1bG5lcmFiaWxpdHktbGlzdCB7XG4gIGlzb2xhdGlvbjogaXNvbGF0ZTtcbn1cbkBjb250YWluZXIgcGFuZWwgKHdpZHRoID49IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC52dWxuZXJhYmlsaXR5LWxpc3QgLmNoZWNrYm94IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB3aWR0aDogMXB4O1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC52dWxuZXJhYmlsaXR5LWxpc3QgLmNoZWNrYm94ICsgdGQsXG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC52dWxuZXJhYmlsaXR5LWxpc3QgLmNoZWNrYm94ICsgdGgge1xuICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudnVsbmVyYWJpbGl0eS1saXN0IC5kZXRlY3RlZCB7XG4gICAgd2lkdGg6IDklO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC52dWxuZXJhYmlsaXR5LWxpc3QgLnN0YXR1cyB7XG4gICAgd2lkdGg6IDEwJTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudnVsbmVyYWJpbGl0eS1saXN0IC5zZXZlcml0eSB7XG4gICAgd2lkdGg6IDklO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC52dWxuZXJhYmlsaXR5LWxpc3QgLmRlc2NyaXB0aW9uIHtcbiAgICBtYXgtd2lkdGg6IDA7XG4gIH1cbiAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgLnZ1bG5lcmFiaWxpdHktbGlzdCAuaWRlbnRpZmllciB7XG4gICAgd2lkdGg6IDE2JTtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudnVsbmVyYWJpbGl0eS1saXN0IC5zY2FubmVyIHtcbiAgICB3aWR0aDogMTAlO1xuICB9XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC52dWxuZXJhYmlsaXR5LWxpc3QgLmFjdGl2aXR5IHtcbiAgICB3aWR0aDogNSU7XG4gIH1cbn1cbkBtZWRpYSAod2lkdGggPj0gNTc2cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnZ1bG5lcmFiaWxpdHktbGlzdCAuY2hlY2tib3gge1xuICAgIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxcHg7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnZ1bG5lcmFiaWxpdHktbGlzdCAuY2hlY2tib3ggKyB0ZCxcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnZ1bG5lcmFiaWxpdHktbGlzdCAuY2hlY2tib3ggKyB0aCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwLjc1cmVtO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC52dWxuZXJhYmlsaXR5LWxpc3QgLmRldGVjdGVkIHtcbiAgICB3aWR0aDogOSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnZ1bG5lcmFiaWxpdHktbGlzdCAuc3RhdHVzIHtcbiAgICB3aWR0aDogMTAlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC52dWxuZXJhYmlsaXR5LWxpc3QgLnNldmVyaXR5IHtcbiAgICB3aWR0aDogOSU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnZ1bG5lcmFiaWxpdHktbGlzdCAuZGVzY3JpcHRpb24ge1xuICAgIG1heC13aWR0aDogMDtcbiAgfVxuICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAudnVsbmVyYWJpbGl0eS1saXN0IC5pZGVudGlmaWVyIHtcbiAgICB3aWR0aDogMTYlO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC52dWxuZXJhYmlsaXR5LWxpc3QgLnNjYW5uZXIge1xuICAgIHdpZHRoOiAxMCU7XG4gIH1cbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnZ1bG5lcmFiaWxpdHktbGlzdCAuYWN0aXZpdHkge1xuICAgIHdpZHRoOiA1JTtcbiAgfVxufVxuLnZ1bG5lcmFiaWxpdHktbGlzdCB0aGVhZCB7XG4gIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbiAgei1pbmRleDogMjtcbiAgdG9wOiBjYWxjKGNhbGMoY2FsYyh2YXIoLS1oZWFkZXItaGVpZ2h0KSArIGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpKSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSkgKyB2YXIoLS1zdGlja3ktY29udGFpbmVyLWhlaWdodCkpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xufVxuLnZ1bG5lcmFiaWxpdHktbGlzdCB0aGVhZCB0aCB7XG4gIGJvcmRlci10b3A6IDA7XG59XG5cbi8qXG4qIFNBU1MgcHJlc2VydmVzIHVuaXRzIGluIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4gRm9yIGV4YW1wbGU6XG4qIDEyZW0gKiAwID0gMGVtLiBUaGlzIGZ1bmN0aW9uIHJldHVybiB0aGUgdW5pdCBvZiBhIG51bWVyaWMgdmFsdWUuXG4qXG4qIEZvciBtb3JlIGV4YW1wbGVzLCBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9wYXVsZ3YvcGVuL1hXcnFNZ1FcbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWVuYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qXG4gKiBMYXlvdXRcbiAqL1xuLyoqXG4gIPCfmqggRG8gbm90IHVzZSB0aGlzIHNwYWNpbmcgc2NhbGUg4oCUIGl0IGlzIGRlcHJlY2F0ZWQgYW5kIGJlaW5nIHJlbW92ZWQuIPCfmqhcbiAgU2VlIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi9pc3N1ZXMvMzY4NTcgZm9yIG1vcmUgZGV0YWlscy5cblxuICBJbnN0ZWFkLCBpZiB5b3UgbmVlZCBhIHNwYWNpbmcgY2xhc3MsIGFkZCBpdCB0byBhcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9jb21tb24uc2NzcyxcbiAgdXNpbmcgdGhlIGZvbGxvd2luZyB2YWx1ZXMuXG5cbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0wOiAwO1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTE6IDJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0yOiA0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMzogOHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTQ6IDEycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNTogMTZweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS02OiAyNHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTc6IDMycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtODogNDBweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS05OiA0OHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEwOiA1NnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTExOiA2NHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEyOiA4MHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEzOiA5NnB4O1xuXG4gIEUuZy4sIGEgcGFkZGluZyB0b3Agb2YgOTZweCBjYW4gYmUgYWRkZWQgdXNpbmc6XG4gIC5nbC1zaGltLXB0LTEzIHtcbiAgICBwYWRkaW5nLXRvcDogOTZweDtcbiAgfVxuXG4gIFBsZWFzZSB1c2UgLXNoaW0tIHNvIGl0IGNhbiBiZSBkaWZmZXJlbnRpYXRlZCBmcm9tIHRoZSBvbGQgc2NhbGUgY2xhc3Nlcy5cblxuICBUaGVzZSB3aWxsIGJlIHJlcGxhY2VkIHdoZW4gdGhlIEdpdGxhYiBVSSB1dGlsaXRpZXMgYXJlIGluY2x1ZGVkLlxuKiovXG4vKiBXaWxsIGJlIG1vdmVkIHRvIEBnaXRsYWIvdWkgYnkgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXNlcnZpY2VzL2Rlc2lnbi5naXRsYWIuY29tLy0vaXNzdWVzLzI3OTIgKi9cbi8qIEVuZCBnaXRsYWItdWkjMTcwOSAqL1xuLypcbiAqIFRleHRcbiAqL1xuLypcbiAqIExpc3RzXG4gKi9cbi8qXG4gKiBDb2RlXG4gKi9cbi8qXG4gKiBUb29sdGlwc1xuICovXG4vKlxuICogUGFkZGluZ1xuICovXG4vKlxuICogTWlzY1xuICovXG4vKlxuICogTWVyZ2UgcmVxdWVzdHNcbiAqL1xuLypcbiAqIENhbGN1bGF0ZWQgaGVpZ2h0c1xuICovXG4vKiB0YW51a2kgbG9nbyBjb2xvcnMgKi9cbi8qXG4gKiBTdGF0ZSBjb2xvcnM6XG4gKi9cbi8qXG4gKiBDb21taXQgRGlmZiBDb2xvcnNcbiAqL1xuLypcbiAqIFRoZSB0cmFuc3BhcmVudCBjb2xvcnMgYXJlIHVzZWQgaW4gTW9uYWNvIGVkaXRvci4gVXNpbmcgZnVsbCBvcGFjaXR5IGNvbG9yc1xuICogd291bGQgaGlkZSBvdGhlciBsYXllcnMgKHNlbGVjdGVkIHRleHQsIG1hdGNoaW5nIGJyYWNrZXRzKS5cbiAqXG4gKiBXaGVuIHRoZSB0cmFuc3BhcmVudCBjb2xvcnMgZ2V0IGxheWVyZWQgb24gd2hpdGUgYmFja2dyb3VuZCwgdGhleSBjcmVhdGUgdGhlaXJcbiAqIGZ1bGwgb3BhY2l0eSBjb3VudGVycGFydHM6XG4gKlxuICogIC0gd2hpdGUgKyAkbGluZS1hZGRlZC10cmFuc3BhcmVudCA9ICRsaW5lLWFkZGVkXG4gKiAgLSB3aGl0ZSArICRsaW5lLWFkZGVkLXRyYW5zcGFyZW50ICsgJGxpbmUtYWRkZWQtZGFyay10cmFuc3BhcmVudCA9ICRsaW5lLWFkZGVkLWRhcmtcbiAqXG4gKiBNb3JlIGRldGFpbHM6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzQxNTUzXG4gKi9cbi8qXG4gKiBGb250c1xuICogVGhlIC0tZGVmYXVsdC1tb25vLWZvbnQgYW5kIC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQgdmFyaWFibGVzIGdpdmUgdXNlcnNcbiAqIGEgd2F5IHRvIG92ZXJyaWRlIG91ciBmb250IGNob2ljZXMgZm9yIHRoZW0uXG4gKi9cbi8qXG4qIERyb3Bkb3duc1xuKi9cbi8qXG4qIFNpZGViYXJcbiovXG4vKlxuKiBCdXR0b25zXG4qL1xuLypcbiogQmFkZ2VzXG4qL1xuLypcbiAqICBBd2FyZCBlbW9qaVxuICovXG4vKlxuICogU2VhcmNoIEJveFxuICovXG4vKlxuICogIE5vdGVzXG4gKi9cbi8qXG4qIEJvYXJkc1xuKi9cbi8qXG4qIEJ1aWxkc1xuKi9cbi8qXG4qIENvbW1pdCBQYWdlXG4qL1xuLypcbiogRmlsZXNcbiovXG4vKlxuKiBGb3Jtc1xuKi9cbi8qXG4qIExhYmVsXG4qL1xuLypcbiogQW5pbWF0aW9uXG4qL1xuLypcbiogTG9naW5cbiovXG4vKlxuKiBUeXBvZ3JhcGh5XG4qL1xuLypcblBpcGVsaW5lIEdyYXBoXG4qL1xuLypcbkdpdExhYiBQbGFuc1xuKi9cbi8qXG5QZXJmb3JtYW5jZSBCYXJcbiovXG4vKlxuSW1hZ2UgQ29tbWVudGluZyBjdXJzb3JcbiovXG4vKlxuUG9wdXBcbiovXG4vKlxuRHJhd2Vyc1xuKi9cbi8qXG5Nb2RhbHNcbiovXG4vKlxuUG9wb3ZlcnNcbiovXG4vKlxuTWVyZ2UgcmVxdWVzdHNcbiovXG4vKlxuQm9hcmQgU3dpbWxhbmVzXG4qL1xuLypcblNvdXJjZSBFZGl0b3IgdGhlbWUgb3ZlcnJpZGVzXG4qL1xuLyoqXG4gQm9vdHN0cmFwIDQuMi4wIGludHJvZHVjZWQgbmV3IGljb25zIGZvciB2YWxpZGF0aW5nIGZvcm1zLlxuIE91ciBkZXNpZ24gc3lzdGVtIGRvZXMgbm90IHVzZSB0aG9zZSwgc28gd2UgYXJlIGRpc2FibGluZyB0aGVtIGZvciBub3c6XG4gLSBEb2NzOiBodHRwczovL2dldGJvb3RzdHJhcC5jb20vZG9jcy80LjMvY29tcG9uZW50cy9mb3Jtcy8jc2VydmVyLXNpZGVcbiAtIElzc3VlOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9kZXNpZ24uZ2l0bGFiLmNvbS9pc3N1ZXMvMjQyXG4gKi9cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmRpZmYtZ3JpZC1yaWdodCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTBweCA4cHggMjBweCAxZnI7XG59XG4uZGlmZi1ncmlkLndpdGgtaW5saW5lLWZpbmRpbmdzLmlubGluZS1kaWZmLXZpZXcgLmRpZmYtZ3JpZC1sZWZ0IHtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MHB4IDUwcHggOHB4IDIwcHggMWZyO1xufVxuLmRpZmYtZ3JpZC53aXRoLWlubGluZS1maW5kaW5ncyAubW9yZS1jb3VudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YTg4ODg7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWNlYmVhO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LXJlZ3VsYXItZm9udCwgXCJHaXRMYWIgU2Fuc1wiKSwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJOb3RvIFNhbnNcIiwgVWJ1bnR1LCBDYW50YXJlbGwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXNpemU6IDlweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDE2cHg7XG4gIGhlaWdodDogMTZweDtcbn1cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb246bnRoLWNoaWxkKDEpIHtcbiAgei1pbmRleDogOTk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbn1cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb246bnRoLWNoaWxkKDIpIHtcbiAgei1pbmRleDogOTg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbn1cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb246bnRoLWNoaWxkKDMpIHtcbiAgei1pbmRleDogOTc7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgzMHB4KTtcbn1cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb246bnRoLWNoaWxkKDQpIHtcbiAgei1pbmRleDogOTY7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MHB4KTtcbn1cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLm1vcmUtY291bnQsXG4uZGlmZi1ncmlkLndpdGgtaW5saW5lLWZpbmRpbmdzIC5pbmxpbmUtZmluZGluZ3Mtc2V2ZXJpdHktaWNvbiB7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMCAxcHggMC41cHggI2ZmZikgZHJvcC1zaGFkb3coMXB4IDAgMC41cHggI2ZmZikgZHJvcC1zaGFkb3coMCAtMXB4IDAuNXB4ICNmZmYpIGRyb3Atc2hhZG93KC0xcHggMCAwLjVweCAjZmZmKTtcbn1cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLm1vcmUtY291bnQtY29weS1kcm9wZG93biB7XG4gIGxpbmUtaGVpZ2h0OiAwLjExO1xufVxuLmRpZmYtZ3JpZC53aXRoLWlubGluZS1maW5kaW5ncyAuaW5saW5lLWZpbmRpbmdzLXRyYW5zaXRpb24tY29udGFpbmVyIC5tb3JlLWNvdW50LWVudGVyLm1vcmUtY291bnQsXG4uZGlmZi1ncmlkLndpdGgtaW5saW5lLWZpbmRpbmdzIC5pbmxpbmUtZmluZGluZ3MtdHJhbnNpdGlvbi1jb250YWluZXIgLm1vcmUtY291bnQtbGVhdmUtdG8ubW9yZS1jb3VudCB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAubW9yZS1jb3VudC1lbnRlci10by5tb3JlLWNvdW50LFxuLmRpZmYtZ3JpZC53aXRoLWlubGluZS1maW5kaW5ncyAuaW5saW5lLWZpbmRpbmdzLXRyYW5zaXRpb24tY29udGFpbmVyIC5tb3JlLWNvdW50LWxlYXZlLm1vcmUtY291bnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG59XG4uZGlmZi1ncmlkLndpdGgtaW5saW5lLWZpbmRpbmdzIC5pbmxpbmUtZmluZGluZ3MtdHJhbnNpdGlvbi1jb250YWluZXIgLmljb25zLWVudGVyLXRvLmlubGluZS1maW5kaW5ncy1zZXZlcml0eS1pY29uOm50aC1jaGlsZCgxKSxcbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaWNvbnMtbGVhdmUuaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb246bnRoLWNoaWxkKDEpIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xufVxuLmRpZmYtZ3JpZC53aXRoLWlubGluZS1maW5kaW5ncyAuaW5saW5lLWZpbmRpbmdzLXRyYW5zaXRpb24tY29udGFpbmVyIC5pY29ucy1lbnRlci10by5pbmxpbmUtZmluZGluZ3Mtc2V2ZXJpdHktaWNvbjpudGgtY2hpbGQoMiksXG4uZGlmZi1ncmlkLndpdGgtaW5saW5lLWZpbmRpbmdzIC5pbmxpbmUtZmluZGluZ3MtdHJhbnNpdGlvbi1jb250YWluZXIgLmljb25zLWxlYXZlLmlubGluZS1maW5kaW5ncy1zZXZlcml0eS1pY29uOm50aC1jaGlsZCgyKSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbn1cbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaWNvbnMtZW50ZXItdG8uaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb246bnRoLWNoaWxkKDMpLFxuLmRpZmYtZ3JpZC53aXRoLWlubGluZS1maW5kaW5ncyAuaW5saW5lLWZpbmRpbmdzLXRyYW5zaXRpb24tY29udGFpbmVyIC5pY29ucy1sZWF2ZS5pbmxpbmUtZmluZGluZ3Mtc2V2ZXJpdHktaWNvbjpudGgtY2hpbGQoMykge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG59XG4uZGlmZi1ncmlkLndpdGgtaW5saW5lLWZpbmRpbmdzIC5pbmxpbmUtZmluZGluZ3MtdHJhbnNpdGlvbi1jb250YWluZXIgLmljb25zLWVudGVyLXRvLmlubGluZS1maW5kaW5ncy1zZXZlcml0eS1pY29uOm50aC1jaGlsZCg0KSxcbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaWNvbnMtbGVhdmUuaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb246bnRoLWNoaWxkKDQpIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQwcHgpO1xufVxuLmRpZmYtZ3JpZC53aXRoLWlubGluZS1maW5kaW5ncyAuaW5saW5lLWZpbmRpbmdzLXRyYW5zaXRpb24tY29udGFpbmVyIC5tb3JlLWNvdW50IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICB6LWluZGV4OiAzO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMXMsIHRyYW5zZm9ybSAwLjJzO1xufVxuLmRpZmYtZ3JpZC53aXRoLWlubGluZS1maW5kaW5ncyAuaW5saW5lLWZpbmRpbmdzLXRyYW5zaXRpb24tY29udGFpbmVyIC5pY29ucy1lbnRlci5pbmxpbmUtZmluZGluZ3Mtc2V2ZXJpdHktaWNvbixcbi5kaWZmLWdyaWQud2l0aC1pbmxpbmUtZmluZGluZ3MgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaWNvbnMtbGVhdmUtdG8uaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb24ge1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG4uZGlmZi1ncmlkLndpdGgtaW5saW5lLWZpbmRpbmdzIC5pbmxpbmUtZmluZGluZ3MtdHJhbnNpdGlvbi1jb250YWluZXIgLmlubGluZS1maW5kaW5ncy1zZXZlcml0eS1pY29uIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzLCB0cmFuc2Zvcm0gMC4ycztcbn1cblxuLmZpbmRpbmdzLWRyYXdlciAuZHJhd2VyLWhlYWRpbmctc2V2ZXJpdHkge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbi5maW5kaW5ncy1kcmF3ZXIgLmZpbmRpbmdzLWRyYXdlci1uYXYtYnV0dG9uIHtcbiAgdG9wOiAtMXB4O1xufVxuXG4uZmluZGluZ3MtZHJvcGRvd24ge1xuICBmb250LWZhbWlseTogdmFyKC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQsIFwiR2l0TGFiIFNhbnNcIiksIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiTm90byBTYW5zXCIsIFVidW50dSwgQ2FudGFyZWxsLCBcIkhlbHZldGljYSBOZXVlXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIjtcbn1cbi5maW5kaW5ncy1kcm9wZG93biAuZmluZGluZ3MtZHJvcGRvd24tdHJ1bmNhdGUge1xuICBtYXgtd2lkdGg6IDE5cmVtO1xufVxuLmZpbmRpbmdzLWRyb3Bkb3duIC5nbC10cnVuY2F0ZS1lbmQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbi5maW5kaW5ncy1kcm9wZG93bi13aWR0aCB7XG4gIHdpZHRoOiAyM3JlbTtcbn1cblxuLnBsYW4tYmFkZ2Uge1xuICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG59XG4ucGxhbi1iYWRnZSBzdmcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogM3B4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIHdpZHRoOiAxNnB4O1xufVxuLnBsYW4tYmFkZ2VbZGF0YS1wbGFuPWdvbGRdIHtcbiAgY29sb3I6IHJnYigxMzUuODAyNDY5MTM1OCwgMTEwLjY3OTAxMjM0NTcsIDI5LjE5NzUzMDg2NDIpO1xufVxuLnBsYW4tYmFkZ2VbZGF0YS1wbGFuPWdvbGRdIHN2ZyBnIHtcbiAgZmlsbDogI2Q0YWYzNztcbn1cbi5wbGFuLWJhZGdlW2RhdGEtcGxhbj11bHRpbWF0ZV0ge1xuICBjb2xvcjogcmdiKDEzNS44MDI0NjkxMzU4LCAxMTAuNjc5MDEyMzQ1NywgMjkuMTk3NTMwODY0Mik7XG59XG4ucGxhbi1iYWRnZVtkYXRhLXBsYW49dWx0aW1hdGVdIHN2ZyBnIHtcbiAgZmlsbDogI2Q0YWYzNztcbn1cbi5wbGFuLWJhZGdlW2RhdGEtcGxhbj1zaWx2ZXJdIHtcbiAgY29sb3I6IHJnYig5Mi42NTk3OTM4MTQ0LCAxMTAuMzA5Mjc4MzUwNSwgMTIxLjM0MDIwNjE4NTYpO1xufVxuLnBsYW4tYmFkZ2VbZGF0YS1wbGFuPXNpbHZlcl0gc3ZnIGcge1xuICBmaWxsOiAjOTFhMWFiO1xufVxuLnBsYW4tYmFkZ2VbZGF0YS1wbGFuPXByZW1pdW1dIHtcbiAgY29sb3I6IHJnYig5Mi42NTk3OTM4MTQ0LCAxMTAuMzA5Mjc4MzUwNSwgMTIxLjM0MDIwNjE4NTYpO1xufVxuLnBsYW4tYmFkZ2VbZGF0YS1wbGFuPXByZW1pdW1dIHN2ZyBnIHtcbiAgZmlsbDogIzkxYTFhYjtcbn1cbi5wbGFuLWJhZGdlW2RhdGEtcGxhbj1icm9uemVdIHtcbiAgY29sb3I6IHJnYigxMjMsIDc2LjIsIDMwKTtcbn1cbi5wbGFuLWJhZGdlW2RhdGEtcGxhbj1icm9uemVdIHN2ZyBnIHtcbiAgZmlsbDogI2NkN2YzMjtcbn1cbi5wbGFuLWJhZGdlOm5vdChbZGF0YS1wbGFuXSkgc3ZnIGcge1xuICBmaWxsOiAjNjQ2MTYzO1xufVxuXG4ucGxhbi1iYWRnZS12dWVbZGF0YS1wbGFuPWdvbGRdIHtcbiAgY29sb3I6ICNkNGFmMzc7XG59XG4ucGxhbi1iYWRnZS12dWVbZGF0YS1wbGFuPXVsdGltYXRlXSB7XG4gIGNvbG9yOiAjZDRhZjM3O1xufVxuLnBsYW4tYmFkZ2UtdnVlW2RhdGEtcGxhbj1zaWx2ZXJdIHtcbiAgY29sb3I6ICM5MWExYWI7XG59XG4ucGxhbi1iYWRnZS12dWVbZGF0YS1wbGFuPXByZW1pdW1dIHtcbiAgY29sb3I6ICM5MWExYWI7XG59XG4ucGxhbi1iYWRnZS12dWVbZGF0YS1wbGFuPWJyb256ZV0ge1xuICBjb2xvcjogI2NkN2YzMjtcbn1cblxuLmludml0ZS1tb2RhbC1jb250ZW50IHtcbiAgZ3JpZC1yb3c6IDE7XG4gIGdyaWQtY29sdW1uOiAxO1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5pbnZpdGUtbW9kYWwtdHJhbnNpdGlvbi1lbnRlci1hY3RpdmUsXG4uaW52aXRlLW1vZGFsLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbWF4LWhlaWdodCwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi1hbGw7XG4gIEBhcHBseSBnbC1kdXJhdGlvbi1zbG93O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaW52aXRlLW1vZGFsLXRyYW5zaXRpb24tZW50ZXIsXG4uaW52aXRlLW1vZGFsLXRyYW5zaXRpb24tbGVhdmUtdG8ge1xuICBtYXgtaGVpZ2h0OiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaW52aXRlLW1vZGFsLXRyYW5zaXRpb24tZW50ZXItdG8sXG4uaW52aXRlLW1vZGFsLXRyYW5zaXRpb24tbGVhdmUge1xuICBtYXgtaGVpZ2h0OiAzNy41cmVtO1xufVxuXG4uYmxvY2sud2VpZ2h0IC5nbC1maWVsZC1lcnJvciB7XG4gIG1hcmdpbi10b3A6IDhweDtcbiAgbWFyZ2luLWxlZnQ6IC02cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5oZWFsdGgtc3RhdHVzIHtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG59XG4uaGVhbHRoLXN0YXR1cyAuZ2wtbGFiZWwtdGV4dCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLmlzc3VhYmxlLWFzc2lnbmVlcyBhOm5vdCguYnRuKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ubGFiZWxzLXNlbGVjdC13cmFwcGVyLmlzLWVtYmVkZGVkIC5sYWJlbHMtc2VsZWN0LWRyb3Bkb3duLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1kZWZhdWx0LXJlZ3VsYXItZm9udCwgXCJHaXRMYWIgU2Fuc1wiKSwgLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCBcIlNlZ29lIFVJXCIsIFJvYm90bywgXCJOb3RvIFNhbnNcIiwgVWJ1bnR1LCBDYW50YXJlbGwsIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZiwgXCJBcHBsZSBDb2xvciBFbW9qaVwiLCBcIlNlZ29lIFVJIEVtb2ppXCIsIFwiU2Vnb2UgVUkgU3ltYm9sXCIsIFwiTm90byBDb2xvciBFbW9qaVwiO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIGhlaWdodDogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xuICBAYXBwbHkgZ2wtc2hhZG93LWlubmVyLTEtZ3JheS0yMDA7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4ubGFiZWxzLXNlbGVjdC13cmFwcGVyLmlzLWVtYmVkZGVkIC5sYWJlbHMtc2VsZWN0LWRyb3Bkb3duLWJ1dHRvbiAuZ2wtYnV0dG9uLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuLmxhYmVscy1zZWxlY3Qtd3JhcHBlci5pcy1lbWJlZGRlZCAubGFiZWxzLXNlbGVjdC1kcm9wZG93bi1idXR0b24gLmdsLWljb24ge1xuICBtYXJnaW46IDA7XG59XG4ubGFiZWxzLXNlbGVjdC13cmFwcGVyLmlzLWVtYmVkZGVkIC5sYWJlbHMtc2VsZWN0LXdyYXBwZXIuaXMtZW1iZWRkZWQge1xuICBsZWZ0OiAwO1xuICBAYXBwbHkgZ2wtc2hhZG93LXgwLXkyLWI0LXMwO1xuICB3aWR0aDogMzAwcHggIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogbm9uZTtcbiAgbWF4LWhlaWdodDogbm9uZTtcbn1cbi5sYWJlbHMtc2VsZWN0LXdyYXBwZXIuaXMtZW1iZWRkZWQgLmxhYmVscy1zZWxlY3Qtd3JhcHBlci5pcy1lbWJlZGRlZCBhOm5vdCguYnRuKSB7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuLmxhYmVscy1zZWxlY3Qtd3JhcHBlci5pcy1lbWJlZGRlZCAuZHJvcGRvd24tdGl0bGUge1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbSAhaW1wb3J0YW50O1xufVxuLmxhYmVscy1zZWxlY3Qtd3JhcHBlci5pcy1lbWJlZGRlZCAuZHJvcGRvd24tZm9vdGVyIC5saXN0LXVuc3R5bGVkIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uY3ZlLWlkLXJlcXVlc3QgLmhlbHAtYnV0dG9uLFxuLmN2ZS1pZC1yZXF1ZXN0IC5jbG9zZS1oZWxwLWJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5jdmUtaWQtcmVxdWVzdCAuaGVscC1zdGF0ZS10b2dnbGUtZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuOHMgZWFzZTtcbn1cbi5jdmUtaWQtcmVxdWVzdCAuaGVscC1zdGF0ZS10b2dnbGUtbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cbi5jdmUtaWQtcmVxdWVzdCAuaGVscC1zdGF0ZS10b2dnbGUtZW50ZXIsXG4uY3ZlLWlkLXJlcXVlc3QgLmhlbHAtc3RhdGUtdG9nZ2xlLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG4uY3ZlLWlkLXJlcXVlc3QgLmN2ZS1pZC1yZXF1ZXN0LWhlbHAtc3RhdGUge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBtYXJnaW46IDE2cHggLTIwcHggLTIwcHg7XG4gIHBhZGRpbmc6IDE2cHggMjBweDtcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG59XG5cbi5haS1zdW1tYXJ5LWNhcmQgaDIge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuXG4uY29tcGxpYW5jZS1yZXBvcnQtdGFibGUgLnZpZXctZGV0YWlscyB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG59XG4uY29tcGxpYW5jZS1yZXBvcnQtdGFibGUgLnZpZXctZGV0YWlscyBkaXYge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG4uY29tcGxpYW5jZS1yZXBvcnQtdGFibGUgdHI6aG92ZXIgLnZpZXctZGV0YWlscyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4udnVsbmVyYWJpbGl0eS1jb3VudHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDdyZW0sIDFmcikpO1xuICBncmlkLWdhcDogMnJlbTtcbn1cblxuQGNvbnRhaW5lciBwYW5lbCAod2lkdGggPCA1NzZweCkge1xuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudnVsbmVyYWJpbGl0eS1zdGF0dXMtY2hlY2tib3ggLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhICh3aWR0aCA8IDU3NnB4KSB7XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC52dWxuZXJhYmlsaXR5LXN0YXR1cy1jaGVja2JveCAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICB9XG59XG5AY29udGFpbmVyIHBhbmVsICh3aWR0aCA8IDc2OHB4KSB7XG4gIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpIC52dWxuZXJhYmlsaXR5LXJlcG9ydC1mb290ZXItbW9iaWxlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICA6d2hlcmUoaHRtbC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSAudnVsbmVyYWJpbGl0eS1yZXBvcnQtZm9vdGVyLW1vYmlsZSAuZ2wtbmV3LWRyb3Bkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBhdXRvO1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG59XG5AbWVkaWEgKHdpZHRoIDwgNzY4cHgpIHtcbiAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgLnZ1bG5lcmFiaWxpdHktcmVwb3J0LWZvb3Rlci1tb2JpbGUge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIDp3aGVyZShodG1sOm5vdCgud2l0aC1nbC1jb250YWluZXItcXVlcmllcykpIC52dWxuZXJhYmlsaXR5LXJlcG9ydC1mb290ZXItbW9iaWxlIC5nbC1uZXctZHJvcGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IGF1dG87XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cbn1cblxuI2JsYW5rLXByb2plY3QtcGFuZSAuZ2wtbmV3LWRyb3Bkb3duLWN1c3RvbS10b2dnbGUge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLypcbiBUaGlzIGlzIGEgbm9vcC1maWxlLiBJbiBKSDpcbiBqaC9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL19qaC9hcHBsaWNhdGlvbl9qaC5zY3NzXG4gd2lsbCB0YWtlIHByZWNlZGVuY2Ugb3ZlciBpdCBhbmQgaW1wb3J0IG1vcmUgc3R5bGVzXG4gKi9cbi8qXG4qIFNBU1MgcHJlc2VydmVzIHVuaXRzIGluIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4gRm9yIGV4YW1wbGU6XG4qIDEyZW0gKiAwID0gMGVtLiBUaGlzIGZ1bmN0aW9uIHJldHVybiB0aGUgdW5pdCBvZiBhIG51bWVyaWMgdmFsdWUuXG4qXG4qIEZvciBtb3JlIGV4YW1wbGVzLCBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9wYXVsZ3YvcGVuL1hXcnFNZ1FcbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWVuYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qXG4gKiBMYXlvdXRcbiAqL1xuLyoqXG4gIPCfmqggRG8gbm90IHVzZSB0aGlzIHNwYWNpbmcgc2NhbGUg4oCUIGl0IGlzIGRlcHJlY2F0ZWQgYW5kIGJlaW5nIHJlbW92ZWQuIPCfmqhcbiAgU2VlIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi9pc3N1ZXMvMzY4NTcgZm9yIG1vcmUgZGV0YWlscy5cblxuICBJbnN0ZWFkLCBpZiB5b3UgbmVlZCBhIHNwYWNpbmcgY2xhc3MsIGFkZCBpdCB0byBhcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9jb21tb24uc2NzcyxcbiAgdXNpbmcgdGhlIGZvbGxvd2luZyB2YWx1ZXMuXG5cbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0wOiAwO1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTE6IDJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0yOiA0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMzogOHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTQ6IDEycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNTogMTZweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS02OiAyNHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTc6IDMycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtODogNDBweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS05OiA0OHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEwOiA1NnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTExOiA2NHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEyOiA4MHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEzOiA5NnB4O1xuXG4gIEUuZy4sIGEgcGFkZGluZyB0b3Agb2YgOTZweCBjYW4gYmUgYWRkZWQgdXNpbmc6XG4gIC5nbC1zaGltLXB0LTEzIHtcbiAgICBwYWRkaW5nLXRvcDogOTZweDtcbiAgfVxuXG4gIFBsZWFzZSB1c2UgLXNoaW0tIHNvIGl0IGNhbiBiZSBkaWZmZXJlbnRpYXRlZCBmcm9tIHRoZSBvbGQgc2NhbGUgY2xhc3Nlcy5cblxuICBUaGVzZSB3aWxsIGJlIHJlcGxhY2VkIHdoZW4gdGhlIEdpdGxhYiBVSSB1dGlsaXRpZXMgYXJlIGluY2x1ZGVkLlxuKiovXG4vKiBXaWxsIGJlIG1vdmVkIHRvIEBnaXRsYWIvdWkgYnkgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXNlcnZpY2VzL2Rlc2lnbi5naXRsYWIuY29tLy0vaXNzdWVzLzI3OTIgKi9cbi8qIEVuZCBnaXRsYWItdWkjMTcwOSAqL1xuLypcbiAqIFRleHRcbiAqL1xuLypcbiAqIExpc3RzXG4gKi9cbi8qXG4gKiBDb2RlXG4gKi9cbi8qXG4gKiBUb29sdGlwc1xuICovXG4vKlxuICogUGFkZGluZ1xuICovXG4vKlxuICogTWlzY1xuICovXG4vKlxuICogTWVyZ2UgcmVxdWVzdHNcbiAqL1xuLypcbiAqIENhbGN1bGF0ZWQgaGVpZ2h0c1xuICovXG4vKiB0YW51a2kgbG9nbyBjb2xvcnMgKi9cbi8qXG4gKiBTdGF0ZSBjb2xvcnM6XG4gKi9cbi8qXG4gKiBDb21taXQgRGlmZiBDb2xvcnNcbiAqL1xuLypcbiAqIFRoZSB0cmFuc3BhcmVudCBjb2xvcnMgYXJlIHVzZWQgaW4gTW9uYWNvIGVkaXRvci4gVXNpbmcgZnVsbCBvcGFjaXR5IGNvbG9yc1xuICogd291bGQgaGlkZSBvdGhlciBsYXllcnMgKHNlbGVjdGVkIHRleHQsIG1hdGNoaW5nIGJyYWNrZXRzKS5cbiAqXG4gKiBXaGVuIHRoZSB0cmFuc3BhcmVudCBjb2xvcnMgZ2V0IGxheWVyZWQgb24gd2hpdGUgYmFja2dyb3VuZCwgdGhleSBjcmVhdGUgdGhlaXJcbiAqIGZ1bGwgb3BhY2l0eSBjb3VudGVycGFydHM6XG4gKlxuICogIC0gd2hpdGUgKyAkbGluZS1hZGRlZC10cmFuc3BhcmVudCA9ICRsaW5lLWFkZGVkXG4gKiAgLSB3aGl0ZSArICRsaW5lLWFkZGVkLXRyYW5zcGFyZW50ICsgJGxpbmUtYWRkZWQtZGFyay10cmFuc3BhcmVudCA9ICRsaW5lLWFkZGVkLWRhcmtcbiAqXG4gKiBNb3JlIGRldGFpbHM6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzQxNTUzXG4gKi9cbi8qXG4gKiBGb250c1xuICogVGhlIC0tZGVmYXVsdC1tb25vLWZvbnQgYW5kIC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQgdmFyaWFibGVzIGdpdmUgdXNlcnNcbiAqIGEgd2F5IHRvIG92ZXJyaWRlIG91ciBmb250IGNob2ljZXMgZm9yIHRoZW0uXG4gKi9cbi8qXG4qIERyb3Bkb3duc1xuKi9cbi8qXG4qIFNpZGViYXJcbiovXG4vKlxuKiBCdXR0b25zXG4qL1xuLypcbiogQmFkZ2VzXG4qL1xuLypcbiAqICBBd2FyZCBlbW9qaVxuICovXG4vKlxuICogU2VhcmNoIEJveFxuICovXG4vKlxuICogIE5vdGVzXG4gKi9cbi8qXG4qIEJvYXJkc1xuKi9cbi8qXG4qIEJ1aWxkc1xuKi9cbi8qXG4qIENvbW1pdCBQYWdlXG4qL1xuLypcbiogRmlsZXNcbiovXG4vKlxuKiBGb3Jtc1xuKi9cbi8qXG4qIExhYmVsXG4qL1xuLypcbiogQW5pbWF0aW9uXG4qL1xuLypcbiogTG9naW5cbiovXG4vKlxuKiBUeXBvZ3JhcGh5XG4qL1xuLypcblBpcGVsaW5lIEdyYXBoXG4qL1xuLypcbkdpdExhYiBQbGFuc1xuKi9cbi8qXG5QZXJmb3JtYW5jZSBCYXJcbiovXG4vKlxuSW1hZ2UgQ29tbWVudGluZyBjdXJzb3JcbiovXG4vKlxuUG9wdXBcbiovXG4vKlxuRHJhd2Vyc1xuKi9cbi8qXG5Nb2RhbHNcbiovXG4vKlxuUG9wb3ZlcnNcbiovXG4vKlxuTWVyZ2UgcmVxdWVzdHNcbiovXG4vKlxuQm9hcmQgU3dpbWxhbmVzXG4qL1xuLypcblNvdXJjZSBFZGl0b3IgdGhlbWUgb3ZlcnJpZGVzXG4qL1xuLyoqXG4gQm9vdHN0cmFwIDQuMi4wIGludHJvZHVjZWQgbmV3IGljb25zIGZvciB2YWxpZGF0aW5nIGZvcm1zLlxuIE91ciBkZXNpZ24gc3lzdGVtIGRvZXMgbm90IHVzZSB0aG9zZSwgc28gd2UgYXJlIGRpc2FibGluZyB0aGVtIGZvciBub3c6XG4gLSBEb2NzOiBodHRwczovL2dldGJvb3RzdHJhcC5jb20vZG9jcy80LjMvY29tcG9uZW50cy9mb3Jtcy8jc2VydmVyLXNpZGVcbiAtIElzc3VlOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9kZXNpZ24uZ2l0bGFiLmNvbS9pc3N1ZXMvMjQyXG4gKi9cbi8qXG4gKiBUaGlzIGZpbGUgaXMgb25seSBmb3Igb3ZlcnJpZGluZyBCb290c3RyYXAgNCB2YXJpYWJsZXMuXG4gKiBQbGVhc2UgYWRkIGFueSBuZXcgdmFyaWFibGVzIHRvIHZhcmlhYmxlcy5zY3NzXG4gKi9cbi8qXG4qIFNBU1MgcHJlc2VydmVzIHVuaXRzIGluIGFyaXRobWV0aWMgb3BlcmF0aW9ucy4gRm9yIGV4YW1wbGU6XG4qIDEyZW0gKiAwID0gMGVtLiBUaGlzIGZ1bmN0aW9uIHJldHVybiB0aGUgdW5pdCBvZiBhIG51bWVyaWMgdmFsdWUuXG4qXG4qIEZvciBtb3JlIGV4YW1wbGVzLCBzZWU6IGh0dHBzOi8vY29kZXBlbi5pby9wYXVsZ3YvcGVuL1hXcnFNZ1FcbiovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWVuYWJsZSBAZ2l0bGFiL25vLWdsLWRlcHJlY2F0ZWQtZGVzaWduLXRva2VucyAqL1xuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbi8qKlxuKiBEZWNsYXJlcyBhIHByb3BlcnR5IHdpdGggYSBmbHVpZCB2YWx1ZSB0aGF0IGRlY3JlYXNlcyBvclxuKiByaXNlcyBkZXBlbmRpbmcgb24gdGhlIHZpZXdwb3J04oCZcyBzaXplLiBUaGUgcHJvcGVydHkgdHlwZVxuKiBzaG91bGQgYmUgbnVtZXJpYy5cbipcbiogVmFsdWVzIGFyZSBleHBlY3RlZCBpbiByZW0gdW5pdHMuXG4qIEZsdWlkIHJhbmdlOiBiZXR3ZWVuIDQ4cmVtICg3NjhweCkg4oCTIDc1cmVtICgxMjAwcHgpLlxuKlxuKiBAcGFyYW0gJHByb3BlcnR5IFByb3BlcnR5IG5hbWUsIGkuZS4gbGluZS1oZWlnaHQsIGZvbnQtc2l6ZSwgd2lkdGgsIGhlaWdodCwgZXRjLlxuKiBAcGFyYW0gJG1pbiBQcm9wZXJ0eSB2YWx1ZSBsb3dlciBib3VuZC5cbiogQHBhcmFtICRtYXggUHJvcGVydHkgdmFsdWUgdXBwZXIgYm91bmQuXG4qL1xuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiBmb3IgOmZvY3VzXG4qXG4qIEBwYXJhbSAkc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBzaG91bGQgbm90IGJlIHVzZWQgYW55bW9yZVxuKi9cbi8qKlxuKiBIZWxwZXIgZnVuY3Rpb24gZm9yIEBtZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bVxuKiBicmVha3BvaW50IHdpZHRoLlxuKlxuKiBAcGFyYW0gJG5hbWUgQnJlYWtwb2ludCBuYW1lLCBzdWNoIGFzIGBzbWAgb3IgYG1kYC5cbiovXG4vKipcbiogSGVscGVyIGZ1bmN0aW9uIGZvciBAbWVkaWEgb2YgYXQgbW9zdCB0aGUgbWF4aW11bVxuKiBicmVha3BvaW50IHdpZHRoLlxuKlxuKiBOb3RlOiBCZWZvcmUgdXNpbmcsIGNvbnNpZGVyIHVzaW5nIGEgbW9iaWxlLWZpcnN0XG4qIGFwcHJvYWNoLCBhbmQgZGVmaW5lIEBtZWRpYSBmb3IgbGFyZ2VyIGJyZWFrcG9pbnRzXG4qIHVzaW5nIGBnbC1tZWRpYS1icmVha3BvaW50LXVwYCB3aGlsZSB1c2luZyB0aGlzIHJ1bGUgYXNcbiogdGhlIHN0YXJ0aW5nIHBvaW50IGluc3RlYWQuXG4qXG4qIEBwYXJhbSAkbmFtZSBCcmVha3BvaW50LCBzdWNoIGFzIGBzbWAgb3IgYG1kYC4gYHhzYCBpcyBub3QgdmFsaWRcbiovXG4vKipcbiogSGVscGVyIGZ1bmN0aW9uIHRvIHJlc29sdmUgZm9udC1zaXplIHZhbHVlIGZyb20gJGdsLWZvbnQtc2l6ZXMgYW5kXG4qICRnbC1mb250LXNpemVzLWZpeGVkIG1hcHMuXG4qXG4qIEBwYXJhbSAkc2l6ZSBOdW1iZXIgZm9udC1zaXplIHNjYWxlXG4qIEBwYXJhbSAkZml4ZWQgQm9vbGVhbiB0b2dnbGUgZGVmYXVsdCBhbmQgZml4ZWQgZm9udCBzaXplIHNjYWxlc1xuKi9cbkBtZWRpYSBwcmludCB7XG4gIC5tZCBoMSxcbiAgLm1kIGgyLFxuICAubWQgaDMsXG4gIC5tZCBoNCxcbiAgLm1kIGg1LFxuICAubWQgaDYge1xuICAgIG1hcmdpbi10b3A6IDE3cHg7XG4gIH1cbiAgLm1kIGgxIHtcbiAgICBmb250LXNpemU6IDMwcHg7XG4gIH1cbiAgLm1kIGgyIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cbiAgLm1kIGgzIHtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICAubWQge1xuICAgIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XG4gICAgLXdlYmtpdC1wcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xuICB9XG4gIC5tZCBbZGF0YS1zdGlja3ktaGVhZGVyXSA+IHRhYmxlOm5vdCguY29kZSkgPiB0aGVhZDpmaXJzdC1vZi10eXBlID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgLm1kIFtkYXRhLXN0aWNreS1oZWFkZXJdID4gdGFibGU6bm90KC5jb2RlKSA+IHRib2R5OmZpcnN0LW9mLXR5cGUgPiB0cjpmaXJzdC1jaGlsZCA+IHRoIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAubWQgYmxvY2txdW90ZTo6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IC00cHg7XG4gICAgY29udGVudDogXCIgXCI7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiA0cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RjZGJkOTtcbiAgfVxuICAubWQgYmxvY2txdW90ZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIEBhcHBseSBnbC1zaGFkb3ctaW5uZXItbC00LWdyYXktMTAwO1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBhbmVscy1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZ2l0bGFiL25vLWpzLWNsYXNzICovXG4gIC5zdXBlci10b3BiYXIsXG4gIG5hdixcbiAgLnN1cGVyLXNpZGViYXIsXG4gIC5zdXBlci1zaWRlYmFyLW92ZXJsYXksXG4gIC50cmVlLXJlZi1ob2xkZXIsXG4gIC50cmVlLWhvbGRlciAuYnJlYWRjcnVtYixcbiAgLm5hdixcbiAgLmJ0bixcbiAgdWwubm90ZXMtZm9ybSxcbiAgLmlzc3VhYmxlLWd1dHRlci10b2dnbGUsXG4gIC5ndXR0ZXItdG9nZ2xlLFxuICAuZWRpdC1saW5rLFxuICAubm90ZS1hY3Rpb24tYnV0dG9uLFxuICAucmlnaHQtc2lkZWJhcixcbiAgLmZsYXNoLWNvbnRhaW5lcixcbiAgLnBhbmVsLWhlYWRlcixcbiAgY29weS1jb2RlLFxuICAjanMtcGVlayB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgZ2l0bGFiL25vLWpzLWNsYXNzICovXG4gIHByZSB7XG4gICAgcGFnZS1icmVhay1iZWZvcmU6IGF2b2lkO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdXRvO1xuICB9XG4gIC5wYWdlLWd1dHRlciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5yaWdodC1zaWRlYmFyIHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgYVtocmVmXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAud2l0aC1wZXJmb3JtYW5jZS1iYXIgLmxheW91dC1wYWdlLCAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICAucGFuZWxzLWNvbnRhaW5lciAucGFuZWwtY29udGVudC1pbm5lcixcbiAgLnBhbmVscy1jb250YWluZXIgLnZ1ZS1wb3J0YWwtdGFyZ2V0IC53b3JrLWl0ZW0tZGV0YWlsLXBhbmVsLWNvbnRlbnQge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBhbmVsLWNvbnRlbnQge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgY29udGFpbjogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5wYW5lbGVkLXZpZXcge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnBhZ2Utd2l0aC1wYW5lbHMgLmxheW91dC1wYWdlIHtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgLmpzLWZpbGUtdGl0bGUsXG4gIC5qcy1zaWduYXR1cmUtY29udGFpbmVyLFxuICAuanMtZm9yay1zdWdnZXN0aW9uLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgLm5hdmlnYXRpb24tcm9vdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgI2pzLWZpbGUtYnJvd3NlcixcbiAgLmZpbGUtdHJlZS1icm93c2VyLFxuICAuaW5mby13ZWxsIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgI3RyZWUtaG9sZGVyIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgLnRyZWUtcmVmLWNvbnRhaW5lcixcbiAgLmpzLXJlcG8tYnJlYWRjcnVtYnMsXG4gIFtkYXRhLXRlc3RpZD1yZXBvc2l0b3J5LWhlYWRpbmddIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgLmZpbGUtYWN0aW9ucyxcbiAgLmZpbGUtYmxhbWUtbGVnZW5kIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmZpbGUtaG9sZGVyIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgOnJvb3QuZ2wtZGFyayB7XG4gICAgLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTtcbiAgICAtLWdsLXRleHQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7XG4gICAgLS1nbC10ZXh0LWNvbG9yLXN0cm9uZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApO1xuICAgIC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN1YnRsZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXNlY3Rpb246IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gIH1cbiAgOnJvb3QuZ2wtZGFyayAubWQgOm5vdChwcmUuY29kZSkgPiBjb2RlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7XG4gIH1cbn0iLCIuYXR3aG8tdmlldyB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAxOHB4O1xuICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgIGNvbG9yOiBibGFjaztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjREREO1xuICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4IHJnYmEoMCwwLDAsMC4xKTtcbiAgICBtaW4td2lkdGg6IDEyMHB4O1xuICAgIHotaW5kZXg6IDExMTEwICFpbXBvcnRhbnQ7XG59XG5cbi5hdHdoby12aWV3IC5hdHdoby1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBtYXJnaW46IDVweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogc29saWQgMXB4ICNlYWVmZjE7XG4gICAgY29sb3I6ICM2ZjgwOTI7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4uYXR3aG8tdmlldyAuYXR3aG8taGVhZGVyIC5zbWFsbCB7XG4gICAgY29sb3I6ICM2ZjgwOTI7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmctdG9wOiAycHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG4uYXR3aG8tdmlldyAuYXR3aG8taGVhZGVyOmhvdmVyIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbi5hdHdoby12aWV3IC5jdXIge1xuICAgIGJhY2tncm91bmQ6ICMzMzY2RkY7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuLmF0d2hvLXZpZXcgLmN1ciBzbWFsbCB7XG4gICAgY29sb3I6IHdoaXRlO1xufVxuLmF0d2hvLXZpZXcgc3Ryb25nIHtcbiAgICBjb2xvcjogIzMzNjZGRjtcbn1cbi5hdHdoby12aWV3IC5jdXIgc3Ryb25nIHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udDpib2xkO1xufVxuLmF0d2hvLXZpZXcgdWwge1xuICAgIC8qIHdpZHRoOiAxMDBweDsgKi9cbiAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgcGFkZGluZzowO1xuICAgIG1hcmdpbjphdXRvO1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG59XG4uYXR3aG8tdmlldyB1bCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNEREQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC8qIGJvcmRlci10b3A6IDFweCBzb2xpZCAjQzhDOEM4OyAqL1xufVxuLmF0d2hvLXZpZXcgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogc21hbGxlcjtcbiAgICBjb2xvcjogIzc3NztcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuIiwiLypcbiAqIFRoZSBNSVQgTGljZW5zZVxuICogQ29weXJpZ2h0IChjKSAyMDEyIE1hdGlhcyBNZW5vIDxtQHRpYXMubWU+XG4gKi9cbi5kcm9wem9uZSwgLmRyb3B6b25lICoge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5kcm9wem9uZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZHJvcHpvbmUgLmR6LXByZXZpZXcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEyMHB4O1xuICAgIG1hcmdpbjogMC41ZW07IH1cbiAgICAuZHJvcHpvbmUgLmR6LXByZXZpZXcgLmR6LXByb2dyZXNzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAxNXB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTsgfVxuICAgICAgLmRyb3B6b25lIC5kei1wcmV2aWV3IC5kei1wcm9ncmVzcyAuZHotdXBsb2FkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGdyZWVuOyB9XG4gICAgLmRyb3B6b25lIC5kei1wcmV2aWV3IC5kei1lcnJvci1tZXNzYWdlIHtcbiAgICAgIGNvbG9yOiByZWQ7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLmRyb3B6b25lIC5kei1wcmV2aWV3LmR6LWVycm9yIC5kei1lcnJvci1tZXNzYWdlLCAuZHJvcHpvbmUgLmR6LXByZXZpZXcuZHotZXJyb3IgLmR6LWVycm9yLW1hcmsge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAuZHJvcHpvbmUgLmR6LXByZXZpZXcuZHotc3VjY2VzcyAuZHotc3VjY2Vzcy1tYXJrIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLmRyb3B6b25lIC5kei1wcmV2aWV3IC5kei1lcnJvci1tYXJrLCAuZHJvcHpvbmUgLmR6LXByZXZpZXcgLmR6LXN1Y2Nlc3MtbWFyayB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbGVmdDogMzBweDtcbiAgICAgIHRvcDogMzBweDtcbiAgICAgIHdpZHRoOiA1NHB4O1xuICAgICAgaGVpZ2h0OiA1OHB4O1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yN3B4OyB9XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tZ2wtY2xhc3MgKi9cbi8qIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXQgKi9cbjpyb290IHtcbiAgLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0OiAwcHg7XG4gIC0tc3lzdGVtLWhlYWRlci1oZWlnaHQ6IDBweDtcbiAgLS1oZWFkZXItaGVpZ2h0OiAwcHg7XG4gIC0tdG9wLWJhci1oZWlnaHQ6IDBweDtcbiAgLS1icm9hZGNhc3QtbWVzc2FnZS1oZWlnaHQ6IDBweDtcbiAgLS1zeXN0ZW0tZm9vdGVyLWhlaWdodDogMHB4O1xuICAtLWFwcGxpY2F0aW9uLWhlYWRlci1oZWlnaHQ6IGNhbGMoXG4gICAgdmFyKC0taGVhZGVyLWhlaWdodCkgK1xuICAgIHZhcigtLXN5c3RlbS1oZWFkZXItaGVpZ2h0KSArXG4gICAgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkgK1xuICAgIHZhcigtLXRvcC1iYXItaGVpZ2h0KVxuICApO1xuICAtLWFwcGxpY2F0aW9uLWJhci1yaWdodDogMHB4O1xuXG4gIC8qKlxuICAgKiBDSSBpY29uIHN0eWxlc1xuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy8xNzcyMjJcbiAgICogT3duZXI6IFZlcmlmeTogUGlwZWxpbmUgZXhlY3V0aW9uXG4gICAqL1xuICAtLWNpLWljb24tc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0xMDApO1xuICAtLWNpLWljb24tc3VjY2Vzcy10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi03MDApO1xuICAtLWNpLWljb24tc3VjY2Vzcy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApO1xuICAtLWNpLWljb24tc3VjY2Vzcy1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTUwMCk7XG5cbiAgLS1jaS1pY29uLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTEwMCk7XG4gIC0tY2ktaWNvbi13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS03MDApO1xuICAtLWNpLWljb24td2FybmluZy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApO1xuICAtLWNpLWljb24td2FybmluZy1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MDApO1xuXG4gIC0tY2ktaWNvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTEwMCk7XG4gIC0tY2ktaWNvbi1kYW5nZXItdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTcwMCk7XG4gIC0tY2ktaWNvbi1kYW5nZXItaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTtcbiAgLS1jaS1pY29uLWRhbmdlci1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC01MDApO1xuXG4gIC0tY2ktaWNvbi1pbmZvLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMTAwKTtcbiAgLS1jaS1pY29uLWluZm8tdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApO1xuICAtLWNpLWljb24taW5mby1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCk7XG4gIC0tY2ktaWNvbi1pbmZvLWljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTtcblxuICAtLWNpLWljb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7XG4gIC0tY2ktaWNvbi1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTtcbiAgLS1jaS1pY29uLW5ldXRyYWwtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MDApO1xuICAtLWNpLWljb24tbmV1dHJhbC1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG5cbiAgLyoqXG4gICAqIERpZmYgc3R5bGVzXG4gICAqIERpc2N1c3Npb246IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzE3MTUxNFxuICAgKiBPd25lcjogQ3JlYXRlOiBDb2RlIHJldmlld1xuICAgKi9cbiAgLS1kaWZmLXdhcm5pbmctdGV4dC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy10ZXh0LWNvbG9yKTtcbiAgLS1kaWZmLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAvKipcbiAgICogUmV2aWV3IG5vdGUgc3R5bGVzXG4gICAqIERpc2N1c3Npb246IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzE2NzcwOFxuICAgKiBPd25lcjogQ3JlYXRlOiBDb2RlIHJldmlld1xuICAgKi9cbiAgLS10aW1lbGluZS1lbnRyeS1kcmFmdC1ub3RlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MCk7XG5cbiAgLyoqXG4gICAqIFdvcmsgaXRlbSBub3RlIHN0eWxlc1xuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy8xNjc3MDhcbiAgICogT3duZXI6IFBsYW46IFByb2plY3QgTWFuYWdlbWVudFxuICAgKi9cbiAgLS10aW1lbGluZS1lbnRyeS1pbnRlcm5hbC1ub3RlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MCk7XG5cbiAgLyoqXG4gICAqIFRhcmdldCBub3RlIHN0eWxlc1xuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy8xNjc3MDhcbiAgICogT3duZXI6IFRCRFxuICAgKi9cbiAgLS10aW1lbGluZS1lbnRyeS10YXJnZXQtYmFja2dyb3VuZC1jb2xvciA6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTApO1xuXG4gIC8qKlxuICAgKiBDb250cmlidXRpb24gZ3JhcGggc3R5bGVzIG9uIHVzZXIgcHJvZmlsZVxuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy8xODA2NjRcbiAgICogT3duZXI6IE9yZ2FuaXphdGlvbnNcbiAgICovXG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0wOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLWRhdGEtYmx1ZS0xMDApO1xuICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItZGF0YS1ibHVlLTQwMCk7XG4gIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0zOiB2YXIoLS1nbC1jb2xvci1kYXRhLWJsdWUtNjAwKTtcbiAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLWRhdGEtYmx1ZS05MDApO1xuXG4gIC8vIEtlZXAgaW4gc3luYyB3aXRoIEZGIDp2dWVfcHJvZmlsZV9hY3Rpdml0eV9jYWxlbmRhciwgcm9sbG91dDogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vd29ya19pdGVtcy82MDI5NTBcbiAgLmNvbnRyaWItY2FsZW5kYXItcm9vdCB7XG4gICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApO1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTQwMCk7XG4gICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS02MDApO1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTtcbiAgfVxuXG4gICYudWktaW5kaWdvIC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTQwMCk7XG4gICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS02MDApO1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00OiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTtcbiAgfVxuXG4gICYudWktYmx1ZSAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMTogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApO1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTQwMCk7XG4gICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLWJsdWUtNjAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNDogdmFyKC0tZ2wtY29sb3ItYmx1ZS04MDApO1xuICB9XG5cbiAgJi51aS1ncmVlbiAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMTogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMjAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNDAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMzogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tODAwKTtcbiAgfVxuXG4gICYudWktcmVkIC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItcmVkLTQwMCk7XG4gICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApO1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00OiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTtcbiAgfVxuXG4gICYudWktZ3JheSAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApO1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7XG4gICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldmVyaXR5IGNvbG9yc1xuICAgKiBEaXNjdXNzaW9uOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9pc3N1ZXMvNTgxMTIxXG4gICAqIE93bmVyOiBTZWN1cml0eSBSaXNrIE1hbmFnZW1lbnQ6IFNlY3VyaXR5IEluc2lnaHRzXG4gICAqL1xuICAtLXNldmVyaXR5LWNvbG9yLWNyaXRpY2FsOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTtcbiAgLS1zZXZlcml0eS1jb2xvci1oaWdoOiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTtcbiAgLS1zZXZlcml0eS1jb2xvci1tZWRpdW06IHZhcigtLWdsLWNvbG9yLW9yYW5nZS00MDApO1xuICAtLXNldmVyaXR5LWNvbG9yLWxvdzogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTMwMCk7XG4gIC0tc2V2ZXJpdHktY29sb3ItaW5mbzogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApO1xuICAtLXNldmVyaXR5LWNvbG9yLXVua25vd246IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTtcblxuICAvKipcbiAgICogRmluZCBhbmQgcmVwbGFjZSBoaWdobGlnaHQgc3R5bGVzXG4gICAqIERpc2N1c3Npb246IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzIzMTI3NFxuICAgKiBPd25lcjogR3JvdXAgS25vd2xlZGdlXG4gICAqL1xuICAtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtdGV4dC1jb2xvcjogdmFyKC0tZ2wtaGlnaGxpZ2h0LW1hdGNoLXRleHQtY29sb3IpO1xuICAtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTEwMCk7XG4gIC0tZmluZC1hbmQtcmVwbGFjZS1tYXRjaC1hY3RpdmUtdGV4dC1jb2xvcjogdmFyKC0tZ2wtaGlnaGxpZ2h0LW1hdGNoLXRleHQtY29sb3IpO1xuICAtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtYWN0aXZlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWhpZ2hsaWdodC1tYXRjaC1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAmLmdsLWRhcmsge1xuICAgIC0tY2ktaWNvbi1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTMwMCk7XG4gICAgLS1jaS1pY29uLXN1Y2Nlc3MtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTAwKTtcbiAgICAtLWNpLWljb24tc3VjY2Vzcy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0zMDApO1xuICAgIC0tY2ktaWNvbi1zdWNjZXNzLWljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTAwKTtcblxuICAgIC0tY2ktaWNvbi13YXJuaW5nLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0zMDApO1xuICAgIC0tY2ktaWNvbi13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05MDApO1xuICAgIC0tY2ktaWNvbi13YXJuaW5nLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0zMDApO1xuICAgIC0tY2ktaWNvbi13YXJuaW5nLWljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTkwMCk7XG5cbiAgICAtLWNpLWljb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApO1xuICAgIC0tY2ktaWNvbi1kYW5nZXItdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7XG4gICAgLS1jaS1pY29uLWRhbmdlci1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMzAwKTtcbiAgICAtLWNpLWljb24tZGFuZ2VyLWljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7XG5cbiAgICAtLWNpLWljb24taW5mby1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7XG4gICAgLS1jaS1pY29uLWluZm8tdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05MDApO1xuICAgIC0tY2ktaWNvbi1pbmZvLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMzAwKTtcbiAgICAtLWNpLWljb24taW5mby1pY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtOTAwKTtcblxuICAgIC0tY2ktaWNvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMzAwKTtcbiAgICAtLWNpLWljb24tbmV1dHJhbC10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7XG4gICAgLS1jaS1pY29uLW5ldXRyYWwtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuICAgIC0tY2ktaWNvbi1uZXV0cmFsLWljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xuXG4gICAgLS1kaWZmLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogIzQ1MzUyMjtcblxuICAgIC0tdGltZWxpbmUtZW50cnktZHJhZnQtbm90ZS1iYWNrZ3JvdW5kLWNvbG9yOiAjNDUzNTIyO1xuXG4gICAgLS10aW1lbGluZS1lbnRyeS1pbnRlcm5hbC1ub3RlLWJhY2tncm91bmQtY29sb3I6ICM0NTM1MjI7XG5cbiAgICAtLXRpbWVsaW5lLWVudHJ5LXRhcmdldC1iYWNrZ3JvdW5kLWNvbG9yIDogIzJBMzk0RTtcblxuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0wOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7XG4gICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLWRhdGEtYmx1ZS05MDApO1xuICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0yOiB2YXIoLS1nbC1jb2xvci1kYXRhLWJsdWUtNjAwKTtcbiAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMzogdmFyKC0tZ2wtY29sb3ItZGF0YS1ibHVlLTQwMCk7XG4gICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLWRhdGEtYmx1ZS0xMDApO1xuXG4gICAgLmNvbnRyaWItY2FsZW5kYXItcm9vdCB7XG4gICAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS04MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS02MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS00MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0yMDApO1xuICAgIH1cblxuICAgICYudWktaW5kaWdvIC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS04MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS02MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS00MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApO1xuICAgIH1cblxuICAgICYudWktYmx1ZSAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xOiB2YXIoLS1nbC1jb2xvci1ibHVlLTgwMCk7XG4gICAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItYmx1ZS02MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLWJsdWUtNDAwKTtcbiAgICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00OiB2YXIoLS1nbC1jb2xvci1ibHVlLTIwMCk7XG4gICAgfVxuXG4gICAgJi51aS1ncmVlbiAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xOiB2YXIoLS1nbC1jb2xvci1ncmVlbi04MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTYwMCk7XG4gICAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMzogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNDAwKTtcbiAgICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00OiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApO1xuICAgIH1cblxuICAgICYudWktcmVkIC5jb250cmliLWNhbGVuZGFyLXJvb3Qge1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTE6IHZhcigtLWdsLWNvbG9yLXJlZC04MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTI6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLXJlZC00MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTQ6IHZhcigtLWdsLWNvbG9yLXJlZC0yMDApO1xuICAgIH1cblxuICAgICYudWktZ3JheSAuY29udHJpYi1jYWxlbmRhci1yb290IHtcbiAgICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7XG4gICAgICAtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApO1xuICAgICAgLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTM6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTtcbiAgICAgIC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7XG4gICAgfVxuXG4gICAgLS1zZXZlcml0eS1jb2xvci1jcml0aWNhbDogdmFyKC0tZ2wtY29sb3ItcmVkLTUwMCk7XG4gICAgLS1zZXZlcml0eS1jb2xvci1oaWdoOiB2YXIoLS1nbC1jb2xvci1yZWQtMzAwKTtcbiAgICAtLXNldmVyaXR5LWNvbG9yLW1lZGl1bTogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTMwMCk7XG4gICAgLS1zZXZlcml0eS1jb2xvci1sb3c6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApO1xuICAgIC0tc2V2ZXJpdHktY29sb3ItaW5mbzogdmFyKC0tZ2wtY29sb3ItYmx1ZS0zMDApO1xuICAgIC0tc2V2ZXJpdHktY29sb3ItdW5rbm93bjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuXG4gICAgLS1maW5kLWFuZC1yZXBsYWNlLW1hdGNoLWFjdGl2ZS10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApO1xuICAgIC0tZmluZC1hbmQtcmVwbGFjZS1tYXRjaC1hY3RpdmUtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTgwMCk7XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcbkB1c2UgXCJzYXNzOm1ldGFcIjtcblxuLypcbiogU0FTUyBwcmVzZXJ2ZXMgdW5pdHMgaW4gYXJpdGhtZXRpYyBvcGVyYXRpb25zLiBGb3IgZXhhbXBsZTpcbiogMTJlbSAqIDAgPSAwZW0uIFRoaXMgZnVuY3Rpb24gcmV0dXJuIHRoZSB1bml0IG9mIGEgbnVtZXJpYyB2YWx1ZS5cbipcbiogRm9yIG1vcmUgZXhhbXBsZXMsIHNlZTogaHR0cHM6Ly9jb2RlcGVuLmlvL3BhdWxndi9wZW4vWFdycU1nUVxuKi9cbkBmdW5jdGlvbiBleHRyYWN0LXVuaXQoJG51bWJlcikge1xuICBAcmV0dXJuICRudW1iZXIgKiAwICsgMTtcbn1cblxuQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJG51bWJlcikge1xuICBAaWYgbWV0YS50eXBlLW9mKCRudW1iZXIpID09IFwibnVtYmVyXCIgYW5kIG5vdCBtYXRoLmlzLXVuaXRsZXNzKCRudW1iZXIpIHtcbiAgICBAcmV0dXJuIG1hdGguZGl2KCRudW1iZXIsIGV4dHJhY3QtdW5pdCgkbnVtYmVyKSk7XG4gIH1cblxuICBAcmV0dXJuICRudW1iZXI7XG59XG5cbkBmdW5jdGlvbiBzaW5nbGUtdW5pdC1yZW0oJHZhbHVlLCAkZm9udC1zaXplLWJhc2UpIHtcbiAgQGlmIChleHRyYWN0LXVuaXQoJHZhbHVlKSAhPSAxcHgpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gICRjb252ZXJ0ZWQ6IG1hdGguZGl2KCR2YWx1ZSwgJGZvbnQtc2l6ZS1iYXNlKTtcblxuICBAcmV0dXJuIHN0cmlwLXVuaXQoJGNvbnZlcnRlZCkgKiAxcmVtO1xufVxuXG5AZnVuY3Rpb24gbXVsdGlwbGUtdW5pdHMtcmVtKCR2YWx1ZXMsICRmb250LXNpemUtYmFzZSkge1xuICAkcmVtLXZhbHVlczogKCk7XG5cbiAgQGVhY2ggJHZhbHVlIGluICR2YWx1ZXMge1xuICAgICRyZW0tdmFsdWVzOiBhcHBlbmQoJHJlbS12YWx1ZXMsIHNpbmdsZS11bml0LXJlbSgkdmFsdWUsICRmb250LXNpemUtYmFzZSkpO1xuICB9XG5cbiAgQHJldHVybiAkcmVtLXZhbHVlcztcbn1cblxuQGZ1bmN0aW9uIHB4LXRvLXJlbSgkcHgsICRmb250LXNpemUtYmFzZTogMTZweCkge1xuICBAaWYgbWV0YS50eXBlLW9mKCRweCkgPT0gXCJudW1iZXJcIiB7XG4gICAgQHJldHVybiBzaW5nbGUtdW5pdC1yZW0oJHB4LCAkZm9udC1zaXplLWJhc2UpO1xuICB9IEBlbHNlIGlmIG1ldGEudHlwZS1vZigkcHgpID09IFwibGlzdFwiIHtcbiAgICBAcmV0dXJuIG11bHRpcGxlLXVuaXRzLXJlbSgkcHgsICRmb250LXNpemUtYmFzZSk7XG4gIH0gQGVsc2Uge1xuICAgIEByZXR1cm4gJHB4O1xuICB9XG59XG5cbkBmdW5jdGlvbiBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCkge1xuICBAcmV0dXJuICN7aWYoJGltcG9ydGFudCwgXCIhaW1wb3J0YW50XCIsIFwiXCIpfTtcbn1cblxuQGZ1bmN0aW9uIGNsYW1wLWJldHdlZW4oJG1pbiwgJG1heCwgJG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWQsICRtYXgtd2lkdGg6ICRicmVha3BvaW50LXhsKSB7XG4gICRtaW4td2lkdGg6IHB4LXRvLXJlbSgkbWluLXdpZHRoKTtcbiAgJG1heC13aWR0aDogcHgtdG8tcmVtKCRtYXgtd2lkdGgpO1xuXG4gICRzbG9wZTogbWF0aC5kaXYoJG1heCAtICRtaW4sICRtYXgtd2lkdGggLSAkbWluLXdpZHRoKTtcbiAgJGludGVyc2VjdGlvbjogKC0kbWluLXdpZHRoICogJHNsb3BlKSArICRtaW47XG5cbiAgQHJldHVybiBjbGFtcCgjeyRtaW59LCAjeyRpbnRlcnNlY3Rpb259ICsgI3skc2xvcGUgKiAxMDB2d30sICN7JG1heH0pO1xufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5AaW1wb3J0IFwiZnVuY3Rpb25zXCI7XG5AaW1wb3J0IFwiLi4vdG9rZW5zL2J1aWxkL3Njc3MvdG9rZW5zXCI7XG5cbi8vIExheW91dFxuJGdyaWQtc2l6ZTogcHgtdG8tcmVtKDhweCk7XG5cbi8vIFJlc3BvbnNpdmUgYnJlYWtwb2ludHNcblxuJGJyZWFrcG9pbnQtc206IDU3NnB4O1xuJGJyZWFrcG9pbnQtbWQ6IDc2OHB4O1xuJGJyZWFrcG9pbnQtbGc6IDk5MnB4O1xuJGJyZWFrcG9pbnQteGw6IDEyMDBweDtcblxuJGJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogJGJyZWFrcG9pbnQtc20sXG4gIG1kOiAkYnJlYWtwb2ludC1tZCxcbiAgbGc6ICRicmVha3BvaW50LWxnLFxuICB4bDogJGJyZWFrcG9pbnQteGwsXG4pO1xuXG4vLyBNYXggd2lkdGhzXG4kbGltaXRlZC1sYXlvdXQtd2lkdGg6IDk5MHB4ICFkZWZhdWx0O1xuJGNvbnRhaW5lci14bDogMTI4MHB4ICFkZWZhdWx0O1xuXG4vLyBDb2xvciBzY2hlbWFcbi8qIHN0eWxlbGludC1kaXNhYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG4kYmxhY2stbm9ybWFsOiAjMzMzICFkZWZhdWx0O1xuXG4kd2hpdGUtY29udHJhc3Q6ICNmZmYgIWRlZmF1bHQ7XG4kd2hpdGUtbm9ybWFsOiAjZjBmMGYwICFkZWZhdWx0O1xuJHdoaXRlLWRhcms6ICNlYWVhZWEgIWRlZmF1bHQ7XG4kd2hpdGUtdHJhbnNwYXJlbnQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KSAhZGVmYXVsdDtcbiR0cmFuc3BhcmVudC1yZ2JhOiByZ2JhKCR3aGl0ZSwgMCk7XG4vKiBzdHlsZWxpbnQtZW5hYmxlIEBnaXRsYWIvbm8tZ2wtZGVwcmVjYXRlZC1kZXNpZ24tdG9rZW5zICovXG5cbi8vIFRleHRcbiRnbC10ZXh0LWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1kZWZhdWx0ICFkZWZhdWx0O1xuJGdsLXRleHQtY29sb3Itc2Vjb25kYXJ5OiAkZ2wtdGV4dC1jb2xvci1zdWJ0bGUgIWRlZmF1bHQ7XG5cbiRnbC1mb250LXdlaWdodC1saWdodDogMzAwO1xuJGdsLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuJGdsLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA1MDA7XG4kZ2wtZm9udC13ZWlnaHQtYm9sZDogNjAwO1xuXG4kZ2wtZm9udC13ZWlnaHRzOiAoXG4gIFwibm9ybWFsXCI6ICRnbC1mb250LXdlaWdodC1ub3JtYWwsXG4gIFwiYm9sZFwiOiAkZ2wtZm9udC13ZWlnaHQtYm9sZCxcbik7XG5cbi8vIEZvbnRzXG4kZ2wtbW9ub3NwYWNlLWZvbnQ6XG4gIFwiR2l0TGFiIE1vbm9cIiwgXCJKZXRCcmFpbnMgTW9ub1wiLCBcIk1lbmxvXCIsIFwiRGVqYVZ1IFNhbnMgTW9ub1wiLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBcIkNvbnNvbGFzXCIsXG4gIFwiVWJ1bnR1IE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBcImFuZGFsZSBtb25vXCIsIFwibHVjaWRhIGNvbnNvbGVcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGdsLXJlZ3VsYXItZm9udDpcbiAgXCJHaXRMYWIgU2Fuc1wiLFxuICAtYXBwbGUtc3lzdGVtLFxuICBCbGlua01hY1N5c3RlbUZvbnQsXG4gIFwiU2Vnb2UgVUlcIixcbiAgUm9ib3RvLFxuICBcIk5vdG8gU2Fuc1wiLFxuICBVYnVudHUsXG4gIENhbnRhcmVsbCxcbiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLFxuICBzYW5zLXNlcmlmLFxuICBcIkFwcGxlIENvbG9yIEVtb2ppXCIsXG4gIFwiU2Vnb2UgVUkgRW1vamlcIixcbiAgXCJTZWdvZSBVSSBTeW1ib2xcIixcbiAgXCJOb3RvIENvbG9yIEVtb2ppXCIgIWRlZmF1bHQ7XG5cbiRnbC1mb250czogKFxuICBcIm1vbm9zcGFjZVwiOiAkZ2wtbW9ub3NwYWNlLWZvbnQsXG4gIFwicmVndWxhclwiOiAkZ2wtcmVndWxhci1mb250LFxuKTtcblxuLy8gTmV3IFVJIHR5cGUgc2NhbGVcbi8vIEltcGxlbWVudHMgdGhlIHR5cGUgc2NhbGUgZnJvbSBodHRwczovL2dpdGxhYi5jb20vZ3JvdXBzL2dpdGxhYi1vcmcvZ2l0bGFiLXNlcnZpY2VzLy0vZXBpY3MvMTVcbi8vIE9sZCB2YXJpYWJsZXMgYW5kIHN0eWxlcyBuZWVkIHRvIGJlIHJlbW92ZWQgYWZ0ZXIgaW50ZXJncmF0aW9uXG5cbi8vIEZvbnQgc2l6ZSBzY2FsZVxuXG4vLyBmaXhlZCBzY2FsZSAoY29tcGFjdCBtYXJrZG93bilcbiRnbC1mb250LXNpemVzLWZpeGVkOiAoXG4gIDEwMDogcHgtdG8tcmVtKDEycHgpLFxuICAyMDA6IHB4LXRvLXJlbSgxM3B4KSxcbiAgMzAwOiBweC10by1yZW0oMTRweCksXG4gIDQwMDogcHgtdG8tcmVtKDE2cHgpLFxuICA1MDA6IHB4LXRvLXJlbSgxOHB4KSxcbiAgNjAwOiBweC10by1yZW0oMjFweCksXG4gIDcwMDogcHgtdG8tcmVtKDI0cHgpLFxuICA4MDA6IHB4LXRvLXJlbSgyOHB4KSxcbik7XG5cbi8vIGR5bmFtaWMgc2NhbGUgKGRlZmF1bHQpIHJlc2l6ZXMgYmFzZWQgb24gdmlld3BvcnQgd2lkdGhcbiRnbC1mb250LXNpemVzOiAoXG4gIDEwMDogbWFwLmdldCgkZ2wtZm9udC1zaXplcy1maXhlZCwgMTAwKSxcbiAgMjAwOiBtYXAuZ2V0KCRnbC1mb250LXNpemVzLWZpeGVkLCAyMDApLFxuICAzMDA6IG1hcC5nZXQoJGdsLWZvbnQtc2l6ZXMtZml4ZWQsIDMwMCksXG4gIDQwMDogbWFwLmdldCgkZ2wtZm9udC1zaXplcy1maXhlZCwgNDAwKSxcbiAgNTAwOiBjbGFtcC1iZXR3ZWVuKG1hcC5nZXQoJGdsLWZvbnQtc2l6ZXMtZml4ZWQsIDUwMCksIHB4LXRvLXJlbSgyMHB4KSksXG4gIDYwMDogY2xhbXAtYmV0d2VlbihtYXAuZ2V0KCRnbC1mb250LXNpemVzLWZpeGVkLCA2MDApLCBweC10by1yZW0oMjVweCkpLFxuICA3MDA6IGNsYW1wLWJldHdlZW4obWFwLmdldCgkZ2wtZm9udC1zaXplcy1maXhlZCwgNzAwKSwgcHgtdG8tcmVtKDMwcHgpKSxcbiAgODAwOiBjbGFtcC1iZXR3ZWVuKG1hcC5nZXQoJGdsLWZvbnQtc2l6ZXMtZml4ZWQsIDgwMCksIHB4LXRvLXJlbSgzNnB4KSksXG4pO1xuXG4vLyBIZWFkaW5nIHZhcmlhYmxlc1xuLy8gTm90IGFsbCBhcmUgY3VycmVudGx5IHVzZWQsIGJ1dCBkb2N1bWVudGVkIGhlcmUgdG8gY2FwdHVyZSBpbnRlbnRcbiRnbC1mb250LWhlYWRpbmc6ICRnbC1yZWd1bGFyLWZvbnQ7XG4kZ2wtZm9udC13ZWlnaHQtaGVhZGluZzogNjAwO1xuJGdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmc6IGluaGVyaXQ7XG4kZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZy1yZWR1Y2VkOiAtMC4wMWVtO1xuJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc6IDEuMjU7XG4kZ2wtbGluZS1oZWlnaHQtaGVhZGluZy1kaXNwbGF5OiAxLjEyNTtcbiRnbC1tYi1oZWFkaW5nOiAkZ2wtc3BhY2luZy1zY2FsZS01O1xuJGdsLW1iLWhlYWRpbmctZGlzcGxheTogJGdsLXNwYWNpbmctc2NhbGUtNjtcbiRnbC10ZXh0LWNvbG9yLWhlYWRpbmc6ICRnbC10ZXh0LWNvbG9yO1xuLy8gTm90IHlldCBzdXBwb3J0ZWQsIGJ1dCB3ZSdsbCBiZSByZWFkeVxuJGdsLXRleHQtd3JhcC1oZWFkaW5nOiBwcmV0dHk7XG5cbi8vIEVORCBOZXcgVUkgdHlwZSBzY2FsZVxuXG4vLyBVSSB0eXBlc2NhbGVcblxuLy8gZGVmYXVsdCAobWluLXdpZHRoOiAwKVxuJGdsLWZvbnQtc2l6ZTogcHgtdG8tcmVtKDE0cHgpO1xuXG4kZ2wtZm9udC1zaXplLWgtZGlzcGxheTogcHgtdG8tcmVtKDI4cHgpO1xuJGdsLWZvbnQtc2l6ZS1oMTogcHgtdG8tcmVtKDIzcHgpO1xuJGdsLWZvbnQtc2l6ZS1oMjogcHgtdG8tcmVtKDE5cHgpO1xuXG4vLyBicmVha3BvaW50IChtaW4td2lkdGg6IDc2OHB4KVxuJGdsLWZvbnQtc2l6ZS1oLWRpc3BsYXktbWQ6IHB4LXRvLXJlbSgzMXB4KTtcbiRnbC1mb250LXNpemUtaDEtbWQ6IHB4LXRvLXJlbSgyNXB4KTtcbiRnbC1mb250LXNpemUtaDItbWQ6IHB4LXRvLXJlbSgyMHB4KTtcblxuLy8gYnJlYWtwb2ludCAobWluLXdpZHRoOiAxMjAwcHgpXG4kZ2wtZm9udC1zaXplLWgtZGlzcGxheS14bDogcHgtdG8tcmVtKDQ1cHgpO1xuJGdsLWZvbnQtc2l6ZS1oMS14bDogcHgtdG8tcmVtKDMycHgpO1xuJGdsLWZvbnQtc2l6ZS1oMi14bDogcHgtdG8tcmVtKDIzcHgpO1xuXG4vLyBNYXJrZG93biB0eXBlc2NhbGVcblxuLy8gZGVmYXVsdCAobWluLXdpZHRoOiAwKVxuJGdsLWZvbnQtc2l6ZS1tYXJrZG93bjogcHgtdG8tcmVtKDE2cHgpO1xuJGdsLWZvbnQtc2l6ZS1tYXJrZG93bi1zbTogcHgtdG8tcmVtKDE0cHgpO1xuXG4kZ2wtZm9udC1zaXplLW1hcmtkb3duLWgxOiBweC10by1yZW0oMjhweCk7XG4kZ2wtZm9udC1zaXplLW1hcmtkb3duLWgyOiBweC10by1yZW0oMjNweCk7XG4kZ2wtZm9udC1zaXplLW1hcmtkb3duLWgzOiBweC10by1yZW0oMTlweCk7XG5cbi8vIGJyZWFrcG9pbnQgKG1pbi13aWR0aDogNzY4cHgpXG4kZ2wtZm9udC1zaXplLW1hcmtkb3duLWgxLW1kOiBweC10by1yZW0oMzFweCk7XG4kZ2wtZm9udC1zaXplLW1hcmtkb3duLWgyLW1kOiBweC10by1yZW0oMjVweCk7XG4kZ2wtZm9udC1zaXplLW1hcmtkb3duLWgzLW1kOiBweC10by1yZW0oMjBweCk7XG5cbi8vIGJyZWFrcG9pbnQgKG1pbi13aWR0aDogMTIwMHB4KVxuJGdsLWZvbnQtc2l6ZS1tYXJrZG93bi1oMS14bDogcHgtdG8tcmVtKDQ1cHgpO1xuJGdsLWZvbnQtc2l6ZS1tYXJrZG93bi1oMi14bDogcHgtdG8tcmVtKDMycHgpO1xuJGdsLWZvbnQtc2l6ZS1tYXJrZG93bi1oMy14bDogcHgtdG8tcmVtKDIzcHgpO1xuXG4vLyBDb21wYWN0IG1hcmtkb3duIHR5cGVzY2FsZVxuXG4vLyBkZWZhdWx0IChtaW4td2lkdGg6IDApXG4kZ2wtZm9udC1zaXplLWNvbXBhY3QtbWFya2Rvd24taDE6IHB4LXRvLXJlbSgxOXB4KTtcblxuLy8gbWVkaWEtbWQ6IG1pbi13aWR0aDogNzY4cHhcbiRnbC1mb250LXNpemUtY29tcGFjdC1tYXJrZG93bi1oMS1tZDogcHgtdG8tcmVtKDIwcHgpO1xuXG4vLyBtZWRpYSB4bCAobWluLXdpZHRoOiAxMjAwcHgpXG4kZ2wtZm9udC1zaXplLWNvbXBhY3QtbWFya2Rvd24taDEteGw6IHB4LXRvLXJlbSgyM3B4KTtcblxuJGJvcmRlci1jb2xvcjogJGdsLWJvcmRlci1jb2xvci1kZWZhdWx0ICFkZWZhdWx0O1xuXG4vLyB1c2UgcHggZm9yIGJvcmRlcnMgcmF0aGVyIHRoYW4gcmVtXG4vLyB3ZSBkb24ndCB3YW50IGJvcmRlcnMgdG8gc2NhbGUgd2l0aCBmb250IHNpemVcbi8vIDFweCBjYW4gZW5kIHVwIGJlaW5nIHJvdW5kZWQgdG8gMCBhZnRlclxuLy8gY29udmVyc2lvbiB0by9mcm9tIHJlbVxuJGdsLWJvcmRlci1zaXplLTE6IDFweDtcbiRnbC1ib3JkZXItc2l6ZS0yOiAycHg7XG4kZ2wtYm9yZGVyLXNpemUtMzogM3B4O1xuJGdsLWJvcmRlci1zaXplLTQ6IDRweDtcbiRnbC1ib3JkZXItc2l6ZS01OiA1cHg7XG4kZ2wtYm9yZGVyLXNpemUtODogOHB4O1xuXG4vLyBib3JkZXIgcm91bmRuZXNzXG4kZ2wtYm9yZGVyLXJhZGl1cy1zbWFsbDogJGdsLXNwYWNpbmctc2NhbGUtMTtcbiRnbC1ib3JkZXItcmFkaXVzLWJhc2U6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4kZ2wtYm9yZGVyLXJhZGl1cy1sYXJnZTogJGdsLXNwYWNpbmctc2NhbGUtMztcbiRnbC1ib3JkZXItcmFkaXVzLTY6ICRnbC1zcGFjaW5nLXNjYWxlLTY7XG4kZ2wtYm9yZGVyLXJhZGl1cy03OiAkZ2wtc3BhY2luZy1zY2FsZS03O1xuXG4vLyBjb21wb25lbnQgaGVpZ2h0XG4kZ2wtYnV0dG9uLXNtYWxsLXNpemU6IHB4LXRvLXJlbSgyNHB4KTtcbiRnbC1idXR0b24tbWVkaXVtLXNpemU6IHB4LXRvLXJlbSgzMnB4KTtcblxuLy8gdHJhbnNpdGlvbiBwYXJhbWV0ZXJzXG4kZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1zbG93OiAwLjRzO1xuJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtOiAwLjJzO1xuJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tZmFzdDogMC4xcztcblxuLy8gQW5pbWF0aW9uIGVhc2luZ3NcbiRnbC1lYXNpbmctbGluZWFyOiBsaW5lYXI7XG4kZ2wtZWFzaW5nLWRlZmF1bHQ6IGVhc2U7XG4kZ2wtZWFzaW5nLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKDAuMjIsIDAuNjEsIDAuMzYsIDEpO1xuXG4vLyBGb2N1cyByaW5nXG4kb3V0bGluZS1vZmZzZXQ6IDFweDtcbiRvdXRsaW5lLXdpZHRoOiAycHg7XG4kb3V0bGluZTogI3skb3V0bGluZS1vZmZzZXQgKyAkb3V0bGluZS13aWR0aH07XG4kZm9jdXMtcmluZzpcbiAgMCAwIDAgJG91dGxpbmUtb2Zmc2V0IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLFxuICAwIDAgMCAjeyRvdXRsaW5lLW9mZnNldCArICRvdXRsaW5lLXdpZHRofSB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKTtcbiRmb2N1cy1yaW5nLWluc2V0OlxuICBpbnNldCAwIDAgMCAjeyRvdXRsaW5lLXdpZHRoICsgJG91dGxpbmUtb2Zmc2V0fSB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSxcbiAgaW5zZXQgMCAwIDAgJG91dGxpbmUtb2Zmc2V0IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpO1xuJGZvY3VzLXJpbmctb3V0bGluZTogJG91dGxpbmUtd2lkdGggc29saWQgdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcik7XG5cbi8vIFRvYXN0c1xuJHRvYXN0LW1heC13aWR0aDogcHgtdG8tcmVtKDU4NnB4KTtcbiR0b2FzdC1wYWRkaW5nLXJpZ2h0OiBweC10by1yZW0oNDJweCk7XG5cbi8vIENoYXJ0IHRvb2x0aXBcbiRjaGFydC10b29sdGlwLW1heC13aWR0aDogcHgtdG8tcmVtKDUxMnB4KTtcblxuJGdsLWljb24tY2hldnJvbi1sZWZ0OiAnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB2aWV3Qm94PVwiMCAwIDE2IDE2XCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiPjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTUuMjkzIDcuMjkzYTEgMSAwIDAgMCAwIDEuNDE0bDMgM2ExIDEgMCAwIDAgMS40MTQtMS40MTRMNy40MTQgOGwyLjI5My0yLjI5M2ExIDEgMCAwIDAtMS40MTQtMS40MTRsLTMgM3pcIi8+PC9zdmc+JztcbiRnbC1pY29uLWNoZXZyb24tcmlnaHQ6ICdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHZpZXdCb3g9XCIwIDAgMTYgMTZcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgeG1sbnM6eGxpbms9XCJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rXCI+PHBhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGQ9XCJNMTAuNzA3IDcuMjkzYTEgMSAwIDAgMSAwIDEuNDE0bC0zIDNhMSAxIDAgMCAxLTEuNDE0LTEuNDE0TDguNTg2IDggNi4yOTMgNS43MDdhMSAxIDAgMCAxIDEuNDE0LTEuNDE0bDMgM3pcIi8+PC9zdmc+JztcbiRnbC1pY29uLWNoZXZyb24tZG93bjogJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgdmlld0JveD1cIjAgMCAxNiAxNlwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIj48cGF0aCBmaWxsLXJ1bGU9XCJldmVub2RkXCIgZD1cIk03LjI5MyAxMC43MDdhMSAxIDAgMCAwIDEuNDE0IDBsMy0zYTEgMSAwIDAgMC0xLjQxNC0xLjQxNEw4IDguNTg2IDUuNzA3IDYuMjkzYTEgMSAwIDAgMC0xLjQxNCAxLjQxNGwzIDN6XCIvPjwvc3ZnPic7XG4kZ2wtaWNvbi1zZWxlY3QtY2hldnJvbi1kb3duOiAnZGF0YTppbWFnZS9zdmcreG1sLCUzQ3N2ZyB3aWR0aD1cIjhcIiBoZWlnaHQ9XCI1XCIgdmlld0JveD1cIjAgMCA4IDVcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiUzRSUzQ3BhdGggZmlsbC1ydWxlPVwiZXZlbm9kZFwiIGNsaXAtcnVsZT1cImV2ZW5vZGRcIiBkPVwiTTAuMjE5NjcgMC4yMTk2N0MwLjUxMjU2MyAtMC4wNzMyMjMyIDAuOTg3NDM3IC0wLjA3MzIyMzIgMS4yODAzMyAwLjIxOTY3TDQgMi45MzkzNEw2LjcxOTY3IDAuMjE5NjdDNy4wMTI1NiAtMC4wNzMyMjMgNy40ODc0NCAtMC4wNzMyMjI5IDcuNzgwMzMgMC4yMTk2N0M4LjA3MzIyIDAuNTEyNTYzIDguMDczMjIgMC45ODc0MzcgNy43ODAzMyAxLjI4MDMzTDQuNTMwMzMgNC41MzAzM0M0LjIzNzQ0IDQuODIzMjIgMy43NjI1NiA0LjgyMzIyIDMuNDY5NjcgNC41MzAzM0wwLjIxOTY3IDEuMjgwMzNDLTAuMDczMjIzMyAwLjk4NzQzNyAtMC4wNzMyMjMzIDAuNTEyNTYzIDAuMjE5NjcgMC4yMTk2N1pcIiBmaWxsPVwiJTIzNjY2NjY2XCIvJTNFJTNDL3N2ZyUzRSUwQSc7XG4kZ2wtaWNvbi1jaGVjazogJ2RhdGE6aW1hZ2Uvc3ZnK3htbCwlM0Nzdmcgd2lkdGg9XCIxMFwiIGhlaWdodD1cIjhcIiB2aWV3Qm94PVwiMCAwIDEwIDhcIiBmaWxsPVwibm9uZVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiUzRSUzQ3BhdGggZD1cIk0wLjc1IDQuNzYyODlMMy4xNTMxMiA3LjI0Njc4TDkuMjUgMS4xNDk5XCIgc3Ryb2tlPVwid2hpdGVcIiBzdHJva2Utd2lkdGg9XCIxLjVcIiBzdHJva2UtbGluZWNhcD1cInJvdW5kXCIgc3Ryb2tlLWxpbmVqb2luPVwicm91bmRcIi8lM0UlM0Mvc3ZnJTNFJTBBJztcbiRnbC1pY29uLWluZGV0ZXJtaW5hdGU6ICdkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPVwiMTBcIiBoZWlnaHQ9XCIyXCIgdmlld0JveD1cIjAgMCAxMCAyXCIgZmlsbD1cIm5vbmVcIiB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIlM0UlM0NwYXRoIGQ9XCJNMS43NSAxSDguMjVcIiBzdHJva2U9XCJ3aGl0ZVwiIHN0cm9rZS13aWR0aD1cIjEuNVwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiLyUzRSUzQy9zdmclM0UlMEEnO1xuJGdsLWljb24tcmFkaW86ICdkYXRhOmltYWdlL3N2Zyt4bWwsJTNDc3ZnIHdpZHRoPVwiNlwiIGhlaWdodD1cIjZcIiB2aWV3Qm94PVwiMCAwIDYgNlwiIGZpbGw9XCJub25lXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiJTNFJTNDY2lyY2xlIGN4PVwiM1wiIGN5PVwiM1wiIHI9XCIzXCIgZmlsbD1cIndoaXRlXCIvJTNFJTNDL3N2ZyUzRSUwQSc7XG5cbi8vIEljb25zXG4kZGVmYXVsdC1pY29uLXNpemU6IHB4LXRvLXJlbSgxNnB4KTtcbiRnbC1pY29uLXNpemVzOiA4IDEyIDE0IDE2IDI0IDMyIDQ4IDcyO1xuXG4vLyBEcm9wZG93bnNcbiRnbC1kcm9wZG93bi13aWR0aDogcHgtdG8tcmVtKDI0MHB4KTtcbiRnbC1uZXctZHJvcGRvd24tbWluLXdpZHRoOiBweC10by1yZW0oMjQ4cHgpO1xuJGdsLW5ldy1kcm9wZG93bi1tYXgtd2lkdGg6IHB4LXRvLXJlbSg0NTZweCk7XG4kZ2wtZHJvcGRvd24td2lkdGgtbmFycm93OiBweC10by1yZW0oMTYwcHgpO1xuJGdsLWRyb3Bkb3duLXdpZHRoLXdpZGU6IHB4LXRvLXJlbSg0MDBweCk7XG4kZ2wtbWF4LWRyb3Bkb3duLW1heC1oZWlnaHQ6IHB4LXRvLXJlbSgzMTJweCk7XG5cbi8vIEJyb2FkY2FzdCBtZXNzYWdlc1xuJGdsLWJyb2FkY2FzdC1tZXNzYWdlLW5vdGlmaWNhdGlvbi1tYXgtd2lkdGg6IHB4LXRvLXJlbSgzMDBweCk7XG5cbi8vIE1vZGFsIFdpZHRoc1xuJGdsLW1vZGFsLXNtYWxsLXdpZHRoOiBweC10by1yZW0oNTEycHgpO1xuJGdsLW1vZGFsLW1lZGl1bS13aWR0aDogcHgtdG8tcmVtKDc2OHB4KTtcbiRnbC1tb2RhbC1sYXJnZS13aWR0aDogcHgtdG8tcmVtKDk5MHB4KTtcblxuLy8gTW9kYWwgYm9vdHN0cmFwIHZhcmlhYmxlc1xuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICRnbC1ib3JkZXItY29sb3Itc3Ryb25nO1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICRnbC1ib3JkZXItY29sb3Itc3Ryb25nO1xuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtMjA7XG4kbW9kYWwtYmFja2Ryb3AtYmc6ICMwMDA7XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogMC42NDtcblxuLy8gQm9vdHN0cmFwIG92ZXJyaWRlc1xuLy8gdGhlc2Ugc2hvdWxkIGlkZWFsbHkgYmUgbW92ZWQgZnVydGhlciB1cCBpbiB0aGUgZmlsZSB0byB0aGUgY29tcG9lbnQtcmVsZXZhbnQgc2VjdGlvbnNcbi8vIGJ1dCB0aGV5IGNhbiB3YWl0IGhlcmUgZm9yIG5vd1xuJGJvZHktY29sb3I6ICRnbC10ZXh0LWNvbG9yICFkZWZhdWx0O1xuJGVuYWJsZS12YWxpZGF0aW9uLWljb25zOiBmYWxzZTtcblxuLy8gTm90IG1vdmVkIHRvIGEgZGVzaWduIHRva2VuIGFzIGl0J3MgYSB2YWd1ZSBCb290c3RyYXAgdmFyaWFibGUgdGhhdCBtaWdodCBoYXZlIGZhci1yZWFjaGluZywgdW5pbnRlbmRlZCBjb25zZXF1ZW5jZXMuXG4vLyBJZGVhbGx5LCB0aGlzIHZhcmlhYmxlIHdvdWxkIGp1c3QgYmUgcmVtb3ZlZCBvbmNlIHdlIGtub3cgaXQgaXMgbm90IHVzZWQgYW55d2hlcmUuXG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbiRzZWNvbmRhcnk6ICRncmF5LTUwO1xuJHN1Y2Nlc3M6ICRnbC10ZXh0LWNvbG9yLXN1Y2Nlc3M7XG4vKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGdpdGxhYi9uby1nbC1kZXByZWNhdGVkLWRlc2lnbi10b2tlbnMgKi9cbiRpbmZvOiAkYmx1ZS01MDA7XG4kd2FybmluZzogJGdsLXRleHQtY29sb3Itd2FybmluZztcbiRkYW5nZXI6ICRnbC10ZXh0LWNvbG9yLWRhbmdlcjtcblxuJGZvbnQtd2VpZ2h0LWJvbGQ6ICRnbC1mb250LXdlaWdodC1ib2xkO1xuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJGdsLXJlZ3VsYXItZm9udCAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICRnbC1tb25vc3BhY2UtZm9udCAhZGVmYXVsdDtcblxuJGgxLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZSAqIDIuNTtcbiRoMi1mb250LXNpemU6ICRnbC1mb250LXNpemUgKiAyO1xuJGgzLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZSAqIDEuNzU7XG4kaDQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplICogMS41O1xuJGg1LWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZSAqIDEuMjU7XG4kaDYtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplO1xuXG4kc3BhY2VyOiAkZ3JpZC1zaXplO1xuJHNwYWNlcnM6IChcbiAgMTogJGdsLXNwYWNpbmctc2NhbGUtMixcbiAgMjogJGdsLXNwYWNpbmctc2NhbGUtMyxcbiAgMzogJGdsLXNwYWNpbmctc2NhbGUtNSxcbiAgNDogJGdsLXNwYWNpbmctc2NhbGUtNixcbiAgNTogJGdsLXNwYWNpbmctc2NhbGUtNyxcbiAgNjogJGdsLXNwYWNpbmctc2NhbGUtOCxcbiAgNzogJGdsLXNwYWNpbmctc2NhbGUtOSxcbiAgODogJGdsLXNwYWNpbmctc2NhbGUtMTAsXG4gIDk6ICRnbC1zcGFjaW5nLXNjYWxlLTExLFxuKTtcblxuJHRhYmxlLWFjY2VudC1iZzogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdWJ0bGUpO1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAkZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4kY2FyZC1jYXAtYmc6ICRnbC1iYWNrZ3JvdW5kLWNvbG9yLXN1YnRsZSAhZGVmYXVsdDtcblxuLy8gRm9ybSBpbnB1dCBzaXplc1xuJGdsLWZvcm0taW5wdXQtc2l6ZXM6IChcbiAgeHM6ICRncmlkLXNpemUgKiAxMCxcbiAgc206ICRncmlkLXNpemUgKiAyMCxcbiAgbWQ6ICRncmlkLXNpemUgKiAzMCxcbiAgbGc6ICRncmlkLXNpemUgKiA0MCxcbiAgeGw6ICRncmlkLXNpemUgKiA3MCxcbik7XG5cbiRwb3BvdmVyLWFycm93LXdpZHRoOiAwLjVyZW07XG4kcG9wb3Zlci1hcnJvdy1oZWlnaHQ6IDAuMjVyZW07XG4kcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjogJGdsLWJvcmRlci1jb2xvci1kZWZhdWx0O1xuXG4kdG9vbHRpcC1vcGFjaXR5OiAxO1xuIiwiQGltcG9ydCAnQGdpdGxhYi91aS9zcmMvdG9rZW5zL2J1aWxkL3Njc3MvdG9rZW5zJztcbkBpbXBvcnQgJ0BnaXRsYWIvdWkvc3JjL3Njc3MvdmFyaWFibGVzJztcblxuLypcbiAqIExheW91dFxuICovXG4kZ3JpZC1zaXplOiA4cHg7XG4kcmlnaHQtc2lkZWJhci1jb2xsYXBzZWQtd2lkdGg6IDYycHg7XG4kcmlnaHQtc2lkZWJhci13aWR0aDogMjkwcHg7XG4kcmlnaHQtc2lkZWJhci1pbm5lci13aWR0aDogMjUwcHg7XG4kd2lraS1zaWRlYmFyLWlubmVyLXdpZHRoOiAyMjBweDtcbiRzaWRlYmFyLWJyZWFrcG9pbnQ6IDEwMjRweDtcbiRkZWZhdWx0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMTVzO1xuJHRvZ2dsZS1zaWRlYmFyLWhlaWdodDogNDhweDtcbiRzdXBlci1zaWRlYmFyLXdpZHRoOiAxNXJlbTtcbiRzdXBlci1zaWRlYmFyLXotaW5kZXg6IDYwMDtcbiRzdXBlci1zaWRlYmFyLXNraXAtdG8tei1pbmRleDogNjAxO1xuJHN1cGVyLXNpZGViYXItb3ZlcmxheS16LWluZGV4OiA1OTk7XG4kc3VwZXItc2lkZWJhci1uYXYtZmxheW91dC1tZW51LXotaW5kZXg6IDgwMDtcbiRzdXBlci1zaWRlYmFyLW5hdi1pdGVtLW1lbnUtei1pbmRleDogJHN1cGVyLXNpZGViYXItbmF2LWZsYXlvdXQtbWVudS16LWluZGV4ICsgMTtcbiRzdXBlci1zaWRlYmFyLW5hdi1pdGVtLXotaW5kZXg6ICRzdXBlci1zaWRlYmFyLW5hdi1pdGVtLW1lbnUtei1pbmRleCArIDE7XG4kZmxhc2gtei1pbmRleDogMjUxO1xuJHNpZGViYXItei1pbmRleDogJGZsYXNoLXotaW5kZXg7XG4vLyBXaGVuIHJlbmRlcmVkIGFib3ZlIHRoZSBzdGF0aWMgcGFuZWxcbi8vIHNldCB0aGUgei1pbmRleCB0byArMSBvZiAkZmxhc2gtei1pbmRleCB0byBjbGVhciBmbGFzaCBtZXNzYWdlc1xuLy8gdGhhdCBtaWdodCBiZSBkaXNwbGF5ZWQgaW4gdGhlIHBhZ2UgYW5kIHRoYXQgaGF2ZSBhIHotaW5kZXggb2YgMjUxXG4kZHluYW1pYy1wYW5lbC16LWluZGV4OiAkZmxhc2gtei1pbmRleCArIDE7XG4kcGFuZWwtaGVhZGVyLWlubmVyLXotaW5kZXg6IDk5O1xuLy8gVGhlIER1byBjaGF0IHN1cmZhY2Ugc2l0cyBhdCA5OTksIHNvIHRoZSBBSSBwYW5lbCBoZWFkZXIgaGFzIHRvIGNsZWFyIGl0XG4vLyBvciBjaGF0IGNvbnRlbnQgc3dhbGxvd3MgY2xpY2tzIG9uIHRoZSBoZWFkZXIncyBtZW51cy5cbiRhaS1wYW5lbC1oZWFkZXItaW5uZXItei1pbmRleDogMTAwMDtcbiRiYXNlLWxheW91dC1zdGlja3ktaGVhZGVyLXotaW5kZXg6ICRwYW5lbC1oZWFkZXItaW5uZXItei1pbmRleCAtIDE7XG4kcGFuZWwtaGVhZGVyLWlubmVyLWhlaWdodDogMi4yNXJlbTsgLy89IDM2cHhcbiR0b3AtYmFyLXotaW5kZXg6IDIxMDtcbiRzZXR0aW5ncy1zdGlja3ktaGVhZGVyLWhlaWdodDogM3JlbTtcbiRzZXR0aW5ncy1zdGlja3ktaGVhZGVyLXotaW5kZXg6IDk4O1xuJHNldHRpbmdzLXN0aWNreS1mb290ZXItaGVpZ2h0OiAyLjVyZW07XG4kc2V0dGluZ3Mtc3RpY2t5LWZvb3Rlci16LWluZGV4OiAjeyRzZXR0aW5ncy1zdGlja3ktaGVhZGVyLXotaW5kZXggKyAxfTtcbiRwYW5lbGVkLWxheW91dC11bHRyYS13aWRlLWJyZWFrcG9pbnQ6IDI1NjBweDtcblxuLyoqXG4gIPCfmqggRG8gbm90IHVzZSB0aGlzIHNwYWNpbmcgc2NhbGUg4oCUIGl0IGlzIGRlcHJlY2F0ZWQgYW5kIGJlaW5nIHJlbW92ZWQuIPCfmqhcbiAgU2VlIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi9pc3N1ZXMvMzY4NTcgZm9yIG1vcmUgZGV0YWlscy5cblxuICBJbnN0ZWFkLCBpZiB5b3UgbmVlZCBhIHNwYWNpbmcgY2xhc3MsIGFkZCBpdCB0byBhcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2ZyYW1ld29yay9jb21tb24uc2NzcyxcbiAgdXNpbmcgdGhlIGZvbGxvd2luZyB2YWx1ZXMuXG5cbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0wOiAwO1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTE6IDJweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS0yOiA0cHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtMzogOHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTQ6IDEycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtNTogMTZweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS02OiAyNHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTc6IDMycHg7XG4gICAgJGdsLXNwYWNpbmctc2NhbGUtODogNDBweDtcbiAgICAkZ2wtc3BhY2luZy1zY2FsZS05OiA0OHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEwOiA1NnB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTExOiA2NHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEyOiA4MHB4O1xuICAgICRnbC1zcGFjaW5nLXNjYWxlLTEzOiA5NnB4O1xuXG4gIEUuZy4sIGEgcGFkZGluZyB0b3Agb2YgOTZweCBjYW4gYmUgYWRkZWQgdXNpbmc6XG4gIC5nbC1zaGltLXB0LTEzIHtcbiAgICBwYWRkaW5nLXRvcDogOTZweDtcbiAgfVxuXG4gIFBsZWFzZSB1c2UgLXNoaW0tIHNvIGl0IGNhbiBiZSBkaWZmZXJlbnRpYXRlZCBmcm9tIHRoZSBvbGQgc2NhbGUgY2xhc3Nlcy5cblxuICBUaGVzZSB3aWxsIGJlIHJlcGxhY2VkIHdoZW4gdGhlIEdpdGxhYiBVSSB1dGlsaXRpZXMgYXJlIGluY2x1ZGVkLlxuKiovXG4kc3BhY2luZy1zY2FsZTogKFxuICAwOiAwLFxuICAxOiAjezAuNSAqICRncmlkLXNpemV9LFxuICAyOiAkZ3JpZC1zaXplLFxuICAzOiAjezIgKiAkZ3JpZC1zaXplfSxcbiAgNDogI3szICogJGdyaWQtc2l6ZX0sXG4gIDU6ICN7NCAqICRncmlkLXNpemV9XG4pO1xuXG4vKiBXaWxsIGJlIG1vdmVkIHRvIEBnaXRsYWIvdWkgYnkgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXNlcnZpY2VzL2Rlc2lnbi5naXRsYWIuY29tLy0vaXNzdWVzLzI3OTIgKi9cbiRnbC1zcGFjaW5nLXNjYWxlLTQ4OiA0OCAqICRncmlkLXNpemU7XG4kZ2wtc3BhY2luZy1zY2FsZS03NTogNzUgKiAkZ3JpZC1zaXplO1xuLyogRW5kIGdpdGxhYi11aSMxNzA5ICovXG5cbi8vIENvbG9yIHNjaGVtYVxuJHB1cnBsZTogIzZkNDljYiAhZGVmYXVsdDtcbiRwdXJwbGUtbGlnaHQ6ICNlZGU4ZmIgIWRlZmF1bHQ7XG5cbi8qXG4gKiBUZXh0XG4gKi9cbiRnbC1mb250LXNpemU6IDE0cHg7XG4kZ2wtZm9udC1zaXplLXNtYWxsOiAxMnB4O1xuJGdsLWZvbnQtc2l6ZS1sYXJnZTogMTZweDtcbiRnbC1mb250LXdlaWdodC1ub3JtYWw6IDQwMDtcbiRnbC1mb250LXdlaWdodC1ib2xkOiA2MDA7XG4kZ2wtdGV4dC1jb2xvci10ZXJ0aWFyeTogJGdyYXktNDAwO1xuJGxpbmstY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItbGluaykgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1saW5rKSAhZGVmYXVsdDtcbiRnbC1mb250LXNpemUtMTI6IDEycHg7XG4kZ2wtZm9udC1zaXplLTE0OiAxNHB4O1xuJGdsLWZvbnQtc2l6ZS0xNjogMTZweDtcblxuLypcbiAqIExpc3RzXG4gKi9cbiRsaXN0LXRleHQtaGVpZ2h0OiA0MnB4O1xuXG4vKlxuICogQ29kZVxuICovXG4kY29kZS1mb250LXNpemU6IDkwJTtcbiRjb2RlLWxpbmUtaGVpZ2h0OiAxLjY7XG4kY29kZS1mb250LXNpemUtZml4ZWQ6IDEzcHg7XG5cbi8qXG4gKiBUb29sdGlwc1xuICovXG4kdG9vbHRpcC1mb250LXNpemU6IDEycHg7XG5cbi8qXG4gKiBQYWRkaW5nXG4gKi9cbiRnbC1wYWRkaW5nLTQ6IDRweDtcbiRnbC1wYWRkaW5nLTY6IDZweDtcbiRnbC1wYWRkaW5nLTg6IDhweDtcbiRnbC1wYWRkaW5nLTEyOiAxMnB4O1xuJGdsLXBhZGRpbmc6IDE2cHg7XG4kZ2wtcGFkZGluZy0yNDogMjRweDtcbiRnbC1wYWRkaW5nLTMyOiAzMnB4O1xuJGdsLWlucHV0LXBhZGRpbmc6IDEwcHg7XG4kZ2wtdmVydC1wYWRkaW5nOiA2cHg7XG4kZ2wtcGFkZGluZy10b3A6IDEwcHg7XG4kZ2wtc2lkZWJhci1wYWRkaW5nOiAyMnB4O1xuJGlucHV0LWhvcml6b250YWwtcGFkZGluZzogMTJweDtcbiRicm93c2VyLXNjcm9sbGJhci1zaXplOiAxMHB4O1xuXG4vKlxuICogTWlzY1xuICovXG4kaGVhZGVyLWhlaWdodDogY2FsYygzcmVtICsgMXB4KTsgLy89IDQ4cHggKyAxcHggYm9yZGVyXG4kY29udGVudC13cmFwcGVyLXBhZGRpbmc6IDU2cHg7XG4kaGVhZGVyLXppbmRleDogMTAwMDtcbiR6aW5kZXgtZHJvcGRvd24tbWVudTogMzAwO1xuJGlkZS1zdGF0dXNiYXItaGVpZ2h0OiAyNXB4O1xuJGxpbWl0ZWQtbGF5b3V0LXdpZHRoOiAxMDA2cHg7XG4kZml4ZWQtbGF5b3V0LXdpZHRoOiAxMjk2cHg7XG4kd2lraS1jb250ZW50LWRlZmF1bHQtd2lkdGg6IDk0MHB4O1xuJHdpa2ktY29udGVudC1tYXgtd2lkdGg6IDE2MDBweDtcbiRpbW1lcnNpdmUtZWRpdG9yLXRleHQtd2lkdGg6IDc2OHB4O1xuJGNvbnRhaW5lci1tYXJnaW46ICRnbC1wYWRkaW5nO1xuJGNvbnRhaW5lci1tYXJnaW4teGw6ICRnbC1wYWRkaW5nLTI0O1xuJGdsLWJvcmRlci1yYWRpdXMtYmFzZTogMC4yNXJlbTtcbiRnbC1ib3JkZXItcmFkaXVzLWJhc2UtaW5uZXI6IGNhbGMoI3skZ2wtYm9yZGVyLXJhZGl1cy1iYXNlfSAtIDFweCk7XG4kZ2wtYm9yZGVyLXJhZGl1cy1sZzogMC41cmVtO1xuJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI6IGNhbGMoI3skZ2wtYm9yZGVyLXJhZGl1cy1sZ30gLSAxcHgpO1xuJGJvcmRlci1yYWRpdXMtc21hbGw6IDJweDtcbiRib3JkZXItcmFkaXVzLWxhcmdlOiA4cHg7XG4kZGVmYXVsdC1pY29uLXNpemU6IDE2cHg7XG4kYnRuLXNpZGUtbWFyZ2luOiAkZ3JpZC1zaXplO1xuJGdlbmVyYWwtaG92ZXItdHJhbnNpdGlvbi1kdXJhdGlvbjogMTAwbXM7XG4kZ2VuZXJhbC1ob3Zlci10cmFuc2l0aW9uLWN1cnZlOiBsaW5lYXI7XG4kcGVyZm9ybWFuY2UtYmFyLWhlaWdodDogMi41cmVtO1xuJHN5c3RlbS1oZWFkZXItaGVpZ2h0OiAxNnB4O1xuJHN5c3RlbS1mb290ZXItaGVpZ2h0OiAkc3lzdGVtLWhlYWRlci1oZWlnaHQ7XG4kdG9wLWJhci1oZWlnaHQ6IDNyZW07IC8vPSA0OHB4XG4kaG9tZS1wYW5lbC10aXRsZS1yb3ctaGVpZ2h0OiA0OHB4O1xuJGhvbWUtcGFuZWwtYXZhdGFyLW1vYmlsZS1zaXplOiAyNHB4O1xuJGlzc3VhYmxlLXRpdGxlLW1heC13aWR0aDogMzUwcHg7XG4kbWlsZXN0b25lLXRpdGxlLW1heC13aWR0aDogNzVweDtcbiRnbC1saW5lLWhlaWdodDogMTZweDtcbiRnbC1saW5lLWhlaWdodC0xODogMThweDtcbiRnbC1saW5lLWhlaWdodC0yMDogMjBweDtcbiRnbC1saW5lLWhlaWdodC0yNDogMjRweDtcbiRmaWxlLWhlYWRlci1oZWlnaHQ6IDQycHg7XG5cbi8qXG4gKiBNZXJnZSByZXF1ZXN0c1xuICovXG4kbXItc3RpY2t5LWhlYWRlci10aXRsZS1oZWlnaHQ6IG1heCgkZ2wtYnV0dG9uLXNtYWxsLXNpemUsICRnbC1mb250LXNpemUtYmFzZSAqIDEuNSk7XG4kbXItc3RhdGljLXRhYnMtaGVpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS05O1xuJG1yLXN0aWNreS10YWJzLWhlaWdodDogJGdsLXNwYWNpbmctc2NhbGUtODtcbiRtci1zdGlja3ktZGVzY3JpcHRpb24tcGFkZGluZzogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiRtci1zdGlja3ktaGVhZGVyLWhlaWdodDogY2FsYygjeyRtci1zdGlja3ktdGFicy1oZWlnaHR9ICsgI3skbXItc3RpY2t5LWhlYWRlci10aXRsZS1oZWlnaHR9ICsgI3skbXItc3RpY2t5LWRlc2NyaXB0aW9uLXBhZGRpbmd9ICsgI3skZ2wtYm9yZGVyLXNpemUtMX0pO1xuJG1yLXJldmlldy1iYXItaGVpZ2h0OiBjYWxjKDJyZW0gKyAxNnB4KTtcblxuLypcbiAqIENhbGN1bGF0ZWQgaGVpZ2h0c1xuICovXG4kY2FsYy1zeXN0ZW0taGVhZGVycy1oZWlnaHQ6IGNhbGModmFyKC0tc3lzdGVtLWhlYWRlci1oZWlnaHQpICsgdmFyKC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodCkpO1xuJGNhbGMtYXBwbGljYXRpb24tYmFycy1oZWlnaHQ6IGNhbGModmFyKC0taGVhZGVyLWhlaWdodCkgKyAjeyRjYWxjLXN5c3RlbS1oZWFkZXJzLWhlaWdodH0pO1xuJGNhbGMtYXBwbGljYXRpb24taGVhZGVyLWhlaWdodDogY2FsYygjeyRjYWxjLWFwcGxpY2F0aW9uLWJhcnMtaGVpZ2h0fSArIHZhcigtLXRvcC1iYXItaGVpZ2h0KSk7XG4kY2FsYy1hcHBsaWNhdGlvbi1mb290ZXItaGVpZ2h0OiB2YXIoLS1zeXN0ZW0tZm9vdGVyLWhlaWdodCk7XG4kY2FsYy1hcHBsaWNhdGlvbi12aWV3cG9ydC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRjYWxjLWFwcGxpY2F0aW9uLWhlYWRlci1oZWlnaHR9IC0gI3skY2FsYy1hcHBsaWNhdGlvbi1mb290ZXItaGVpZ2h0fSk7XG5cbi8qIHRhbnVraSBsb2dvIGNvbG9ycyAqL1xuJHRhbnVraS1yZWQ6ICNlMjQzMjk7XG4kdGFudWtpLW9yYW5nZTogI2ZjNmQyNjtcbiR0YW51a2kteWVsbG93OiAjZmNhMzI2O1xuXG4vKlxuICogU3RhdGUgY29sb3JzOlxuICovXG4kZ3JlZW4tNTAwLWZvY3VzOiByZ2JhKCRncmVlbi01MDAsIDAuNCk7XG4kZ2wtYnRuLWFjdGl2ZS1iYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuXG4vKlxuICogQ29tbWl0IERpZmYgQ29sb3JzXG4gKi9cbiRsaW5lLWFkZGVkOiAjZWNmZGYwO1xuJGxpbmUtYWRkZWQtZGFyazogI2M3ZjBkMiAhZGVmYXVsdDtcbiRsaW5lLXJlbW92ZWQ6ICNmYmU5ZWI7XG4kbGluZS1yZW1vdmVkLWRhcms6ICNmYWM1Y2QgIWRlZmF1bHQ7XG5cbi8qXG4gKiBUaGUgdHJhbnNwYXJlbnQgY29sb3JzIGFyZSB1c2VkIGluIE1vbmFjbyBlZGl0b3IuIFVzaW5nIGZ1bGwgb3BhY2l0eSBjb2xvcnNcbiAqIHdvdWxkIGhpZGUgb3RoZXIgbGF5ZXJzIChzZWxlY3RlZCB0ZXh0LCBtYXRjaGluZyBicmFja2V0cykuXG4gKlxuICogV2hlbiB0aGUgdHJhbnNwYXJlbnQgY29sb3JzIGdldCBsYXllcmVkIG9uIHdoaXRlIGJhY2tncm91bmQsIHRoZXkgY3JlYXRlIHRoZWlyXG4gKiBmdWxsIG9wYWNpdHkgY291bnRlcnBhcnRzOlxuICpcbiAqICAtIHdoaXRlICsgJGxpbmUtYWRkZWQtdHJhbnNwYXJlbnQgPSAkbGluZS1hZGRlZFxuICogIC0gd2hpdGUgKyAkbGluZS1hZGRlZC10cmFuc3BhcmVudCArICRsaW5lLWFkZGVkLWRhcmstdHJhbnNwYXJlbnQgPSAkbGluZS1hZGRlZC1kYXJrXG4gKlxuICogTW9yZSBkZXRhaWxzOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy80MTU1M1xuICovXG4kbGluZS1hZGRlZC10cmFuc3BhcmVudDogcmdiYSgxNjAsIDI0NSwgMTgwLCAwLjIpO1xuJGxpbmUtYWRkZWQtZGFyay10cmFuc3BhcmVudDogcmdiYSg1MSwgMTg4LCA5MCwgMC4yKTtcbiRsaW5lLXJlbW92ZWQtdHJhbnNwYXJlbnQ6IHJnYmEoMjM1LCAxNDUsIDE1NSwgMC4yKTtcbiRsaW5lLXJlbW92ZWQtZGFyay10cmFuc3BhcmVudDogcmdiYSgyNDYsIDUzLCA4NSwgMC4yKTtcbiRsaW5lLW51bWJlci1vbGQ6ICNmOWQ3ZGM7XG4kbGluZS1udW1iZXItbmV3OiAjZGRmYmU2O1xuJGRhcmstZGlmZi1tYXRjaC1iZzogcmdiYSgkd2hpdGUsIDAuMyk7XG4kZGFyay1kaWZmLW1hdGNoLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC4xKTtcbiRkaWZmLWphZ2dlZC1ib3JkZXItZ3JhZGllbnQtY29sb3I6ICRncmF5LTIwMDtcbiRkaWZmLWphZ2dlZC1iZy1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdWJ0bGUpO1xuXG4vKlxuICogRm9udHNcbiAqIFRoZSAtLWRlZmF1bHQtbW9uby1mb250IGFuZCAtLWRlZmF1bHQtcmVndWxhci1mb250IHZhcmlhYmxlcyBnaXZlIHVzZXJzXG4gKiBhIHdheSB0byBvdmVycmlkZSBvdXIgZm9udCBjaG9pY2VzIGZvciB0aGVtLlxuICovXG4kbW9ub3NwYWNlLWZvbnQ6IHZhcigtLWRlZmF1bHQtbW9uby1mb250LCAnR2l0TGFiIE1vbm8nKSwgJ0pldEJyYWlucyBNb25vJywgJ01lbmxvJywgJ0RlamFWdSBTYW5zIE1vbm8nLCAnTGliZXJhdGlvbiBNb25vJywgJ0NvbnNvbGFzJyxcbiAgJ1VidW50dSBNb25vJywgJ0NvdXJpZXIgTmV3JywgJ2FuZGFsZSBtb25vJywgJ2x1Y2lkYSBjb25zb2xlJywgbW9ub3NwYWNlO1xuJHJlZ3VsYXItZm9udDogdmFyKC0tZGVmYXVsdC1yZWd1bGFyLWZvbnQsICdHaXRMYWIgU2FucycpLCAtYXBwbGUtc3lzdGVtLCBCbGlua01hY1N5c3RlbUZvbnQsICdTZWdvZSBVSScsIFJvYm90bywgJ05vdG8gU2FucycsXG4gIFVidW50dSwgQ2FudGFyZWxsLCAnSGVsdmV0aWNhIE5ldWUnLCBzYW5zLXNlcmlmLCAnQXBwbGUgQ29sb3IgRW1vamknLCAnU2Vnb2UgVUkgRW1vamknLFxuICAnU2Vnb2UgVUkgU3ltYm9sJywgJ05vdG8gQ29sb3IgRW1vamknO1xuJGdsLW1vbm9zcGFjZS1mb250OiAkbW9ub3NwYWNlLWZvbnQ7XG4kZ2wtcmVndWxhci1mb250OiAkcmVndWxhci1mb250O1xuXG4vKlxuKiBEcm9wZG93bnNcbiovXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xuJGRyb3Bkb3duLW1pbi1oZWlnaHQ6IDQwcHg7XG4kZHJvcGRvd24tbWF4LWhlaWdodDogMzEycHg7XG4kZHJvcGRvd24tbWF4LWhlaWdodC1sZzogNDQ1cHg7XG4kZHJvcGRvd24tdmVydGljYWwtb2Zmc2V0OiA0cHg7XG4kZHJvcGRvd24tdGl0bGUtYnRuLWNvbG9yOiAjYmZiZmJmO1xuJGRyb3Bkb3duLWxvYWRpbmctYmc6IHJnYmEoJHdoaXRlLCAwLjYpO1xuJGRyb3Bkb3duLWZhZGUtbWFzay1oZWlnaHQ6IDMycHg7XG4kZHJvcGRvd24tbWVtYmVyLWZvcm0tY29udHJvbC13aWR0aDogMTYzcHg7XG5cbi8qXG4qIFNpZGViYXJcbiovXG4kc2lkZWJhci10b2dnbGUtaGVpZ2h0OiA2MHB4O1xuJHNpZGViYXItdG9nZ2xlLXdpZHRoOiA0MHB4O1xuJHNpZGViYXItbWlsZXN0b25lLXRvZ2dsZS1ib3R0b20tbWFyZ2luOiAxMHB4O1xuXG4vKlxuKiBCdXR0b25zXG4qL1xuJGJ0bi1hY3RpdmUtZ3JheTogJGdyYXktNTA7XG4kYnRuLWFjdGl2ZS1ncmF5LWxpZ2h0OiAkZ3JheS01MDtcbiRnbC1idG4tcGFkZGluZzogMTBweDtcbiRnbC1idG4tbGluZS1oZWlnaHQ6IDE2cHg7XG4kZ2wtYnRuLXZlcnQtcGFkZGluZzogOHB4O1xuJGdsLWJ0bi1ob3J6LXBhZGRpbmc6IDEycHg7XG4kZ2wtYnRuLXNtYWxsLWZvbnQtc2l6ZTogMTNweDtcbiRnbC1idG4tc21hbGwtbGluZS1oZWlnaHQ6IDE4cHg7XG5cbi8qXG4qIEJhZGdlc1xuKi9cbiRiYWRnZS1iZzogcmdiYSgkYmxhY2ssIDAuMDcpO1xuXG4vKlxuICogIEF3YXJkIGVtb2ppXG4gKi9cbiRhd2FyZC1lbW9qaS1tZW51LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjE3NSk7XG4kYXdhcmQtZW1vamktcG9zaXRpdmUtYWRkLWxpbmVzOiAjYmI5YzEzO1xuJGF3YXJkLWVtb2ppLXdpZHRoOiAzNzZweDtcbiRhd2FyZC1lbW9qaS13aWR0aC14czogOTAlO1xuXG4vKlxuICogU2VhcmNoIEJveFxuICovXG4kc2VhcmNoLWlucHV0LXdpZHRoOiAyMDBweDtcbiRzZWFyY2gtaW5wdXQteGwtd2lkdGg6IDMyMHB4O1xuXG4vKlxuICogIE5vdGVzXG4gKi9cbiRub3RlLXNwYWNpbmctbGVmdDogMi41cmVtO1xuJG5vdGUtc3BhY2luZy1yZXBseS1sZWZ0OiAycmVtO1xuXG4vKlxuKiBCb2FyZHNcbiovXG4kaXNzdWUtYm9hcmRzLWNhcmQtc2hhZG93OiByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbi8qXG4qIEJ1aWxkc1xuKi9cbiRidWlsZHMtbG9nLWJnOiAjMTExO1xuJGpvYi1saW5lLW51bWJlci13aWR0aDogNTBweDtcblxuLypcbiogQ29tbWl0IFBhZ2VcbiovXG4kY29tbWl0LW1heC13aWR0aC1tYXJrZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4kY29tbWl0LW1lc3NhZ2UtdGV4dC1hcmVhLWJnOiByZ2JhKDAsIDAsIDAsIDApO1xuXG4vKlxuKiBGaWxlc1xuKi9cbiRsb2dzLWxpLWNvbG9yOiAjODg4O1xuJGxvZ3MtcC1jb2xvcjogIzMzMztcblxuLypcbiogRm9ybXNcbiovXG4kaW5wdXQtaGVpZ2h0OiAzMnB4O1xuJGlucHV0LWRhbmdlci1iZzogI2YyZGVkZTtcbiRnbC1maWVsZC1mb2N1cy1zaGFkb3c6IHJnYmEoMCwgMCwgMCwgMC4wNzUpO1xuJGdsLWZpZWxkLWZvY3VzLXNoYWRvdy1lcnJvcjogcmdiYSgkcmVkLTUwMCwgMC42KTtcbiRpbnB1dC1zaG9ydC13aWR0aDogMjAwcHg7XG4kaW5wdXQtc2hvcnQtbWQtd2lkdGg6IDI4MHB4O1xuJGlucHV0LW1kLXdpZHRoOiAyNDBweDtcbiRpbnB1dC1sZy13aWR0aDogMzIwcHg7XG5cbi8qXG4qIExhYmVsXG4qL1xuJGxhYmVsLWZvbnQtc2l6ZTogMTJweDtcbiRsYWJlbC1wYWRkaW5nOiA3cHg7XG4kbGFiZWwtYm9yZGVyLXJhZGl1czogMTAwcHg7XG5cbi8qXG4qIEFuaW1hdGlvblxuKi9cbiRmYWRlLWluLWR1cmF0aW9uOiAyMDBtcztcbiRmYWRlLW1hc2stdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbiRmYWRlLW1hc2stdHJhbnNpdGlvbi1jdXJ2ZTogZWFzZS1pbi1vdXQ7XG5cbi8qXG4qIExvZ2luXG4qL1xuJGxvZ2luLWJyYW5kLWhvbGRlci1jb2xvcjogIzg4ODtcblxuLypcbiogVHlwb2dyYXBoeVxuKi9cbiRib2R5LXRleHQtc2hhZG93OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDEpO1xuXG4vKlxuUGlwZWxpbmUgR3JhcGhcbiovXG4kY2ktYWN0aW9uLWRyb3Bkb3duLWJ1dHRvbi1zaXplOiAyNHB4O1xuJGNpLWFjdGlvbi1kcm9wZG93bi1zdmctc2l6ZTogMTZweDtcblxuLypcbkdpdExhYiBQbGFuc1xuKi9cbiRnbC11bHRpbWF0ZS1wbGFuOiAjZDRhZjM3O1xuJGdsLXByZW1pdW0tcGxhbjogIzkxYTFhYjtcbiRnbC1icm9uemUtcGxhbjogI2NkN2YzMjtcblxuLypcblBlcmZvcm1hbmNlIEJhclxuKi9cbiRwZXJmLWJhci1idWNrZXQtYmc6ICRibGFjaztcbiRwZXJmLWJhci1idWNrZXQtYm94LXNoYWRvdy1mcm9tOiByZ2JhKCR3aGl0ZSwgMC4yKTtcbiRwZXJmLWJhci1idWNrZXQtYm94LXNoYWRvdy10bzogcmdiYSgkYmxhY2ssIDAuMjUpO1xuJHBlcmYtYmFyLWNhbmFyeS10ZXh0OiAkb3JhbmdlLTQwMDtcblxuLypcbkltYWdlIENvbW1lbnRpbmcgY3Vyc29yXG4qL1xuJGltYWdlLWNvbW1lbnQtY3Vyc29yLWxlZnQtb2Zmc2V0OiAxMjtcbiRpbWFnZS1jb21tZW50LWN1cnNvci10b3Atb2Zmc2V0OiAxMjtcblxuLypcblBvcHVwXG4qL1xuJHBvcHVwLXRyaWFuZ2xlLXNpemU6IDE1cHg7XG4kcG9wdXAtdHJpYW5nbGUtYm9yZGVyLXNpemU6IDFweDtcbiRwb3B1cC1ib3gtc2hhZG93LWNvbG9yOiByZ2JhKDkwLCA5MCwgOTAsIDAuMDUpO1xuXG4vKlxuRHJhd2Vyc1xuKi9cbiR3aWRlLWRyYXdlcjogNTAwcHg7XG5cbi8qXG5Nb2RhbHNcbiovXG4kbW9kYWwtYm9keS1oZWlnaHQ6IDgwcHg7XG5cbiRwcmlvcml0eS1sYWJlbC1lbXB0eS1zdGF0ZS13aWR0aDogMTE0cHg7XG5cbi8qXG5Qb3BvdmVyc1xuKi9cbiRwb3BvdmVyLW1heC13aWR0aDogMzg0cHg7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAwIDJweCAzcHggMXB4ICRncmF5LTEwMDtcblxuLypcbk1lcmdlIHJlcXVlc3RzXG4qL1xuJG1yLXRhYnMtaGVpZ2h0OiA0OHB4O1xuXG4vKlxuQm9hcmQgU3dpbWxhbmVzXG4qL1xuJGJvYXJkLXN3aW1sYW5lcy1oZWFkZXJzLWhlaWdodDogNDhweDtcblxuLypcblNvdXJjZSBFZGl0b3IgdGhlbWUgb3ZlcnJpZGVzXG4qL1xuJHNvdXJjZS1lZGl0b3ItaG92ZXItbGlnaHQtdGV4dC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtNTA7XG4kc291cmNlLWVkaXRvci1ob3Zlci1kYXJrLXRleHQtY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTkwMDtcblxuLyoqXG4gQm9vdHN0cmFwIDQuMi4wIGludHJvZHVjZWQgbmV3IGljb25zIGZvciB2YWxpZGF0aW5nIGZvcm1zLlxuIE91ciBkZXNpZ24gc3lzdGVtIGRvZXMgbm90IHVzZSB0aG9zZSwgc28gd2UgYXJlIGRpc2FibGluZyB0aGVtIGZvciBub3c6XG4gLSBEb2NzOiBodHRwczovL2dldGJvb3RzdHJhcC5jb20vZG9jcy80LjMvY29tcG9uZW50cy9mb3Jtcy8jc2VydmVyLXNpZGVcbiAtIElzc3VlOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9kZXNpZ24uZ2l0bGFiLmNvbS9pc3N1ZXMvMjQyXG4gKi9cbiRlbmFibGUtdmFsaWRhdGlvbi1pY29uczogZmFsc2U7XG4iLCIvKlxuICogVGhpcyBmaWxlIGlzIG9ubHkgZm9yIG92ZXJyaWRpbmcgQm9vdHN0cmFwIDQgdmFyaWFibGVzLlxuICogUGxlYXNlIGFkZCBhbnkgbmV3IHZhcmlhYmxlcyB0byB2YXJpYWJsZXMuc2Nzc1xuICovXG5cbiRzZWNvbmRhcnk6ICRncmF5LTEwO1xuJGlucHV0LWRpc2FibGVkLWJnOiAkZ3JheS0xMDtcbiRpbnB1dC1ib3JkZXItY29sb3I6ICRncmF5LTQwMDtcbiRpbnB1dC1jb2xvcjogJGdsLXRleHQtY29sb3ItZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICRnbC1mb250LXNpemU7XG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogJHJlZ3VsYXItZm9udDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICRtb25vc3BhY2UtZm9udDtcbiRidG4tbGluZS1oZWlnaHQ6IDIwcHg7XG4kdGFibGUtYWNjZW50LWJnOiAkZ3JheS0xMDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICRnbC1ib3JkZXItY29sb3ItZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1jb2xvcjogJGdsLWJvcmRlci1jb2xvci1kZWZhdWx0O1xuJGNhcmQtY2FwLWJnOiAkZ3JheS0xMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAkZ3JlZW4tNTAwO1xuJGluZm86ICRibHVlLTUwMDtcbiR3YXJuaW5nOiAkb3JhbmdlLTUwMDtcbiRkYW5nZXI6ICRyZWQtNTAwO1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogMTA0MDtcbiR6aW5kZXgtZHVvLWNoYXQ6IDEwNDA7XG4kemluZGV4LWR1by1jYWxsb3V0OiA2MDA7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICgkZ3JpZC1zaXplICogMC41KTtcbiRkcm9wZG93bi1pdGVtLXBhZGRpbmcteTogOHB4O1xuJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14OiAxMnB4O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAzMDBweDtcbiRwb3BvdmVyLWJvcmRlci13aWR0aDogMXB4O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAkZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3gtc2hhZG93OiAwICRib3JkZXItcmFkaXVzLXNtYWxsICRnbC1ib3JkZXItcmFkaXVzLWJhc2UgMCAkZ2wtY29sb3ItYWxwaGEtZGFyay04O1xuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICRnbC1jb2xvci1hbHBoYS1kYXJrLTg7XG4kaDEtZm9udC1zaXplOiAxNHB4ICogMi41O1xuJGgyLWZvbnQtc2l6ZTogMTRweCAqIDI7XG4kaDMtZm9udC1zaXplOiAxNHB4ICogMS43NTtcbiRoNC1mb250LXNpemU6IDE0cHggKiAxLjU7XG4kaDUtZm9udC1zaXplOiAxNHB4ICogMS4yNTtcbiRoNi1mb250LXNpemU6IDE0cHg7XG4kaGVhZGluZ3MtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ib2xkO1xuJHNwYWNlcjogJGdyaWQtc2l6ZTtcbiRzcGFjZXJzOiAoXG4gIDA6IDAsXG4gIDE6ICgkc3BhY2VyICogMC41KSxcbiAgMjogKCRzcGFjZXIpLFxuICAzOiAoJHNwYWNlciAqIDIpLFxuICA0OiAoJHNwYWNlciAqIDMpLFxuICA1OiAoJHNwYWNlciAqIDQpLFxuICA2OiAoJHNwYWNlciAqIDUpLFxuICA3OiAoJHNwYWNlciAqIDYpLFxuICA4OiAoJHNwYWNlciAqIDcpLFxuICA5OiAoJHNwYWNlciAqIDgpXG4pO1xuJHRvb2x0aXAtcGFkZGluZy15OiAwLjVyZW07XG4kdG9vbHRpcC1wYWRkaW5nLXg6IDAuNzVyZW07XG4kdG9vbHRpcC1hcnJvdy1oZWlnaHQ6IDAuNXJlbTtcbiR0b29sdGlwLWFycm93LXdpZHRoOiAxcmVtO1xuIiwiQHVzZSAnc2FzczpsaXN0JztcbkB1c2UgJ3Nhc3M6bWFwJztcbkBpbXBvcnQgJ0BnaXRsYWIvdWkvc3JjL3Njc3MvdmFyaWFibGVzJztcblxuLyoqXG4gKiBQcmVmaWxsZWQgbWl4aW5zXG4gKiBNaXhpbnMgd2l0aCBmaXhlZCB2YWx1ZXNcbiAqL1xuXG5AbWl4aW4gc3RyLXRydW5jYXRlZCgkbWF4LXdpZHRoOiA4MiUpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xufVxuXG4vKlxuICogQmFzZSBtaXhpbiBmb3IgbGlzdHMgaW4gR2l0TGFiXG4gKi9cbkBtaXhpbiBiYXNpYy1saXN0IHtcbiAgbWFyZ2luOiA1cHggMDtcbiAgcGFkZGluZzogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICA+IGxpIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IDA7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuXG4gICAgICBhIHtcbiAgICAgICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmhpZGUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmxpZ2h0IHtcbiAgICAgIGEge1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gd2Via2l0LXByZWZpeCgkcHJvcGVydHksICR2YWx1ZSkge1xuICAjeyctd2Via2l0LScgKyAkcHJvcGVydHl9OiAkdmFsdWU7XG4gICN7JHByb3BlcnR5fTogJHZhbHVlO1xufVxuXG5AbWl4aW4ga2V5ZnJhbWVzKCRhbmltYXRpb24tbmFtZSkge1xuICBAa2V5ZnJhbWVzICN7JGFuaW1hdGlvbi1uYW1lfSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGluY2x1ZGUta2V5ZnJhbWVzKCRhbmltYXRpb24tbmFtZSkge1xuICBAaW5jbHVkZSB3ZWJraXQtcHJlZml4KGFuaW1hdGlvbi1uYW1lLCAkYW5pbWF0aW9uLW5hbWUpO1xuICBAaW5jbHVkZSBrZXlmcmFtZXMoJGFuaW1hdGlvbi1uYW1lKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLypcbiAqIE1peGluIGZvciBzdGF0dXMgYmFkZ2VzLCBhcyB1c2VkIGZvciBwaXBlbGluZXMgYW5kIGNvbW1pdCBzaWduYXR1cmVzXG4gKi9cbkBtaXhpbiBzdGF0dXMtY29sb3IoJGNvbG9yLWxpZ2h0LCAkY29sb3ItbWFpbiwgJGNvbG9yLWRhcmspIHtcbiAgY29sb3I6ICRjb2xvci1tYWluO1xuICBib3JkZXItY29sb3I6ICRjb2xvci1tYWluO1xuXG4gICY6bm90KHNwYW4pOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItbGlnaHQ7XG4gICAgY29sb3I6ICRjb2xvci1kYXJrO1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWRhcms7XG4gIH1cbn1cblxuQG1peGluIGZhZGUoJGdyYWRpZW50LWRpcmVjdGlvbiwgJGdyYWRpZW50LWNvbG9yKSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogMjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEycHg7XG4gIHdpZHRoOiA0M3B4O1xuICBoZWlnaHQ6IDMwcHg7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuM3M7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvICRncmFkaWVudC1kaXJlY3Rpb24sXG4gICRncmFkaWVudC1jb2xvciA0NSUsXG4gIHJnYmEoJGdyYWRpZW50LWNvbG9yLCAwLjQpKTtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gICY6aG92ZXIge1xuICAgIEBhcHBseSBnbC1mb2N1cztcbiAgfVxuXG4gICYuc2Nyb2xsaW5nIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgfVxuXG4gIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTJweDtcbiAgICBmb250LXNpemU6IDE4cHg7XG4gIH1cbn1cblxuQG1peGluIHNjcm9sbGluZy1saW5rcygpIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiB0cmlhbmdsZSgkY29sb3IsICRib3JkZXItY29sb3IsICRzaXplLCAkYm9yZGVyLXNpemUpIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBib3JkZXI6IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogMDtcbiAgICB3aWR0aDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItd2lkdGg6ICgkc2l6ZSArICRib3JkZXItc2l6ZSk7XG4gICAgbWFyZ2luLWxlZnQ6IC0oJHNpemUgKyAkYm9yZGVyLXNpemUpO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci13aWR0aDogJHNpemU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kc2l6ZTtcbiAgfVxufVxuXG4vKlxuICogTWl4aW4gdGhhdCBmaXhlcyB3cmFwcGluZyBpc3N1ZXMgd2l0aCBsb25nIHN0cmluZ3MgKGUuZy4gVVJMcylcbiAqXG4gKiBOb3RlOiB0aGUgd2lkdGggbmVlZHMgdG8gYmUgc2V0IGZvciBpdCB0byB3b3JrIGluIEZpcmVmb3hcbiAqL1xuQG1peGluIG92ZXJmbG93LWJyZWFrLXdvcmQge1xuICBvdmVyZmxvdy13cmFwOiBicmVhay13b3JkO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLypcbiogTWl4aW4gdGhhdCBoYW5kbGVzIHRoZSBjb250YWluZXIgZm9yIHRoZSBqb2IgbG9ncyAoQ0kvQ0QgYW5kIGt1YmVybmV0ZXMgcG9kIGxvZ3MpXG4qL1xuQG1peGluIGJ1aWxkLWxvZygkYmFja2dyb3VuZDogJGJsYWNrKSB7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6ICRncmlkLXNpemU7XG5cbiAgLmJhc2gge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtaXhpbiBqb2ItbG9nLXRvcC1iYXIge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIHBhZGRpbmc6ICRncmlkLXNpemU7XG4gIEBhcHBseSBnbC1iZy1zZWN0aW9uO1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNlY3Rpb247XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIHotaW5kZXg6IDI7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMzJweDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdC1sZztcblxuICAmLmlzLXN0dWNrIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQtZGVmYXVsdDtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC10LW5vbmU7XG4gIH1cbn1cblxuLypcbiogTWl4aW4gdGhhdCBoYW5kbGVzIHRoZSBwb3NpdGlvbiBvZiB0aGUgY29udHJvbHMgcGxhY2VkIG9uIHRoZSB0b3AgYmFyXG4qL1xuQG1peGluIGJ1aWxkLWNvbnRyb2xsZXJzKCRjb250cm9sLWZvbnQtc2l6ZSwgJGZsZXgtZGlyZWN0aW9uLCAkd2l0aC1ncm93LCAkZmxleC1ncm93LXNpemUsICRzdmctZGlzcGxheTogYmxvY2ssICRzdmctdG9wOiAycHgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAkY29udHJvbC1mb250LXNpemU7XG4gIGp1c3RpZnktY29udGVudDogJGZsZXgtZGlyZWN0aW9uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1zZWxmOiBiYXNlbGluZTtcbiAgQGlmICR3aXRoLWdyb3cge1xuICAgIGZsZXgtZ3JvdzogJGZsZXgtZ3Jvdy1zaXplO1xuICB9XG5cbiAgc3ZnIHtcbiAgICB3aWR0aDogMTVweDtcbiAgICBoZWlnaHQ6IDE1cHg7XG4gICAgZGlzcGxheTogJHN2Zy1kaXNwbGF5O1xuICAgIHRvcDogJHN2Zy10b3A7XG4gIH1cbn1cblxuQG1peGluIGJ1aWxkLWxvYWRlci1hbmltYXRpb24ge1xuICBAa2V5ZnJhbWVzIGJsaW5raW5nLWRvdCB7XG4gICAgMCUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG5cbiAgICAyNSUge1xuICAgICAgb3BhY2l0eTogMC40O1xuICAgIH1cblxuICAgIDc1JSB7XG4gICAgICBvcGFjaXR5OiAwLjQ7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2hpdGUtc3BhY2U6IGluaXRpYWw7XG5cbiAgLmRvdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiA2cHg7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgbWFyZ2luOiBhdXRvIGF1dG8gMTJweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYW5pbWF0aW9uOiBibGlua2luZy1kb3QgMXMgbGluZWFyIGluZmluaXRlO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcblxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIGFuaW1hdGlvbi1kZWxheTogMC4zM3M7XG4gICAgfVxuXG4gICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgYW5pbWF0aW9uLWRlbGF5OiAwLjY2cztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGVtb2ppLW1lbnUtdG9nZ2xlLWJ1dHRvbiB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nOiAwO1xuICBtaW4td2lkdGg6IDE2cHg7XG5cbiAgLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSxcbiAgLmF3YXJkLWNvbnRyb2wtaWNvbi1zdXBlci1wb3NpdGl2ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmLmlzLWFjdGl2ZSB7XG4gICAgLmF3YXJkLWNvbnRyb2wtaWNvbi1uZXV0cmFsIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtYWN0aXZlIHtcbiAgICAuYXdhcmQtY29udHJvbC1pY29uLXBvc2l0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgLmF3YXJkLWNvbnRyb2wtaWNvbi1zdXBlci1wb3NpdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxufVxuXG4vKlxuKiBNaXhpbiB0aGF0IGhhbmRsZXMgdGhlIHNpemUgYW5kIHJpZ2h0IG1hcmdpbiBvZiBhdmF0YXJzLlxuKi9cbkBtaXhpbiBhdmF0YXItc2l6ZSgkc2l6ZSwgJG1hcmdpbi1yaWdodCkge1xuICB3aWR0aDogJHNpemU7XG4gIGhlaWdodDogJHNpemU7XG4gIG1hcmdpbi1yaWdodDogJG1hcmdpbi1yaWdodDtcbn1cblxuQG1peGluIGNvZGUtaWNvbi1zaXplKCkge1xuICB3aWR0aDogJGdsLWZvbnQtc2l6ZSAqICRjb2RlLWxpbmUtaGVpZ2h0ICogMC45O1xuICBoZWlnaHQ6ICRnbC1mb250LXNpemUgKiAkY29kZS1saW5lLWhlaWdodCAqIDAuOTtcbn1cblxuQG1peGluIGVtYWlsLWNvZGUtYmxvY2sge1xuICAuY29kZS5sYW5ndWFnZS1lbWFpbCB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuXG4gICAgY29kZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgICBmb250LWZhbWlseTogaW5oZXJpdDtcblxuICAgICAgLy8gUm91Z2UgYE5hbWUuVGFnYCBhbmQgYE9wZXJhdG9yYCB0b2tlbiAoZW1haWwgaGVhZGVyIGtleSArICc6JylcbiAgICAgIC5udCxcbiAgICAgIC5vIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuXG4gICAgICAvLyBSb3VnZSBgTmFtZS5BdHRyaWJ1dGVgIHRva2VuIChlbWFpbCBoZWFkZXIgdmFsdWUpXG4gICAgICAubmEge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgIH1cblxuICAgICAgLy8gUm91Z2UgYENvbW1lbnRgIHRva2VuIChxdW90ZWQgdGV4dCBpbiBlbWFpbCBib2R5KVxuICAgICAgLmMge1xuICAgICAgICBjb2xvcjogJGdsLXRleHQtY29sb3Itc3VidGxlO1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBhdmF0YXItY291bnRlcigkYm9yZGVyLXJhZGl1czogMWVtKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTQwMDtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktNTA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICBmb250LWZhbWlseTogJHJlZ3VsYXItZm9udDtcbiAgZm9udC1zaXplOiA5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtaXhpbiBkZXZpc2UtZXJyb3JzIHtcbiAgaDIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgZm9udC1zaXplOiAkZ2wtZm9udC1zaXplO1xuICAgIGNvbG9yOiB2YXIoLS1yZWQtNzAwLCAkcmVkLTcwMCk7XG4gIH1cbn1cblxuQG1peGluIG5vdGVzLW1lZGlhKCRicmVha3BvaW50LW5hbWUpIHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oJGJyZWFrcG9pbnQtbmFtZSkgeyBAY29udGVudDsgfVxuXG4gIC8vIERpZmYgaXMgc2lkZSBieSBzaWRlXG4gIC5ub3Rlcy1jb250ZW50LnBhcmFsbGVsICYge1xuICAgICRicmVha3BvaW50LWtleXM6IG1hcC5rZXlzKCRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkY3VycmVudC1pbmRleDogbGlzdC5pbmRleCgkYnJlYWtwb2ludC1rZXlzLCAkYnJlYWtwb2ludC1uYW1lKTtcblxuICAgIEBpZiAkY3VycmVudC1pbmRleCA8IGxpc3QubGVuZ3RoKCRicmVha3BvaW50LWtleXMpIHtcbiAgICAgICRwYXJhbGxlbC1icmVha3BvaW50OiBsaXN0Lm50aCgkYnJlYWtwb2ludC1rZXlzLCAkY3VycmVudC1pbmRleCArIDEpO1xuXG4gICAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bigkcGFyYWxsZWwtYnJlYWtwb2ludCkgeyBAY29udGVudDsgfVxuICAgIH1cbiAgfVxufVxuXG4vKipcbiogU3R5bGUgdG8gYXBwbHkgdG8sIGZvciBleGFtcGxlLCBzZWFyY2ggcmVzdWx0cyBtYXRjaGVzIG9yIHRleHQgd3JhcHBlZFxuKiBhcm91bmQgPG1hcms+IChhbGxvd2VkIGluIE1hcmtkb3duKS5cbiovXG5AbWl4aW4gc3RyLWhpZ2hsaWdodGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tb3JhbmdlLTEwMCk7XG4gIGJveC1zaGFkb3c6IDAgMCAwICRnbC1zcGFjaW5nLXNjYWxlLTEgdmFyKC0tb3JhbmdlLTEwMCk7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IC0xO1xufVxuXG4vKipcbiogTGluZSBjb25uZWN0aW5nIGFjdGl2aXR5IGVudHJpZXMsIHVzZWQgaW4gaXNzdWFibGVzLCB3b3JrIGl0ZW1zIGV0Y1xuKi9cbkBtaXhpbiB2ZXJ0aWNhbC1saW5lKCR0b3AsICRsZWZ0LCAkb2Zmc2V0OiAkdG9wKSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAycHg7XG4gIGxlZnQ6ICRsZWZ0O1xuICB0b3A6ICR0b3A7XG4gIGhlaWdodDogY2FsYygxMDAlIC0gI3skb2Zmc2V0fSk7XG59XG5cbi8qKlxuICogRGVwcmVjYXRlZCBtaXhpbiBmb3IgZGFyayBtb2RlXG4gKi9cbkBtaXhpbiBnbC1kYXJrLWludmVydC1rZWVwLWh1ZSB7XG4gIC5nbC1kYXJrICYge1xuICAgIGZpbHRlcjogaW52ZXJ0KDAuOCkgaHVlLXJvdGF0ZSgxODBkZWcpO1xuICB9XG59XG5cbi8qKlxuKiBDSS9DRCBKb2IgaXRlbSBmYWlsZWQgc3RhdHVzIGJhY2tncm91bmRcbipcbiogU2V0cyBiYWNrZ3JvdW5kIGNvbG9yIG9mIGl0ZW1zIHRvIHZpc3VhbGx5XG4qIGhpZ2hsaWdodCBmYWlsZWQgam9icyBpbiB0aGUgVUkuXG4qL1xuQG1peGluIGNpLWpvYi1pdGVtLWZhaWxlZC1zdGF0dXMtYmcge1xuICAtLWNpLWpvYi1pdGVtLWZhaWxlZDogdmFyKC0tZ2wtY29sb3ItcmVkLTUwKTtcblxuICAuZ2wtZGFyayAmIHtcbiAgICAtLWNpLWpvYi1pdGVtLWZhaWxlZDogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gIH1cblxuICBiYWNrZ3JvdW5kOiB2YXIoLS1jaS1qb2ItaXRlbS1mYWlsZWQpO1xufVxuXG5AbWl4aW4gbWFrZS1jb250YWluZXItZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIH1cblxuICAuZ2wtcm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLmdsLW5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmdsLWNvbCxcbiAgICA+IFtjbGFzcyo9XCJnbC1jb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLmtleXMoJGJyZWFrcG9pbnRzKSB7XG4gICAgJGJyZWFrcG9pbnQtdmFsdWU6IGJyZWFrcG9pbnQtbWluKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKTtcblxuICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgLy8gQWxsb3cgY29sdW1ucyB0byBzdHJldGNoIGZ1bGwgd2lkdGggYmVsb3cgdGhlaXIgYnJlYWtwb2ludHNcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgICAuZ2wtY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBhdC1ydWxlLWRpc2FsbG93ZWQtbGlzdFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdsLWNvbCN7JGluZml4fSxcbiAgICAuZ2wtY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgYXQtcnVsZS1kaXNhbGxvd2VkLWxpc3RcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoJGJyZWFrcG9pbnQpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5nbC1jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuZ2wtY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAuZ2wtcm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZ2wtY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuZ2wtY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgLmdsLW9yZGVyI3skaW5maXh9LWZpcnN0IHsgb3JkZXI6IC0xOyB9XG5cbiAgICAgLmdsLW9yZGVyI3skaW5maXh9LWxhc3QgeyBvcmRlcjogJGNvbHVtbnMgKyAxOyB9XG5cbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgICAgIC5nbC1vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MuZ2wtb2Zmc2V0LTBcbiAgICAgICAgICAgLmdsLW9mZnNldCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sLW9mZnNldCgkaSwgJGNvbHVtbnMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gY2hlY2tlcmJvYXJkLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgNDVkZWcsXG4gICAgICB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZykgMjUlLFxuICAgICAgdHJhbnNwYXJlbnQgMjUlLFxuICAgICAgdHJhbnNwYXJlbnQgNzUlLFxuICAgICAgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdHJvbmcpIDc1JSxcbiAgICAgIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3Ryb25nKSAxMDAlXG4gICAgKSxcbiAgICBsaW5lYXItZ3JhZGllbnQoXG4gICAgICA0NWRlZyxcbiAgICAgIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itc3Ryb25nKSAyNSUsXG4gICAgICB0cmFuc3BhcmVudCAyNSUsXG4gICAgICB0cmFuc3BhcmVudCA3NSUsXG4gICAgICB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZykgNzUlLFxuICAgICAgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdHJvbmcpIDEwMCVcbiAgICApO1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggMTBweDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCA1cHggNXB4O1xufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5cbkBtaXhpbiBzdHItdHJ1bmNhdGVkKCRtYXgtd2lkdGg6IDgyJSkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMDtcbiAgb3ZlcmZsb3cteDogY2xpcDtcbiAgb3ZlcmZsb3cteTogdmlzaWJsZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1heC13aWR0aDogJG1heC13aWR0aDtcbn1cblxuQG1peGluIG1hc2stY2hldnJvbi1kb3duIHtcbiAgbWFzay1pbWFnZTogdXJsKFwiI3skZ2wtaWNvbi1jaGV2cm9uLWRvd259XCIpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIG1hc2stc2l6ZTogY292ZXI7XG59XG5cbkBtaXhpbiBnbC1mbHVpZC1mb250LXNpemUoJG1pbiwgJG1heCkge1xuICBAaW5jbHVkZSBnbC1yZXNwb25zaXZlLXByb3BlcnR5KFwiZm9udC1zaXplXCIsICRtaW4sICRtYXgpO1xufVxuXG5AbWl4aW4gZ2wtZmx1aWQtbGluZS1oZWlnaHQoJG1pbiwgJG1heCkge1xuICBAaW5jbHVkZSBnbC1yZXNwb25zaXZlLXByb3BlcnR5KFwibGluZS1oZWlnaHRcIiwgJG1pbiwgJG1heCk7XG59XG5cbi8qKlxuKiBEZWNsYXJlcyBhIHByb3BlcnR5IHdpdGggYSBmbHVpZCB2YWx1ZSB0aGF0IGRlY3JlYXNlcyBvclxuKiByaXNlcyBkZXBlbmRpbmcgb24gdGhlIHZpZXdwb3J04oCZcyBzaXplLiBUaGUgcHJvcGVydHkgdHlwZVxuKiBzaG91bGQgYmUgbnVtZXJpYy5cbipcbiogVmFsdWVzIGFyZSBleHBlY3RlZCBpbiByZW0gdW5pdHMuXG4qIEZsdWlkIHJhbmdlOiBiZXR3ZWVuIDQ4cmVtICg3NjhweCkg4oCTIDc1cmVtICgxMjAwcHgpLlxuKlxuKiBAcGFyYW0gJHByb3BlcnR5IFByb3BlcnR5IG5hbWUsIGkuZS4gbGluZS1oZWlnaHQsIGZvbnQtc2l6ZSwgd2lkdGgsIGhlaWdodCwgZXRjLlxuKiBAcGFyYW0gJG1pbiBQcm9wZXJ0eSB2YWx1ZSBsb3dlciBib3VuZC5cbiogQHBhcmFtICRtYXggUHJvcGVydHkgdmFsdWUgdXBwZXIgYm91bmQuXG4qL1xuQG1peGluIGdsLXJlc3BvbnNpdmUtcHJvcGVydHkoJHByb3BlcnR5LCAkbWluLCAkbWF4KSB7XG4gICN7JHByb3BlcnR5fTogY2xhbXAtYmV0d2VlbigkbWluLCAkbWF4KTtcbn1cblxuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiBmb3IgOmZvY3VzXG4qXG4qIEBwYXJhbSAkc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBzaG91bGQgbm90IGJlIHVzZWQgYW55bW9yZVxuKi9cbkBtaXhpbiBnbC1mb2N1cyhcbiAgJHNpemU6IG51bGwsXG4gICRjb2xvcjogZmFsc2UsXG4gICRpbXBvcnRhbnQ6IGZhbHNlLFxuICAkaW5zZXQ6IGZhbHNlLFxuICAkZm9jdXMtcmluZzogJGZvY3VzLXJpbmcsXG4gICRvdXRsaW5lOiBmYWxzZSxcbiAgJG91dGxpbmUtb2Zmc2V0OiAkb3V0bGluZS1vZmZzZXRcbikge1xuICBAaWYgJGluc2V0ID09IHRydWUge1xuICAgIEBpZiAkY29sb3Ige1xuICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgaW5zZXQgMCAwIDAgJG91dGxpbmUtd2lkdGggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvciksXG4gICAgICAgIGluc2V0IDAgMCAwICN7JG91dGxpbmUtd2lkdGggKyAkb3V0bGluZS1vZmZzZXR9IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLFxuICAgICAgICBpbnNldCAwIDAgMCAjeyRvdXRsaW5lLXdpZHRoICsgJG91dGxpbmUtb2Zmc2V0ICsgMXB4fSAkY29sb3IsXG4gICAgICAgICRmb2N1cy1yaW5nLWluc2V0IGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIG91dGxpbmU6IG5vbmUgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0IGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRvdXRsaW5lID09IHRydWUge1xuICAgICAgb3V0bGluZTogJGZvY3VzLXJpbmctb3V0bGluZSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgICBvdXRsaW5lLW9mZnNldDogJG91dGxpbmUtb2Zmc2V0O1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgaW5zZXQgMCAwIDAgJG91dGxpbmUtd2lkdGggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvciksXG4gICAgICAgICRmb2N1cy1yaW5nLWluc2V0IGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIG91dGxpbmU6IG5vbmUgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgb3V0bGluZTogMnB4IHNvbGlkIExpbmtUZXh0IGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICAgIH1cbiAgICB9XG4gIH0gQGVsc2UgaWYgJGNvbG9yIHtcbiAgICBib3gtc2hhZG93OlxuICAgICAgaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTEgJGNvbG9yLFxuICAgICAgJGZvY3VzLXJpbmcgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIG91dGxpbmU6IG5vbmUgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICBvdXRsaW5lOiAycHggc29saWQgTGlua1RleHQgaWYtaW1wb3J0YW50KCRpbXBvcnRhbnQpO1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkb3V0bGluZSA9PSB0cnVlIHtcbiAgICBvdXRsaW5lOiAkZm9jdXMtcmluZy1vdXRsaW5lIGlmLWltcG9ydGFudCgkaW1wb3J0YW50KTtcbiAgICBvdXRsaW5lLW9mZnNldDogJG91dGxpbmUtb2Zmc2V0O1xuICB9IEBlbHNlIHtcbiAgICBib3gtc2hhZG93OiAkZm9jdXMtcmluZyBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgb3V0bGluZTogbm9uZSBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIG91dGxpbmU6IDJweCBzb2xpZCBMaW5rVGV4dCBpZi1pbXBvcnRhbnQoJGltcG9ydGFudCk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBnbC1iZy1ncmFkaWVudC1ibHVyKCRkaXJlY3Rpb24sICRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gJGRpcmVjdGlvbiwgJHRyYW5zcGFyZW50LXJnYmEsICRjb2xvciAzMyUpO1xufVxuXG4vKipcbiogSGVscGVyIGZ1bmN0aW9uIGZvciBAbWVkaWEgb2YgYXQgbGVhc3QgdGhlIG1pbmltdW1cbiogYnJlYWtwb2ludCB3aWR0aC5cbipcbiogQHBhcmFtICRuYW1lIEJyZWFrcG9pbnQgbmFtZSwgc3VjaCBhcyBgc21gIG9yIGBtZGAuXG4qL1xuQG1peGluIGdsLW1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUpIHtcbiAgJG1pbjogbWFwLmdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQGlmICRtaW4gPT0gbnVsbCB7XG4gICAgQGVycm9yIFwiI3skbmFtZX0gaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludCBmb3IgdGhpcyBAbWVkaWEgcXVlcnkuXCI7XG4gIH1cbiAgQGlmICRtaW4gIT0gMCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiBmb3IgQG1lZGlhIG9mIGF0IG1vc3QgdGhlIG1heGltdW1cbiogYnJlYWtwb2ludCB3aWR0aC5cbipcbiogTm90ZTogQmVmb3JlIHVzaW5nLCBjb25zaWRlciB1c2luZyBhIG1vYmlsZS1maXJzdFxuKiBhcHByb2FjaCwgYW5kIGRlZmluZSBAbWVkaWEgZm9yIGxhcmdlciBicmVha3BvaW50c1xuKiB1c2luZyBgZ2wtbWVkaWEtYnJlYWtwb2ludC11cGAgd2hpbGUgdXNpbmcgdGhpcyBydWxlIGFzXG4qIHRoZSBzdGFydGluZyBwb2ludCBpbnN0ZWFkLlxuKlxuKiBAcGFyYW0gJG5hbWUgQnJlYWtwb2ludCwgc3VjaCBhcyBgc21gIG9yIGBtZGAuIGB4c2AgaXMgbm90IHZhbGlkXG4qL1xuQG1peGluIGdsLW1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSkge1xuICAkbWF4OiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAaWYgKCRtYXggPT0gbnVsbCBvciAkbWF4ID09IDApIHtcbiAgICBAZXJyb3IgXCIjeyRuYW1lfSBpcyBub3QgYSB2YWxpZCBicmVha3BvaW50IGZvciB0aGlzIEBtZWRpYSBxdWVyeS5cIjtcbiAgfVxuICAvLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyByZWR1Y2VkIGJ5IDAuMDJweCB0byB3b3JrIGFyb3VuZCB0aGUgbGltaXRhdGlvbnMgb2ZcbiAgLy8gYG1pbi1gIGFuZCBgbWF4LWAgcHJlZml4ZXMgYW5kIHdpdGggZnJhY3Rpb25hbCB2aWV3cG9ydCBzaXplcy5cbiAgLy8gU2VlOiBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbiAgLy8gVXNlIDAuMDJweCByYXRoZXIgdGhhbiAwLjAxcHggdG8gd29yayBhcm91bmQgYSBjdXJyZW50IHJvdW5kaW5nIGJ1ZyBpbiBTYWZhcmkuXG4gIC8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4gICRicmVha3BvaW50LW1heC1yYW5nZS1wcmVjaXNpb246IDAuMDJweDtcblxuICBAbWVkaWEgKG1heC13aWR0aDogJG1heCAtICRicmVha3BvaW50LW1heC1yYW5nZS1wcmVjaXNpb24pIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZ2wtY29udGFpbmVyLXdpZHRoLXVwKCRuYW1lLCAkY29udGFpbmVyTmFtZTogXCJcIiwgJGluY2x1ZGVNUUZhbGxiYWNrOiB0cnVlKSB7XG4gICRtaW46IG1hcC5nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gIEBpZiAkbWluID09IG51bGwge1xuICAgIEBlcnJvciBcIiN7JG5hbWV9IGlzIG5vdCBhIHZhbGlkIGJyZWFrcG9pbnQgZm9yIHRoaXMgQGNvbnRhaW5lciBxdWVyeS5cIjtcbiAgfVxuICBAaWYgJG1pbiAhPSAwIHtcbiAgICBAY29udGFpbmVyICN7JGNvbnRhaW5lck5hbWV9ICh3aWR0aCA+PSAjeyRtaW59KSB7XG4gICAgICBAaWYgJiB7XG4gICAgICAgIDp3aGVyZShodG1sLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpICYge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAkaW5jbHVkZU1RRmFsbGJhY2sge1xuICAgICAgQG1lZGlhICh3aWR0aCA+PSAkbWluKSB7XG4gICAgICAgIEBpZiAmIHtcbiAgICAgICAgICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSAmIHtcbiAgICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkge1xuICAgICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oJG5hbWUsICRjb250YWluZXJOYW1lOiBcIlwiLCAkaW5jbHVkZU1RRmFsbGJhY2s6IHRydWUpIHtcbiAgJG1heDogbWFwLmdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgQGlmICgkbWF4ID09IG51bGwgb3IgJG1heCA9PSAwKSB7XG4gICAgQGVycm9yIFwiI3skbmFtZX0gaXMgbm90IGEgdmFsaWQgYnJlYWtwb2ludCBmb3IgdGhpcyBAY29udGFpbmVyIHF1ZXJ5LlwiO1xuICB9XG5cbiAgQGNvbnRhaW5lciAjeyRjb250YWluZXJOYW1lfSAod2lkdGggPCAjeyRtYXh9KSB7XG4gICAgQGlmICYge1xuICAgICAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykgJiB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgOndoZXJlKGh0bWwud2l0aC1nbC1jb250YWluZXItcXVlcmllcykge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGlmICRpbmNsdWRlTVFGYWxsYmFjayB7XG4gICAgQG1lZGlhICh3aWR0aCA8ICRtYXgpIHtcbiAgICAgIEBpZiAmIHtcbiAgICAgICAgOndoZXJlKGh0bWw6bm90KC53aXRoLWdsLWNvbnRhaW5lci1xdWVyaWVzKSkgJiB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICA6d2hlcmUoaHRtbDpub3QoLndpdGgtZ2wtY29udGFpbmVyLXF1ZXJpZXMpKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyoqXG4qIEhlbHBlciBmdW5jdGlvbiB0byByZXNvbHZlIGZvbnQtc2l6ZSB2YWx1ZSBmcm9tICRnbC1mb250LXNpemVzIGFuZFxuKiAkZ2wtZm9udC1zaXplcy1maXhlZCBtYXBzLlxuKlxuKiBAcGFyYW0gJHNpemUgTnVtYmVyIGZvbnQtc2l6ZSBzY2FsZVxuKiBAcGFyYW0gJGZpeGVkIEJvb2xlYW4gdG9nZ2xlIGRlZmF1bHQgYW5kIGZpeGVkIGZvbnQgc2l6ZSBzY2FsZXNcbiovXG5AZnVuY3Rpb24gZ2V0LWZvbnQtc2l6ZS12YXJpYWJsZSgkc2l6ZSwgJGZpeGVkKSB7XG4gIEBpZiAkZml4ZWQgPT0gdHJ1ZSB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRnbC1mb250LXNpemVzLWZpeGVkLCAkc2l6ZSkge1xuICAgICAgQHJldHVybiBtYXAuZ2V0KCRnbC1mb250LXNpemVzLWZpeGVkLCAkc2l6ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAZXJyb3IgXCIjeyRzaXplfSBpcyBub3QgYSB2YWxpZCBmaXhlZCBmb250IHNpemUgcHJvcGVydHlcIjtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkZ2wtZm9udC1zaXplcywgJHNpemUpIHtcbiAgICAgIEByZXR1cm4gbWFwLmdldCgkZ2wtZm9udC1zaXplcywgJHNpemUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQGVycm9yIFwiI3skc2l6ZX0gaXMgbm90IGEgdmFsaWQgZm9udCBzaXplIHByb3BlcnR5XCI7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBnbC1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLXRyYW5zaXRpb24ge1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjAxbXMgIWltcG9ydGFudDtcbiAgICB0cmFuc2l0aW9uLWRlbGF5OiAwbXMgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZ2wtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1hbmltYXRpb24ge1xuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuMDFtcyAhaW1wb3J0YW50O1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IDEgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24tZGVsYXk6IDBtcyAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBnbC1hY3Rpb24tc2VsZWN0ZWQtY29sb3JzIHtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1cyk7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlKTtcbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWV0YVwiO1xuOnJvb3Qge1xuICAvLyBDdXN0b20gdmFyaWFibGUgdmFsdWVzIG9ubHkgc3VwcG9ydCBTYXNzU2NyaXB0IGluc2lkZSBgI3t9YC5cbiAgQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJGNvbG9ycyB7XG4gICAgLS0jeyRjb2xvcn06ICN7JHZhbHVlfTtcbiAgfVxuXG4gIEBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAgIC0tI3skY29sb3J9OiAjeyR2YWx1ZX07XG4gIH1cblxuICBAZWFjaCAkYnAsICR2YWx1ZSBpbiAkZ3JpZC1icmVha3BvaW50cyB7XG4gICAgLS1icmVha3BvaW50LSN7JGJwfTogI3skdmFsdWV9O1xuICB9XG5cbiAgLy8gVXNlIGBpbnNwZWN0YCBmb3IgbGlzdHMgc28gdGhhdCBxdW90ZWQgaXRlbXMga2VlcCB0aGUgcXVvdGVzLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3Nhc3Mvc2Fzcy9pc3N1ZXMvMjM4MyNpc3N1ZWNvbW1lbnQtMzM2MzQ5MTcyXG4gIC0tZm9udC1mYW1pbHktc2Fucy1zZXJpZjogI3ttZXRhLmluc3BlY3QoJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYpfTtcbiAgLS1mb250LWZhbWlseS1tb25vc3BhY2U6ICN7bWV0YS5pbnNwZWN0KCRmb250LWZhbWlseS1tb25vc3BhY2UpfTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCwgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlLCBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4XG5cbi8vIFJlYm9vdFxuLy9cbi8vIE5vcm1hbGl6YXRpb24gb2YgSFRNTCBlbGVtZW50cywgbWFudWFsbHkgZm9ya2VkIGZyb20gTm9ybWFsaXplLmNzcyB0byByZW1vdmVcbi8vIHN0eWxlcyB0YXJnZXRpbmcgaXJyZWxldmFudCBicm93c2VycyB3aGlsZSBhcHBseWluZyBuZXcgc3R5bGVzLlxuLy9cbi8vIE5vcm1hbGl6ZSBpcyBsaWNlbnNlZCBNSVQuIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3NcblxuXG4vLyBEb2N1bWVudFxuLy9cbi8vIDEuIENoYW5nZSBmcm9tIGBib3gtc2l6aW5nOiBjb250ZW50LWJveGAgc28gdGhhdCBgd2lkdGhgIGlzIG5vdCBhZmZlY3RlZCBieSBgcGFkZGluZ2Agb3IgYGJvcmRlcmAuXG4vLyAyLiBDaGFuZ2UgdGhlIGRlZmF1bHQgZm9udCBmYW1pbHkgaW4gYWxsIGJyb3dzZXJzLlxuLy8gMy4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuLy8gNC4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBJRSBvbiBXaW5kb3dzIFBob25lIGFuZCBpbiBpT1MuXG4vLyA1LiBDaGFuZ2UgdGhlIGRlZmF1bHQgdGFwIGhpZ2hsaWdodCB0byBiZSBjb21wbGV0ZWx5IHRyYW5zcGFyZW50IGluIGlPUy5cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxufVxuXG5odG1sIHtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7IC8vIDJcbiAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDNcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyA0XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7IC8vIDVcbn1cblxuLy8gU2hpbSBmb3IgXCJuZXdcIiBIVE1MNSBzdHJ1Y3R1cmFsIGVsZW1lbnRzIHRvIGRpc3BsYXkgY29ycmVjdGx5IChJRTEwLCBvbGRlciBicm93c2Vycylcbi8vIFRPRE86IHJlbW92ZSBpbiB2NVxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLWxpc3QtY29tbWEtbmV3bGluZS1hZnRlclxuYXJ0aWNsZSwgYXNpZGUsIGZpZ2NhcHRpb24sIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsIGhncm91cCwgbWFpbiwgbmF2LCBzZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIEJvZHlcbi8vXG4vLyAxLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG4vLyAyLiBTZXQgYW4gZXhwbGljaXQgaW5pdGlhbCB0ZXh0LWFsaWduIHZhbHVlIHNvIHRoYXQgd2UgY2FuIGxhdGVyIHVzZVxuLy8gICAgdGhlIGBpbmhlcml0YCB2YWx1ZSBvbiB0aGluZ3MgbGlrZSBgPHRoPmAgZWxlbWVudHMuXG5cbmJvZHkge1xuICBtYXJnaW46IDA7IC8vIDFcbiAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIDJcbn1cblxuLy8gRnV0dXJlLXByb29mIHJ1bGU6IGluIGJyb3dzZXJzIHRoYXQgc3VwcG9ydCA6Zm9jdXMtdmlzaWJsZSwgc3VwcHJlc3MgdGhlIGZvY3VzIG91dGxpbmVcbi8vIG9uIGVsZW1lbnRzIHRoYXQgcHJvZ3JhbW1hdGljYWxseSByZWNlaXZlIGZvY3VzIGJ1dCB3b3VsZG4ndCBub3JtYWxseSBzaG93IGEgdmlzaWJsZVxuLy8gZm9jdXMgb3V0bGluZS4gSW4gZ2VuZXJhbCwgdGhpcyB3b3VsZCBtZWFuIHRoYXQgdGhlIG91dGxpbmUgaXMgb25seSBhcHBsaWVkIGlmIHRoZVxuLy8gaW50ZXJhY3Rpb24gdGhhdCBsZWQgdG8gdGhlIGVsZW1lbnQgcmVjZWl2aW5nIHByb2dyYW1tYXRpYyBmb2N1cyB3YXMgYSBrZXlib2FyZCBpbnRlcmFjdGlvbixcbi8vIG9yIHRoZSBicm93c2VyIGhhcyBzb21laG93IGRldGVybWluZWQgdGhhdCB0aGUgdXNlciBpcyBwcmltYXJpbHkgYSBrZXlib2FyZCB1c2VyIGFuZC9vclxuLy8gd2FudHMgZm9jdXMgb3V0bGluZXMgdG8gYWx3YXlzIGJlIHByZXNlbnRlZC5cbi8vXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvQ1NTLzpmb2N1cy12aXNpYmxlXG4vLyBhbmQgaHR0cHM6Ly9kZXZlbG9wZXIucGFjaWVsbG9ncm91cC5jb20vYmxvZy8yMDE4LzAzL2ZvY3VzLXZpc2libGUtYW5kLWJhY2t3YXJkcy1jb21wYXRpYmlsaXR5L1xuW3RhYmluZGV4PVwiLTFcIl06Zm9jdXM6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gIG91dGxpbmU6IDAgIWltcG9ydGFudDtcbn1cblxuXG4vLyBDb250ZW50IGdyb3VwaW5nXG4vL1xuLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbi8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gIGhlaWdodDogMDsgLy8gMVxuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxufVxuXG5cbi8vXG4vLyBUeXBvZ3JhcGh5XG4vL1xuXG4vLyBSZW1vdmUgdG9wIG1hcmdpbnMgZnJvbSBoZWFkaW5nc1xuLy9cbi8vIEJ5IGRlZmF1bHQsIGA8aDE+YC1gPGg2PmAgYWxsIHJlY2VpdmUgdG9wIGFuZCBib3R0b20gbWFyZ2lucy4gV2UgbnVrZSB0aGUgdG9wXG4vLyBtYXJnaW4gZm9yIGVhc2llciBjb250cm9sIHdpdGhpbiB0eXBlIHNjYWxlcyBhcyBpdCBhdm9pZHMgbWFyZ2luIGNvbGxhcHNpbmcuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3ItbGlzdC1jb21tYS1uZXdsaW5lLWFmdGVyXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGhlYWRpbmdzLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlc2V0IG1hcmdpbnMgb24gcGFyYWdyYXBoc1xuLy9cbi8vIFNpbWlsYXJseSwgdGhlIHRvcCBtYXJnaW4gb24gYDxwPmBzIGdldCByZXNldC4gSG93ZXZlciwgd2UgYWxzbyByZXNldCB0aGVcbi8vIGJvdHRvbSBtYXJnaW4gdG8gdXNlIGByZW1gIHVuaXRzIGluc3RlYWQgb2YgYGVtYC5cbnAge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIEFiYnJldmlhdGlvbnNcbi8vXG4vLyAxLiBEdXBsaWNhdGUgYmVoYXZpb3IgdG8gdGhlIGRhdGEtKiBhdHRyaWJ1dGUgZm9yIG91ciB0b29sdGlwIHBsdWdpblxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vIDMuIEFkZCBleHBsaWNpdCBjdXJzb3IgdG8gaW5kaWNhdGUgY2hhbmdlZCBiZWhhdmlvci5cbi8vIDQuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBGaXJlZm94IDM5LS5cbi8vIDUuIFByZXZlbnQgdGhlIHRleHQtZGVjb3JhdGlvbiB0byBiZSBza2lwcGVkLlxuXG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0geyAvLyAxXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICBjdXJzb3I6IGhlbHA7IC8vIDNcbiAgYm9yZGVyLWJvdHRvbTogMDsgLy8gNFxuICB0ZXh0LWRlY29yYXRpb24tc2tpcC1pbms6IG5vbmU7IC8vIDVcbn1cblxuYWRkcmVzcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbm9sLFxudWwsXG5kbCB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbm9sIG9sLFxudWwgdWwsXG5vbCB1bCxcbnVsIG9sIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuZHQge1xuICBmb250LXdlaWdodDogJGR0LWZvbnQtd2VpZ2h0O1xufVxuXG5kZCB7XG4gIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG59XG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGRlcjsgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaVxufVxuXG5zbWFsbCB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg4MCUpOyAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vyc1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4vLyBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zdWIsXG5zdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg3NSUpO1xuICBsaW5lLWhlaWdodDogMDtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIgeyBib3R0b206IC0uMjVlbTsgfVxuc3VwIHsgdG9wOiAtLjVlbTsgfVxuXG5cbi8vXG4vLyBDb2RlXG4vL1xuXG5wcmUsXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuICBAaW5jbHVkZSBmb250LXNpemUoMWVtKTsgLy8gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxufVxuXG5wcmUge1xuICAvLyBSZW1vdmUgYnJvd3NlciBkZWZhdWx0IHRvcCBtYXJnaW5cbiAgbWFyZ2luLXRvcDogMDtcbiAgLy8gUmVzZXQgYnJvd3NlciBkZWZhdWx0IG9mIGAxZW1gIHRvIHVzZSBgcmVtYHNcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgLy8gRG9uJ3QgYWxsb3cgY29udGVudCB0byBicmVhayBvdXRzaWRlXG4gIG92ZXJmbG93OiBhdXRvO1xuICAvLyBEaXNhYmxlIGF1dG8taGlkaW5nIHNjcm9sbGJhciBpbiBJRSAmIGxlZ2FjeSBFZGdlIHRvIGF2b2lkIG92ZXJsYXAsXG4gIC8vIG1ha2luZyBpdCBpbXBvc3NpYmxlIHRvIGludGVyYWN0IHdpdGggdGhlIGNvbnRlbnRcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiBzY3JvbGxiYXI7XG59XG5cblxuLy9cbi8vIEZpZ3VyZXNcbi8vXG5cbmZpZ3VyZSB7XG4gIC8vIEFwcGx5IGEgY29uc2lzdGVudCBtYXJnaW4gc3RyYXRlZ3kgKG1hdGNoZXMgb3VyIHR5cGUgc3R5bGVzKS5cbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuXG4vL1xuLy8gSW1hZ2VzIGFuZCBjb250ZW50XG4vL1xuXG5pbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItc3R5bGU6IG5vbmU7IC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAtLlxufVxuXG5zdmcge1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgU1ZHIG92ZXJmbG93IGJ1ZyBpbiBJRTEwLzExIGlzIHN0aWxsIHJlcXVpcmVkLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNjg3OFxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5cbi8vXG4vLyBUYWJsZXNcbi8vXG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTsgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyc1xufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjYXB0aW9uLXNpZGU6IGJvdHRvbTtcbn1cblxuLy8gMS4gUmVtb3ZlcyBmb250LXdlaWdodCBib2xkIGJ5IGluaGVyaXRpbmdcbi8vIDIuIE1hdGNoZXMgZGVmYXVsdCBgPHRkPmAgYWxpZ25tZW50IGJ5IGluaGVyaXRpbmcgYHRleHQtYWxpZ25gLlxuLy8gMy4gRml4IGFsaWdubWVudCBmb3IgU2FmYXJpXG5cbnRoIHtcbiAgZm9udC13ZWlnaHQ6ICR0YWJsZS10aC1mb250LXdlaWdodDsgLy8gMVxuICB0ZXh0LWFsaWduOiBpbmhlcml0OyAvLyAyXG4gIHRleHQtYWxpZ246IC13ZWJraXQtbWF0Y2gtcGFyZW50OyAvLyAzXG59XG5cblxuLy9cbi8vIEZvcm1zXG4vL1xuXG5sYWJlbCB7XG4gIC8vIEFsbG93IGxhYmVscyB0byB1c2UgYG1hcmdpbmAgZm9yIHNwYWNpbmcuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogJGxhYmVsLW1hcmdpbi1ib3R0b207XG59XG5cbi8vIFJlbW92ZSB0aGUgZGVmYXVsdCBgYm9yZGVyLXJhZGl1c2AgdGhhdCBtYWNPUyBDaHJvbWUgYWRkcy5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQwOTNcbmJ1dHRvbiB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLy8gRXhwbGljaXRseSByZW1vdmUgZm9jdXMgb3V0bGluZSBpbiBDaHJvbWl1bSB3aGVuIGl0IHNob3VsZG4ndCBiZVxuLy8gdmlzaWJsZSAoZS5nLiBhcyByZXN1bHQgb2YgbW91c2UgY2xpY2sgb3IgdG91Y2ggdGFwKS4gSXQgYWxyZWFkeVxuLy8gc2hvdWxkIGJlIGRvaW5nIHRoaXMgYXV0b21hdGljYWxseSwgYnV0IHNlZW1zIHRvIGN1cnJlbnRseSBiZVxuLy8gY29uZnVzZWQgYW5kIGFwcGxpZXMgaXRzIHZlcnkgdmlzaWJsZSB0d28tdG9uZSBvdXRsaW5lIGFueXdheS5cblxuYnV0dG9uOmZvY3VzOm5vdCg6Zm9jdXMtdmlzaWJsZSkge1xuICBvdXRsaW5lOiAwO1xufVxuXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbm9wdGdyb3VwLFxudGV4dGFyZWEge1xuICBtYXJnaW46IDA7IC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaVxuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKGluaGVyaXQpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZVxufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94XG59XG5cbi8vIFNldCB0aGUgY3Vyc29yIGZvciBub24tYDxidXR0b24+YCBidXR0b25zXG4vL1xuLy8gRGV0YWlscyBhdCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8zMDU2MlxuW3JvbGU9XCJidXR0b25cIl0ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2Ygd29yZC13cmFwIGluIFNhZmFyaS5cbi8vXG4vLyBEZXRhaWxzIGF0IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjQ5OTBcbnNlbGVjdCB7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuXG5cbi8vIDEuIFByZXZlbnQgYSBXZWJLaXQgYnVnIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYCBhbmQgYHZpZGVvYFxuLy8gICAgY29udHJvbHMgaW4gQW5kcm9pZCA0LlxuLy8gMi4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5bdHlwZT1cInJlc2V0XCJdLFxuW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMlxufVxuXG4vLyBPcGluaW9uYXRlZDogYWRkIFwiaGFuZFwiIGN1cnNvciB0byBub24tZGlzYWJsZWQgYnV0dG9uIGVsZW1lbnRzLlxuQGlmICRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnMge1xuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgJjpub3QoOmRpc2FibGVkKSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlbW92ZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgZnJvbSBGaXJlZm94LCBidXQgZG9uJ3QgcmVzdG9yZSB0aGUgb3V0bGluZSBsaWtlIE5vcm1hbGl6ZS5cbmJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC1cbiAgcGFkZGluZzogMDsgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLVxufVxuXG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUuXG4gIC8vIFRleHRhcmVhcyBzaG91bGQgcmVhbGx5IG9ubHkgcmVzaXplIHZlcnRpY2FsbHkgc28gdGhleSBkb24ndCBicmVhayB0aGVpciAoaG9yaXpvbnRhbCkgY29udGFpbmVycy5cbiAgcmVzaXplOiB2ZXJ0aWNhbDtcbn1cblxuZmllbGRzZXQge1xuICAvLyBCcm93c2VycyBzZXQgYSBkZWZhdWx0IGBtaW4td2lkdGg6IG1pbi1jb250ZW50O2Agb24gZmllbGRzZXRzLFxuICAvLyB1bmxpa2UgZS5nLiBgPGRpdj5gcywgd2hpY2ggaGF2ZSBgbWluLXdpZHRoOiAwO2AgYnkgZGVmYXVsdC5cbiAgLy8gU28gd2UgcmVzZXQgdGhhdCB0byBlbnN1cmUgZmllbGRzZXRzIGJlaGF2ZSBtb3JlIGxpa2UgYSBzdGFuZGFyZCBibG9jayBlbGVtZW50LlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMjM1OVxuICAvLyBhbmQgaHR0cHM6Ly9odG1sLnNwZWMud2hhdHdnLm9yZy9tdWx0aXBhZ2UvI3RoZS1maWVsZHNldC1hbmQtbGVnZW5kLWVsZW1lbnRzXG4gIG1pbi13aWR0aDogMDtcbiAgLy8gUmVzZXQgdGhlIGRlZmF1bHQgb3V0bGluZSBiZWhhdmlvciBvZiBmaWVsZHNldHMgc28gdGhleSBkb24ndCBhZmZlY3QgcGFnZSBsYXlvdXQuXG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4vLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxubGVnZW5kIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgxLjVyZW0pO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxufVxuXG5wcm9ncmVzcyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cbn1cblxuLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBUaGlzIG92ZXJyaWRlcyB0aGUgZXh0cmEgcm91bmRlZCBjb3JuZXJzIG9uIHNlYXJjaCBpbnB1dHMgaW4gaU9TIHNvIHRoYXQgb3VyXG4gIC8vIGAuZm9ybS1jb250cm9sYCBjbGFzcyBjYW4gcHJvcGVybHkgc3R5bGUgdGhlbS4gTm90ZSB0aGF0IHRoaXMgY2Fubm90IHNpbXBseVxuICAvLyBiZSBhZGRlZCB0byBgLmZvcm0tY29udHJvbGAgYXMgaXQncyBub3Qgc3BlY2lmaWMgZW5vdWdoLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE1ODYuXG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG4vL1xuLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuLy9cblxuW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuLy9cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbn1cblxuLy9cbi8vIENvcnJlY3QgZWxlbWVudCBkaXNwbGF5c1xuLy9cblxub3V0cHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogbGlzdC1pdGVtOyAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnNcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG50ZW1wbGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7IC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFXG59XG5cbi8vIEFsd2F5cyBoaWRlIGFuIGVsZW1lbnQgd2l0aCB0aGUgYGhpZGRlbmAgSFRNTCBhdHRyaWJ1dGUgKGZyb20gUHVyZUNTUykuXG4vLyBOZWVkZWQgZm9yIHByb3BlciBkaXNwbGF5IGluIElFIDEwLS5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwic2FzczptYXRoXCI7XG5AdXNlIFwic2FzczptZXRhXCI7XG4vLyBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1ibGFja2xpc3QsIHNjc3MvZG9sbGFyLXZhcmlhYmxlLWRlZmF1bHRcblxuLy8gU0NTUyBSRlMgbWl4aW5cbi8vXG4vLyBBdXRvbWF0ZWQgcmVzcG9uc2l2ZSBmb250IHNpemVzXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9yZnMvYmxvYi92OC54L0xJQ0VOU0UpXG5cbi8vIENvbmZpZ3VyYXRpb25cblxuLy8gQmFzZSBmb250IHNpemVcbiRyZnMtYmFzZS1mb250LXNpemU6IDEuMjVyZW0gIWRlZmF1bHQ7XG4kcmZzLWZvbnQtc2l6ZS11bml0OiByZW0gIWRlZmF1bHQ7XG5cbkBpZiAkcmZzLWZvbnQtc2l6ZS11bml0ICE9IHJlbSBhbmQgJHJmcy1mb250LXNpemUtdW5pdCAhPSBweCB7XG4gIEBlcnJvciBcImAjeyRyZnMtZm9udC1zaXplLXVuaXR9YCBpcyBub3QgYSB2YWxpZCB1bml0IGZvciAkcmZzLWZvbnQtc2l6ZS11bml0LiBVc2UgYHB4YCBvciBgcmVtYC5cIjtcbn1cblxuLy8gQnJlYWtwb2ludCBhdCB3aGVyZSBmb250LXNpemUgc3RhcnRzIGRlY3JlYXNpbmcgaWYgc2NyZWVuIHdpZHRoIGlzIHNtYWxsZXJcbiRyZnMtYnJlYWtwb2ludDogMTIwMHB4ICFkZWZhdWx0O1xuJHJmcy1icmVha3BvaW50LXVuaXQ6IHB4ICFkZWZhdWx0O1xuXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQgIT0gcHggYW5kICRyZnMtYnJlYWtwb2ludC11bml0ICE9IGVtIGFuZCAkcmZzLWJyZWFrcG9pbnQtdW5pdCAhPSByZW0ge1xuICBAZXJyb3IgXCJgI3skcmZzLWJyZWFrcG9pbnQtdW5pdH1gIGlzIG5vdCBhIHZhbGlkIHVuaXQgZm9yICRyZnMtYnJlYWtwb2ludC11bml0LiBVc2UgYHB4YCwgYGVtYCBvciBgcmVtYC5cIjtcbn1cblxuLy8gUmVzaXplIGZvbnQgc2l6ZSBiYXNlZCBvbiBzY3JlZW4gaGVpZ2h0IGFuZCB3aWR0aFxuJHJmcy10d28tZGltZW5zaW9uYWw6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBGYWN0b3Igb2YgZGVjcmVhc2VcbiRyZnMtZmFjdG9yOiAxMCAhZGVmYXVsdDtcblxuQGlmIG1ldGEudHlwZS1vZigkcmZzLWZhY3RvcikgIT0gXCJudW1iZXJcIiBvciAkcmZzLWZhY3RvciA8PSAxIHtcbiAgQGVycm9yIFwiYCN7JHJmcy1mYWN0b3J9YCBpcyBub3QgYSB2YWxpZCAgJHJmcy1mYWN0b3IsIGl0IG11c3QgYmUgZ3JlYXRlciB0aGFuIDEuXCI7XG59XG5cbi8vIEdlbmVyYXRlIGVuYWJsZSBvciBkaXNhYmxlIGNsYXNzZXMuIFBvc3NpYmlsaXRpZXM6IGZhbHNlLCBcImVuYWJsZVwiIG9yIFwiZGlzYWJsZVwiXG4kcmZzLWNsYXNzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gMSByZW0gPSAkcmZzLXJlbS12YWx1ZSBweFxuJHJmcy1yZW0tdmFsdWU6IDE2ICFkZWZhdWx0O1xuXG4vLyBTYWZhcmkgaWZyYW1lIHJlc2l6ZSBidWc6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL3Jmcy9pc3N1ZXMvMTRcbiRyZnMtc2FmYXJpLWlmcmFtZS1yZXNpemUtYnVnLWZpeDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIERpc2FibGUgUkZTIGJ5IHNldHRpbmcgJGVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZXMgdG8gZmFsc2VcbiRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBDYWNoZSAkcmZzLWJhc2UtZm9udC1zaXplIHVuaXRcbiRyZnMtYmFzZS1mb250LXNpemUtdW5pdDogbWF0aC51bml0KCRyZnMtYmFzZS1mb250LXNpemUpO1xuXG5AZnVuY3Rpb24gZGl2aWRlKCRkaXZpZGVuZCwgJGRpdmlzb3IsICRwcmVjaXNpb246IDEwKSB7XG4gICRzaWduOiBpZigkZGl2aWRlbmQgPiAwIGFuZCAkZGl2aXNvciA+IDAgb3IgJGRpdmlkZW5kIDwgMCBhbmQgJGRpdmlzb3IgPCAwLCAxLCAtMSk7XG4gICRkaXZpZGVuZDogbWF0aC5hYnMoJGRpdmlkZW5kKTtcbiAgJGRpdmlzb3I6IG1hdGguYWJzKCRkaXZpc29yKTtcbiAgQGlmICRkaXZpZGVuZCA9PSAwIHtcbiAgICBAcmV0dXJuIDA7XG4gIH1cbiAgQGlmICRkaXZpc29yID09IDAge1xuICAgIEBlcnJvciBcIkNhbm5vdCBkaXZpZGUgYnkgMFwiO1xuICB9XG4gICRyZW1haW5kZXI6ICRkaXZpZGVuZDtcbiAgJHJlc3VsdDogMDtcbiAgJGZhY3RvcjogMTA7XG4gIEB3aGlsZSAoJHJlbWFpbmRlciA+IDAgYW5kICRwcmVjaXNpb24gPj0gMCkge1xuICAgICRxdW90aWVudDogMDtcbiAgICBAd2hpbGUgKCRyZW1haW5kZXIgPj0gJGRpdmlzb3IpIHtcbiAgICAgICRyZW1haW5kZXI6ICRyZW1haW5kZXIgLSAkZGl2aXNvcjtcbiAgICAgICRxdW90aWVudDogJHF1b3RpZW50ICsgMTtcbiAgICB9XG4gICAgJHJlc3VsdDogJHJlc3VsdCAqIDEwICsgJHF1b3RpZW50O1xuICAgICRmYWN0b3I6ICRmYWN0b3IgKiAuMTtcbiAgICAkcmVtYWluZGVyOiAkcmVtYWluZGVyICogMTA7XG4gICAgJHByZWNpc2lvbjogJHByZWNpc2lvbiAtIDE7XG4gICAgQGlmICgkcHJlY2lzaW9uIDwgMCBhbmQgJHJlbWFpbmRlciA+PSAkZGl2aXNvciAqIDUpIHtcbiAgICAgICRyZXN1bHQ6ICRyZXN1bHQgKyAxO1xuICAgIH1cbiAgfVxuICAkcmVzdWx0OiAkcmVzdWx0ICogJGZhY3RvciAqICRzaWduO1xuICAkZGl2aWRlbmQtdW5pdDogbWF0aC51bml0KCRkaXZpZGVuZCk7XG4gICRkaXZpc29yLXVuaXQ6IG1hdGgudW5pdCgkZGl2aXNvcik7XG4gICR1bml0LW1hcDogKFxuICAgIFwicHhcIjogMXB4LFxuICAgIFwicmVtXCI6IDFyZW0sXG4gICAgXCJlbVwiOiAxZW0sXG4gICAgXCIlXCI6IDElXG4gICk7XG4gIEBpZiAoJGRpdmlkZW5kLXVuaXQgIT0gJGRpdmlzb3ItdW5pdCBhbmQgbWFwLmhhcy1rZXkoJHVuaXQtbWFwLCAkZGl2aWRlbmQtdW5pdCkpIHtcbiAgICAkcmVzdWx0OiAkcmVzdWx0ICogbWFwLmdldCgkdW5pdC1tYXAsICRkaXZpZGVuZC11bml0KTtcbiAgfVxuICBAcmV0dXJuICRyZXN1bHQ7XG59XG5cbi8vIFJlbW92ZSBweC11bml0IGZyb20gJHJmcy1iYXNlLWZvbnQtc2l6ZSBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicHhcIiB7XG4gICRyZnMtYmFzZS1mb250LXNpemU6IGRpdmlkZSgkcmZzLWJhc2UtZm9udC1zaXplLCAkcmZzLWJhc2UtZm9udC1zaXplICogMCArIDEpO1xufVxuQGVsc2UgaWYgJHJmcy1iYXNlLWZvbnQtc2l6ZS11bml0ID09IFwicmVtXCIge1xuICAkcmZzLWJhc2UtZm9udC1zaXplOiBkaXZpZGUoJHJmcy1iYXNlLWZvbnQtc2l6ZSwgZGl2aWRlKCRyZnMtYmFzZS1mb250LXNpemUgKiAwICsgMSwgJHJmcy1yZW0tdmFsdWUpKTtcbn1cblxuLy8gQ2FjaGUgJHJmcy1icmVha3BvaW50IHVuaXQgdG8gcHJldmVudCBtdWx0aXBsZSBjYWxsc1xuJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGU6IG1hdGgudW5pdCgkcmZzLWJyZWFrcG9pbnQpO1xuXG4vLyBSZW1vdmUgdW5pdCBmcm9tICRyZnMtYnJlYWtwb2ludCBmb3IgY2FsY3VsYXRpb25zXG5AaWYgJHJmcy1icmVha3BvaW50LXVuaXQtY2FjaGUgPT0gXCJweFwiIHtcbiAgJHJmcy1icmVha3BvaW50OiBkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLWJyZWFrcG9pbnQgKiAwICsgMSk7XG59XG5AZWxzZSBpZiAkcmZzLWJyZWFrcG9pbnQtdW5pdC1jYWNoZSA9PSBcInJlbVwiIG9yICRyZnMtYnJlYWtwb2ludC11bml0LWNhY2hlID09IFwiZW1cIiB7XG4gICRyZnMtYnJlYWtwb2ludDogZGl2aWRlKCRyZnMtYnJlYWtwb2ludCwgZGl2aWRlKCRyZnMtYnJlYWtwb2ludCAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xufVxuXG4vLyBJbnRlcm5hbCBtaXhpbiB0aGF0IGFkZHMgZGlzYWJsZSBjbGFzc2VzIHRvIHRoZSBzZWxlY3RvciBpZiBuZWVkZWQuXG5AbWl4aW4gX3Jmcy1kaXNhYmxlLWNsYXNzIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gXCJkaXNhYmxlXCIge1xuICAgIC8vIEFkZGluZyBhbiBleHRyYSBjbGFzcyBpbmNyZWFzZXMgc3BlY2lmaWNpdHksIHdoaWNoIHByZXZlbnRzIHRoZSBtZWRpYSBxdWVyeSB0byBvdmVycmlkZSB0aGUgZm9udCBzaXplXG4gICAgJixcbiAgICAuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICYuZGlzYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vIEludGVybmFsIG1peGluIHRoYXQgYWRkcyBlbmFibGUgY2xhc3NlcyB0byB0aGUgc2VsZWN0b3IgaWYgbmVlZGVkLlxuQG1peGluIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgQGlmICRyZnMtY2xhc3MgPT0gXCJlbmFibGVcIiB7XG4gICAgLmVuYWJsZS1yZXNwb25zaXZlLWZvbnQtc2l6ZSAmLFxuICAgICYuZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuLy8gSW50ZXJuYWwgbWl4aW4gdXNlZCB0byBkZXRlcm1pbmUgd2hpY2ggbWVkaWEgcXVlcnkgbmVlZHMgdG8gYmUgdXNlZFxuQG1peGluIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gIEBpZiAkcmZzLXR3by1kaW1lbnNpb25hbCB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSksIChtYXgtaGVpZ2h0OiAjeyRtcS12YWx1ZX0pIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICN7JG1xLXZhbHVlfSkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vIFJlc3BvbnNpdmUgZm9udCBzaXplIG1peGluXG5AbWl4aW4gcmZzKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgLy8gQ2FjaGUgJGZzIHVuaXRcbiAgJGZzLXVuaXQ6IGlmKG1ldGEudHlwZS1vZigkZnMpID09IFwibnVtYmVyXCIsIG1hdGgudW5pdCgkZnMpLCBmYWxzZSk7XG5cbiAgLy8gQWRkICFpbXBvcnRhbnQgc3VmZml4IGlmIG5lZWRlZFxuICAkcmZzLXN1ZmZpeDogaWYoJGltcG9ydGFudCwgXCIgIWltcG9ydGFudFwiLCBcIlwiKTtcblxuICAvLyBJZiAkZnMgaXNuJ3QgYSBudW1iZXIgKGxpa2UgaW5oZXJpdCkgb3IgJGZzIGhhcyBhIHVuaXQgKG5vdCBweCBvciByZW0sIGxpa2UgMS41ZW0pIG9yICQgaXMgMCwganVzdCBwcmludCB0aGUgdmFsdWVcbiAgQGlmIG5vdCAkZnMtdW5pdCBvciAkZnMtdW5pdCAhPSBcIlwiIGFuZCAkZnMtdW5pdCAhPSBcInB4XCIgYW5kICRmcy11bml0ICE9IFwicmVtXCIgb3IgJGZzID09IDAge1xuICAgIGZvbnQtc2l6ZTogI3skZnN9I3skcmZzLXN1ZmZpeH07XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFJlbW92ZSB1bml0IGZyb20gJGZzIGZvciBjYWxjdWxhdGlvbnNcbiAgICBAaWYgJGZzLXVuaXQgPT0gXCJweFwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgJGZzICogMCArIDEpO1xuICAgIH1cbiAgICBAZWxzZSBpZiAkZnMtdW5pdCA9PSBcInJlbVwiIHtcbiAgICAgICRmczogZGl2aWRlKCRmcywgZGl2aWRlKCRmcyAqIDAgKyAxLCAkcmZzLXJlbS12YWx1ZSkpO1xuICAgIH1cblxuICAgIC8vIFNldCBkZWZhdWx0IGZvbnQgc2l6ZVxuICAgICRyZnMtc3RhdGljOiBpZigkcmZzLWZvbnQtc2l6ZS11bml0ID09IHJlbSwgI3tkaXZpZGUoJGZzLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmc31weCk7XG5cbiAgICAvLyBPbmx5IGFkZCB0aGUgbWVkaWEgcXVlcnkgaWYgdGhlIGZvbnQgc2l6ZSBpcyBiaWdnZXIgdGhhbiB0aGUgbWluaW11bSBmb250IHNpemVcbiAgICBAaWYgJGZzIDw9ICRyZnMtYmFzZS1mb250LXNpemUgb3Igbm90ICRlbmFibGUtcmVzcG9uc2l2ZS1mb250LXNpemVzIHtcbiAgICAgIGZvbnQtc2l6ZTogI3skcmZzLXN0YXRpY30jeyRyZnMtc3VmZml4fTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZSBmb3IgJGZzXG4gICAgICAkZnMtbWluOiAkcmZzLWJhc2UtZm9udC1zaXplICsgZGl2aWRlKCRmcyAtICRyZnMtYmFzZS1mb250LXNpemUsICRyZnMtZmFjdG9yKTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIGRpZmZlcmVuY2UgYmV0d2VlbiAkZnMgYW5kIHRoZSBtaW5pbXVtIGZvbnQgc2l6ZVxuICAgICAgJGZzLWRpZmY6ICRmcyAtICRmcy1taW47XG5cbiAgICAgIC8vIEJhc2UgZm9udC1zaXplIGZvcm1hdHRpbmdcbiAgICAgICRtaW4td2lkdGg6IGlmKCRyZnMtZm9udC1zaXplLXVuaXQgPT0gcmVtLCAje2RpdmlkZSgkZnMtbWluLCAkcmZzLXJlbS12YWx1ZSl9cmVtLCAjeyRmcy1taW59cHgpO1xuXG4gICAgICAvLyBVc2UgYHZtaW5gIGlmIHR3by1kaW1lbnNpb25hbCBpcyBlbmFibGVkXG4gICAgICAkdmFyaWFibGUtdW5pdDogaWYoJHJmcy10d28tZGltZW5zaW9uYWwsIHZtaW4sIHZ3KTtcblxuICAgICAgLy8gQ2FsY3VsYXRlIHRoZSB2YXJpYWJsZSB3aWR0aCBiZXR3ZWVuIDAgYW5kICRyZnMtYnJlYWtwb2ludFxuICAgICAgJHZhcmlhYmxlLXdpZHRoOiAje2RpdmlkZSgkZnMtZGlmZiAqIDEwMCwgJHJmcy1icmVha3BvaW50KX0jeyR2YXJpYWJsZS11bml0fTtcblxuICAgICAgLy8gU2V0IHRoZSBjYWxjdWxhdGVkIGZvbnQtc2l6ZVxuICAgICAgJHJmcy1mbHVpZDogY2FsYygjeyRtaW4td2lkdGh9ICsgI3skdmFyaWFibGUtd2lkdGh9KSAjeyRyZnMtc3VmZml4fTtcblxuICAgICAgLy8gQnJlYWtwb2ludCBmb3JtYXR0aW5nXG4gICAgICAkbXEtdmFsdWU6IGlmKCRyZnMtYnJlYWtwb2ludC11bml0ID09IHB4LCAjeyRyZnMtYnJlYWtwb2ludH1weCwgI3tkaXZpZGUoJHJmcy1icmVha3BvaW50LCAkcmZzLXJlbS12YWx1ZSl9I3skcmZzLWJyZWFrcG9pbnQtdW5pdH0pO1xuXG4gICAgICBAaW5jbHVkZSBfcmZzLWRpc2FibGUtY2xhc3Mge1xuICAgICAgICBmb250LXNpemU6ICN7JHJmcy1zdGF0aWN9I3skcmZzLXN1ZmZpeH07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIF9yZnMtbWVkaWEtcXVlcnkoJG1xLXZhbHVlKSB7XG4gICAgICAgIEBpbmNsdWRlIF9yZnMtZW5hYmxlLWNsYXNzIHtcbiAgICAgICAgICBmb250LXNpemU6ICRyZnMtZmx1aWQ7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJbmNsdWRlIHNhZmFyaSBpZnJhbWUgcmVzaXplIGZpeCBpZiBuZWVkZWRcbiAgICAgICAgbWluLXdpZHRoOiBpZigkcmZzLXNhZmFyaS1pZnJhbWUtcmVzaXplLWJ1Zy1maXgsICgwICogMXZ3KSwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFRoZSBmb250LXNpemUgJiByZXNwb25zaXZlLWZvbnQtc2l6ZSBtaXhpbnMgdXNlIFJGUyB0byByZXNjYWxlIHRoZSBmb250IHNpemVcbkBtaXhpbiBmb250LXNpemUoJGZzLCAkaW1wb3J0YW50OiBmYWxzZSkge1xuICBAaW5jbHVkZSByZnMoJGZzLCAkaW1wb3J0YW50KTtcbn1cblxuQG1peGluIHJlc3BvbnNpdmUtZm9udC1zaXplKCRmcywgJGltcG9ydGFudDogZmFsc2UpIHtcbiAgQGluY2x1ZGUgcmZzKCRmcywgJGltcG9ydGFudCk7XG59XG4iLCJAdXNlIFwic2Fzczpjb2xvclwiO1xuQHVzZSBcInNhc3M6bGlzdFwiO1xuQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwic2FzczpzdHJpbmdcIjtcbi8vIFZhcmlhYmxlc1xuLy9cbi8vIFZhcmlhYmxlcyBzaG91bGQgZm9sbG93IHRoZSBgJGNvbXBvbmVudC1zdGF0ZS1wcm9wZXJ0eS1zaXplYCBmb3JtdWxhIGZvclxuLy8gY29uc2lzdGVudCBuYW1pbmcuIEV4OiAkbmF2LWxpbmstZGlzYWJsZWQtY29sb3IgYW5kICRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMuXG5cbi8vIENvbG9yIHN5c3RlbVxuXG4kd2hpdGU6ICAgICNmZmYgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICNmOGY5ZmEgIWRlZmF1bHQ7XG4kZ3JheS0yMDA6ICNlOWVjZWYgIWRlZmF1bHQ7XG4kZ3JheS0zMDA6ICNkZWUyZTYgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICNjZWQ0ZGEgIWRlZmF1bHQ7XG4kZ3JheS01MDA6ICNhZGI1YmQgIWRlZmF1bHQ7XG4kZ3JheS02MDA6ICM2Yzc1N2QgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICM0OTUwNTcgIWRlZmF1bHQ7XG4kZ3JheS04MDA6ICMzNDNhNDAgIWRlZmF1bHQ7XG4kZ3JheS05MDA6ICMyMTI1MjkgIWRlZmF1bHQ7XG4kYmxhY2s6ICAgICMwMDAgIWRlZmF1bHQ7XG5cbiRncmF5czogKCkgIWRlZmF1bHQ7XG4kZ3JheXM6IG1hcC5tZXJnZShcbiAgKFxuICAgIFwiMTAwXCI6ICRncmF5LTEwMCxcbiAgICBcIjIwMFwiOiAkZ3JheS0yMDAsXG4gICAgXCIzMDBcIjogJGdyYXktMzAwLFxuICAgIFwiNDAwXCI6ICRncmF5LTQwMCxcbiAgICBcIjUwMFwiOiAkZ3JheS01MDAsXG4gICAgXCI2MDBcIjogJGdyYXktNjAwLFxuICAgIFwiNzAwXCI6ICRncmF5LTcwMCxcbiAgICBcIjgwMFwiOiAkZ3JheS04MDAsXG4gICAgXCI5MDBcIjogJGdyYXktOTAwXG4gICksXG4gICRncmF5c1xuKTtcblxuJGJsdWU6ICAgICMwMDdiZmYgIWRlZmF1bHQ7XG4kaW5kaWdvOiAgIzY2MTBmMiAhZGVmYXVsdDtcbiRwdXJwbGU6ICAjNmY0MmMxICFkZWZhdWx0O1xuJHBpbms6ICAgICNlODNlOGMgIWRlZmF1bHQ7XG4kcmVkOiAgICAgI2RjMzU0NSAhZGVmYXVsdDtcbiRvcmFuZ2U6ICAjZmQ3ZTE0ICFkZWZhdWx0O1xuJHllbGxvdzogICNmZmMxMDcgIWRlZmF1bHQ7XG4kZ3JlZW46ICAgIzI4YTc0NSAhZGVmYXVsdDtcbiR0ZWFsOiAgICAjMjBjOTk3ICFkZWZhdWx0O1xuJGN5YW46ICAgICMxN2EyYjggIWRlZmF1bHQ7XG5cbiRjb2xvcnM6ICgpICFkZWZhdWx0O1xuJGNvbG9yczogbWFwLm1lcmdlKFxuICAoXG4gICAgXCJibHVlXCI6ICAgICAgICRibHVlLFxuICAgIFwiaW5kaWdvXCI6ICAgICAkaW5kaWdvLFxuICAgIFwicHVycGxlXCI6ICAgICAkcHVycGxlLFxuICAgIFwicGlua1wiOiAgICAgICAkcGluayxcbiAgICBcInJlZFwiOiAgICAgICAgJHJlZCxcbiAgICBcIm9yYW5nZVwiOiAgICAgJG9yYW5nZSxcbiAgICBcInllbGxvd1wiOiAgICAgJHllbGxvdyxcbiAgICBcImdyZWVuXCI6ICAgICAgJGdyZWVuLFxuICAgIFwidGVhbFwiOiAgICAgICAkdGVhbCxcbiAgICBcImN5YW5cIjogICAgICAgJGN5YW4sXG4gICAgXCJ3aGl0ZVwiOiAgICAgICR3aGl0ZSxcbiAgICBcImdyYXlcIjogICAgICAgJGdyYXktNjAwLFxuICAgIFwiZ3JheS1kYXJrXCI6ICAkZ3JheS04MDBcbiAgKSxcbiAgJGNvbG9yc1xuKTtcblxuJHByaW1hcnk6ICAgICAgICRibHVlICFkZWZhdWx0O1xuJHNlY29uZGFyeTogICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRzdWNjZXNzOiAgICAgICAkZ3JlZW4gIWRlZmF1bHQ7XG4kaW5mbzogICAgICAgICAgJGN5YW4gIWRlZmF1bHQ7XG4kd2FybmluZzogICAgICAgJHllbGxvdyAhZGVmYXVsdDtcbiRkYW5nZXI6ICAgICAgICAkcmVkICFkZWZhdWx0O1xuJGxpZ2h0OiAgICAgICAgICRncmF5LTEwMCAhZGVmYXVsdDtcbiRkYXJrOiAgICAgICAgICAkZ3JheS04MDAgIWRlZmF1bHQ7XG5cbiR0aGVtZS1jb2xvcnM6ICgpICFkZWZhdWx0O1xuJHRoZW1lLWNvbG9yczogbWFwLm1lcmdlKFxuICAoXG4gICAgXCJwcmltYXJ5XCI6ICAgICRwcmltYXJ5LFxuICAgIFwic2Vjb25kYXJ5XCI6ICAkc2Vjb25kYXJ5LFxuICAgIFwic3VjY2Vzc1wiOiAgICAkc3VjY2VzcyxcbiAgICBcImluZm9cIjogICAgICAgJGluZm8sXG4gICAgXCJ3YXJuaW5nXCI6ICAgICR3YXJuaW5nLFxuICAgIFwiZGFuZ2VyXCI6ICAgICAkZGFuZ2VyLFxuICAgIFwibGlnaHRcIjogICAgICAkbGlnaHQsXG4gICAgXCJkYXJrXCI6ICAgICAgICRkYXJrXG4gICksXG4gICR0aGVtZS1jb2xvcnNcbik7XG5cbi8vIFNldCBhIHNwZWNpZmljIGp1bXAgcG9pbnQgZm9yIHJlcXVlc3RpbmcgY29sb3IganVtcHNcbiR0aGVtZS1jb2xvci1pbnRlcnZhbDogICAgICA4JSAhZGVmYXVsdDtcblxuLy8gVGhlIHlpcSBsaWdodG5lc3MgdmFsdWUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gdGhlIGxpZ2h0bmVzcyBvZiBjb2xvciBjaGFuZ2VzIGZyb20gXCJkYXJrXCIgdG8gXCJsaWdodFwiLiBBY2NlcHRhYmxlIHZhbHVlcyBhcmUgYmV0d2VlbiAwIGFuZCAyNTUuXG4keWlxLWNvbnRyYXN0ZWQtdGhyZXNob2xkOiAgMTUwICFkZWZhdWx0O1xuXG4vLyBDdXN0b21pemUgdGhlIGxpZ2h0IGFuZCBkYXJrIHRleHQgY29sb3JzIGZvciB1c2UgaW4gb3VyIFlJUSBjb2xvciBjb250cmFzdCBmdW5jdGlvbi5cbiR5aXEtdGV4dC1kYXJrOiAgICAgICAgICAgICAkZ3JheS05MDAgIWRlZmF1bHQ7XG4keWlxLXRleHQtbGlnaHQ6ICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4vLyBDaGFyYWN0ZXJzIHdoaWNoIGFyZSBlc2NhcGVkIGJ5IHRoZSBlc2NhcGUtc3ZnIGZ1bmN0aW9uXG4kZXNjYXBlZC1jaGFyYWN0ZXJzOiAoXG4gIChcIjxcIiwgXCIlM2NcIiksXG4gIChcIj5cIiwgXCIlM2VcIiksXG4gIChcIiNcIiwgXCIlMjNcIiksXG4gIChcIihcIiwgXCIlMjhcIiksXG4gIChcIilcIiwgXCIlMjlcIiksXG4pICFkZWZhdWx0O1xuXG5cbi8vIE9wdGlvbnNcbi8vXG4vLyBRdWlja2x5IG1vZGlmeSBnbG9iYWwgc3R5bGluZyBieSBlbmFibGluZyBvciBkaXNhYmxpbmcgb3B0aW9uYWwgZmVhdHVyZXMuXG5cbiRlbmFibGUtY2FyZXQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1yb3VuZGVkOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXNoYWRvd3M6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLWdyYWRpZW50czogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXRyYW5zaXRpb25zOiAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeTogICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeTogICAgICAgICAgICAgICAgICAgIGZhbHNlICFkZWZhdWx0OyAvLyBEZXByZWNhdGVkLCBubyBsb25nZXIgYWZmZWN0cyBhbnkgY29tcGlsZWQgQ1NTXG4kZW5hYmxlLWdyaWQtY2xhc3NlczogICAgICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtcG9pbnRlci1jdXJzb3ItZm9yLWJ1dHRvbnM6ICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuJGVuYWJsZS1wcmludC1zdHlsZXM6ICAgICAgICAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7XG4kZW5hYmxlLXJlc3BvbnNpdmUtZm9udC1zaXplczogICAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7XG4kZW5hYmxlLXZhbGlkYXRpb24taWNvbnM6ICAgICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDtcbiRlbmFibGUtZGVwcmVjYXRpb24tbWVzc2FnZXM6ICAgICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0O1xuXG5cbi8vIFNwYWNpbmdcbi8vXG4vLyBDb250cm9sIHRoZSBkZWZhdWx0IHN0eWxpbmcgb2YgbW9zdCBCb290c3RyYXAgZWxlbWVudHMgYnkgbW9kaWZ5aW5nIHRoZXNlXG4vLyB2YXJpYWJsZXMuIE1vc3RseSBmb2N1c2VkIG9uIHNwYWNpbmcuXG4vLyBZb3UgY2FuIGFkZCBtb3JlIGVudHJpZXMgdG8gdGhlICRzcGFjZXJzIG1hcCwgc2hvdWxkIHlvdSBuZWVkIG1vcmUgdmFyaWF0aW9uLlxuXG4kc3BhY2VyOiAxcmVtICFkZWZhdWx0O1xuJHNwYWNlcnM6ICgpICFkZWZhdWx0O1xuJHNwYWNlcnM6IG1hcC5tZXJnZShcbiAgKFxuICAgIDA6IDAsXG4gICAgMTogKCRzcGFjZXIgKiAuMjUpLFxuICAgIDI6ICgkc3BhY2VyICogLjUpLFxuICAgIDM6ICRzcGFjZXIsXG4gICAgNDogKCRzcGFjZXIgKiAxLjUpLFxuICAgIDU6ICgkc3BhY2VyICogMylcbiAgKSxcbiAgJHNwYWNlcnNcbik7XG5cbi8vIFRoaXMgdmFyaWFibGUgYWZmZWN0cyB0aGUgYC5oLSpgIGFuZCBgLnctKmAgY2xhc3Nlcy5cbiRzaXplczogKCkgIWRlZmF1bHQ7XG4kc2l6ZXM6IG1hcC5tZXJnZShcbiAgKFxuICAgIDI1OiAyNSUsXG4gICAgNTA6IDUwJSxcbiAgICA3NTogNzUlLFxuICAgIDEwMDogMTAwJSxcbiAgICBhdXRvOiBhdXRvXG4gICksXG4gICRzaXplc1xuKTtcblxuXG4vLyBCb2R5XG4vL1xuLy8gU2V0dGluZ3MgZm9yIHRoZSBgPGJvZHk+YCBlbGVtZW50LlxuXG4kYm9keS1iZzogICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGJvZHktY29sb3I6ICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcblxuXG4vLyBMaW5rc1xuLy9cbi8vIFN0eWxlIGFuY2hvciBlbGVtZW50cy5cblxuJGxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJGxpbmstZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yLmFkanVzdCgkbGluay1jb2xvciwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICB1bmRlcmxpbmUgIWRlZmF1bHQ7XG4vLyBEYXJrZW4gcGVyY2VudGFnZSBmb3IgbGlua3Mgd2l0aCBgLnRleHQtKmAgY2xhc3MgKGUuZy4gYC50ZXh0LXN1Y2Nlc3NgKVxuJGVtcGhhc2l6ZWQtbGluay1ob3Zlci1kYXJrZW4tcGVyY2VudGFnZTogMTUlICFkZWZhdWx0O1xuXG4vLyBQYXJhZ3JhcGhzXG4vL1xuLy8gU3R5bGUgcCBlbGVtZW50LlxuXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206ICAgMXJlbSAhZGVmYXVsdDtcblxuXG4vLyBHcmlkIGJyZWFrcG9pbnRzXG4vL1xuLy8gRGVmaW5lIHRoZSBtaW5pbXVtIGRpbWVuc2lvbnMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsXG4vLyBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLCBmb3IgdXNlIGluIG1lZGlhIHF1ZXJpZXMuXG5cbiRncmlkLWJyZWFrcG9pbnRzOiAoXG4gIHhzOiAwLFxuICBzbTogNTc2cHgsXG4gIG1kOiA3NjhweCxcbiAgbGc6IDk5MnB4LFxuICB4bDogMTIwMHB4XG4pICFkZWZhdWx0O1xuXG5AaW5jbHVkZSBfYXNzZXJ0LWFzY2VuZGluZygkZ3JpZC1icmVha3BvaW50cywgXCIkZ3JpZC1icmVha3BvaW50c1wiKTtcbkBpbmNsdWRlIF9hc3NlcnQtc3RhcnRzLWF0LXplcm8oJGdyaWQtYnJlYWtwb2ludHMsIFwiJGdyaWQtYnJlYWtwb2ludHNcIik7XG5cblxuLy8gR3JpZCBjb250YWluZXJzXG4vL1xuLy8gRGVmaW5lIHRoZSBtYXhpbXVtIHdpZHRoIG9mIGAuY29udGFpbmVyYCBmb3IgZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuJGNvbnRhaW5lci1tYXgtd2lkdGhzOiAoXG4gIHNtOiA1NDBweCxcbiAgbWQ6IDcyMHB4LFxuICBsZzogOTYwcHgsXG4gIHhsOiAxMTQwcHhcbikgIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIF9hc3NlcnQtYXNjZW5kaW5nKCRjb250YWluZXItbWF4LXdpZHRocywgXCIkY29udGFpbmVyLW1heC13aWR0aHNcIik7XG5cblxuLy8gR3JpZCBjb2x1bW5zXG4vL1xuLy8gU2V0IHRoZSBudW1iZXIgb2YgY29sdW1ucyBhbmQgc3BlY2lmeSB0aGUgd2lkdGggb2YgdGhlIGd1dHRlcnMuXG5cbiRncmlkLWNvbHVtbnM6ICAgICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRncmlkLXJvdy1jb2x1bW5zOiAgICAgICAgICAgIDYgIWRlZmF1bHQ7XG5cblxuLy8gQ29tcG9uZW50c1xuLy9cbi8vIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS5cblxuJGxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuJGxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLWxnOiAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc206ICAgICAgICAgICAgLjJyZW0gIWRlZmF1bHQ7XG5cbiRyb3VuZGVkLXBpbGw6ICAgICAgICAgICAgICAgIDUwcmVtICFkZWZhdWx0O1xuXG4kYm94LXNoYWRvdy1zbTogICAgICAgICAgICAgICAwIC4xMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjVyZW0gMXJlbSByZ2JhKCRibGFjaywgLjE1KSAhZGVmYXVsdDtcbiRib3gtc2hhZG93LWxnOiAgICAgICAgICAgICAgIDAgMXJlbSAzcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNvbXBvbmVudC1hY3RpdmUtYmc6ICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuXG4kY2FyZXQtd2lkdGg6ICAgICAgICAgICAgICAgICAuM2VtICFkZWZhdWx0O1xuJGNhcmV0LXZlcnRpY2FsLWFsaWduOiAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuJGNhcmV0LXNwYWNpbmc6ICAgICAgICAgICAgICAgJGNhcmV0LXdpZHRoICogLjg1ICFkZWZhdWx0O1xuXG4kdHJhbnNpdGlvbi1iYXNlOiAgICAgICAgICAgICBhbGwgLjJzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuJHRyYW5zaXRpb24tZmFkZTogICAgICAgICAgICAgb3BhY2l0eSAuMTVzIGxpbmVhciAhZGVmYXVsdDtcbiR0cmFuc2l0aW9uLWNvbGxhcHNlOiAgICAgICAgIGhlaWdodCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG4kdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aDogICB3aWR0aCAuMzVzIGVhc2UgIWRlZmF1bHQ7XG5cbiRlbWJlZC1yZXNwb25zaXZlLWFzcGVjdC1yYXRpb3M6ICgpICFkZWZhdWx0O1xuJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvczogbGlzdC5qb2luKFxuICAoXG4gICAgKDIxIDkpLFxuICAgICgxNiA5KSxcbiAgICAoNCAzKSxcbiAgICAoMSAxKSxcbiAgKSxcbiAgJGVtYmVkLXJlc3BvbnNpdmUtYXNwZWN0LXJhdGlvc1xuKTtcblxuLy8gVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZSB2YWx1ZS1rZXl3b3JkLWNhc2VcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgICAgIC1hcHBsZS1zeXN0ZW0sIEJsaW5rTWFjU3lzdGVtRm9udCwgXCJTZWdvZSBVSVwiLCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgQXJpYWwsIFwiTm90byBTYW5zXCIsIFwiTGliZXJhdGlvbiBTYW5zXCIsIHNhbnMtc2VyaWYsIFwiQXBwbGUgQ29sb3IgRW1vamlcIiwgXCJTZWdvZSBVSSBFbW9qaVwiLCBcIlNlZ29lIFVJIFN5bWJvbFwiLCBcIk5vdG8gQ29sb3IgRW1vamlcIiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgICAgIFNGTW9uby1SZWd1bGFyLCBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcbi8vIHN0eWxlbGludC1lbmFibGUgdmFsdWUta2V5d29yZC1jYXNlXG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7IC8vIEFzc3VtZXMgdGhlIGJyb3dzZXIgZGVmYXVsdCwgdHlwaWNhbGx5IGAxNnB4YFxuJGZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRmb250LXNpemUtc206ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC44NzUgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1saWdodGVyOiAgICAgICAgIGxpZ2h0ZXIgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6ICAgICAgICAgICAzMDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogICAgICAgICAgICA3MDAgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZGVyOiAgICAgICAgICBib2xkZXIgIWRlZmF1bHQ7XG5cbiRmb250LXdlaWdodC1iYXNlOiAgICAgICAgICAgICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRoMS1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIuNSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIDIgIWRlZmF1bHQ7XG4kaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjc1ICFkZWZhdWx0O1xuJGg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGg1LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206ICAgICAgJHNwYWNlciAqIC41ICFkZWZhdWx0O1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgICAgIDEuMiAhZGVmYXVsdDtcbiRoZWFkaW5ncy1jb2xvcjogICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS1zaXplOiAgICAgICAgICAgICAgIDZyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTItc2l6ZTogICAgICAgICAgICAgICA1LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTMtc2l6ZTogICAgICAgICAgICAgICA0LjVyZW0gIWRlZmF1bHQ7XG4kZGlzcGxheTQtc2l6ZTogICAgICAgICAgICAgICAzLjVyZW0gIWRlZmF1bHQ7XG5cbiRkaXNwbGF5MS13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5Mi13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5My13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5NC13ZWlnaHQ6ICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiAgICAgICAgICRoZWFkaW5ncy1saW5lLWhlaWdodCAhZGVmYXVsdDtcblxuJGxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS4yNSAhZGVmYXVsdDtcbiRsZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcblxuJHNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgLjg3NWVtICFkZWZhdWx0O1xuXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG5cbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXNtYWxsLWZvbnQtc2l6ZTogICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAxLjI1ICFkZWZhdWx0O1xuXG4kaHItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJGhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJG1hcmstcGFkZGluZzogICAgICAgICAgICAgICAgLjJlbSAhZGVmYXVsdDtcblxuJGR0LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbiRuZXN0ZWQta2JkLWZvbnQtd2VpZ2h0OiAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4kbGlzdC1pbmxpbmUtcGFkZGluZzogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuJG1hcmstYmc6ICAgICAgICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcblxuJGhyLW1hcmdpbi15OiAgICAgICAgICAgICAgICAgJHNwYWNlciAhZGVmYXVsdDtcblxuXG4vLyBUYWJsZXNcbi8vXG4vLyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0YWJsZS1jZWxsLXBhZGRpbmctc206ICAgICAgIC4zcmVtICFkZWZhdWx0O1xuXG4kdGFibGUtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kdGFibGUtYWNjZW50LWJnOiAgICAgICAgICAgICByZ2JhKCRibGFjaywgLjA1KSAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICR0YWJsZS1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1ob3Zlci1iZzogICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcbiR0YWJsZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICR0YWJsZS1ob3Zlci1iZyAhZGVmYXVsdDtcblxuJHRhYmxlLWJvcmRlci13aWR0aDogICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICRib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiR0YWJsZS1oZWFkLWJnOiAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWNvbG9yOiAgICAgICAgICAgICRncmF5LTcwMCAhZGVmYXVsdDtcbiR0YWJsZS10aC1mb250LXdlaWdodDogICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiR0YWJsZS1kYXJrLWNvbG9yOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWJnOiAgICAgICAgICAgICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiR0YWJsZS1kYXJrLWFjY2VudC1iZzogICAgICAgIHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuJHRhYmxlLWRhcmstaG92ZXItY29sb3I6ICAgICAgJHRhYmxlLWRhcmstY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ob3Zlci1iZzogICAgICAgICByZ2JhKCR3aGl0ZSwgLjA3NSkgIWRlZmF1bHQ7XG4kdGFibGUtZGFyay1ib3JkZXItY29sb3I6ICAgICBjb2xvci5hZGp1c3QoJHRhYmxlLWRhcmstYmcsICRsaWdodG5lc3M6IDcuNSUpICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1vcmRlcjogICAgICAgICBvZGQgIWRlZmF1bHQ7XG5cbiR0YWJsZS1jYXB0aW9uLWNvbG9yOiAgICAgICAgICR0ZXh0LW11dGVkICFkZWZhdWx0O1xuXG4kdGFibGUtYmctbGV2ZWw6ICAgICAgICAgICAgICAtOSAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItbGV2ZWw6ICAgICAgICAgIC02ICFkZWZhdWx0O1xuXG5cbi8vIEJ1dHRvbnMgKyBGb3Jtc1xuLy9cbi8vIFNoYXJlZCB2YXJpYWJsZXMgdGhhdCBhcmUgcmVhc3NpZ25lZCB0byBgJGlucHV0LWAgYW5kIGAkYnRuLWAgc3BlY2lmaWMgdmFyaWFibGVzLlxuXG4kaW5wdXQtYnRuLXBhZGRpbmcteTogICAgICAgICAuMzc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1wYWRkaW5nLXg6ICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LWZhbWlseTogICAgICAgbnVsbCAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9udC1zaXplOiAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQ6ICAgICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4kaW5wdXQtYnRuLWZvY3VzLXdpZHRoOiAgICAgICAuMnJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tZm9jdXMtY29sb3I6ICAgICAgIHJnYmEoJGNvbXBvbmVudC1hY3RpdmUtYmcsIC4yNSkgIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLWZvY3VzLWJveC1zaGFkb3c6ICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRpbnB1dC1idG4tcGFkZGluZy15LXNtOiAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tcGFkZGluZy14LXNtOiAgICAgIC41cmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtc206ICAgICAgJGZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtc206ICAgICRsaW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1wYWRkaW5nLXktbGc6ICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kaW5wdXQtYnRuLXBhZGRpbmcteC1sZzogICAgICAxcmVtICFkZWZhdWx0O1xuJGlucHV0LWJ0bi1mb250LXNpemUtbGc6ICAgICAgJGZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGc6ICAgICRsaW5lLWhlaWdodC1sZyAhZGVmYXVsdDtcblxuJGlucHV0LWJ0bi1ib3JkZXItd2lkdGg6ICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuXG4vLyBCdXR0b25zXG4vL1xuLy8gRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQsIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tcGFkZGluZy15OiAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15ICFkZWZhdWx0O1xuJGJ0bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kYnRuLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemU6ICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGJ0bi13aGl0ZS1zcGFjZTogICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDsgLy8gU2V0IHRvIGBub3dyYXBgIHRvIHByZXZlbnQgdGV4dCB3cmFwcGluZ1xuXG4kYnRuLXBhZGRpbmcteS1zbTogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1zbSAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LXNtOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtc206ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LXNtOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LXNtICFkZWZhdWx0O1xuXG4kYnRuLXBhZGRpbmcteS1sZzogICAgICAgICAgICAkaW5wdXQtYnRuLXBhZGRpbmcteS1sZyAhZGVmYXVsdDtcbiRidG4tcGFkZGluZy14LWxnOiAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGJ0bi1mb250LXNpemUtbGc6ICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kYnRuLWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0LWxnICFkZWZhdWx0O1xuXG4kYnRuLWJvcmRlci13aWR0aDogICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRidG4tYm94LXNoYWRvdzogICAgICAgICAgICAgIGluc2V0IDAgMXB4IDAgcmdiYSgkd2hpdGUsIC4xNSksIDAgMXB4IDFweCByZ2JhKCRibGFjaywgLjA3NSkgIWRlZmF1bHQ7XG4kYnRuLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGJ0bi1mb2N1cy1ib3gtc2hhZG93OiAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGJ0bi1kaXNhYmxlZC1vcGFjaXR5OiAgICAgICAgLjY1ICFkZWZhdWx0O1xuJGJ0bi1hY3RpdmUtYm94LXNoYWRvdzogICAgICAgaW5zZXQgMCAzcHggNXB4IHJnYmEoJGJsYWNrLCAuMTI1KSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuXG4kYnRuLWJsb2NrLXNwYWNpbmcteTogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGc6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4kYnRuLXRyYW5zaXRpb246ICAgICAgICAgICAgICBjb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBiYWNrZ3JvdW5kLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cblxuLy8gRm9ybXNcblxuJGxhYmVsLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAkZm9udC13ZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRpbnB1dC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuXG4kaW5wdXQtcGFkZGluZy15LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kaW5wdXQtcGFkZGluZy14LXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1wYWRkaW5nLXgtc20gIWRlZmF1bHQ7XG4kaW5wdXQtZm9udC1zaXplLXNtOiAgICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb250LXNpemUtc20gIWRlZmF1bHQ7XG4kaW5wdXQtbGluZS1oZWlnaHQtc206ICAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1saW5lLWhlaWdodC1zbSAhZGVmYXVsdDtcblxuJGlucHV0LXBhZGRpbmcteS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy15LWxnICFkZWZhdWx0O1xuJGlucHV0LXBhZGRpbmcteC1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtc2l6ZS1sZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9udC1zaXplLWxnICFkZWZhdWx0O1xuJGlucHV0LWxpbmUtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICRpbnB1dC1idG4tbGluZS1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZGlzYWJsZWQtYmc6ICAgICAgICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5LTQwMCAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRpbnB1dC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICBpbnNldCAwIDFweCAxcHggcmdiYSgkYmxhY2ssIC4wNzUpICFkZWZhdWx0O1xuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sZzogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbTogICAgICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG5cbiRpbnB1dC1mb2N1cy1iZzogICAgICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYmcgIWRlZmF1bHQ7XG4kaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgY29sb3IuYWRqdXN0KCRjb21wb25lbnQtYWN0aXZlLWJnLCAkbGlnaHRuZXNzOiAyNSUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1mb2N1cy13aWR0aDogICAgICAgICAgICAgICAgICAgICAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgICRpbnB1dC1idG4tZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcblxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAgICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRpbnB1dC1wbGFpbnRleHQtY29sb3I6ICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcblxuJGlucHV0LWhlaWdodC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggKiAyICFkZWZhdWx0O1xuXG4kaW5wdXQtaGVpZ2h0LWlubmVyOiAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodCAqIDFlbSwgJGlucHV0LXBhZGRpbmcteSAqIDIpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1pbm5lci1oYWxmOiAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQgKiAuNWVtLCAkaW5wdXQtcGFkZGluZy15KSAhZGVmYXVsdDtcbiRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjogICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogLjI1ZW0sICRpbnB1dC1wYWRkaW5nLXkgKiAuNSkgIWRlZmF1bHQ7XG5cbiRpbnB1dC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICBhZGQoJGlucHV0LWxpbmUtaGVpZ2h0ICogMWVtLCBhZGQoJGlucHV0LXBhZGRpbmcteSAqIDIsICRpbnB1dC1oZWlnaHQtYm9yZGVyLCBmYWxzZSkpICFkZWZhdWx0O1xuJGlucHV0LWhlaWdodC1zbTogICAgICAgICAgICAgICAgICAgICAgIGFkZCgkaW5wdXQtbGluZS1oZWlnaHQtc20gKiAxZW0sIGFkZCgkaW5wdXQtcGFkZGluZy15LXNtICogMiwgJGlucHV0LWhlaWdodC1ib3JkZXIsIGZhbHNlKSkgIWRlZmF1bHQ7XG4kaW5wdXQtaGVpZ2h0LWxnOiAgICAgICAgICAgICAgICAgICAgICAgYWRkKCRpbnB1dC1saW5lLWhlaWdodC1sZyAqIDFlbSwgYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcgKiAyLCAkaW5wdXQtaGVpZ2h0LWJvcmRlciwgZmFsc2UpKSAhZGVmYXVsdDtcblxuJGlucHV0LXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvciAuMTVzIGVhc2UtaW4tb3V0LCBib3gtc2hhZG93IC4xNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbiRmb3JtLXRleHQtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG5cbiRmb3JtLWNoZWNrLWlucHV0LWd1dHRlcjogICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXk6ICAgICAgICAgICAgIC4zcmVtICFkZWZhdWx0O1xuJGZvcm0tY2hlY2staW5wdXQtbWFyZ2luLXg6ICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14OiAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRmb3JtLWNoZWNrLWlubGluZS1pbnB1dC1tYXJnaW4teDogICAgICAuMzEyNXJlbSAhZGVmYXVsdDtcblxuJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGg6ICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcblxuJGlucHV0LWdyb3VwLWFkZG9uLWNvbG9yOiAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uOiAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgLjE1cyBlYXNlLWluLW91dCwgYm9yZGVyLWNvbG9yIC4xNXMgZWFzZS1pbi1vdXQsIGJveC1zaGFkb3cgLjE1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWd1dHRlcjogICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLXNwYWNlci14OiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtY3Vyc29yOiAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplOiAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnOiAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemU6ICAgICAgNTAlIDUwJSAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm94LXNoYWRvdzogICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLWNvbG9yOiAkZ3JheS01MDAgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWxhYmVsLWNvbG9yOiAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZGlzYWJsZWQtYmc6ICAgICAgICAgICRpbnB1dC1kaXNhYmxlZC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1sYWJlbC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZzogIHJnYmEodGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpLCAuNSkgIWRlZmF1bHQ7XG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtYm94LXNoYWRvdzogICBudWxsICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c6ICAgICAkaW5wdXQtZm9jdXMtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItZm9jdXMtYm9yZGVyLWNvbG9yOiAgICRpbnB1dC1mb2N1cy1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWNvbG9yOiAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgY29sb3IuYWRqdXN0KCRjb21wb25lbnQtYWN0aXZlLWJnLCAkbGlnaHRuZXNzOiAzNSUpICFkZWZhdWx0O1xuJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1hY3RpdmUtYm94LXNoYWRvdzogICAgbnVsbCAhZGVmYXVsdDtcbiRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjogICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1ib3JkZXItcmFkaXVzOiAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24tY2hlY2tlZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzgnIGhlaWdodD0nOCcgdmlld0JveD0nMCAwIDggOCc+PHBhdGggZmlsbD0nI3skY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtY29sb3J9JyBkPSdNNi41NjQuNzVsLTMuNTkgMy42MTItMS41MzgtMS41NUwwIDQuMjZsMi45NzQgMi45OUw4IDIuMTkzeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZzogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1jb2xvcjogICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZTogICAgICAgICB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPSc0JyBoZWlnaHQ9JzQnIHZpZXdCb3g9JzAgMCA0IDQnPjxwYXRoIHN0cm9rZT0nI3skY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWNvbG9yfScgZD0nTTAgMmg0Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1ib3gtc2hhZG93OiAgIG51bGwgIWRlZmF1bHQ7XG4kY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjogJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItaW5kZXRlcm1pbmF0ZS1iZyAhZGVmYXVsdDtcblxuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAgNTAlICFkZWZhdWx0O1xuJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkOiAgICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMTInIGhlaWdodD0nMTInIHZpZXdCb3g9Jy00IC00IDggOCc+PGNpcmNsZSByPSczJyBmaWxsPScjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcn0nLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc3dpdGNoLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuNzUgIWRlZmF1bHQ7XG4kY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1czogICAgICAgICAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUgKiAuNSAhZGVmYXVsdDtcbiRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplOiAgICAgICAgICAgICAgICAgIHN1YnRyYWN0KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15OiAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDogICAgICAgICAgICRpbnB1dC1wYWRkaW5nLXggIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LWZhbWlseTogICAgICAgICAkaW5wdXQtZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mb250LXNpemU6ICAgICAgICAgICAkaW5wdXQtZm9udC1zaXplICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtaGVpZ2h0OiAgICAgICAgICAgICAgJGlucHV0LWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1wYWRkaW5nOiAgIDFyZW0gIWRlZmF1bHQ7IC8vIEV4dHJhIHBhZGRpbmcgdG8gYWNjb3VudCBmb3IgdGhlIHByZXNlbmNlIG9mIHRoZSBiYWNrZ3JvdW5kLWltYWdlIGJhc2VkIGluZGljYXRvclxuJGN1c3RvbS1zZWxlY3QtZm9udC13ZWlnaHQ6ICAgICAgICAgJGlucHV0LWZvbnQtd2VpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ6ICAgICAgICAgJGlucHV0LWxpbmUtaGVpZ2h0ICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtY29sb3I6ICAgICAgICAgICAgICAgJGlucHV0LWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmc6ICAgICAgICAgICAgICAgICAgJGlucHV0LWJnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmctc2l6ZTogICAgICAgICAgICAgOHB4IDEwcHggIWRlZmF1bHQ7IC8vIEluIHBpeGVscyBiZWNhdXNlIGltYWdlIGRpbWVuc2lvbnNcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvci1jb2xvcjogICAgICRncmF5LTgwMCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWluZGljYXRvcjogICAgICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzQnIGhlaWdodD0nNScgdmlld0JveD0nMCAwIDQgNSc+PHBhdGggZmlsbD0nI3skY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItY29sb3J9JyBkPSdNMiAwTDAgMmg0em0wIDVMMCAzaDR6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDogICAgICAgICAgZXNjYXBlLXN2ZygkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3IpIHJpZ2h0ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteCBjZW50ZXIgLyAkY3VzdG9tLXNlbGVjdC1iZy1zaXplIG5vLXJlcGVhdCAhZGVmYXVsdDsgLy8gVXNlZCBzbyB3ZSBjYW4gaGF2ZSBtdWx0aXBsZSBiYWNrZ3JvdW5kIGVsZW1lbnRzIChlLmcuLCBhcnJvdyBhbmQgZmVlZGJhY2sgaWNvbilcblxuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wYWRkaW5nLXJpZ2h0OiBhZGQoMWVtICogLjc1LCAoMiAqICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteSAqIC43NSkgKyAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBvc2l0aW9uOiAgICAgIGNlbnRlciByaWdodCAoJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmcpICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1zaXplOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyLWhhbGYgJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICFkZWZhdWx0O1xuXG4kY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGg6ICAgICAgICAkaW5wdXQtYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yOiAgICAgICAgJGlucHV0LWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdzogICAgICAgICAgaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm9yZGVyLWNvbG9yOiAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoOiAgICAgICAgICRpbnB1dC1mb2N1cy13aWR0aCAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWZvY3VzLWJveC1zaGFkb3c6ICAgIDAgMCAwICRjdXN0b20tc2VsZWN0LWZvY3VzLXdpZHRoICRpbnB1dC1idG4tZm9jdXMtY29sb3IgIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1zbTogICAgICAgICRpbnB1dC1wYWRkaW5nLXktc20gIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtc206ICAgICAgICAkaW5wdXQtcGFkZGluZy14LXNtICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLXNtOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1zbSAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1zbTogICAgICAgICAgICRpbnB1dC1oZWlnaHQtc20gIWRlZmF1bHQ7XG5cbiRjdXN0b20tc2VsZWN0LXBhZGRpbmcteS1sZzogICAgICAgICRpbnB1dC1wYWRkaW5nLXktbGcgIWRlZmF1bHQ7XG4kY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXgtbGc6ICAgICAgICAkaW5wdXQtcGFkZGluZy14LWxnICFkZWZhdWx0O1xuJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnOiAgICAgICAgJGlucHV0LWZvbnQtc2l6ZS1sZyAhZGVmYXVsdDtcbiRjdXN0b20tc2VsZWN0LWhlaWdodC1sZzogICAgICAgICAgICRpbnB1dC1oZWlnaHQtbGcgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdHJhY2std2lkdGg6ICAgICAgICAgIDEwMCUgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodDogICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yOiAgICAgICAgIHBvaW50ZXIgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJnOiAgICAgICAgICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXM6ICAxcmVtICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10cmFjay1ib3gtc2hhZG93OiAgICAgaW5zZXQgMCAuMjVyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG5cbiRjdXN0b20tcmFuZ2UtdGh1bWItd2lkdGg6ICAgICAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWhlaWdodDogICAgICAgICAgICAgICAgICAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1iZzogICAgICAgICAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjogICAgICAgICAgICAgICAgICAwICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdzogICAgICAgICAgICAgIDAgLjFyZW0gLjI1cmVtIHJnYmEoJGJsYWNrLCAuMSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c6ICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOiAgJGlucHV0LWZvY3VzLXdpZHRoICFkZWZhdWx0OyAvLyBGb3IgZm9jdXMgYm94IHNoYWRvdyBpc3N1ZSBpbiBJRS9FZGdlXG4kY3VzdG9tLXJhbmdlLXRodW1iLWFjdGl2ZS1iZzogICAgICAgICAgICAgICBjb2xvci5hZGp1c3QoJGNvbXBvbmVudC1hY3RpdmUtYmcsICRsaWdodG5lc3M6IDM1JSkgIWRlZmF1bHQ7XG4kY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAkZ3JheS01MDAgIWRlZmF1bHQ7XG5cbiRjdXN0b20tZmlsZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICRpbnB1dC1oZWlnaHQgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtaGVpZ2h0LWlubmVyOiAgICAgICAgICAkaW5wdXQtaGVpZ2h0LWlubmVyICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjogICAgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb2N1cy1ib3gtc2hhZG93OiAgICAgICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnOiAgICAgICAgICAgJGlucHV0LWRpc2FibGVkLWJnICFkZWZhdWx0O1xuXG4kY3VzdG9tLWZpbGUtcGFkZGluZy15OiAgICAgICAgICAgICAkaW5wdXQtcGFkZGluZy15ICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLXBhZGRpbmcteDogICAgICAgICAgICAgJGlucHV0LXBhZGRpbmcteCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1saW5lLWhlaWdodDogICAgICAgICAgICRpbnB1dC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LWZhbWlseTogICAgICAgICAgICRpbnB1dC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1mb250LXdlaWdodDogICAgICAgICAgICRpbnB1dC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1jb2xvcjogICAgICAgICAgICAgICAgICRpbnB1dC1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1iZzogICAgICAgICAgICAgICAgICAgICRpbnB1dC1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICRpbnB1dC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAkaW5wdXQtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGlucHV0LWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kY3VzdG9tLWZpbGUtYm94LXNoYWRvdzogICAgICAgICAgICAkaW5wdXQtYm94LXNoYWRvdyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tY29sb3I6ICAgICAgICAgICRjdXN0b20tZmlsZS1jb2xvciAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS1idXR0b24tYmc6ICAgICAgICAgICAgICRpbnB1dC1ncm91cC1hZGRvbi1iZyAhZGVmYXVsdDtcbiRjdXN0b20tZmlsZS10ZXh0OiAoXG4gIGVuOiBcIkJyb3dzZVwiXG4pICFkZWZhdWx0O1xuXG5cbi8vIEZvcm0gdmFsaWRhdGlvblxuXG4kZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wOiAgICAgICAgICAkZm9ybS10ZXh0LW1hcmdpbi10b3AgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay1mb250LXNpemU6ICAgICAgICAgICAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdmFsaWQtY29sb3I6ICAgICAgICAgdGhlbWUtY29sb3IoXCJzdWNjZXNzXCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvcjogICAgICAgdGhlbWUtY29sb3IoXCJkYW5nZXJcIikgIWRlZmF1bHQ7XG5cbiRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3I6ICAgICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi12YWxpZDogICAgICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nOCcgaGVpZ2h0PSc4JyB2aWV3Qm94PScwIDAgOCA4Jz48cGF0aCBmaWxsPScjeyRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWQtY29sb3J9JyBkPSdNMi4zIDYuNzNMLjYgNC41M2MtLjQtMS4wNC40Ni0xLjQgMS4xLS44bDEuMSAxLjQgMy40LTMuOGMuNi0uNjMgMS42LS4yNyAxLjIuN2wtNCA0LjZjLS40My41LS44LjQtMS4xLjF6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yOiAgJGZvcm0tZmVlZGJhY2staW52YWxpZC1jb2xvciAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLWljb24taW52YWxpZDogICAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEyJyBoZWlnaHQ9JzEyJyBmaWxsPSdub25lJyBzdHJva2U9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgdmlld0JveD0nMCAwIDEyIDEyJz48Y2lyY2xlIGN4PSc2JyBjeT0nNicgcj0nNC41Jy8+PHBhdGggc3Ryb2tlLWxpbmVqb2luPSdyb3VuZCcgZD0nTTUuOCAzLjZoLjRMNiA2LjV6Jy8+PGNpcmNsZSBjeD0nNicgY3k9JzguMicgcj0nLjYnIGZpbGw9JyN7JGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkLWNvbG9yfScgc3Ryb2tlPSdub25lJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogKCkgIWRlZmF1bHQ7XG4kZm9ybS12YWxpZGF0aW9uLXN0YXRlczogbWFwLm1lcmdlKFxuICAoXG4gICAgXCJ2YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yLFxuICAgICAgXCJpY29uXCI6ICRmb3JtLWZlZWRiYWNrLWljb24tdmFsaWRcbiAgICApLFxuICAgIFwiaW52YWxpZFwiOiAoXG4gICAgICBcImNvbG9yXCI6ICRmb3JtLWZlZWRiYWNrLWludmFsaWQtY29sb3IsXG4gICAgICBcImljb25cIjogJGZvcm0tZmVlZGJhY2staWNvbi1pbnZhbGlkXG4gICAgKSxcbiAgKSxcbiAgJGZvcm0tdmFsaWRhdGlvbi1zdGF0ZXNcbik7XG5cbi8vIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cblxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtc3RpY2t5OiAgICAgICAgICAgICAgICAgICAgIDEwMjAgIWRlZmF1bHQ7XG4kemluZGV4LWZpeGVkOiAgICAgICAgICAgICAgICAgICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZHJvcDogICAgICAgICAgICAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcblxuXG4vLyBOYXZzXG5cbiRuYXYtbGluay1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG5hdi1saW5rLXBhZGRpbmcteDogICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktMzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWJvcmRlci13aWR0aDogICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRuYXYtdGFicy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgJGdyYXktMjAwICRncmF5LTIwMCAkbmF2LXRhYnMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtbGluay1hY3RpdmUtYm9yZGVyLWNvbG9yOiAkZ3JheS0zMDAgJGdyYXktMzAwICRuYXYtdGFicy1saW5rLWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbmF2LWRpdmlkZXItY29sb3I6ICAgICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kbmF2LWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgICAgICAkc3BhY2VyICogLjUgIWRlZmF1bHQ7XG5cblxuLy8gTmF2YmFyXG5cbiRuYXZiYXItcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgKiAuNSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy14OiAgICAgICAgICAgICAgICAgICRzcGFjZXIgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWxpbmstcGFkZGluZy14OiAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAkZm9udC1zaXplLWxnICFkZWZhdWx0O1xuLy8gQ29tcHV0ZSB0aGUgbmF2YmFyLWJyYW5kIHBhZGRpbmcteSBzbyB0aGUgbmF2YmFyLWJyYW5kIHdpbGwgaGF2ZSB0aGUgc2FtZSBoZWlnaHQgYXMgbmF2YmFyLXRleHQgYW5kIG5hdi1saW5rXG4kbmF2LWxpbmstaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRuYXYtbGluay1wYWRkaW5nLXkgKiAyICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1oZWlnaHQ6ICAgICAgICAgICAgICAgJG5hdmJhci1icmFuZC1mb250LXNpemUgKiAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtcGFkZGluZy15OiAgICAgICAgICAgICgkbmF2LWxpbmstaGVpZ2h0IC0gJG5hdmJhci1icmFuZC1oZWlnaHQpICogLjUgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXk6ICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg6ICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlci1mb250LXNpemU6ICAgICAgICAgICRmb250LXNpemUtbGcgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1czogICAgICAkYnRuLWJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LXNjcm9sbC1tYXgtaGVpZ2h0OiAgICAgIDc1dmggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGFyay1jb2xvcjogICAgICAgICAgICAgICAgIHJnYmEoJHdoaXRlLCAuNSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICAgICAgICAgICByZ2JhKCR3aGl0ZSwgLjc1KSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I6ICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1kaXNhYmxlZC1jb2xvcjogICAgICAgIHJnYmEoJHdoaXRlLCAuMjUpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItaWNvbi1iZzogICAgICAgdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJyB3aWR0aD0nMzAnIGhlaWdodD0nMzAnIHZpZXdCb3g9JzAgMCAzMCAzMCc+PHBhdGggc3Ryb2tlPScjeyRuYXZiYXItZGFyay1jb2xvcn0nIHN0cm9rZS1saW5lY2FwPSdyb3VuZCcgc3Ryb2tlLW1pdGVybGltaXQ9JzEwJyBzdHJva2Utd2lkdGg9JzInIGQ9J000IDdoMjJNNCAxNWgyMk00IDIzaDIyJy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLXRvZ2dsZXItYm9yZGVyLWNvbG9yOiAgcmdiYSgkd2hpdGUsIC4xKSAhZGVmYXVsdDtcblxuJG5hdmJhci1saWdodC1jb2xvcjogICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtaG92ZXItY29sb3I6ICAgICAgICAgIHJnYmEoJGJsYWNrLCAuNykgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvcjogICAgICAgICByZ2JhKCRibGFjaywgLjkpICFkZWZhdWx0O1xuJG5hdmJhci1saWdodC1kaXNhYmxlZC1jb2xvcjogICAgICAgcmdiYSgkYmxhY2ssIC4zKSAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtdG9nZ2xlci1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzMwJyBoZWlnaHQ9JzMwJyB2aWV3Qm94PScwIDAgMzAgMzAnPjxwYXRoIHN0cm9rZT0nI3skbmF2YmFyLWxpZ2h0LWNvbG9yfScgc3Ryb2tlLWxpbmVjYXA9J3JvdW5kJyBzdHJva2UtbWl0ZXJsaW1pdD0nMTAnIHN0cm9rZS13aWR0aD0nMicgZD0nTTQgN2gyMk00IDE1aDIyTTQgMjNoMjInLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kbmF2YmFyLWxpZ2h0LXRvZ2dsZXItYm9yZGVyLWNvbG9yOiByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kbmF2YmFyLWxpZ2h0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWxpZ2h0LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItbGlnaHQtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGFyay1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy8gRHJvcGRvd25zXG4vL1xuLy8gRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4kZHJvcGRvd24tbWluLXdpZHRoOiAgICAgICAgICAgICAgICAxMHJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tcGFkZGluZy15OiAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRkcm9wZG93bi1zcGFjZXI6ICAgICAgICAgICAgICAgICAgIC4xMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMTUpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJGRyb3Bkb3duLWlubmVyLWJvcmRlci1yYWRpdXM6ICAgICAgc3VidHJhY3QoJGRyb3Bkb3duLWJvcmRlci1yYWRpdXMsICRkcm9wZG93bi1ib3JkZXItd2lkdGgpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgICAgJGdyYXktMjAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWRpdmlkZXItbWFyZ2luLXk6ICAgICAgICAgJG5hdi1kaXZpZGVyLW1hcmdpbi15ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgMCAuNXJlbSAxcmVtIHJnYmEoJGJsYWNrLCAuMTc1KSAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgJGdyYXktOTAwICFkZWZhdWx0O1xuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgY29sb3IuYWRqdXN0KCRncmF5LTkwMCwgJGxpZ2h0bmVzczogLTUlKSAhZGVmYXVsdDtcbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktNTAwICFkZWZhdWx0O1xuXG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXk6ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kZHJvcGRvd24taXRlbS1wYWRkaW5nLXg6ICAgICAgICAgICAxLjVyZW0gIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRkcm9wZG93bi1oZWFkZXItcGFkZGluZzogICAgICAgICAgICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14ICFkZWZhdWx0O1xuXG5cbi8vIFBhZ2luYXRpb25cblxuJHBhZ2luYXRpb24tcGFkZGluZy15OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXktc206ICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXgtc206ICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteS1sZzogICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLXBhZGRpbmcteC1sZzogICAgICAgICAgIDEuNXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgIDEuMjUgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZm9jdXMtYm94LXNoYWRvdzogICAgICAgJGlucHV0LWJ0bi1mb2N1cy1ib3gtc2hhZG93ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTogICAgICAgICAgMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgJGxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0yMDAgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAkZ3JheS0zMDAgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yOiAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlci1jb2xvcjogICRncmF5LTMwMCAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1zbTogICAgICAgJGJvcmRlci1yYWRpdXMtc20gIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXItcmFkaXVzLWxnOiAgICAgICAkYm9yZGVyLXJhZGl1cy1sZyAhZGVmYXVsdDtcblxuXG4vLyBDYXJkc1xuXG4kY2FyZC1zcGFjZXIteTogICAgICAgICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kY2FyZC1zcGFjZXIteDogICAgICAgICAgICAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGNhcmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgICAgc3VidHJhY3QoJGNhcmQtYm9yZGVyLXJhZGl1cywgJGNhcmQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRjYXJkLWNhcC1iZzogICAgICAgICAgICAgICAgICAgICAgIHJnYmEoJGJsYWNrLCAuMDMpICFkZWZhdWx0O1xuJGNhcmQtY2FwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgbnVsbCAhZGVmYXVsdDtcbiRjYXJkLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kY2FyZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGNhcmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2FyZC1pbWctb3ZlcmxheS1wYWRkaW5nOiAgICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG5cbi8vIFRvb2x0aXBzXG5cbiR0b29sdGlwLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICRmb250LXNpemUtc20gIWRlZmF1bHQ7XG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICR3aGl0ZSAhZGVmYXVsdDtcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICRibGFjayAhZGVmYXVsdDtcbiR0b29sdGlwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRvb2x0aXAtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgLjkgIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAuMjVyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAuNXJlbSAhZGVmYXVsdDtcbiR0b29sdGlwLW1hcmdpbjogICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgICAgICAgIC44cmVtICFkZWZhdWx0O1xuJHRvb2x0aXAtYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjRyZW0gIWRlZmF1bHQ7XG4kdG9vbHRpcC1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkdG9vbHRpcC1iZyAhZGVmYXVsdDtcblxuLy8gRm9ybSB0b29sdGlwcyBtdXN0IGNvbWUgYWZ0ZXIgcmVndWxhciB0b29sdGlwc1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXk6ICAgICAkdG9vbHRpcC1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kZm9ybS1mZWVkYmFjay10b29sdGlwLXBhZGRpbmcteDogICAgICR0b29sdGlwLXBhZGRpbmcteCAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplOiAgICAgJHRvb2x0aXAtZm9udC1zaXplICFkZWZhdWx0O1xuJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDogICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eTogICAgICAgJHRvb2x0aXAtb3BhY2l0eSAhZGVmYXVsdDtcbiRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuXG4vLyBQb3BvdmVyc1xuXG4kcG9wb3Zlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAkZm9udC1zaXplLXNtICFkZWZhdWx0O1xuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHBvcG92ZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAkYm9yZGVyLXdpZHRoICFkZWZhdWx0O1xuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4yKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1czogICAgICAgc3VidHJhY3QoJHBvcG92ZXItYm9yZGVyLXJhZGl1cywgJHBvcG92ZXItYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuMikgIWRlZmF1bHQ7XG5cbiRwb3BvdmVyLWhlYWRlci1iZzogICAgICAgICAgICAgICAgIGNvbG9yLmFkanVzdCgkcG9wb3Zlci1iZywgJGxpZ2h0bmVzczogLTMlKSAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICRoZWFkaW5ncy1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXk6ICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1ib2R5LWNvbG9yOiAgICAgICAgICAgICAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRwb3BvdmVyLWJvZHktcGFkZGluZy15OiAgICAgICAgICAgICRwb3BvdmVyLWhlYWRlci1wYWRkaW5nLXkgIWRlZmF1bHQ7XG4kcG9wb3Zlci1ib2R5LXBhZGRpbmcteDogICAgICAgICAgICAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14ICFkZWZhdWx0O1xuXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJHBvcG92ZXItYXJyb3ctaGVpZ2h0OiAgICAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAkcG9wb3Zlci1iZyAhZGVmYXVsdDtcblxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgY29sb3IuYWRqdXN0KCRwb3BvdmVyLWJvcmRlci1jb2xvciwgJGFscGhhOiAuMDUpICFkZWZhdWx0O1xuXG5cbi8vIFRvYXN0c1xuXG4kdG9hc3QtbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAzNTBweCAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC43NXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1wYWRkaW5nLXk6ICAgICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIC44NzVyZW0gIWRlZmF1bHQ7XG4kdG9hc3QtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJHRvYXN0LWJhY2tncm91bmQtY29sb3I6ICAgICAgICAgICAgcmdiYSgkd2hpdGUsIC44NSkgIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdG9hc3QtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAhZGVmYXVsdDtcbiR0b2FzdC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0b2FzdC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgICAgIDAgLjI1cmVtIC43NXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuXG4kdG9hc3QtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kdG9hc3QtaGVhZGVyLWJhY2tncm91bmQtY29sb3I6ICAgICByZ2JhKCR3aGl0ZSwgLjg1KSAhZGVmYXVsdDtcbiR0b2FzdC1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjA1KSAhZGVmYXVsdDtcblxuXG4vLyBCYWRnZXNcblxuJGJhZGdlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgNzUlICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtcGFkZGluZy15OiAgICAgICAgICAgICAgICAgICAuMjVlbSAhZGVmYXVsdDtcbiRiYWRnZS1wYWRkaW5nLXg6ICAgICAgICAgICAgICAgICAgIC40ZW0gIWRlZmF1bHQ7XG4kYmFkZ2UtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcblxuJGJhZGdlLXRyYW5zaXRpb246ICAgICAgICAgICAgICAgICAgJGJ0bi10cmFuc2l0aW9uICFkZWZhdWx0O1xuJGJhZGdlLWZvY3VzLXdpZHRoOiAgICAgICAgICAgICAgICAgJGlucHV0LWJ0bi1mb2N1cy13aWR0aCAhZGVmYXVsdDtcblxuJGJhZGdlLXBpbGwtcGFkZGluZy14OiAgICAgICAgICAgICAgLjZlbSAhZGVmYXVsdDtcbi8vIFVzZSBhIGhpZ2hlciB0aGFuIG5vcm1hbCB2YWx1ZSB0byBlbnN1cmUgY29tcGxldGVseSByb3VuZGVkIGVkZ2VzIHdoZW5cbi8vIGN1c3RvbWl6aW5nIHBhZGRpbmcgb3IgZm9udC1zaXplIG9uIGxhYmVscy5cbiRiYWRnZS1waWxsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgIDEwcmVtICFkZWZhdWx0O1xuXG5cbi8vIE1vZGFsc1xuXG4vLyBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbi8vIE1hcmdpbiBiZXR3ZWVuIGVsZW1lbnRzIGluIGZvb3RlciwgbXVzdCBiZSBsb3dlciB0aGFuIG9yIGVxdWFsIHRvIDIgKiAkbW9kYWwtaW5uZXItcGFkZGluZ1xuJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbjogICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luOiAgICAgICAgICAgICAgIC41cmVtICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cDogICAgICAgMS43NXJlbSAhZGVmYXVsdDtcblxuJG1vZGFsLXRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgJGxpbmUtaGVpZ2h0LWJhc2UgIWRlZmF1bHQ7XG5cbiRtb2RhbC1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgIG51bGwgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICByZ2JhKCRibGFjaywgLjIpICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoOiAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXM6ICAgICAgICRib3JkZXItcmFkaXVzLWxnICFkZWZhdWx0O1xuJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1czogc3VidHJhY3QoJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXJhZGl1cywgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLXdpZHRoKSAhZGVmYXVsdDtcbiRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHM6ICAgICAgIDAgLjI1cmVtIC41cmVtIHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kbW9kYWwtY29udGVudC1ib3gtc2hhZG93LXNtLXVwOiAgICAwIC41cmVtIDFyZW0gcmdiYSgkYmxhY2ssIC41KSAhZGVmYXVsdDtcblxuJG1vZGFsLWJhY2tkcm9wLWJnOiAgICAgICAgICAgICAgICAgJGJsYWNrICFkZWZhdWx0O1xuJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk6ICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgICAgICAkYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgICAgICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggIWRlZmF1bHQ7XG4kbW9kYWwtZm9vdGVyLWJvcmRlci13aWR0aDogICAgICAgICAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRtb2RhbC1oZWFkZXItcGFkZGluZy15OiAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kbW9kYWwtaGVhZGVyLXBhZGRpbmcteDogICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJG1vZGFsLWhlYWRlci1wYWRkaW5nOiAgICAgICAgICAgICAgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXkgJG1vZGFsLWhlYWRlci1wYWRkaW5nLXggIWRlZmF1bHQ7IC8vIEtlZXAgdGhpcyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcblxuJG1vZGFsLXhsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTE0MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgICAgICAgODAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICA1MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtZmFkZS10cmFuc2Zvcm06ICAgICAgICAgICAgICB0cmFuc2xhdGUoMCwgLTUwcHgpICFkZWZhdWx0O1xuJG1vZGFsLXNob3ctdHJhbnNmb3JtOiAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRtb2RhbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuM3MgZWFzZS1vdXQgIWRlZmF1bHQ7XG4kbW9kYWwtc2NhbGUtdHJhbnNmb3JtOiAgICAgICAgICAgICBzY2FsZSgxLjAyKSAhZGVmYXVsdDtcblxuXG4vLyBBbGVydHNcbi8vXG4vLyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmcteTogICAgICAgICAgICAgICAgICAgLjc1cmVtICFkZWZhdWx0O1xuJGFsZXJ0LXBhZGRpbmcteDogICAgICAgICAgICAgICAgICAgMS4yNXJlbSAhZGVmYXVsdDtcbiRhbGVydC1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cyAhZGVmYXVsdDtcbiRhbGVydC1saW5rLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcblxuJGFsZXJ0LWJnLWxldmVsOiAgICAgICAgICAgICAgICAgICAgLTEwICFkZWZhdWx0O1xuJGFsZXJ0LWJvcmRlci1sZXZlbDogICAgICAgICAgICAgICAgLTkgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3ItbGV2ZWw6ICAgICAgICAgICAgICAgICA2ICFkZWZhdWx0O1xuXG5cbi8vIFByb2dyZXNzIGJhcnNcblxuJHByb2dyZXNzLWhlaWdodDogICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1mb250LXNpemU6ICAgICAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAqIC43NSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRwcm9ncmVzcy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHByb2dyZXNzLWJveC1zaGFkb3c6ICAgICAgICAgICAgICAgaW5zZXQgMCAuMXJlbSAuMXJlbSByZ2JhKCRibGFjaywgLjEpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1jb2xvcjogICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgICAgICAgdGhlbWUtY29sb3IoXCJwcmltYXJ5XCIpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1hbmltYXRpb24tdGltaW5nOiAgICAgMXMgbGluZWFyIGluZmluaXRlICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci10cmFuc2l0aW9uOiAgICAgICAgICAgd2lkdGggLjZzIGVhc2UgIWRlZmF1bHQ7XG5cblxuLy8gTGlzdCBncm91cFxuXG4kbGlzdC1ncm91cC1jb2xvcjogICAgICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYmc6ICAgICAgICAgICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgcmdiYSgkYmxhY2ssIC4xMjUpICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteTogICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDogICAgICAgICAxLjI1cmVtICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICAgICAkZ3JheS0xMDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlci1jb2xvcjogICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjogICAgICAgICAkZ3JheS02MDAgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1kaXNhYmxlZC1iZzogICAgICAgICAgICAkbGlzdC1ncm91cC1iZyAhZGVmYXVsdDtcblxuJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yOiAgICAgICAgICAgJGdyYXktNzAwICFkZWZhdWx0O1xuJGxpc3QtZ3JvdXAtYWN0aW9uLWhvdmVyLWNvbG9yOiAgICAgJGxpc3QtZ3JvdXAtYWN0aW9uLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yOiAgICAkYm9keS1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc6ICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgIC4yNXJlbSAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgJGJvcmRlci13aWR0aCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICRncmF5LTMwMCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ib3gtc2hhZG93OiAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAuMDc1KSAhZGVmYXVsdDtcblxuXG4vLyBGaWd1cmVzXG5cbiRmaWd1cmUtY2FwdGlvbi1mb250LXNpemU6ICAgICAgICAgIDkwJSAhZGVmYXVsdDtcbiRmaWd1cmUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcblxuXG4vLyBCcmVhZGNydW1ic1xuXG4kYnJlYWRjcnVtYi1mb250LXNpemU6ICAgICAgICAgICAgICBudWxsICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXk6ICAgICAgICAgICAgICAuNzVyZW0gIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLXg6ICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nOiAgICAgICAgICAgLjVyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLW1hcmdpbi1ib3R0b206ICAgICAgICAgIDFyZW0gIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJnOiAgICAgICAgICAgICAgICAgICAgICRncmF5LTIwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXItY29sb3I6ICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICRncmF5LTYwMCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLWRpdmlkZXI6ICAgICAgICAgICAgICAgIHN0cmluZy5xdW90ZShcIi9cIikgIWRlZmF1bHQ7XG5cbiRicmVhZGNydW1iLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICRib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG5cbi8vIENhcm91c2VsXG5cbiRjYXJvdXNlbC1jb250cm9sLWNvbG9yOiAgICAgICAgICAgICAkd2hpdGUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtaG92ZXItb3BhY2l0eTogICAgIC45ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtdHJhbnNpdGlvbjogICAgICAgIG9wYWNpdHkgLjE1cyBlYXNlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtaW5kaWNhdG9yLXdpZHRoOiAgICAgICAgICAgMzBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3ItaGVpZ2h0OiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWhpdC1hcmVhLWhlaWdodDogMTBweCAhZGVmYXVsdDtcbiRjYXJvdXNlbC1pbmRpY2F0b3Itc3BhY2VyOiAgICAgICAgICAzcHggIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWFjdGl2ZS1iZzogICAgICAgJHdoaXRlICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci10cmFuc2l0aW9uOiAgICAgIG9wYWNpdHkgLjZzIGVhc2UgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLXdpZHRoOiAgICAgICAgICAgICA3MCUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgJHdoaXRlICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1pY29uLXdpZHRoOiAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtcHJldi1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J001LjI1IDBsLTQgNCA0IDQgMS41LTEuNUw0LjI1IDRsMi41LTIuNUw1LjI1IDB6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtbmV4dC1pY29uLWJnOiAgICAgIHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZycgZmlsbD0nI3skY2Fyb3VzZWwtY29udHJvbC1jb2xvcn0nIHdpZHRoPSc4JyBoZWlnaHQ9JzgnIHZpZXdCb3g9JzAgMCA4IDgnPjxwYXRoIGQ9J00yLjc1IDBsLTEuNSAxLjVMMy43NSA0bC0yLjUgMi41TDIuNzUgOGw0LTQtNC00eicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb246ICAgICAgIC42cyAhZGVmYXVsdDtcbiRjYXJvdXNlbC10cmFuc2l0aW9uOiAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gJGNhcm91c2VsLXRyYW5zaXRpb24tZHVyYXRpb24gZWFzZS1pbi1vdXQgIWRlZmF1bHQ7IC8vIERlZmluZSB0cmFuc2Zvcm0gdHJhbnNpdGlvbiBmaXJzdCBpZiB1c2luZyBtdWx0aXBsZSB0cmFuc2l0aW9ucyAoZS5nLiwgYHRyYW5zZm9ybSAycyBlYXNlLCBvcGFjaXR5IC41cyBlYXNlLW91dGApXG5cblxuLy8gU3Bpbm5lcnNcblxuJHNwaW5uZXItd2lkdGg6ICAgICAgICAgICAycmVtICFkZWZhdWx0O1xuJHNwaW5uZXItaGVpZ2h0OiAgICAgICAgICAkc3Bpbm5lci13aWR0aCAhZGVmYXVsdDtcbiRzcGlubmVyLXZlcnRpY2FsLWFsaWduOiAgLS4xMjVlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWJvcmRlci13aWR0aDogICAgLjI1ZW0gIWRlZmF1bHQ7XG5cbiRzcGlubmVyLXdpZHRoLXNtOiAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRzcGlubmVyLWhlaWdodC1zbTogICAgICAgJHNwaW5uZXItd2lkdGgtc20gIWRlZmF1bHQ7XG4kc3Bpbm5lci1ib3JkZXItd2lkdGgtc206IC4yZW0gIWRlZmF1bHQ7XG5cblxuLy8gQ2xvc2VcblxuJGNsb3NlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgJGZvbnQtc2l6ZS1iYXNlICogMS41ICFkZWZhdWx0O1xuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAkYmxhY2sgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAwIDFweCAwICR3aGl0ZSAhZGVmYXVsdDtcblxuXG4vLyBDb2RlXG5cbiRjb2RlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgIDg3LjUlICFkZWZhdWx0O1xuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJHBpbmsgIWRlZmF1bHQ7XG5cbiRwcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LTkwMCAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vIFV0aWxpdGllc1xuXG4kZGlzcGxheXM6IG5vbmUsIGlubGluZSwgaW5saW5lLWJsb2NrLCBibG9jaywgdGFibGUsIHRhYmxlLXJvdywgdGFibGUtY2VsbCwgZmxleCwgaW5saW5lLWZsZXggIWRlZmF1bHQ7XG4kb3ZlcmZsb3dzOiBhdXRvLCBoaWRkZW4gIWRlZmF1bHQ7XG4kcG9zaXRpb25zOiBzdGF0aWMsIHJlbGF0aXZlLCBhYnNvbHV0ZSwgZml4ZWQsIHN0aWNreSAhZGVmYXVsdDtcbiR1c2VyLXNlbGVjdHM6IGFsbCwgYXV0bywgbm9uZSAhZGVmYXVsdDtcblxuXG4vLyBQcmludGluZ1xuXG4kcHJpbnQtcGFnZS1zaXplOiAgICAgICAgICAgICAgICAgICBhMyAhZGVmYXVsdDtcbiRwcmludC1ib2R5LW1pbi13aWR0aDogICAgICAgICAgICAgIG1hcC5nZXQoJGdyaWQtYnJlYWtwb2ludHMsIFwibGdcIikgIWRlZmF1bHQ7XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1saXN0LWNvbW1hLW5ld2xpbmUtYWZ0ZXJcblxuLy9cbi8vIEhlYWRpbmdzXG4vL1xuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2LFxuLmgxLCAuaDIsIC5oMywgLmg0LCAuaDUsIC5oNiB7XG4gIG1hcmdpbi1ib3R0b206ICRoZWFkaW5ncy1tYXJnaW4tYm90dG9tO1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xufVxuXG5oMSwgLmgxIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMS1mb250LXNpemUpOyB9XG5oMiwgLmgyIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMi1mb250LXNpemUpOyB9XG5oMywgLmgzIHsgQGluY2x1ZGUgZm9udC1zaXplKCRoMy1mb250LXNpemUpOyB9XG5oNCwgLmg0IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNC1mb250LXNpemUpOyB9XG5oNSwgLmg1IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNS1mb250LXNpemUpOyB9XG5oNiwgLmg2IHsgQGluY2x1ZGUgZm9udC1zaXplKCRoNi1mb250LXNpemUpOyB9XG5cbi5sZWFkIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRsZWFkLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkbGVhZC1mb250LXdlaWdodDtcbn1cblxuLy8gVHlwZSBkaXNwbGF5IGNsYXNzZXNcbi5kaXNwbGF5LTEge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXkxLXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXkxLXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuLmRpc3BsYXktMiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZGlzcGxheTItc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkZGlzcGxheTItd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGRpc3BsYXktbGluZS1oZWlnaHQ7XG59XG4uZGlzcGxheS0zIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRkaXNwbGF5My1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRkaXNwbGF5My13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZGlzcGxheS1saW5lLWhlaWdodDtcbn1cbi5kaXNwbGF5LTQge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGRpc3BsYXk0LXNpemUpO1xuICBmb250LXdlaWdodDogJGRpc3BsYXk0LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRkaXNwbGF5LWxpbmUtaGVpZ2h0O1xufVxuXG5cbi8vXG4vLyBIb3Jpem9udGFsIHJ1bGVzXG4vL1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRoci1tYXJnaW4teTtcbiAgbWFyZ2luLWJvdHRvbTogJGhyLW1hcmdpbi15O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6ICRoci1ib3JkZXItd2lkdGggc29saWQgJGhyLWJvcmRlci1jb2xvcjtcbn1cblxuXG4vL1xuLy8gRW1waGFzaXNcbi8vXG5cbnNtYWxsLFxuLnNtYWxsIHtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRzbWFsbC1mb250LXNpemUpO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbn1cblxubWFyayxcbi5tYXJrIHtcbiAgcGFkZGluZzogJG1hcmstcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1hcmstYmc7XG59XG5cblxuLy9cbi8vIExpc3RzXG4vL1xuXG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQoKTtcbn1cbi5saXN0LWlubGluZS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbGlzdC1pbmxpbmUtcGFkZGluZztcbiAgfVxufVxuXG5cbi8vXG4vLyBNaXNjXG4vL1xuXG4vLyBCdWlsZHMgb24gYGFiYnJgXG4uaW5pdGlhbGlzbSB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSg5MCUpO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuLmJsb2NrcXVvdGUge1xuICBtYXJnaW4tYm90dG9tOiAkc3BhY2VyO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJsb2NrcXVvdGUtZm9udC1zaXplKTtcbn1cblxuLmJsb2NrcXVvdGUtZm9vdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkYmxvY2txdW90ZS1zbWFsbC1mb250LXNpemUpO1xuICBjb2xvcjogJGJsb2NrcXVvdGUtc21hbGwtY29sb3I7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcMjAxNFxcMDBBMFwiOyAvLyBlbSBkYXNoLCBuYnNwXG4gIH1cbn1cbiIsIi8vIExpc3RzXG5cbi8vIFVuc3R5bGVkIGtlZXBzIGxpc3QgaXRlbXMgYmxvY2sgbGV2ZWwsIGp1c3QgcmVtb3ZlcyBkZWZhdWx0IGJyb3dzZXIgcGFkZGluZyBhbmQgbGlzdC1zdHlsZVxuQG1peGluIGxpc3QtdW5zdHlsZWQoKSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiIsIlxuLy8gRG8gbm90IGVkaXQgZGlyZWN0bHksIHRoaXMgZmlsZSB3YXMgYXV0by1nZW5lcmF0ZWQuXG5cbiRnbC1ib3JkZXItcmFkaXVzLWZ1bGw6IDk5OTlweDtcbiRnbC1jb2xvci1hbHBoYS0wOiByZ2JhKDAsIDAsIDAsIDApO1xuJGdsLWNvbG9yLWFscGhhLWRhcmstMjogcmdiYSg1LCA1LCA2LCAwLjAyKTtcbiRnbC1jb2xvci1hbHBoYS1kYXJrLTQ6IHJnYmEoNSwgNSwgNiwgMC4wNCk7XG4kZ2wtY29sb3ItYWxwaGEtZGFyay02OiByZ2JhKDUsIDUsIDYsIDAuMDYpO1xuJGdsLWNvbG9yLWFscGhhLWRhcmstODogcmdiYSg1LCA1LCA2LCAwLjA4KTtcbiRnbC1jb2xvci1hbHBoYS1kYXJrLTE2OiByZ2JhKDUsIDUsIDYsIDAuMTYpO1xuJGdsLWNvbG9yLWFscGhhLWRhcmstMjQ6IHJnYmEoNSwgNSwgNiwgMC4yNCk7XG4kZ2wtY29sb3ItYWxwaGEtZGFyay00MDogcmdiYSg1LCA1LCA2LCAwLjQpO1xuJGdsLWNvbG9yLWFscGhhLWxpZ2h0LTI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XG4kZ2wtY29sb3ItYWxwaGEtbGlnaHQtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiRnbC1jb2xvci1hbHBoYS1saWdodC02OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuJGdsLWNvbG9yLWFscGhhLWxpZ2h0LTg6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4kZ2wtY29sb3ItYWxwaGEtbGlnaHQtMTY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7XG4kZ2wtY29sb3ItYWxwaGEtbGlnaHQtMjQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XG4kZ2wtY29sb3ItYWxwaGEtbGlnaHQtMzY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNik7XG4kZ2wtY29sb3ItYWxwaGEtbGlnaHQtNDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiRnbC1jb2xvci1ibHVlLTUwOiAjZThmMmZkO1xuJGdsLWNvbG9yLWJsdWUtMTAwOiAjYzhlMGY5O1xuJGdsLWNvbG9yLWJsdWUtMjAwOiAjOWRjOGYyO1xuJGdsLWNvbG9yLWJsdWUtMzAwOiAjNjRhN2U5O1xuJGdsLWNvbG9yLWJsdWUtNDAwOiAjM2Y4ZWRkO1xuJGdsLWNvbG9yLWJsdWUtNTAwOiAjMWY3M2NhO1xuJGdsLWNvbG9yLWJsdWUtNjAwOiAjMjU2NmI1O1xuJGdsLWNvbG9yLWJsdWUtNzAwOiAjMjc1OTlmO1xuJGdsLWNvbG9yLWJsdWUtODAwOiAjMjU0NTgxO1xuJGdsLWNvbG9yLWJsdWUtOTAwOiAjMWYzMTY2O1xuJGdsLWNvbG9yLWJsdWUtOTUwOiAjMWQyMTUzO1xuJGdsLWNvbG9yLWJyYW5kLXdoaXRlOiAjZmZmO1xuJGdsLWNvbG9yLWJyYW5kLWNoYXJjb2FsOiAjMTcxMzIxO1xuJGdsLWNvbG9yLWJyYW5kLW9yYW5nZS0wMWc6ICNmZmQxYmY7XG4kZ2wtY29sb3ItYnJhbmQtb3JhbmdlLTAxcDogI2ZjYTMyNjtcbiRnbC1jb2xvci1icmFuZC1vcmFuZ2UtMDJwOiAjZmM2ZDI2O1xuJGdsLWNvbG9yLWJyYW5kLW9yYW5nZS0wM3A6ICNlMjQzMjk7XG4kZ2wtY29sb3ItYnJhbmQtcHVycGxlLTAxZzogI2NlYjNlZjtcbiRnbC1jb2xvci1icmFuZC1wdXJwbGUtMDFwOiAjYTk4OWY1O1xuJGdsLWNvbG9yLWJyYW5kLXB1cnBsZS0wMnA6ICM3NzU5YzI7XG4kZ2wtY29sb3ItYnJhbmQtZ3JheS0wMTogI2QxZDBkMztcbiRnbC1jb2xvci1icmFuZC1ncmF5LTAyOiAjYTJhMWE2O1xuJGdsLWNvbG9yLWJyYW5kLWdyYXktMDM6ICM3NDcxN2E7XG4kZ2wtY29sb3ItYnJhbmQtZ3JheS0wNDogIzQ1NDI0ZDtcbiRnbC1jb2xvci1icmFuZC1ncmF5LTA1OiAjMmIyODM4O1xuJGdsLWNvbG9yLWJyYW5kLXBpbmstMDFnOiAjZmZiOWM5O1xuJGdsLWNvbG9yLWRhdGEtZ3JlZW4tNTA6ICNkZGZhYjc7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi0xMDA6ICNjNmVkOTQ7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi0yMDA6ICNiMGQ5N2I7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi0zMDA6ICM5NGMyNWU7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi00MDA6ICM4MWFjNDE7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi01MDA6ICM2MTkwMjU7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi02MDA6ICM0ZTdmMGU7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi03MDA6ICMzNjY4MDA7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi04MDA6ICMyNzU2MDA7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi05MDA6ICMxYTQ1MDA7XG4kZ2wtY29sb3ItZGF0YS1ncmVlbi05NTA6ICMxMzNhMDM7XG4kZ2wtY29sb3ItZGF0YS1hcXVhLTUwOiAjYjVmZWZkO1xuJGdsLWNvbG9yLWRhdGEtYXF1YS0xMDA6ICM5M2YyZWY7XG4kZ2wtY29sb3ItZGF0YS1hcXVhLTIwMDogIzVlZGVlMztcbiRnbC1jb2xvci1kYXRhLWFxdWEtMzAwOiAjMzJjNWQyO1xuJGdsLWNvbG9yLWRhdGEtYXF1YS00MDA6ICMwMGFjYzQ7XG4kZ2wtY29sb3ItZGF0YS1hcXVhLTUwMDogIzAwOTBiMTtcbiRnbC1jb2xvci1kYXRhLWFxdWEtNjAwOiAjMDA3YjliO1xuJGdsLWNvbG9yLWRhdGEtYXF1YS03MDA6ICMwMDYzODE7XG4kZ2wtY29sb3ItZGF0YS1hcXVhLTgwMDogIzAwNTE2YztcbiRnbC1jb2xvci1kYXRhLWFxdWEtOTAwOiAjMDA0MDU5O1xuJGdsLWNvbG9yLWRhdGEtYXF1YS05NTA6ICMwMDM0NGI7XG4kZ2wtY29sb3ItZGF0YS1ibHVlLTUwOiAjZTllYmZmO1xuJGdsLWNvbG9yLWRhdGEtYmx1ZS0xMDA6ICNkMmRjZmY7XG4kZ2wtY29sb3ItZGF0YS1ibHVlLTIwMDogI2I3YzZmZjtcbiRnbC1jb2xvci1kYXRhLWJsdWUtMzAwOiAjOTdhY2ZmO1xuJGdsLWNvbG9yLWRhdGEtYmx1ZS00MDA6ICM3OTkyZjU7XG4kZ2wtY29sb3ItZGF0YS1ibHVlLTUwMDogIzYxN2FlMjtcbiRnbC1jb2xvci1kYXRhLWJsdWUtNjAwOiAjNGU2NWNkO1xuJGdsLWNvbG9yLWRhdGEtYmx1ZS03MDA6ICMzZjUxYWU7XG4kZ2wtY29sb3ItZGF0YS1ibHVlLTgwMDogIzM3NDI5MTtcbiRnbC1jb2xvci1kYXRhLWJsdWUtOTAwOiAjMzAzNDcwO1xuJGdsLWNvbG9yLWRhdGEtYmx1ZS05NTA6ICMyYTJiNTk7XG4kZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTUwOiAjZmZlM2ViO1xuJGdsLWNvbG9yLWRhdGEtbWFnZW50YS0xMDA6ICNmZmNjZGI7XG4kZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTIwMDogI2ZjYWNjNTtcbiRnbC1jb2xvci1kYXRhLW1hZ2VudGEtMzAwOiAjZjg4YWFmO1xuJGdsLWNvbG9yLWRhdGEtbWFnZW50YS00MDA6ICNlODZlOWE7XG4kZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTUwMDogI2NmNGQ4MTtcbiRnbC1jb2xvci1kYXRhLW1hZ2VudGEtNjAwOiAjYjkzZDcxO1xuJGdsLWNvbG9yLWRhdGEtbWFnZW50YS03MDA6ICM5YTJlNWQ7XG4kZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTgwMDogIzdjMjE0ZjtcbiRnbC1jb2xvci1kYXRhLW1hZ2VudGEtOTAwOiAjNjYxZTNhO1xuJGdsLWNvbG9yLWRhdGEtbWFnZW50YS05NTA6ICM1NDFkMzE7XG4kZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNTA6ICNmYWU4ZDE7XG4kZ2wtY29sb3ItZGF0YS1vcmFuZ2UtMTAwOiAjZjVkNmIzO1xuJGdsLWNvbG9yLWRhdGEtb3JhbmdlLTIwMDogI2VlYmQ4YztcbiRnbC1jb2xvci1kYXRhLW9yYW5nZS0zMDA6ICNlOTliNjA7XG4kZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNDAwOiAjZTA3ZTQxO1xuJGdsLWNvbG9yLWRhdGEtb3JhbmdlLTUwMDogI2M5NWQyZTtcbiRnbC1jb2xvci1kYXRhLW9yYW5nZS02MDA6ICNiMTRmMTg7XG4kZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNzAwOiAjOTI0MzBhO1xuJGdsLWNvbG9yLWRhdGEtb3JhbmdlLTgwMDogIzZmMzUwMDtcbiRnbC1jb2xvci1kYXRhLW9yYW5nZS05MDA6ICM1ZTJmMDU7XG4kZ2wtY29sb3ItZGF0YS1vcmFuZ2UtOTUwOiAjNGIyNzA3O1xuJGdsLWNvbG9yLWdyZWVuLTUwOiAjZTZmNWVhO1xuJGdsLWNvbG9yLWdyZWVuLTEwMDogI2JlZTZkMDtcbiRnbC1jb2xvci1ncmVlbi0yMDA6ICM4NGQ0YjY7XG4kZ2wtY29sb3ItZ3JlZW4tMzAwOiAjMzViNTk3O1xuJGdsLWNvbG9yLWdyZWVuLTQwMDogIzEyOWM4NDtcbiRnbC1jb2xvci1ncmVlbi01MDA6ICMwZDgwNzA7XG4kZ2wtY29sb3ItZ3JlZW4tNjAwOiAjMGM3MjY1O1xuJGdsLWNvbG9yLWdyZWVuLTcwMDogIzBiNjQ1YTtcbiRnbC1jb2xvci1ncmVlbi04MDA6ICMwNzUwNDg7XG4kZ2wtY29sb3ItZ3JlZW4tOTAwOiAjMDAzYzM2O1xuJGdsLWNvbG9yLWdyZWVuLTk1MDogIzAwMmMyNjtcbiRnbC1jb2xvci1uZXV0cmFsLTA6ICNmZmY7XG4kZ2wtY29sb3ItbmV1dHJhbC0xMDogI2Y3ZjdmNTtcbiRnbC1jb2xvci1uZXV0cmFsLTUwOiAjZWNlYmVhO1xuJGdsLWNvbG9yLW5ldXRyYWwtMTAwOiAjZGNkYmQ5O1xuJGdsLWNvbG9yLW5ldXRyYWwtMjAwOiAjYzFiZmJlO1xuJGdsLWNvbG9yLW5ldXRyYWwtMzAwOiAjYTVhM2EzO1xuJGdsLWNvbG9yLW5ldXRyYWwtNDAwOiAjOGE4ODg4O1xuJGdsLWNvbG9yLW5ldXRyYWwtNTAwOiAjNzQ3MjczO1xuJGdsLWNvbG9yLW5ldXRyYWwtNjAwOiAjNjQ2MTYzO1xuJGdsLWNvbG9yLW5ldXRyYWwtNzAwOiAjNGQ0YjRlO1xuJGdsLWNvbG9yLW5ldXRyYWwtODAwOiAjM2EzODNkO1xuJGdsLWNvbG9yLW5ldXRyYWwtOTAwOiAjMjgyNzJkO1xuJGdsLWNvbG9yLW5ldXRyYWwtOTUwOiAjMTgxNzFkO1xuJGdsLWNvbG9yLW5ldXRyYWwtMTAwMDogIzA1MDQwODtcbiRnbC1jb2xvci1vcmFuZ2UtNTA6ICNmZGYwZDU7XG4kZ2wtY29sb3Itb3JhbmdlLTEwMDogI2ZhZGE5YztcbiRnbC1jb2xvci1vcmFuZ2UtMjAwOiAjZjdiOTUxO1xuJGdsLWNvbG9yLW9yYW5nZS0zMDA6ICNmYjgwMTc7XG4kZ2wtY29sb3Itb3JhbmdlLTQwMDogI2U5NWYyMTtcbiRnbC1jb2xvci1vcmFuZ2UtNTAwOiAjYzc0ODE2O1xuJGdsLWNvbG9yLW9yYW5nZS02MDA6ICNiMzQwMTM7XG4kZ2wtY29sb3Itb3JhbmdlLTcwMDogIzllMzgxMTtcbiRnbC1jb2xvci1vcmFuZ2UtODAwOiAjN2QyZDBlO1xuJGdsLWNvbG9yLW9yYW5nZS05MDA6ICM1ZDIyMGQ7XG4kZ2wtY29sb3Itb3JhbmdlLTk1MDogIzQ2MTgwNztcbiRnbC1jb2xvci1wdXJwbGUtNTA6ICNmNGYwZmM7XG4kZ2wtY29sb3ItcHVycGxlLTEwMDogI2UxZGFmNztcbiRnbC1jb2xvci1wdXJwbGUtMjAwOiAjYzliZWVmO1xuJGdsLWNvbG9yLXB1cnBsZS0zMDA6ICNhOTk3ZTE7XG4kZ2wtY29sb3ItcHVycGxlLTQwMDogIzkyN2NkNztcbiRnbC1jb2xvci1wdXJwbGUtNTAwOiAjNzg2MmM4O1xuJGdsLWNvbG9yLXB1cnBsZS02MDA6ICM2YTU0YzA7XG4kZ2wtY29sb3ItcHVycGxlLTcwMDogIzViNDZiODtcbiRnbC1jb2xvci1wdXJwbGUtODAwOiAjNDgzNjk4O1xuJGdsLWNvbG9yLXB1cnBsZS05MDA6ICMzNjI2NzY7XG4kZ2wtY29sb3ItcHVycGxlLTk1MDogIzI5MWE1YztcbiRnbC1jb2xvci1yZWQtNTA6ICNmZWVlZjA7XG4kZ2wtY29sb3ItcmVkLTEwMDogI2ZmZDNkNztcbiRnbC1jb2xvci1yZWQtMjAwOiAjZmZhZmI4O1xuJGdsLWNvbG9yLXJlZC0zMDA6ICNmYzc5ODg7XG4kZ2wtY29sb3ItcmVkLTQwMDogI2YxNTE2ODtcbiRnbC1jb2xvci1yZWQtNTAwOiAjZGUxZDRiO1xuJGdsLWNvbG9yLXJlZC02MDA6ICNjNTIwNDI7XG4kZ2wtY29sb3ItcmVkLTcwMDogI2FjMjAzYTtcbiRnbC1jb2xvci1yZWQtODAwOiAjODkxYzJmO1xuJGdsLWNvbG9yLXJlZC05MDA6ICM2NDE5MjU7XG4kZ2wtY29sb3ItcmVkLTk1MDogIzQ4MTUxZDtcbiRnbC1mb250LWZhbWlseS1yZWd1bGFyOiB2YXIoLS1kZWZhdWx0LXJlZ3VsYXItZm9udCwgJ0dpdExhYiBTYW5zJyksJ0dpdExhYiBTYW5zJywtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCwnU2Vnb2UgVUknLFJvYm90bywnTm90byBTYW5zJyxVYnVudHUsQ2FudGFyZWxsLCdIZWx2ZXRpY2EgTmV1ZScsc2Fucy1zZXJpZiwnQXBwbGUgQ29sb3IgRW1vamknLCdTZWdvZSBVSSBFbW9qaScsJ1NlZ29lIFVJIFN5bWJvbCcsJ05vdG8gQ29sb3IgRW1vamknO1xuJGdsLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogdmFyKC0tZGVmYXVsdC1tb25vLWZvbnQsICdHaXRMYWIgTW9ubycpLCdHaXRMYWIgTW9ubycsJ0pldEJyYWlucyBNb25vJyxNZW5sbywnRGVqYVZ1IFNhbnMgTW9ubycsJ0xpYmVyYXRpb24gTW9ubycsQ29uc29sYXMsJ1VidW50dSBNb25vJywnQ291cmllciBOZXcnLCdhbmRhbGUgbW9ubycsJ2x1Y2lkYSBjb25zb2xlJyxtb25vc3BhY2U7XG4kZ2wtZm9udC1zaXplLTEwMDogMC43NXJlbTsgLy8gVXNlZCBmb3IgbWV0YSB0ZXh0IGFuZCBzbWFsbCBsYWJlbHMuXG4kZ2wtZm9udC1zaXplLTIwMDogMC44MTI1cmVtOyAvLyBVc2VkIGZvciBsZXZlbCA2IGhlYWRpbmdzLlxuJGdsLWZvbnQtc2l6ZS0zMDA6IDAuODc1cmVtOyAvLyBVc2VkIGZvciBsZXZlbCA1IGhlYWRpbmdzLCBib2R5IHRleHQsIGlucHV0IGxhYmVscywgYW5kIGhlbHAgdGV4dC5cbiRnbC1mb250LXNpemUtNDAwOiAxcmVtOyAvLyBVc2VkIGZvciBsZXZlbCA0IGhlYWRpbmdzLCBsYXJnZSBib2R5IHRleHQuXG4kZ2wtZm9udC1zaXplLTUwMDogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pOyAvLyBVc2VkIGZvciByZXNwb25zaXZlIGxldmVsIDMgaGVhZGluZ3MuXG4kZ2wtZm9udC1zaXplLTYwMDogY2xhbXAoMS4zMTI1cmVtLCAwLjg2ODA1NTU1NTZyZW0gKyAwLjkyNTkyNTkyNTl2dywgMS41NjI1cmVtKTsgLy8gVXNlZCBmb3IgcmVzcG9uc2l2ZSBsZXZlbCAyIGhlYWRpbmdzLlxuJGdsLWZvbnQtc2l6ZS03MDA6IGNsYW1wKDEuNXJlbSwgMC44MzMzMzMzMzMzcmVtICsgMS4zODg4ODg4ODg5dncsIDEuODc1cmVtKTsgLy8gVXNlZCBmb3IgcmVzcG9uc2l2ZSBsZXZlbCAxIGhlYWRpbmdzXG4kZ2wtZm9udC1zaXplLTgwMDogY2xhbXAoMS43NXJlbSwgMC44NjExMTExMTExcmVtICsgMS44NTE4NTE4NTE5dncsIDIuMjVyZW0pOyAvLyBVc2VkIGZvciBhIHJlc3BvbnNpdmUgZGlzcGxheSBvcHRpb24gdGhhdCBjYW4gYmUgYXBwbGllZCB0byBhIGxldmVsIDEgaGVhZGluZyB0byBpbmNyZWFzZSBpdHMgcHJvbWluZW5jZS5cbiRnbC1mb250LXNpemUteHM6IDAuNjI1cmVtO1xuJGdsLWZvbnQtc2l6ZS0xMDAtZml4ZWQ6IDAuNzVyZW07IC8vIFVzZWQgZm9yIG1ldGEgdGV4dCBhbmQgc21hbGwgbGFiZWxzLlxuJGdsLWZvbnQtc2l6ZS0yMDAtZml4ZWQ6IDAuODEyNXJlbTsgLy8gVXNlZCBmb3IgbGV2ZWwgNiBoZWFkaW5ncy5cbiRnbC1mb250LXNpemUtMzAwLWZpeGVkOiAwLjg3NXJlbTsgLy8gVXNlZCBmb3IgbGV2ZWwgNSBoZWFkaW5ncywgYm9keSB0ZXh0LCBpbnB1dCBsYWJlbHMsIGFuZCBoZWxwIHRleHQuXG4kZ2wtZm9udC1zaXplLTQwMC1maXhlZDogMXJlbTsgLy8gVXNlZCBmb3IgbGV2ZWwgNCBoZWFkaW5ncywgbGFyZ2UgYm9keSB0ZXh0LlxuJGdsLWZvbnQtc2l6ZS01MDAtZml4ZWQ6IDEuMTI1cmVtOyAvLyBVc2VkIGZvciBsZXZlbCAzIGhlYWRpbmdzLlxuJGdsLWZvbnQtc2l6ZS02MDAtZml4ZWQ6IDEuMzEyNXJlbTsgLy8gVXNlZCBmb3IgbGV2ZWwgMiBoZWFkaW5ncy5cbiRnbC1mb250LXNpemUtNzAwLWZpeGVkOiAxLjVyZW07IC8vIFVzZWQgZm9yIGxldmVsIDEgaGVhZGluZ3NcbiRnbC1mb250LXNpemUtODAwLWZpeGVkOiAxLjc1cmVtOyAvLyBVc2VkIGZvciBhIGRpc3BsYXkgb3B0aW9uIHRoYXQgY2FuIGJlIGFwcGxpZWQgdG8gYSBsZXZlbCAxIGhlYWRpbmcgdG8gaW5jcmVhc2UgaXRzIHByb21pbmVuY2UuXG4kZ2wtZm9udC13ZWlnaHQtMTAwOiAxMDA7XG4kZ2wtZm9udC13ZWlnaHQtMzAwOiAzMDA7XG4kZ2wtZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4kZ2wtZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDUwMDtcbiRnbC1mb250LXdlaWdodC1ib2xkOiA2MDA7XG4kZ2wtbGluZS1oZWlnaHQtMTI6IDAuNzVyZW07XG4kZ2wtbGluZS1oZWlnaHQtMTY6IDFyZW07XG4kZ2wtbGluZS1oZWlnaHQtMjA6IDEuMjVyZW07XG4kZ2wtbGluZS1oZWlnaHQtMjQ6IDEuNXJlbTtcbiRnbC1saW5lLWhlaWdodC0yODogMS43NXJlbTtcbiRnbC1saW5lLWhlaWdodC0zMjogMnJlbTtcbiRnbC1saW5lLWhlaWdodC0zNjogMi4yNXJlbTtcbiRnbC1saW5lLWhlaWdodC00MjogMi42MjVyZW07XG4kZ2wtbGluZS1oZWlnaHQtNDQ6IDIuNzVyZW07XG4kZ2wtbGluZS1oZWlnaHQtNTI6IDMuMjVyZW07XG4kZ2wtbGluZS1oZWlnaHQtaGVhZGluZzogMS4yNTtcbiRnbC1vcGFjaXR5LTA6IDA7XG4kZ2wtb3BhY2l0eS0xOiAuMTtcbiRnbC1vcGFjaXR5LTI6IC4yO1xuJGdsLW9wYWNpdHktMzogLjM7XG4kZ2wtb3BhY2l0eS00OiAuNDtcbiRnbC1vcGFjaXR5LTU6IC41O1xuJGdsLW9wYWNpdHktNjogLjY7XG4kZ2wtb3BhY2l0eS03OiAuNztcbiRnbC1vcGFjaXR5LTg6IC44O1xuJGdsLW9wYWNpdHktOTogLjk7XG4kZ2wtb3BhY2l0eS0xMDogMTtcbiRnbC1zcGFjaW5nLXNjYWxlLTA6IDBweDtcbiRnbC1zcGFjaW5nLXNjYWxlLTE6IDAuMTI1cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtMjogMC4yNXJlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTM6IDAuNXJlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTQ6IDAuNzVyZW07XG4kZ2wtc3BhY2luZy1zY2FsZS01OiAxcmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtNjogMS41cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtNzogMnJlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTg6IDIuNXJlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTk6IDNyZW07XG4kZ2wtc3BhY2luZy1zY2FsZS0xMDogMy41cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtMTE6IDRyZW07XG4kZ2wtc3BhY2luZy1zY2FsZS0xMjogNXJlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTEzOiA2cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtMTU6IDcuNXJlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTE4OiA5cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtMjA6IDEwcmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtMjY6IDEzcmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtMjg6IDE0cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtMzA6IDE1cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtMzE6IDE1LjVyZW07XG4kZ2wtc3BhY2luZy1zY2FsZS0zMzogMTYuNXJlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTM0OiAxN3JlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTM3OiAxOC41cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtNDg6IDI0cmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtNjI6IDMxcmVtO1xuJGdsLXNwYWNpbmctc2NhbGUtNzU6IDM3LjVyZW07XG4kZ2wtc3BhY2luZy1zY2FsZS04MDogNDByZW07XG4kZ2wtc3BhY2luZy1zY2FsZS04ODogNDRyZW07XG4kZ2wtc3BhY2luZy1zY2FsZS1weDogMXB4O1xuJGdsLXNwYWNpbmctc2NhbGUtMi01OiAwLjM3NXJlbTtcbiRnbC1zcGFjaW5nLXNjYWxlLTExLTU6IDQuNXJlbTtcbiRnbC16aW5kZXgtMDogMDtcbiRnbC16aW5kZXgtMTogMTtcbiRnbC16aW5kZXgtMjogMjtcbiRnbC16aW5kZXgtMzogMztcbiRnbC16aW5kZXgtNDogNDtcbiRnbC16aW5kZXgtMjAwOiAyMDA7XG4kZ2wtemluZGV4LTk5OTk6IDk5OTk7XG4kZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItcmVkOiByZ2JhKDI1NSwgMTc1LCAxODQsIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvLyBSZWQgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLlxuJGdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLXB1cnBsZTogcmdiYSgyMDEsIDE5MCwgMjM5LCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLy8gUHVycGxlIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy5cbiRnbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ibHVlOiByZ2JhKDE1NywgMjAwLCAyNDIsIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvLyBCbHVlIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy5cbiRnbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ncmVlbjogcmdiYSgxMzIsIDIxMiwgMTgyLCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLy8gR3JlZW4gYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLlxuJGdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLW9yYW5nZTogcmdiYSgyNDcsIDE4NSwgODEsIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvLyBPcmFuZ2UgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLlxuJGdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLW5ldXRyYWw6IHJnYmEoMTkxLCAxOTEsIDE5NSwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8vIE5ldXRyYWwgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1ibHVlOiAjMjM1MTgwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGJsdWUgYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWdyZWVuOiAjMWI2NTNmOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGdyZWVuIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1pbmRpZ286ICM0MTQxOWY7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgaW5kaWdvIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodGJsdWU6ICM0OTc3YTU7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHRibHVlIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodGdyZWVuOiAjMzA4MjU4OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0Z3JlZW4gYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0aW5kaWdvOiAjNjY2NmM0OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodHJlZDogI2FkNGEzYjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgZm9yIHRoZSBsaWdodHJlZCBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItcmVkOiAjOGYyMTEwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIHJlZCBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1ibHVlOiAjMGIyNjQwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1ncmVlbjogIzBlNDMyODsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGdyZWVuIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWluZGlnbzogIzIyMjI2MTsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodGJsdWU6ICMyMzUxODA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodGJsdWUgYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHRncmVlbjogIzFiNjUzZjsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGxpZ2h0Z3JlZW4gYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHRpbmRpZ286ICM0MTQxOWY7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodGluZGlnbyBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodHJlZDogIzhmMjExMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGxpZ2h0cmVkIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLXJlZDogIzU4MGQwMjsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIHJlZCBiYW5uZXIgdHlwZS5cbiRnbC1jaGFydC10aHJlc2hvbGQtYXJlYS1jb2xvcjogcmdiYSgyMjIsIDI5LCA3NSwgMC4xKTsgLy8gVXNlZCBpbiBjaGFydHMgdG8gZGVsaW5lYXRlIGEgdGhyZXNob2xkIGFyZWEgaW4gYSBjaGFydC5cbiRnbC1pbGx1c3RyYXRpb24tc3Ryb2tlLWNvbG9yLWRlZmF1bHQ6ICMxNzEzMjE7IC8vIERlZmF1bHQgc3Ryb2tlIGNvbG9yIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsLlxuJGdsLWlsbHVzdHJhdGlvbi1zdHJva2Utd2lkdGgtZGVmYXVsdDogMjsgLy8gRGVmYXVsdCBzdHJva2Ugd2lkdGggdG8gZGVmaW5lIHNoYXBlIGFuZCBwcm92aWRlIGVzc2VudGlhbCBkZXRhaWwuXG4kZ2wtaWxsdXN0cmF0aW9uLWZpbGwtY29sb3ItZGVmYXVsdDogI2ZmZjsgLy8gRGVmYXVsdCBmaWxsIGNvbG9yIGZvciBhbiBlbGVtZW50IHdoZXJlIHNwZWNpZmljIG1lYW5pbmcgb3IgZW1waGFzaXMgaXMgbm90IHJlcXVpcmVkLlxuJGdsLWlsbHVzdHJhdGlvbi1zdGF0dXMtZmlsbC1jb2xvci1uZXV0cmFsOiAjYWVhNWQ2OyAvLyBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBjb25jZXB0IHdoaWNoIGlzIG5laXRoZXIgcG9zaXRpdmUgb3IgbmVnYXRpdmUuXG4kZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLXN1Y2Nlc3M6ICM2ZmRhYzk7IC8vIFVzZWQgYXMgYSBmaWxsIHRvIGNvbnZleSBhIHN1Y2Nlc3Mgb3IgYWN0aXZlIGNvbmNlcHQsIGhhcyBhIHBvc2l0aXZlIGNvbm5vdGF0aW9uLlxuJGdsLWlsbHVzdHJhdGlvbi1zdGF0dXMtZmlsbC1jb2xvci13YXJuaW5nOiAjZmNhMzI2OyAvLyBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBjYXV0aW9uIG9yIHdhcm5pbmcgY29uY2VwdCwgaGFzIGEgc2xpZ2h0bHkgbmVnYXRpdmUgY29ubm90YXRpb24uXG4kZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLWRhbmdlcjogI2ZmOWQ3MzsgLy8gVXNlZCBhcyBhIGZpbGwgdG8gY29udmV5IGEgY3JpdGljYWwgb3IgZGFuZ2VyIGNvbmNlcHQsIGhhcyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLlxuJGdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtc3Ryb2tlLWNvbG9yLW9yYW5nZTogI2ZmOWQ3MzsgLy8gVXNlZCBmb3Igb3JhbmdlIGFjY2VudCBzdHJva2UgZGV0YWlsIG9uIGFuIG9iamVjdCBvciBhdHRlbnRpb24tZHJhd2luZyBlbGVtZW50LlxuJGdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtc3Ryb2tlLWNvbG9yLXRlYWw6ICM2ZmRhYzk7IC8vIFVzZWQgZm9yIHRlYWwgYWNjZW50IHN0cm9rZSBkZXRhaWwgb24gYW4gb2JqZWN0IG9yIGF0dGVudGlvbi1kcmF3aW5nIGVsZW1lbnQuXG4kZ2wtaWxsdXN0cmF0aW9uLWFjY2VudC1zdHJva2UtY29sb3Itc3Ryb25nOiAjYWVhNWQ2OyAvLyBVc2VkIGZvciBkYXJrIGFjY2VudCBzdHJva2UgZGV0YWlsIG9uIGFuIG9iamVjdCBvciBhdHRlbnRpb24tZHJhd2luZyBlbGVtZW50LlxuJGdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtZmlsbC1jb2xvci1zdWJ0bGU6ICNkMGM1ZTI7IC8vIFVzZWQgdG8gYWRkIGRlcHRoIHRvIGEgc2Vjb25kYXJ5IGVsZW1lbnQgYW5kIHN1cHBvcnRpbmcgc3VyZmFjZS5cbiRnbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3Itc3Ryb25nOiAjYWVhNWQ2OyAvLyBVc2VkIGZvciBhbiBlbGVtZW50IHJlcXVpcmluZyB2aXN1YWwgZW1waGFzaXMgd2l0aG91dCBjb21wZXRpbmcgd2l0aCBwcmltYXJ5IGNvbnRlbnQgb3Igc3RhdHVzIGluZGljYXRvcnMuXG4kZ2wtaWxsdXN0cmF0aW9uLWFjY2VudC1maWxsLWNvbG9yLW9yYW5nZTogI2ZmOWQ3MzsgLy8gVXNlZCB0byBhZGQgb3JhbmdlIHRvIGEgc2Vjb25kYXJ5IGVsZW1lbnQgYW5kIHN1cHBvcnRpbmcgc3VyZmFjZS5cbiRnbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3ItdGVhbDogIzZmZGFjOTsgLy8gVXNlZCB0byBhZGQgdGVhbCB0byBhIHNlY29uZGFyeSBlbGVtZW50IGFuZCBzdXBwb3J0aW5nIHN1cmZhY2UuXG4kZ2wtaWxsdXN0cmF0aW9uLWJhc2UtZmlsbC1jb2xvcjogI2U3ZTRmMjsgLy8gVXNlZCBmb3IgdGhlIGNvbnNpc3RlbnQgYmFja2dyb3VuZCBzaGFwZSBwcmVzZW50IGFjcm9zcyBhbGwgaWxsdXN0cmF0aW9ucy4gUHJvdmlkZXMgYSB1bmlmaWVkIGZvdW5kYXRpb24gdGhhdCB2aXN1YWxseSBncm91bmRzIGVhY2ggaWxsdXN0cmF0aW9uIHdoaWxlIG1haW50YWluaW5nIHN5c3RlbSBjb2hlc2lvbi5cbiRnbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLXN0cm9rZS1jb2xvci1kZWZhdWx0OiAjMTcxMzIxOyAvLyBEZWZhdWx0IHN0cm9rZSBjb2xvciB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbCBpbiBpc29tZXRyaWMgaWxsdXN0cmF0aW9uLlxuJGdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLXdpZHRoLWRlZmF1bHQ6IDI7IC8vIERlZmF1bHQgc3Ryb2tlIHdpZHRoIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsIGluIGlzb21ldHJpYyBpbGx1c3RyYXRpb24uXG4kZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC10b3AtZmlsbC1jb2xvcjogI2M1ZjRlYzsgLy8gVXNlZCBmb3IgdGhlIHRvcCBmYWNlIG9mIGlzb21ldHJpYyB0ZXh0IGFuZCBudW1iZXIgZWxlbWVudHMuXG4kZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC1mcm9udC1maWxsLWNvbG9yOiAjZmZmOyAvLyBVc2VkIGZvciB0aGUgZnJvbnQgZmFjZSBvZiBpc29tZXRyaWMgdGV4dCBhbmQgbnVtYmVyIGVsZW1lbnRzLlxuJGdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtc2lkZS1maWxsLWNvbG9yOiAjNmZkYWM5OyAvLyBVc2VkIGZvciB0aGUgc2lkZSBmYWNlIG9mIGlzb21ldHJpYyB0ZXh0IGFuZCBudW1iZXIgZWxlbWVudHMuXG4kZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC1zaGFkb3ctZmlsbC1jb2xvcjogIzEwYjFiMTsgLy8gVXNlZCBmb3IgdGhlIHNoYWRvdyBvZiBpc29tZXRyaWMgdGV4dCBhbmQgbnVtYmVyIGVsZW1lbnRzLlxuJGdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtb2JqZWN0LXRvcC1maWxsLWNvbG9yOiAjZmY5ZDczOyAvLyBVc2VkIGZvciB0aGUgdG9wIGZhY2Ugb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuXG4kZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3QtZnJvbnQtZmlsbC1jb2xvcjogI2ZmYzJhODsgLy8gVXNlZCBmb3IgdGhlIGZyb250IGZhY2Ugb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuXG4kZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3Qtc2lkZS1maWxsLWNvbG9yOiAjZmY3YjQyOyAvLyBVc2VkIGZvciB0aGUgc2lkZSBmYWNlIG9mIGFuIGlzb21ldHJpYyBvYmplY3Qgb3Igc3ltYm9sLlxuJGdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtb2JqZWN0LWhpZ2hsaWdodC1maWxsLWNvbG9yOiAjZmZmOyAvLyBVc2VkIGZvciB0aGUgZmFjZSBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbCB0aGF0IHJlcXVpcmVzIG1heGltdW0gZGlzdGluY3Rpb24gZnJvbSBvdGhlciBlbGVtZW50cy5cbiRnbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC1zaGFkb3ctZmlsbC1jb2xvcjogI2UyNDMyOTsgLy8gVXNlZCBmb3IgdGhlIHNoYWRvdyBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbC5cbiRnbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWFjY2VudC10b3AtZmlsbC1jb2xvcjogIzQ1NDI0ZDsgLy8gVXNlZCBmb3IgdGhlIHRvcCBmYWNlIG9mIGEgc3VwcG9ydGluZyBpc29tZXRyaWMgZWxlbWVudC4gUHJvdmlkZXMgc3VidGxlIGRpbWVuc2lvbmFsIHZhcmlhdGlvbiB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudC5cbiRnbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWFjY2VudC1mcm9udC1maWxsLWNvbG9yOiAjNzQ3MTdhOyAvLyBVc2VkIGZvciB0aGUgZnJvbnQgZmFjZSBvZiBhIHN1cHBvcnRpbmcgaXNvbWV0cmljIGVsZW1lbnQuIFByb3ZpZGVzIHN1YnRsZSBkaW1lbnNpb25hbCB2YXJpYXRpb24gd2l0aG91dCBjb21wZXRpbmcgd2l0aCBwcmltYXJ5IGNvbnRlbnQuXG4kZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1hY2NlbnQtc2lkZS1maWxsLWNvbG9yOiAjMmIyODM4OyAvLyBVc2VkIGZvciB0aGUgc2lkZSBmYWNlIG9mIGEgc3VwcG9ydGluZyBpc29tZXRyaWMgZWxlbWVudC4gUHJvdmlkZXMgc3VidGxlIGRpbWVuc2lvbmFsIHZhcmlhdGlvbiB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudC5cbiRnbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWJhc2UtdG9wLWZpbGwtY29sb3I6ICNlN2U0ZjI7IC8vIFVzZWQgZm9yIHRoZSB0b3Agc3VyZmFjZSBvZiBhbiBpc29tZXRyaWMgYmFzZSBwbGF0Zm9ybS5cbiRnbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWJhc2UtZnJvbnQtZmlsbC1jb2xvcjogI2Q1ZDBlODsgLy8gVXNlZCBmb3IgdGhlIGZyb250IGZhY2Ugb2YgYW4gaXNvbWV0cmljIGJhc2UgcGxhdGZvcm0uXG4kZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1iYXNlLXNpZGUtZmlsbC1jb2xvcjogI2FlYTVkNjsgLy8gVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBhbiBpc29tZXRyaWMgYmFzZSBwbGF0Zm9ybS5cbiRnbC1uYXYtaXRlbS1mb250LXdlaWdodDogNDI1OyAvLyBVc2VkIGZvciB0aGUgZm9udCB3ZWlnaHQgb2YgYSBuYXZpZ2F0aW9uIGl0ZW1cbiRkYXRhLXZpei1ncmVlbi01MDogI2RkZmFiNyAhZGVmYXVsdDtcbiRkYXRhLXZpei1ncmVlbi0xMDA6ICNjNmVkOTQgIWRlZmF1bHQ7XG4kZGF0YS12aXotZ3JlZW4tMjAwOiAjYjBkOTdiICFkZWZhdWx0O1xuJGRhdGEtdml6LWdyZWVuLTMwMDogIzk0YzI1ZSAhZGVmYXVsdDtcbiRkYXRhLXZpei1ncmVlbi00MDA6ICM4MWFjNDEgIWRlZmF1bHQ7XG4kZGF0YS12aXotZ3JlZW4tNTAwOiAjNjE5MDI1ICFkZWZhdWx0O1xuJGRhdGEtdml6LWdyZWVuLTYwMDogIzRlN2YwZSAhZGVmYXVsdDtcbiRkYXRhLXZpei1ncmVlbi03MDA6ICMzNjY4MDAgIWRlZmF1bHQ7XG4kZGF0YS12aXotZ3JlZW4tODAwOiAjMjc1NjAwICFkZWZhdWx0O1xuJGRhdGEtdml6LWdyZWVuLTkwMDogIzFhNDUwMCAhZGVmYXVsdDtcbiRkYXRhLXZpei1ncmVlbi05NTA6ICMxMzNhMDMgIWRlZmF1bHQ7XG4kZGF0YS12aXotYXF1YS01MDogI2I1ZmVmZCAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTEwMDogIzkzZjJlZiAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTIwMDogIzVlZGVlMyAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTMwMDogIzMyYzVkMiAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTQwMDogIzAwYWNjNCAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTUwMDogIzAwOTBiMSAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTYwMDogIzAwN2I5YiAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTcwMDogIzAwNjM4MSAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTgwMDogIzAwNTE2YyAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTkwMDogIzAwNDA1OSAhZGVmYXVsdDtcbiRkYXRhLXZpei1hcXVhLTk1MDogIzAwMzQ0YiAhZGVmYXVsdDtcbiRkYXRhLXZpei1ibHVlLTUwOiAjZTllYmZmICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtMTAwOiAjZDJkY2ZmICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtMjAwOiAjYjdjNmZmICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtMzAwOiAjOTdhY2ZmICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtNDAwOiAjNzk5MmY1ICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtNTAwOiAjNjE3YWUyICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtNjAwOiAjNGU2NWNkICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtNzAwOiAjM2Y1MWFlICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtODAwOiAjMzc0MjkxICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtOTAwOiAjMzAzNDcwICFkZWZhdWx0O1xuJGRhdGEtdml6LWJsdWUtOTUwOiAjMmEyYjU5ICFkZWZhdWx0O1xuJGRhdGEtdml6LW1hZ2VudGEtNTA6ICNmZmUzZWIgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS0xMDA6ICNmZmNjZGIgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS0yMDA6ICNmY2FjYzUgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS0zMDA6ICNmODhhYWYgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS00MDA6ICNlODZlOWEgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS01MDA6ICNjZjRkODEgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS02MDA6ICNiOTNkNzEgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS03MDA6ICM5YTJlNWQgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS04MDA6ICM3YzIxNGYgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS05MDA6ICM2NjFlM2EgIWRlZmF1bHQ7XG4kZGF0YS12aXotbWFnZW50YS05NTA6ICM1NDFkMzEgIWRlZmF1bHQ7XG4kZGF0YS12aXotb3JhbmdlLTUwOiAjZmFlOGQxICFkZWZhdWx0O1xuJGRhdGEtdml6LW9yYW5nZS0xMDA6ICNmNWQ2YjMgIWRlZmF1bHQ7XG4kZGF0YS12aXotb3JhbmdlLTIwMDogI2VlYmQ4YyAhZGVmYXVsdDtcbiRkYXRhLXZpei1vcmFuZ2UtMzAwOiAjZTk5YjYwICFkZWZhdWx0O1xuJGRhdGEtdml6LW9yYW5nZS00MDA6ICNlMDdlNDEgIWRlZmF1bHQ7XG4kZGF0YS12aXotb3JhbmdlLTUwMDogI2M5NWQyZSAhZGVmYXVsdDtcbiRkYXRhLXZpei1vcmFuZ2UtNjAwOiAjYjE0ZjE4ICFkZWZhdWx0O1xuJGRhdGEtdml6LW9yYW5nZS03MDA6ICM5MjQzMGEgIWRlZmF1bHQ7XG4kZGF0YS12aXotb3JhbmdlLTgwMDogIzZmMzUwMCAhZGVmYXVsdDtcbiRkYXRhLXZpei1vcmFuZ2UtOTAwOiAjNWUyZjA1ICFkZWZhdWx0O1xuJGRhdGEtdml6LW9yYW5nZS05NTA6ICM0YjI3MDcgIWRlZmF1bHQ7XG4kYnJhbmQtY2hhcmNvYWw6ICMxNzEzMjEgIWRlZmF1bHQ7IC8vIFVzZSBjb2xvci5icmFuZC1jaGFyY29hbCBpbnN0ZWFkLlxuJGJyYW5kLW9yYW5nZS0wMTogI2ZjYTMyNiAhZGVmYXVsdDsgLy8gVXNlIGNvbG9yLmJyYW5kLW9yYW5nZS4wMXAgaW5zdGVhZC5cbiRicmFuZC1vcmFuZ2UtMDI6ICNmYzZkMjYgIWRlZmF1bHQ7IC8vIFVzZSBjb2xvci5icmFuZC1vcmFuZ2UuMDJwIGluc3RlYWQuXG4kYnJhbmQtb3JhbmdlLTAzOiAjZTI0MzI5ICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYnJhbmQtb3JhbmdlLjAzcCBpbnN0ZWFkLlxuJGJyYW5kLXB1cnBsZS0wMTogI2E5ODlmNSAhZGVmYXVsdDsgLy8gVXNlIGNvbG9yLnB1cnBsZS4wMXAgaW5zdGVhZC5cbiRicmFuZC1wdXJwbGUtMDI6ICM3NzU5YzIgIWRlZmF1bHQ7IC8vIFVzZSBjb2xvci5wdXJwbGUuMDJwIGluc3RlYWQuXG4kYnJhbmQtZ3JheS0wMTogI2QxZDBkMyAhZGVmYXVsdDsgLy8gVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDEgaW5zdGVhZC5cbiRicmFuZC1ncmF5LTAyOiAjYTJhMWE2ICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYnJhbmQtZ3JheS4wMiBpbnN0ZWFkLlxuJGJyYW5kLWdyYXktMDM6ICM3NDcxN2EgIWRlZmF1bHQ7IC8vIFVzZSBjb2xvci5icmFuZC1ncmF5LjAzIGluc3RlYWQuXG4kYnJhbmQtZ3JheS0wNDogIzQ1NDI0ZCAhZGVmYXVsdDsgLy8gVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDQgaW5zdGVhZC5cbiRicmFuZC1ncmF5LTA1OiAjMmIyODM4ICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYnJhbmQtZ3JheS4wNSBpbnN0ZWFkLlxuJHQtZ3JheS1hLTE2OiByZ2JhKDUsIDUsIDYsIDAuMTYpICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYWxwaGEuZGFyay4xNiBpbnN0ZWFkLlxuJHQtZ3JheS1hLTI0OiByZ2JhKDUsIDUsIDYsIDAuMjQpICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYWxwaGEuZGFyay4yNCBpbnN0ZWFkLlxuJHQtZ3JheS1hLTAyOiByZ2JhKDUsIDUsIDYsIDAuMDIpICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYWxwaGEuZGFyay4yIGluc3RlYWQuXG4kdC1ncmF5LWEtMDQ6IHJnYmEoNSwgNSwgNiwgMC4wNCkgIWRlZmF1bHQ7IC8vIFVzZSBjb2xvci5hbHBoYS5kYXJrLjQgaW5zdGVhZC5cbiR0LWdyYXktYS0wNjogcmdiYSg1LCA1LCA2LCAwLjA2KSAhZGVmYXVsdDsgLy8gVXNlIGNvbG9yLmFscGhhLmRhcmsuNiBpbnN0ZWFkLlxuJHQtZ3JheS1hLTA4OiByZ2JhKDUsIDUsIDYsIDAuMDgpICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYWxwaGEuZGFyay44IGluc3RlYWQuXG4kdC13aGl0ZS1hLTE2OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTYpICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYWxwaGEubGlnaHQuMTYgaW5zdGVhZC5cbiR0LXdoaXRlLWEtMjQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCkgIWRlZmF1bHQ7IC8vIFVzZSBjb2xvci5hbHBoYS5saWdodC4yNCBpbnN0ZWFkLlxuJHQtd2hpdGUtYS0zNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM2KSAhZGVmYXVsdDsgLy8gVXNlIGNvbG9yLmFscGhhLmxpZ2h0LjM2IGluc3RlYWQuXG4kdC13aGl0ZS1hLTAyOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDIpICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYWxwaGEubGlnaHQuMiBpbnN0ZWFkLlxuJHQtd2hpdGUtYS0wNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KSAhZGVmYXVsdDsgLy8gVXNlIGNvbG9yLmFscGhhLmxpZ2h0LjQgaW5zdGVhZC5cbiR0LXdoaXRlLWEtMDY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNikgIWRlZmF1bHQ7IC8vIFVzZSBjb2xvci5hbHBoYS5saWdodC42IGluc3RlYWQuXG4kdC13aGl0ZS1hLTA4OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDgpICFkZWZhdWx0OyAvLyBVc2UgY29sb3IuYWxwaGEubGlnaHQuOCBpbnN0ZWFkLlxuJGdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDIyMiwgMjksIDc1LCAwKTsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiByZ2JhKDIyMiwgMjksIDc1LCAwLjE2KTsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHJnYmEoMTcyLCAzMiwgNTgsIDAuMjQpOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmc6IC0wLjAxZW07XG4kZ2wtaGVhZGluZy0zLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuJGdsLWhlYWRpbmctNC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiRnbC1oZWFkaW5nLTUtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4kZ2wtaGVhZGluZy02LWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuJGdsLWhlYWRpbmctc2NhbGUtMTAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuJGdsLWhlYWRpbmctc2NhbGUtMjAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuJGdsLWhlYWRpbmctc2NhbGUtMzAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuJGdsLWhlYWRpbmctc2NhbGUtNDAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuJGdsLWhlYWRpbmctc2NhbGUtNTAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuJGdsLWhlYWRpbmctc2NhbGUtODAwLWxpbmUtaGVpZ2h0OiAxLjEyNTtcbiRnbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiRnbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiRnbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiRnbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiRnbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiRnbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1saW5lLWhlaWdodDogMS4xMjU7XG4kZ2wtaGVhZGluZy1kaXNwbGF5LWxpbmUtaGVpZ2h0OiAxLjEyNTtcbiRnbC1oZWFkaW5nLTMtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4kZ2wtaGVhZGluZy00LWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuJGdsLWhlYWRpbmctNS1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiRnbC1oZWFkaW5nLTYtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4kZ2wtYm9yZGVyLWNvbG9yLXRyYW5zcGFyZW50OiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCB3aGVuIGEgYm9yZGVyIG5lZWRzIHRvIGJlIHByZXNlbnQsIGJ1dCBub3QgdmlzaWJseSBwZXJjZWl2ZWQuXG4kZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGRlZmF1bHQgYm9yZGVyIGNvbG9yLlxuJGdsLWJvcmRlci1jb2xvci1zdWJ0bGU6ICRnbC1jb2xvci1uZXV0cmFsLTUwOyAvLyBVc2VkIGZvciBhIHN1YnRsZSBib3JkZXIgaW4gY29tYmluYXRpb24gd2l0aCB0aGUgZGVmYXVsdCBiYWNrZ3JvdW5kLlxuJGdsLWJvcmRlci1jb2xvci1zdHJvbmc6ICRnbC1jb2xvci1uZXV0cmFsLTIwMDsgLy8gVXNlZCBmb3IgYSBkaXN0aW5jdCBib3JkZXIgdGhhdCBlbXBoYXNpemVzIGFuIGVkZ2Ugb3IgYm91bmRhcmllcy5cbiRnbC1ib3JkZXItcmFkaXVzLW5vbmU6ICRnbC1zcGFjaW5nLXNjYWxlLTA7XG4kZ2wtYm9yZGVyLXJhZGl1cy14czogJGdsLXNwYWNpbmctc2NhbGUtcHg7XG4kZ2wtYm9yZGVyLXJhZGl1cy1zbTogJGdsLXNwYWNpbmctc2NhbGUtMTtcbiRnbC1ib3JkZXItcmFkaXVzLW1kOiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuJGdsLWJvcmRlci1yYWRpdXMtbGc6ICRnbC1zcGFjaW5nLXNjYWxlLTM7XG4kZ2wtYm9yZGVyLXJhZGl1cy14bDogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiRnbC1ib3JkZXItcmFkaXVzLTJ4bDogJGdsLXNwYWNpbmctc2NhbGUtNTtcbiRnbC1ib3JkZXItcmFkaXVzLTN4bDogJGdsLXNwYWNpbmctc2NhbGUtNjtcbiRnbC1mb250LXNpemUtc206ICRnbC1mb250LXNpemUtMTAwO1xuJGdsLWZvbnQtc2l6ZS1tZDogJGdsLWZvbnQtc2l6ZS0zMDA7XG4kZ2wtZm9udC1zaXplLWxnOiAkZ2wtZm9udC1zaXplLTQwMDtcbiRnbC1mb250LXdlaWdodC1oZWFkaW5nOiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbiRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtMDtcbiRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbTogJGdsLXNwYWNpbmctc2NhbGUtNTtcbiRnbC1zaGFkb3ctY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLWRhcmstMTY7IC8vIFVzZWQgZm9yIHRoZSBkZWZhdWx0IHNoYWRvdyBjb2xvci5cbiRnbC1hbGVydC1uZXV0cmFsLWJvcmRlci10b3AtY29sb3I6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGEgbmV1dHJhbCBhbGVydC5cbiRnbC1hbGVydC1uZXV0cmFsLWJvcmRlci1ib3R0b20tY29sb3I6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuXG4kZ2wtYWxlcnQtaW5mby1ib3JkZXItdG9wLWNvbG9yOiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhbiBpbmZvIGFsZXJ0LlxuJGdsLWFsZXJ0LWluZm8tYm9yZGVyLWJvdHRvbS1jb2xvcjogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuXG4kZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItdG9wLWNvbG9yOiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuXG4kZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItYm90dG9tLWNvbG9yOiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBib3R0b20gY29sb3Igb2YgYSBzdWNjZXNzIGFsZXJ0LlxuJGdsLWFsZXJ0LXdhcm5pbmctYm9yZGVyLXRvcC1jb2xvcjogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSB3YXJuaW5nIGFsZXJ0LlxuJGdsLWFsZXJ0LXdhcm5pbmctYm9yZGVyLWJvdHRvbS1jb2xvcjogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgd2FybmluZyBhbGVydC5cbiRnbC1hbGVydC1kYW5nZXItYm9yZGVyLXRvcC1jb2xvcjogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBkYW5nZXIgYWxlcnQuXG4kZ2wtYWxlcnQtZGFuZ2VyLWJvcmRlci1ib3R0b20tY29sb3I6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhIGRhbmdlciBhbGVydC5cbiRnbC1hcHBsaWNhdGlvbi1jaHJvbWUtYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtNTA7IC8vIFVzZWQgZm9yIHRoZSBhcHBsaWNhdGlvbiBjaHJvbWUgYmFja2dyb3VuZCwgdGhlIGxvd2VzdCBsYXllciBvZiB0aGUgaW50ZXJmYWNlIHRoYXQgc2l0cyBiZW5lYXRoIHBhbmVscyBhbmQgY29udGFpbnMgZ2xvYmFsIG5hdmlnYXRpb24sIHVzZXIgYWN0aW9ucywgYXBwbGljYXRpb24gbmF2aWdhdGlvbiwgYW5kIEFJIG5hdmlnYXRpb24uXG4kZ2wtYXZhdGFyLWJvcmRlci1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItYWxwaGEtZGFyay04OyAvLyBVc2VkIHRvIGRlZmluZSB0aGUgZWRnZSBvZiBhbiBhdmF0YXIuXG4kZ2wtYXZhdGFyLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLWFscGhhLWRhcmstMjQ7IC8vIFVzZWQgdG8gaW5jcmVhc2UgdGhlIGVkZ2UgZGVmaW5pdGlvbiBvZiBhbiBhdmF0YXIgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWF2YXRhci1jaXJjbGUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0OiAkZ2wtYm9yZGVyLXJhZGl1cy1mdWxsOyAvLyBCb3JkZXIgcmFkaXVzIGZvciBjaXJsY2UgYXZhdGFycyBhdCBhbGwgc2l6ZXMuXG4kZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItcmVkOiAkZ2wtY29sb3ItcmVkLTgwMDsgLy8gUmVkIHRleHQgY29sb3IgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy5cbiRnbC1hdmF0YXItZmFsbGJhY2stdGV4dC1jb2xvci1wdXJwbGU6ICRnbC1jb2xvci1wdXJwbGUtODAwOyAvLyBQdXJwbGUgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLlxuJGdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLWJsdWU6ICRnbC1jb2xvci1ibHVlLTgwMDsgLy8gQmx1ZSB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuXG4kZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItZ3JlZW46ICRnbC1jb2xvci1ncmVlbi04MDA7IC8vIEdyZWVuIHRleHQgY29sb3IgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy5cbiRnbC1hdmF0YXItZmFsbGJhY2stdGV4dC1jb2xvci1vcmFuZ2U6ICRnbC1jb2xvci1vcmFuZ2UtODAwOyAvLyBPcmFuZ2UgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLlxuJGdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLW5ldXRyYWw6ICRnbC1jb2xvci1uZXV0cmFsLTgwMDsgLy8gTmV1dHJhbCB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuXG4kZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC01MDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLW5ldXRyYWwtMTAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuXG4kZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC0yMDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWZvY3VzOiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS1tdXRlZC1ib3JkZXItY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC02MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuXG4kZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW5ldXRyYWwtNzAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1tdXRlZC10ZXh0LWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLW5ldXRyYWwtODAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC01MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuXG4kZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW5ldXRyYWwtNjAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1tdXRlZC1pY29uLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLW5ldXRyYWwtNzAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1uZXV0cmFsLTIwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2UtbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC0yMDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1uZXV0cmFsLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC03MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTgwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItbmV1dHJhbC05MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC01MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS1uZXV0cmFsLWljb24tY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTYwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1uZXV0cmFsLWljb24tY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItbmV1dHJhbC03MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItYmx1ZS0xMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuXG4kZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLWJsdWUtMjAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2UtaW5mby1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLWJsdWUtMjAwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWZvY3VzOiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWJsdWUtNzAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLWJsdWUtODAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItYmx1ZS05MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1iYWRnZS1pbmZvLWljb24tY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWJsdWUtNTAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLWJsdWUtNjAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1pbmZvLWljb24tY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItYmx1ZS03MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWdyZWVuLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1ncmVlbi0yMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLWdyZWVuLTIwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJhZGdlLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yLWZvY3VzOiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJhZGdlLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1ncmVlbi03MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1ncmVlbi04MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLWdyZWVuLTkwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1ncmVlbi01MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItaG92ZXI6ICRnbC1jb2xvci1ncmVlbi02MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLWdyZWVuLTcwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1vcmFuZ2UtMTAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuXG4kZ2wtYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLW9yYW5nZS0yMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLXdhcm5pbmctYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW9yYW5nZS0yMDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3Itb3JhbmdlLTcwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW9yYW5nZS04MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2Utd2FybmluZy10ZXh0LWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLW9yYW5nZS05MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3Itb3JhbmdlLTUwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW9yYW5nZS02MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLW9yYW5nZS03MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1yZWQtMTAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1yZWQtMjAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuXG4kZ2wtYmFkZ2UtZGFuZ2VyLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLXJlZC0yMDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJhZGdlLWRhbmdlci1ib3JkZXItY29sb3ItZm9jdXM6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS1kYW5nZXItYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItcmVkLTcwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuXG4kZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1yZWQtODAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItcmVkLTkwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItcmVkLTcwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuXG4kZ2wtYmFkZ2UtZGFuZ2VyLWljb24tY29sb3ItaG92ZXI6ICRnbC1jb2xvci1yZWQtODAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2UtZGFuZ2VyLWljb24tY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItcmVkLTkwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLXB1cnBsZS0xMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1wdXJwbGUtMjAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLlxuJGdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItcHVycGxlLTIwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItZm9jdXM6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS10aWVyLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1wdXJwbGUtNzAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS10aWVyLXRleHQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1wdXJwbGUtODAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLXB1cnBsZS05MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1wdXJwbGUtNzAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC5cbiRnbC1iYWRnZS10aWVyLWljb24tY29sb3ItaG92ZXI6ICRnbC1jb2xvci1wdXJwbGUtODAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLXB1cnBsZS05MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYmFubmVyLWludHJvLWJvcmRlci1jb2xvcjogJGdsLWNvbG9yLWJsdWUtMjAwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm8gYmFubmVyLlxuJGdsLWJhbm5lci1wcm9tby1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItcHVycGxlLTUwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHByb21vIGJhbm5lci5cbiRnbC1iYW5uZXItcHJvbW8tYm9yZGVyLWNvbG9yOiAkZ2wtY29sb3ItcHVycGxlLTIwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHByb21vIGJhbm5lci5cbiRnbC1icmVhZGNydW1iLXNlcGFyYXRvci1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtNDAwOyAvLyBVc2VkIGZvciB0aGUgYnJlYWRjcnVtYiBsZXZlbCBzZXBhcmF0b3IuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWRhcms6ICRnbC1jb2xvci1uZXV0cmFsLTUwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgZm9yIHRoZSBkYXJrIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodDogJGdsLWNvbG9yLW5ldXRyYWwtNTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZGFyazogJGdsLWNvbG9yLW5ldXRyYWwtNzAwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgZGFyayBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodDogJGdsLWNvbG9yLW5ldXRyYWwtMTAwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWJsdWU6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZGFyazogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBkYXJrIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1ncmVlbjogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBncmVlbiBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItaW5kaWdvOiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHQ6ICRnbC1jb2xvci1uZXV0cmFsLTkwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodCBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHRibHVlOiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGxpZ2h0Ymx1ZSBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHRncmVlbjogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodGdyZWVuIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGluZGlnbzogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodGluZGlnbyBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHRyZWQ6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRyZWQgYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLXJlZDogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSByZWQgYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWJsdWU6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItZGFyazogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBkYXJrIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1ncmVlbjogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBncmVlbiBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItaW5kaWdvOiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHQ6ICRnbC1jb2xvci1uZXV0cmFsLTkwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBsaWdodCBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRibHVlOiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0Ymx1ZSBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRncmVlbjogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBsaWdodGdyZWVuIGJhbm5lciB0eXBlLlxuJGdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodGluZGlnbzogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBsaWdodGluZGlnbyBiYW5uZXIgdHlwZS5cbiRnbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRyZWQ6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRyZWQgYmFubmVyIHR5cGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLXJlZDogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSByZWQgYmFubmVyIHR5cGUuXG4kZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTgwMDsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW5ldXRyYWwtNTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTIwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC00MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItbmV1dHJhbC02MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtODAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTk1MDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtODAwOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTk1MDsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDA7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTUwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtODAwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW5ldXRyYWwtOTUwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItbmV1dHJhbC0xMDAwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1yZWQtNjAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItcmVkLTcwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItcmVkLTkwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLXJlZC03MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItcmVkLTkwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLXJlZC05NTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLXJlZC02MDA7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1yZWQtODAwOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1yZWQtOTAwOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1yZWQtNTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1yZWQtMTAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLXJlZC02MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLXJlZC04MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItcmVkLTkwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC00MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLW5ldXRyYWwtNjAwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFzaGVkIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTUwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTMwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC00MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItbmV1dHJhbC02MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1idXR0b24tZGlzYWJsZWQtZm9yZWdyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtNTAwOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRpc2FibGVkIGJ1dHRvbi5cbiRnbC1idXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtMTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYnV0dG9uLlxuJGdsLWJ1dHRvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRpc2FibGVkIGJ1dHRvbi5cbiRnbC1idXR0b24tY291bnQtYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLWFscGhhLWRhcmstODsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBidXR0b24gY291bnQgZWxlbWVudC5cbiRnbC1jaGFydC1heGlzLWxpbmUtY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTIwMDsgLy8gVXNlZCBpbiBjaGFydHMgZm9yIGF4aXMgbGluZSBjb2xvci5cbiRnbC1jaGFydC10aHJlc2hvbGQtbGluZS1jb2xvcjogJGdsLWNvbG9yLXJlZC01MDA7IC8vIFVzZWQgaW4gY2hhcnRzIHRvIGRpdmlkZSBhIHRocmVzaG9sZCBhcmVhIGluIGEgY2hhcnQgZnJvbSBvdGhlciBkYXRhLlxuJGdsLWNoYXJ0LXpvb20tZmlsbGVyLWNvbG9yOiAkZ2wtY29sb3ItYWxwaGEtZGFyay04OyAvLyBVc2VkIGluIGNoYXJ0cyBmb3IgdGhlIG92ZXJsYXkgY29sb3Igd2hlbiB6b29taW5nIGluIG9uIGEgc3BlY2lmaWMgYXJlYSBvZiBkYXRhLlxuJGdsLWRhdGVwaWNrZXItYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgZGF0ZXBpY2tlci5cbiRnbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC01MDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWFjdGl2ZTogJGdsLWNvbG9yLW5ldXRyYWwtMjAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWRyb3Bkb3duLXNlYXJjaC1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItYWxwaGEtZGFyay0yOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlYXJjaCBpbnB1dCBpbiBhIGRyb3Bkb3duIGxpc3Rib3guXG4kZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC01MDsgLy8gVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCB0eXBlIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW5ldXRyYWwtMTAwOyAvLyBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIHR5cGUgdG9rZW4gYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC0xMDA7IC8vIFVzZWQgZm9yIHRoZSBmaWx0ZXJlZCBzZWFyY2ggZGF0YSBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1kYXRhLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTIwMDsgLy8gVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBkYXRhIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTUwOyAvLyBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIG9wZXJhdG9yIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBvcGVyYXRvciB0b2tlbiBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1sYWJlbC1saWdodC10ZXh0LWNvbG9yOiAkZ2wtY29sb3ItbmV1dHJhbC05NTA7IC8vIFVzZWQgZm9yIHRoZSBsYWJlbCB0ZXh0IGNvbG9yIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvci5cbiRnbC1sYWJlbC1saWdodC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGxhYmVsIHJlbW92ZSBidXR0b24gYmFja2dyb3VuZCBvbiBhIGxpZ2h0IGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtbGFiZWwtbGlnaHQtYnV0dG9uLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTk1MDsgLy8gVXNlZCBmb3IgdGhlIGxhYmVsIHJlbW92ZSBidXR0b24gYmFja2dyb3VuZCBvbiBhIGxpZ2h0IGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWxhYmVsLWxpZ2h0LWJ1dHRvbi1pY29uLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTk1MDsgLy8gVXNlZCBmb3IgdGhlIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBvbiBhIGxpZ2h0IGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtbGFiZWwtZGFyay10ZXh0LWNvbG9yOiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgbGFiZWwgdGV4dCBjb2xvciBvbiBhIGRhcmsgYmFja2dyb3VuZCBjb2xvci5cbiRnbC1sYWJlbC1kYXJrLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBiYWNrZ3JvdW5kIG9uIGEgZGFyayBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWxhYmVsLWRhcmstYnV0dG9uLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWxhYmVsLWRhcmstYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBvbiBhIGRhcmsgYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1sYWJlbC1zY29wZWQtdGV4dC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtOTUwOyAvLyBVc2VkIGZvciB0aGUgc2NvcGVkIGxhYmVsIHRleHQgY29sb3IuXG4kZ2wtbGFiZWwtc2NvcGVkLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC05NTA7IC8vIFVzZWQgZm9yIHRoZSBzY29wZWQgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBiYWNrZ3JvdW5kIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1sYWJlbC1zY29wZWQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtOTUwOyAvLyBVc2VkIGZvciB0aGUgc2NvcGVkIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1sYWJlbC1zY29wZWQtYnV0dG9uLWljb24tY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSBzY29wZWQgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBpY29uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1saW5rLW1lbnRpb24tdGV4dC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItYmx1ZS04MDA7IC8vIFVzZWQgZm9yIHRoZSBtZW50aW9uIGxpbmsgdGV4dCBjb2xvci5cbiRnbC1saW5rLW1lbnRpb24tdGV4dC1jb2xvci1jdXJyZW50OiAkZ2wtY29sb3Itb3JhbmdlLTgwMDsgLy8gVXNlZCBmb3IgdGhlIG1lbnRpb24gbGluayB0ZXh0IGNvbG9yIHdoZW4gcmVmZXJlbmNpbmcgdGhlIGN1cnJlbnQgdXNlci5cbiRnbC1saW5rLW1lbnRpb24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItYmx1ZS0xMDA7IC8vIFVzZWQgZm9yIHRoZSBtZW50aW9uIGxpbmsgZGVmYXVsdCBiYWNrZ3JvdW5kLlxuJGdsLWxpbmstbWVudGlvbi1iYWNrZ3JvdW5kLWNvbG9yLWN1cnJlbnQ6ICRnbC1jb2xvci1vcmFuZ2UtMTAwOyAvLyBVc2VkIGZvciB0aGUgbWVudGlvbiBsaW5rIGJhY2tncm91bmQgd2hlbiByZWZlcmVuY2luZyB0aGUgY3VycmVudCB1c2VyLlxuJGdsLW5hdi1pdGVtLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS0zMDA7IC8vIFVzZWQgZm9yIHRoZSBmb250IHNpemUgb2YgYSBuYXZpZ2F0aW9uIGl0ZW1cbiRnbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTYwMDsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC05NTA7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW5ldXRyYWwtMTAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLW5ldXRyYWwtMjAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ib2xkOyAvLyBVc2VkIGZvciB0aGUgZm9udCB3ZWlnaHQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0uXG4kZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC0xMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLW5hdi1pdGVtLXNlbGVjdGVkLWluZGljYXRvci1jb2xvcjogJGdsLWNvbG9yLW9yYW5nZS01MDA7IC8vIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgYmVzaWRlIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiBUaW50ZWQgdGhlbWVzIG92ZXJyaWRlIGl0IGluIHNyYy9zY3NzL3RoZW1lcy5zY3NzLlxuJGdsLXByb2dyZXNzLWJhci10cmFjay1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtMjAwOyAvLyBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3IgZm9yIGFsbCBwcm9ncmVzcy1iYXIgdmFyaWFudHMuXG4kZ2wtc2tlbGV0b24tbG9hZGVyLWJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIHNrZWxldG9uIGxvYWRlciBiYWNrZ3JvdW5kIGNvbG9yLlxuJGdsLXNrZWxldG9uLWxvYWRlci1zaGltbWVyLWNvbG9yOiAkZ2wtY29sb3ItbmV1dHJhbC01MDsgLy8gVXNlZCBmb3IgdGhlIGFuaW1hdGVkIHNoaW1tZXIgZWZmZWN0IGluIGEgc2tlbGV0b24gbG9hZGVyLlxuJGdsLXNwaW5uZXItdHJhY2stY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtMTAwOyAvLyBVc2VkIGZvciB0aGUgc3RhdGljIHRyYWNrIChiYWNrZ3JvdW5kKSBvZiBhIGxvYWRpbmcgc3Bpbm5lci5cbiRnbC1zcGlubmVyLXRyYWNrLWNvbG9yLWxpZ2h0OiAkZ2wtY29sb3ItbmV1dHJhbC04MDA7IC8vIFVzZWQgZm9yIHRoZSBzdGF0aWMgdHJhY2sgKGJhY2tncm91bmQpIG9mIGEgbG9hZGluZyBzcGlubmVyIG9uIGEgZGFyayBiYWNrZ3JvdW5kLlxuJGdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC03MDA7IC8vIFVzZWQgZm9yIHRoZSBhbmltYXRlZCBzZWdtZW50IG9mIGEgbG9hZGluZyBzcGlubmVyLlxuJGdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1saWdodDogJGdsLWNvbG9yLW5ldXRyYWwtMjAwOyAvLyBVc2VkIGZvciB0aGUgYW5pbWF0ZWQgc2VnbWVudCBvZiBhIGxvYWRpbmcgc3Bpbm5lciBvbiBhIGRhcmsgYmFja2dyb3VuZC5cbiRnbC10b2tlbi1zZWxlY3Rvci10b2tlbi1jb250YWluZXItdG9rZW4tYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWNvbG9yLW5ldXRyYWwtMzAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRva2VuIGluIGEgdG9rZW4tc2VsZWN0b3Igd2hlbiBpdCdzIHRva2VuLWNvbnRhaW5lciBpcyBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtdG9rZW4tYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtMTAwOyAvLyBVc2VkIGZvciB0aGUgdG9rZW4gYmFja2dyb3VuZCBjb2xvci5cbiRnbC10b29sdGlwLXRleHQtY29sb3Itc3VidGxlOiAkZ2wtY29sb3ItbmV1dHJhbC0yMDA7IC8vIFVzZWQgZm9yIHN1cHBsZW1lbnRhbCB0b29sdGlwIHRleHQgdGhhdCBpcyBsZXNzIHByb21pbmVudCB0aGFuIHRoZSBkZWZhdWx0IHRleHQgYW5kIHJlbWFpbnMgdGhlIHNhbWUgY29sb3IgcmVnYXJkbGVzcyBvZiBtb2RlLlxuJGJsYWNrOiAkZ2wtY29sb3ItbmV1dHJhbC0xMDAwICFkZWZhdWx0O1xuJHdoaXRlOiAkZ2wtY29sb3ItbmV1dHJhbC0wICFkZWZhdWx0O1xuJGJsdWUtNTA6ICRnbC1jb2xvci1ibHVlLTUwICFkZWZhdWx0O1xuJGJsdWUtMTAwOiAkZ2wtY29sb3ItYmx1ZS0xMDAgIWRlZmF1bHQ7XG4kYmx1ZS0yMDA6ICRnbC1jb2xvci1ibHVlLTIwMCAhZGVmYXVsdDtcbiRibHVlLTMwMDogJGdsLWNvbG9yLWJsdWUtMzAwICFkZWZhdWx0O1xuJGJsdWUtNDAwOiAkZ2wtY29sb3ItYmx1ZS00MDAgIWRlZmF1bHQ7XG4kYmx1ZS01MDA6ICRnbC1jb2xvci1ibHVlLTUwMCAhZGVmYXVsdDtcbiRibHVlLTYwMDogJGdsLWNvbG9yLWJsdWUtNjAwICFkZWZhdWx0O1xuJGJsdWUtNzAwOiAkZ2wtY29sb3ItYmx1ZS03MDAgIWRlZmF1bHQ7XG4kYmx1ZS04MDA6ICRnbC1jb2xvci1ibHVlLTgwMCAhZGVmYXVsdDtcbiRibHVlLTkwMDogJGdsLWNvbG9yLWJsdWUtOTAwICFkZWZhdWx0O1xuJGJsdWUtOTUwOiAkZ2wtY29sb3ItYmx1ZS05NTAgIWRlZmF1bHQ7XG4kZ3JheS0xMDogJGdsLWNvbG9yLW5ldXRyYWwtMTAgIWRlZmF1bHQ7XG4kZ3JheS01MDogJGdsLWNvbG9yLW5ldXRyYWwtNTAgIWRlZmF1bHQ7XG4kZ3JheS0xMDA6ICRnbC1jb2xvci1uZXV0cmFsLTEwMCAhZGVmYXVsdDtcbiRncmF5LTIwMDogJGdsLWNvbG9yLW5ldXRyYWwtMjAwICFkZWZhdWx0O1xuJGdyYXktMzAwOiAkZ2wtY29sb3ItbmV1dHJhbC0zMDAgIWRlZmF1bHQ7XG4kZ3JheS00MDA6ICRnbC1jb2xvci1uZXV0cmFsLTQwMCAhZGVmYXVsdDtcbiRncmF5LTUwMDogJGdsLWNvbG9yLW5ldXRyYWwtNTAwICFkZWZhdWx0O1xuJGdyYXktNjAwOiAkZ2wtY29sb3ItbmV1dHJhbC02MDAgIWRlZmF1bHQ7XG4kZ3JheS03MDA6ICRnbC1jb2xvci1uZXV0cmFsLTcwMCAhZGVmYXVsdDtcbiRncmF5LTgwMDogJGdsLWNvbG9yLW5ldXRyYWwtODAwICFkZWZhdWx0O1xuJGdyYXktOTAwOiAkZ2wtY29sb3ItbmV1dHJhbC05MDAgIWRlZmF1bHQ7XG4kZ3JheS05NTA6ICRnbC1jb2xvci1uZXV0cmFsLTk1MCAhZGVmYXVsdDtcbiRncmVlbi01MDogJGdsLWNvbG9yLWdyZWVuLTUwICFkZWZhdWx0O1xuJGdyZWVuLTEwMDogJGdsLWNvbG9yLWdyZWVuLTEwMCAhZGVmYXVsdDtcbiRncmVlbi0yMDA6ICRnbC1jb2xvci1ncmVlbi0yMDAgIWRlZmF1bHQ7XG4kZ3JlZW4tMzAwOiAkZ2wtY29sb3ItZ3JlZW4tMzAwICFkZWZhdWx0O1xuJGdyZWVuLTQwMDogJGdsLWNvbG9yLWdyZWVuLTQwMCAhZGVmYXVsdDtcbiRncmVlbi01MDA6ICRnbC1jb2xvci1ncmVlbi01MDAgIWRlZmF1bHQ7XG4kZ3JlZW4tNjAwOiAkZ2wtY29sb3ItZ3JlZW4tNjAwICFkZWZhdWx0O1xuJGdyZWVuLTcwMDogJGdsLWNvbG9yLWdyZWVuLTcwMCAhZGVmYXVsdDtcbiRncmVlbi04MDA6ICRnbC1jb2xvci1ncmVlbi04MDAgIWRlZmF1bHQ7XG4kZ3JlZW4tOTAwOiAkZ2wtY29sb3ItZ3JlZW4tOTAwICFkZWZhdWx0O1xuJGdyZWVuLTk1MDogJGdsLWNvbG9yLWdyZWVuLTk1MCAhZGVmYXVsdDtcbiRvcmFuZ2UtNTA6ICRnbC1jb2xvci1vcmFuZ2UtNTAgIWRlZmF1bHQ7XG4kb3JhbmdlLTEwMDogJGdsLWNvbG9yLW9yYW5nZS0xMDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTIwMDogJGdsLWNvbG9yLW9yYW5nZS0yMDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTMwMDogJGdsLWNvbG9yLW9yYW5nZS0zMDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTQwMDogJGdsLWNvbG9yLW9yYW5nZS00MDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTUwMDogJGdsLWNvbG9yLW9yYW5nZS01MDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTYwMDogJGdsLWNvbG9yLW9yYW5nZS02MDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTcwMDogJGdsLWNvbG9yLW9yYW5nZS03MDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTgwMDogJGdsLWNvbG9yLW9yYW5nZS04MDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTkwMDogJGdsLWNvbG9yLW9yYW5nZS05MDAgIWRlZmF1bHQ7XG4kb3JhbmdlLTk1MDogJGdsLWNvbG9yLW9yYW5nZS05NTAgIWRlZmF1bHQ7XG4kcHVycGxlLTUwOiAkZ2wtY29sb3ItcHVycGxlLTUwICFkZWZhdWx0O1xuJHB1cnBsZS0xMDA6ICRnbC1jb2xvci1wdXJwbGUtMTAwICFkZWZhdWx0O1xuJHB1cnBsZS0yMDA6ICRnbC1jb2xvci1wdXJwbGUtMjAwICFkZWZhdWx0O1xuJHB1cnBsZS0zMDA6ICRnbC1jb2xvci1wdXJwbGUtMzAwICFkZWZhdWx0O1xuJHB1cnBsZS00MDA6ICRnbC1jb2xvci1wdXJwbGUtNDAwICFkZWZhdWx0O1xuJHB1cnBsZS01MDA6ICRnbC1jb2xvci1wdXJwbGUtNTAwICFkZWZhdWx0O1xuJHB1cnBsZS02MDA6ICRnbC1jb2xvci1wdXJwbGUtNjAwICFkZWZhdWx0O1xuJHB1cnBsZS03MDA6ICRnbC1jb2xvci1wdXJwbGUtNzAwICFkZWZhdWx0O1xuJHB1cnBsZS04MDA6ICRnbC1jb2xvci1wdXJwbGUtODAwICFkZWZhdWx0O1xuJHB1cnBsZS05MDA6ICRnbC1jb2xvci1wdXJwbGUtOTAwICFkZWZhdWx0O1xuJHB1cnBsZS05NTA6ICRnbC1jb2xvci1wdXJwbGUtOTUwICFkZWZhdWx0O1xuJHJlZC01MDogJGdsLWNvbG9yLXJlZC01MCAhZGVmYXVsdDtcbiRyZWQtMTAwOiAkZ2wtY29sb3ItcmVkLTEwMCAhZGVmYXVsdDtcbiRyZWQtMjAwOiAkZ2wtY29sb3ItcmVkLTIwMCAhZGVmYXVsdDtcbiRyZWQtMzAwOiAkZ2wtY29sb3ItcmVkLTMwMCAhZGVmYXVsdDtcbiRyZWQtNDAwOiAkZ2wtY29sb3ItcmVkLTQwMCAhZGVmYXVsdDtcbiRyZWQtNTAwOiAkZ2wtY29sb3ItcmVkLTUwMCAhZGVmYXVsdDtcbiRyZWQtNjAwOiAkZ2wtY29sb3ItcmVkLTYwMCAhZGVmYXVsdDtcbiRyZWQtNzAwOiAkZ2wtY29sb3ItcmVkLTcwMCAhZGVmYXVsdDtcbiRyZWQtODAwOiAkZ2wtY29sb3ItcmVkLTgwMCAhZGVmYXVsdDtcbiRyZWQtOTAwOiAkZ2wtY29sb3ItcmVkLTkwMCAhZGVmYXVsdDtcbiRyZWQtOTUwOiAkZ2wtY29sb3ItcmVkLTk1MCAhZGVmYXVsdDtcbiRnbC1hY3Rpb24tZGlzYWJsZWQtZm9yZWdyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtNDAwOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRpc2FibGVkIGFjdGlvbi5cbiRnbC1hY3Rpb24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtNTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uLlxuJGdsLWFjdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRpc2FibGVkIGFjdGlvbi5cbiRnbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC04MDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC05NTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGlzYWJsZWQ6ICRnbC1jb2xvci1uZXV0cmFsLTQwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkaXNhYmxlZCBhY3Rpb24gdGhhdCBzdGF5cyBzZWxlY3RlZC4gU2l0cyBiZXR3ZWVuIHRoZSBkaXNhYmxlZCBiYWNrZ3JvdW5kIGFuZCB0aGUgZW5hYmxlZCBzZWxlY3RlZCBiYWNrZ3JvdW5kIHNvIHRoZSBzZWxlY3RlZCBzdGF0ZSBrZWVwcyAzOjEgY29udHJhc3QgYWdhaW5zdCB0aGUgcGFnZSB3aGlsZSBzdGlsbCByZWFkaW5nIGFzIGRpc2FibGVkLlxuJGdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtOTAwOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLWFscGhhLWRhcmstNjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1hbHBoYS1kYXJrLTE2OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC04MDA7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC05NTA7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDA7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtY29sb3ItYWxwaGEtZGFyay02OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItYWxwaGEtZGFyay0xNjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1hbHBoYS0wOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1yZWQtNjAwOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1yZWQtODAwOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLXJlZC05NTA7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1ibHVlLTUwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1jb2xvci1ibHVlLTYwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWNvbG9yLWJsdWUtNzAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLWFscGhhLTA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtNjAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWNvbG9yLW5ldXRyYWwtNzAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtY29sb3ItbmV1dHJhbC04MDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OiAkZ2wtY29sb3ItYWxwaGEtMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIHRoZSBkZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4kZ2wtYmFja2dyb3VuZC1jb2xvci1zdWJ0bGU6ICRnbC1jb2xvci1uZXV0cmFsLTEwOyAvLyBVc2VkIHRvIHNsaWdodGx5IGRpZmZlcmVudGlhdGUgdGhlIGJhY2tncm91bmQgZnJvbSB0aGUgZGVmYXVsdC5cbiRnbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZzogJGdsLWNvbG9yLW5ldXRyYWwtNTA7IC8vIFVzZWQgdG8gbWFrZSB0aGUgYmFja2dyb3VuZCBlYXNpbHkgc3RhbmQgb3V0IGZyb20gdGhlIGRlZmF1bHQuXG4kZ2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogJGdsLWNvbG9yLW5ldXRyYWwtMTA7IC8vIFVzZWQgdG8gaWRlbnRpZnkgYSBkaXNhYmxlZCBzZWN0aW9uLlxuJGdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcDogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgY29tcG9uZW50cywgbGlrZSB0b29sdGlwcyBhbmQgZHJhd2VycywgYW5kIGNvbnRlbnQsIGxpa2UgYSBzdGlja3kgaGVhZGVyLCB0aGF0IG92ZXJsYXAgb3RoZXIgY29udGVudC5cbiRnbC1iYWNrZ3JvdW5kLWNvbG9yLXNlY3Rpb246ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIGNvbnRhaW5lcnMsIGxpa2UgYSBjYXJkIGhlYWRlciwgdGhhdCBhcmUgdmlzdWFsbHkgZGlzdGluY3QgZnJvbSB0aGUgZGVmYXVsdCBwYWdlIGJhY2tncm91bmQgb25seSB3aGVuIG5lY2Vzc2FyeSB0byBtYWludGFpbiBhZmZvcmRhbmNlIGFuZCBoaWVyYXJjaHkgaW4gZGlmZmVyZW50IG1vZGVzLlxuJGdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxheTogJGdsLWNvbG9yLWFscGhhLWRhcmstMjQ7IC8vIFVzZWQgZm9yIGFuIG92ZXJsYXkgdGhhdCBjb3ZlcnMgb3RoZXIgY29udGVudC5cbiRnbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGRlZmF1bHQgYmFja2dyb3VuZC5cbiRnbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGlzYWJsZWQ6ICRnbC1jb2xvci1uZXV0cmFsLTEwOyAvLyBVc2VkIGZvciBkaXNhYmxlZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYmFja2dyb3VuZC5cbiRnbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItY29uY2F0ZW5hdGlvbjogJGdsLWNvbG9yLW5ldXRyYWwtMTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIHN0YXRpYyBjb250ZW50IHRoYXQgcHJlcGVuZHMgb3IgYXBwZW5kcyBhIHRleHQgaW5wdXQuXG4kZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXJlYWRvbmx5OiAkZ2wtY29sb3ItYWxwaGEtZGFyay0yOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBzdGF0aWMgY29udGVudCB0aGF0IHByZXBlbmRzIG9yIGFwcGVuZHMgYSB0ZXh0IGlucHV0LlxuJGdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0OiAkZ2wtY29sb3ItbmV1dHJhbC04MDA7IC8vIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQuXG4kZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyOiAkZ2wtY29sb3ItbmV1dHJhbC05NTA7IC8vIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQgb24gaG92ZXIuXG4kZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtNDAwOyAvLyBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgZGVmYXVsdCBib3JkZXIuXG4kZ2wtY29udHJvbC1ib3JkZXItY29sb3ItaG92ZXI6ICRnbC1jb2xvci1uZXV0cmFsLTYwMDsgLy8gVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGJvcmRlciBvbiBob3Zlci5cbiRnbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWNvbG9yLW5ldXRyYWwtOTAwOyAvLyBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgYm9yZGVyIG9uIGZvY3VzLlxuJGdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRpc2FibGVkOiAkZ2wtY29sb3ItbmV1dHJhbC0xMDA7IC8vIFVzZWQgZm9yIGRpc2FibGVkIGZvcm0gY29udHJvbCAoaW5wdXQsIHJhZGlvIGJ1dHRvbiwgY2hlY2tib3gsIHRleHRhcmVhKSBib3JkZXIuXG4kZ2wtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtNTAwOyAvLyBVc2VkIGZvciBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiBpbnB1dHMuXG4kZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQ6ICRnbC1jb2xvci1uZXV0cmFsLTA7IC8vIFVzZWQgZm9yIGNoZWNrYm94IGFuZCByYWRpbyBidXR0b24gc3RhdGUgaW5kaWNhdG9ycy5cbiRnbC1mZWVkYmFjay1zdHJvbmctYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtODAwOyAvLyBVc2VkIGZvciBhIGJhY2tncm91bmQgYXNzb2NpYXRlZCB3aXRoIHN0cm9uZyBmZWVkYmFjayBsaWtlIGEgdG9vbHRpcCBvciB0b2FzdCBtZXNzYWdlLlxuJGdsLWZlZWRiYWNrLXN0cm9uZy1ib3JkZXItY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgYXNzb2NpYXRlZCB3aXRoIHN0cm9uZyBmZWVkYmFjay5cbiRnbC1mZWVkYmFjay1zdHJvbmctdGV4dC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGV4dCBvbiBhIHN0cm9uZyBmZWVkYmFjayBiYWNrZ3JvdW5kLlxuJGdsLWZlZWRiYWNrLXN0cm9uZy1pY29uLWNvbG9yOiAkZ2wtY29sb3ItbmV1dHJhbC0wOyAvLyBVc2VkIGZvciBhbiBpY29uIG9uIGEgc3Ryb25nIGZlZWRiYWNrIGJhY2tncm91bmQuXG4kZ2wtZmVlZGJhY2stc3Ryb25nLWxpbmstY29sb3I6ICRnbC1jb2xvci1ibHVlLTMwMDsgLy8gVXNlZCBmb3IgYSBsaW5rIG9uIGEgc3Ryb25nIGZlZWRiYWNrIGJhY2tncm91bmQuXG4kZ2wtZmVlZGJhY2stbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItbmV1dHJhbC01MDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGZlZWRiYWNrIGl0ZW0gd2hlbiB0aGVyZSBpc24ndCBhIHNwZWNpZmljIG1lYW5pbmcgb3IgdXJnZW5jeS5cbiRnbC1mZWVkYmFjay1uZXV0cmFsLWJvcmRlci1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtMjAwOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuXG4kZ2wtZmVlZGJhY2stbmV1dHJhbC10ZXh0LWNvbG9yOiAkZ2wtY29sb3ItbmV1dHJhbC03MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuXG4kZ2wtZmVlZGJhY2stbmV1dHJhbC1pY29uLWNvbG9yOiAkZ2wtY29sb3ItbmV1dHJhbC02MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuXG4kZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItYmx1ZS01MDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLlxuJGdsLWZlZWRiYWNrLWluZm8tYm9yZGVyLWNvbG9yOiAkZ2wtY29sb3ItYmx1ZS0yMDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLlxuJGdsLWZlZWRiYWNrLWluZm8tdGV4dC1jb2xvcjogJGdsLWNvbG9yLWJsdWUtNzAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgbmV3IGluZm9ybWF0aW9uIG9yIGEgY2hhbmdlIHRoYXQgZG9lc24ndCByZXF1aXJlIGltbWVkaWF0ZSBhY3Rpb24uXG4kZ2wtZmVlZGJhY2staW5mby1pY29uLWNvbG9yOiAkZ2wtY29sb3ItYmx1ZS02MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGFuIGluZm9ybWF0aW9uYWwgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBuZXcgaW5mb3JtYXRpb24gb3IgYSBjaGFuZ2UgdGhhdCBkb2Vzbid0IHJlcXVpcmUgaW1tZWRpYXRlIGFjdGlvbi5cbiRnbC1mZWVkYmFjay1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1ncmVlbi01MDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uXG4kZ2wtZmVlZGJhY2stc3VjY2Vzcy1ib3JkZXItY29sb3I6ICRnbC1jb2xvci1ncmVlbi0yMDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uXG4kZ2wtZmVlZGJhY2stc3VjY2Vzcy10ZXh0LWNvbG9yOiAkZ2wtY29sb3ItZ3JlZW4tNzAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3MgZmVlZGJhY2sgaXRlbSB3aGVuIGNvbmZpcm1pbmcgdGhlIHN1Y2Nlc3NmdWwgY29tcGxldGlvbiBvZiBhIHVzZXItaW5pdGlhdGVkIGFjdGlvbi5cbiRnbC1mZWVkYmFjay1zdWNjZXNzLWljb24tY29sb3I6ICRnbC1jb2xvci1ncmVlbi02MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgc3VjY2VzcyBmZWVkYmFjayBpdGVtIHdoZW4gY29uZmlybWluZyB0aGUgc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIGEgdXNlci1pbml0aWF0ZWQgYWN0aW9uLlxuJGdsLWZlZWRiYWNrLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLW9yYW5nZS01MDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBwb3RlbnRpYWwgaXNzdWUgb3Igc2Vuc2l0aXZlIGluZm9ybWF0aW9uLlxuJGdsLWZlZWRiYWNrLXdhcm5pbmctYm9yZGVyLWNvbG9yOiAkZ2wtY29sb3Itb3JhbmdlLTIwMDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHdhcm5pbmcgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIHBvdGVudGlhbCBpc3N1ZSBvciBzZW5zaXRpdmUgaW5mb3JtYXRpb24uXG4kZ2wtZmVlZGJhY2std2FybmluZy10ZXh0LWNvbG9yOiAkZ2wtY29sb3Itb3JhbmdlLTcwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBwb3RlbnRpYWwgaXNzdWUgb3Igc2Vuc2l0aXZlIGluZm9ybWF0aW9uLlxuJGdsLWZlZWRiYWNrLXdhcm5pbmctaWNvbi1jb2xvcjogJGdsLWNvbG9yLW9yYW5nZS02MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi5cbiRnbC1mZWVkYmFjay1kYW5nZXItYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLXJlZC01MDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uXG4kZ2wtZmVlZGJhY2stZGFuZ2VyLWJvcmRlci1jb2xvcjogJGdsLWNvbG9yLXJlZC01MDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uXG4kZ2wtZmVlZGJhY2stZGFuZ2VyLXRleHQtY29sb3I6ICRnbC1jb2xvci1yZWQtNzAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRhbmdlciBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgY3JpdGljYWwgaXNzdWUgdGhhdCBoYXMganVzdCBvY2N1cnJlZCBhbmQgcmVxdWlyZXMgaW1tZWRpYXRlIGF0dGVudGlvbi5cbiRnbC1mZWVkYmFjay1kYW5nZXItaWNvbi1jb2xvcjogJGdsLWNvbG9yLXJlZC02MDA7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBjcml0aWNhbCBpc3N1ZSB0aGF0IGhhcyBqdXN0IG9jY3VycmVkIGFuZCByZXF1aXJlcyBpbW1lZGlhdGUgYXR0ZW50aW9uLlxuJGdsLWZlZWRiYWNrLWJyYW5kLWJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1wdXJwbGUtNTA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYnJhbmQtcmVsYXRlZCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIGluZm9ybWF0aW9uIHRoYXQgcGVydGFpbnMgdG8gR2l0TGFiLlxuJGdsLWZlZWRiYWNrLWJyYW5kLWJvcmRlci1jb2xvcjogJGdsLWNvbG9yLXB1cnBsZS0yMDA7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBicmFuZC1yZWxhdGVkIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgaW5mb3JtYXRpb24gdGhhdCBwZXJ0YWlucyB0byBHaXRMYWIuXG4kZ2wtZmVlZGJhY2stYnJhbmQtdGV4dC1jb2xvcjogJGdsLWNvbG9yLXB1cnBsZS03MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgYnJhbmQtcmVsYXRlZCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIGluZm9ybWF0aW9uIHRoYXQgcGVydGFpbnMgdG8gR2l0TGFiLlxuJGdsLWZlZWRiYWNrLWJyYW5kLWljb24tY29sb3I6ICRnbC1jb2xvci1wdXJwbGUtNjAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGJyYW5kLXJlbGF0ZWQgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBpbmZvcm1hdGlvbiB0aGF0IHBlcnRhaW5zIHRvIEdpdExhYi5cbiRnbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yOiAkZ2wtY29sb3ItYmx1ZS01MDA7IC8vIFVzZWQgZm9yIHRoZSBvdXRlciBjb2xvciBwb3J0aW9uIG9mIHRoZSBmb2N1cyByaW5nLlxuJGdsLWhpZ2hsaWdodC1tYXRjaC1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3Itb3JhbmdlLTUwMDsgLy8gVXNlZCBmb3IgdGVtcG9yYXJ5IHZpc3VhbCBlbXBoYXNpcyBvZiBiYWNrZ3JvdW5kcyBvZiBtYXRjaGVkIHNlYXJjaCB0ZXJtcywgZmlsdGVyZWQgcmVzdWx0cywgb3IgYXV0b2NvbXBsZXRlIHN1Z2dlc3Rpb25zIHdpdGhvdXQgaW1wbHlpbmcgYW55IHBhcnRpY3VsYXIgc3RhdGUgb3IgbWVhbmluZy5cbiRnbC1oaWdobGlnaHQtbWF0Y2gtdGV4dC1jb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtMDsgLy8gVXNlZCBmb3IgdGV4dCB3aXRoaW4gdGVtcG9yYXJpbHkgaGlnaGxpZ2h0ZWQgbWF0Y2hlcyB0byBtYWludGFpbiByZWFkYWJpbGl0eSB3aGlsZSBkcmF3aW5nIGF0dGVudGlvbiB3aXRob3V0IGNvbnZleWluZyBzdGF0dXMuXG4kZ2wtaGlnaGxpZ2h0LXRhcmdldC1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItYmx1ZS01MDsgLy8gVXNlZCBmb3IgdGVtcG9yYXJ5IHZpc3VhbCBlbXBoYXNpcyBmb3IgYmFja2dyb3VuZHMgb2YgcmVmZXJlbmNlZCBlbGVtZW50cyAoZm9yIGV4YW1wbGUgVVJMIGFuY2hvcnMsIGhvdmVyIHN0YXRlcykgb3IgdG8gc2hvdyByZWxhdGlvbnNoaXBzIGJldHdlZW4gY29udGVudCB3aXRob3V0IGltcGx5aW5nIHN0YXR1cyBvciByZXF1aXJpbmcgYWN0aW9uLlxuJGdsLWhpZ2hsaWdodC10YXJnZXQtYm9yZGVyLWNvbG9yOiAkZ2wtY29sb3ItYmx1ZS0yMDA7IC8vIFVzZWQgdG8gcHJvdmlkZSBhZGRpdGlvbmFsIHZpc3VhbCBlbXBoYXNpcyBmb3IgYm9yZGVycyBvZiB0ZW1wb3JhcmlseSB0YXJnZXRlZCBlbGVtZW50cyBvciB3aGVuIHZpc3VhbGl6aW5nIGNvbm5lY3Rpb25zIGJldHdlZW4gcmVsYXRlZCBjb250ZW50LCBkaXN0aW5jdCBmcm9tIHBlcnNpc3RlbnQgc3RhdGVzLlxuJGdsLWljb24tY29sb3ItaW5mbzogJGdsLWNvbG9yLWJsdWUtNzAwOyAvLyBVc2VkIGZvciBhbiBpY29uIGFzc29jaWF0ZWQgd2l0aCBpbmZvcm1hdGlvbiBvciBoZWxwLlxuJGdsLXN0YXR1cy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIHN0YXR1cyBpdGVtIHdoZW4gdGhlIHN0YXR1cyBpcyBuZWl0aGVyIHBvc2l0aXZlIG5vciBuZWdhdGl2ZSwgb3Igd2hlbiBpbmRpY2F0aW5nIGEgc3BlY2lhbCBidXQgc3RhYmxlIHN0YXRlLlxuJGdsLXN0YXR1cy1uZXV0cmFsLXRleHQtY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTcwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBuZXV0cmFsIHN0YXR1cyBpdGVtIHdoZW4gdGhlIHN0YXR1cyBpcyBuZWl0aGVyIHBvc2l0aXZlIG5vciBuZWdhdGl2ZSwgb3Igd2hlbiBpbmRpY2F0aW5nIGEgc3BlY2lhbCBidXQgc3RhYmxlIHN0YXRlLlxuJGdsLXN0YXR1cy1uZXV0cmFsLWljb24tY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTUwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSBuZXV0cmFsIHN0YXR1cyBpdGVtIHdoZW4gdGhlIHN0YXR1cyBpcyBuZWl0aGVyIHBvc2l0aXZlIG5vciBuZWdhdGl2ZSwgb3Igd2hlbiBpbmRpY2F0aW5nIGEgc3BlY2lhbCBidXQgc3RhYmxlIHN0YXRlLlxuJGdsLXN0YXR1cy1pbmZvLWJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1ibHVlLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBub3Rld29ydGh5IG9uZ29pbmcgY29uZGl0aW9uIG9yIGEgc3RhdGUgb2YgYWN0aXZlIHByb2dyZXNzLlxuJGdsLXN0YXR1cy1pbmZvLXRleHQtY29sb3I6ICRnbC1jb2xvci1ibHVlLTcwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBub3Rld29ydGh5IG9uZ29pbmcgY29uZGl0aW9uIG9yIGEgc3RhdGUgb2YgYWN0aXZlIHByb2dyZXNzLlxuJGdsLXN0YXR1cy1pbmZvLWljb24tY29sb3I6ICRnbC1jb2xvci1ibHVlLTUwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBub3Rld29ydGh5IG9uZ29pbmcgY29uZGl0aW9uIG9yIGEgc3RhdGUgb2YgYWN0aXZlIHByb2dyZXNzLlxuJGdsLXN0YXR1cy1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1ncmVlbi0xMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBwb3NpdGl2ZSBvdXRjb21lLCBjb21wbGV0aW9uLCBvciBkZXNpcmVkIHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi5cbiRnbC1zdGF0dXMtc3VjY2Vzcy10ZXh0LWNvbG9yOiAkZ2wtY29sb3ItZ3JlZW4tNzAwOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3Mgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgcG9zaXRpdmUgb3V0Y29tZSwgY29tcGxldGlvbiwgb3IgZGVzaXJlZCBzdGF0ZS4gQ2xlYXJseSBjb252ZXlzIGEgcG9zaXRpdmUgY29ubm90YXRpb24uXG4kZ2wtc3RhdHVzLXN1Y2Nlc3MtaWNvbi1jb2xvcjogJGdsLWNvbG9yLWdyZWVuLTUwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHBvc2l0aXZlIG91dGNvbWUsIGNvbXBsZXRpb24sIG9yIGRlc2lyZWQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIHBvc2l0aXZlIGNvbm5vdGF0aW9uLlxuJGdsLXN0YXR1cy13YXJuaW5nLWJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1vcmFuZ2UtMTAwOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgc3RhdGUgdGhhdCByZXF1aXJlcyBoZWlnaHRlbmVkIGF3YXJlbmVzcyBvciBjYXV0aW9uLCBidXQgaXMgbm90IG5lY2Vzc2FyaWx5IHByb2JsZW1hdGljLiBSZXByZXNlbnRzIGEgc3RhdGUgdGhhdCB3YXJyYW50cyBleHRyYSBhdHRlbnRpb24gb3IgY2FyZSB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIGl0ZW0uXG4kZ2wtc3RhdHVzLXdhcm5pbmctdGV4dC1jb2xvcjogJGdsLWNvbG9yLW9yYW5nZS03MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgd2FybmluZyBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBzdGF0ZSB0aGF0IHJlcXVpcmVzIGhlaWdodGVuZWQgYXdhcmVuZXNzIG9yIGNhdXRpb24sIGJ1dCBpcyBub3QgbmVjZXNzYXJpbHkgcHJvYmxlbWF0aWMuIFJlcHJlc2VudHMgYSBzdGF0ZSB0aGF0IHdhcnJhbnRzIGV4dHJhIGF0dGVudGlvbiBvciBjYXJlIHdoZW4gaW50ZXJhY3Rpbmcgd2l0aCB0aGUgaXRlbS5cbiRnbC1zdGF0dXMtd2FybmluZy1pY29uLWNvbG9yOiAkZ2wtY29sb3Itb3JhbmdlLTUwMDsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHN0YXRlIHRoYXQgcmVxdWlyZXMgaGVpZ2h0ZW5lZCBhd2FyZW5lc3Mgb3IgY2F1dGlvbiwgYnV0IGlzIG5vdCBuZWNlc3NhcmlseSBwcm9ibGVtYXRpYy4gUmVwcmVzZW50cyBhIHN0YXRlIHRoYXQgd2FycmFudHMgZXh0cmEgYXR0ZW50aW9uIG9yIGNhcmUgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBpdGVtLlxuJGdsLXN0YXR1cy1kYW5nZXItYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLXJlZC0xMDA7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIGNyaXRpY2FsIG9yIHNldmVyZWx5IHByb2JsZW1hdGljIGN1cnJlbnQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLCByZXByZXNlbnRpbmcgYSBzZXJpb3VzLCBvbmdvaW5nIGlzc3VlIG9yIHVuZGVzaXJlZCBjb25kaXRpb24uXG4kZ2wtc3RhdHVzLWRhbmdlci10ZXh0LWNvbG9yOiAkZ2wtY29sb3ItcmVkLTcwMDsgLy8gVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgY3JpdGljYWwgb3Igc2V2ZXJlbHkgcHJvYmxlbWF0aWMgY3VycmVudCBzdGF0ZS4gQ2xlYXJseSBjb252ZXlzIGEgbmVnYXRpdmUgY29ubm90YXRpb24sIHJlcHJlc2VudGluZyBhIHNlcmlvdXMsIG9uZ29pbmcgaXNzdWUgb3IgdW5kZXNpcmVkIGNvbmRpdGlvbi5cbiRnbC1zdGF0dXMtZGFuZ2VyLWljb24tY29sb3I6ICRnbC1jb2xvci1yZWQtNTAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBjcml0aWNhbCBvciBzZXZlcmVseSBwcm9ibGVtYXRpYyBjdXJyZW50IHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBuZWdhdGl2ZSBjb25ub3RhdGlvbiwgcmVwcmVzZW50aW5nIGEgc2VyaW91cywgb25nb2luZyBpc3N1ZSBvciB1bmRlc2lyZWQgY29uZGl0aW9uLlxuJGdsLXN0YXR1cy1icmFuZC1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItcHVycGxlLTEwMDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBicmFuZC1yZWxhdGVkIHN0YXR1cyBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIHRoZSBzdGF0ZSBvZiB1bmlxdWUgZmVhdHVyZXMgb3IgZWxlbWVudHMgc3BlY2lmaWMgdG8gdGhlIEdpdExhYiBicmFuZCBpZGVudGl0eS4gSGVscHMgZGlzdGluZ3Vpc2ggYW5kIGVtcGhhc2l6ZSBicmFuZC1zcGVjaWZpYyBlbGVtZW50cyB3aXRoaW4gdGhlIGludGVyZmFjZS5cbiRnbC1zdGF0dXMtYnJhbmQtdGV4dC1jb2xvcjogJGdsLWNvbG9yLXB1cnBsZS03MDA7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgYnJhbmQtcmVsYXRlZCBzdGF0dXMgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyB0aGUgc3RhdGUgb2YgdW5pcXVlIGZlYXR1cmVzIG9yIGVsZW1lbnRzIHNwZWNpZmljIHRvIHRoZSBHaXRMYWIgYnJhbmQgaWRlbnRpdHkuIEhlbHBzIGRpc3Rpbmd1aXNoIGFuZCBlbXBoYXNpemUgYnJhbmQtc3BlY2lmaWMgZWxlbWVudHMgd2l0aGluIHRoZSBpbnRlcmZhY2UuXG4kZ2wtc3RhdHVzLWJyYW5kLWljb24tY29sb3I6ICRnbC1jb2xvci1wdXJwbGUtNTAwOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGJyYW5kLXJlbGF0ZWQgc3RhdHVzIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgdGhlIHN0YXRlIG9mIHVuaXF1ZSBmZWF0dXJlcyBvciBlbGVtZW50cyBzcGVjaWZpYyB0byB0aGUgR2l0TGFiIGJyYW5kIGlkZW50aXR5LiBIZWxwcyBkaXN0aW5ndWlzaCBhbmQgZW1waGFzaXplIGJyYW5kLXNwZWNpZmljIGVsZW1lbnRzIHdpdGhpbiB0aGUgaW50ZXJmYWNlLlxuJGdsLXRleHQtY29sb3ItZGVmYXVsdDogJGdsLWNvbG9yLW5ldXRyYWwtODAwOyAvLyBVc2VkIGZvciB0aGUgZGVmYXVsdCB0ZXh0IGNvbG9yLlxuJGdsLXRleHQtY29sb3Itc3VidGxlOiAkZ2wtY29sb3ItbmV1dHJhbC02MDA7IC8vIFVzZWQgZm9yIHN1cHBsZW1lbnRhbCB0ZXh0IHRoYXQgZG9lc24ndCBuZWVkIHRvIGJlIGFzIHByb21pbmVudCBhcyBvdGhlciB0ZXh0LlxuJGdsLXRleHQtY29sb3Itc3Ryb25nOiAkZ2wtY29sb3ItbmV1dHJhbC05NTA7IC8vIFVzZWQgZm9yIHRleHQgd2l0aCB0aGUgaGlnaGVzdCBjb250cmFzdC5cbiRnbC10ZXh0LWNvbG9yLWhlYWRpbmc6ICRnbC1jb2xvci1uZXV0cmFsLTk1MDsgLy8gVXNlZCBmb3IgaGVhZGluZ3MgbGV2ZWwgMS02LlxuJGdsLXRleHQtY29sb3ItbGluazogJGdsLWNvbG9yLWJsdWUtNzAwOyAvLyBVc2VkIGZvciBkZWZhdWx0IHRleHQgbGlua3MuXG4kZ2wtdGV4dC1jb2xvci13YXJuaW5nOiAkZ2wtY29sb3Itb3JhbmdlLTYwMDsgLy8gVXNlZCBmb3IgdGV4dCB0aGF0IHJlcXVpcmVzIGNhdXRpb24gb3IgY2FyZWZ1bCBhdHRlbnRpb24uXG4kZ2wtdGV4dC1jb2xvci1kYW5nZXI6ICRnbC1jb2xvci1yZWQtNjAwOyAvLyBVc2VkIGZvciB0ZXh0IGluZGljYXRpbmcgYSBwcm9ibGVtLCBjcml0aWNhbCBzdGF0ZSwgZGVzdHJ1Y3RpdmUgYWN0aW9uLCBlcnJvciwgZmFpbHVyZSwgcmVtb3ZhbCwgc3RvcCwgb3IgZGVjbGluYXRpb24uXG4kZ2wtdGV4dC1jb2xvci1zdWNjZXNzOiAkZ2wtY29sb3ItZ3JlZW4tNjAwOyAvLyBVc2VkIGZvciB0ZXh0IGluZGljYXRpbmcgc3VjY2VzcywgY29tcGxldGlvbiwgYXBwcm92YWwsIGFkZGl0aW9uLCBvciB2YWxpZGl0eS5cbiRnbC10ZXh0LWNvbG9yLWRpc2FibGVkOiAkZ2wtY29sb3ItbmV1dHJhbC00MDA7IC8vIFVzZWQgZm9yIGRpc2FibGVkIHRleHQuXG4kZ2wtaGVhZGluZy0xLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS03MDA7XG4kZ2wtaGVhZGluZy0xLWxldHRlci1zcGFjaW5nOiAkZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZztcbiRnbC1oZWFkaW5nLTEtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctMi1mb250LXNpemU6ICRnbC1mb250LXNpemUtNjAwO1xuJGdsLWhlYWRpbmctMi1sZXR0ZXItc3BhY2luZzogJGdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy0yLWxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLTMtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTUwMDtcbiRnbC1oZWFkaW5nLTMtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctNC1mb250LXNpemU6ICRnbC1mb250LXNpemUtNDAwO1xuJGdsLWhlYWRpbmctNC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy01LWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS0zMDA7XG4kZ2wtaGVhZGluZy01LWxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLTYtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTIwMDtcbiRnbC1oZWFkaW5nLTYtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtMTAwLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS0xMDA7XG4kZ2wtaGVhZGluZy1zY2FsZS0xMDAtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS0yMDA7XG4kZ2wtaGVhZGluZy1zY2FsZS0yMDAtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtMzAwLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS0zMDA7XG4kZ2wtaGVhZGluZy1zY2FsZS0zMDAtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNDAwLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS00MDA7XG4kZ2wtaGVhZGluZy1zY2FsZS00MDAtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS01MDA7XG4kZ2wtaGVhZGluZy1zY2FsZS01MDAtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNjAwLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS02MDA7XG4kZ2wtaGVhZGluZy1zY2FsZS02MDAtbGV0dGVyLXNwYWNpbmc6ICRnbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNjAwLWxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXNpemU6ICRnbC1mb250LXNpemUtNzAwO1xuJGdsLWhlYWRpbmctc2NhbGUtNzAwLWxldHRlci1zcGFjaW5nOiAkZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTcwMC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS04MDAtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTgwMDtcbiRnbC1oZWFkaW5nLXNjYWxlLTgwMC1sZXR0ZXItc3BhY2luZzogJGdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTEwMC1maXhlZDtcbiRnbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTIwMC1maXhlZDtcbiRnbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTMwMC1maXhlZDtcbiRnbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTQwMC1maXhlZDtcbiRnbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTUwMC1maXhlZDtcbiRnbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTYwMC1maXhlZDtcbiRnbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogJGdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS03MDAtZml4ZWQ7XG4kZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtbGV0dGVyLXNwYWNpbmc6ICRnbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXNpemU6ICRnbC1mb250LXNpemUtODAwLWZpeGVkO1xuJGdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiAkZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZztcbiRnbC1oZWFkaW5nLWRpc3BsYXktZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTgwMDtcbiRnbC1oZWFkaW5nLWRpc3BsYXktbGV0dGVyLXNwYWNpbmc6ICRnbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nO1xuJGdsLWhlYWRpbmctZGlzcGxheS1tYXJnaW4tYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS02O1xuJGdsLWhlYWRpbmctMS1maXhlZC1mb250LXNpemU6ICRnbC1mb250LXNpemUtNzAwLWZpeGVkO1xuJGdsLWhlYWRpbmctMS1maXhlZC1sZXR0ZXItc3BhY2luZzogJGdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy0xLWZpeGVkLWxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLTItZml4ZWQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTYwMC1maXhlZDtcbiRnbC1oZWFkaW5nLTItZml4ZWQtbGV0dGVyLXNwYWNpbmc6ICRnbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nO1xuJGdsLWhlYWRpbmctMi1maXhlZC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy0zLWZpeGVkLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS01MDAtZml4ZWQ7XG4kZ2wtaGVhZGluZy0zLWZpeGVkLWxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLTQtZml4ZWQtZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLTQwMC1maXhlZDtcbiRnbC1oZWFkaW5nLTQtZml4ZWQtbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctNS1maXhlZC1mb250LXNpemU6ICRnbC1mb250LXNpemUtMzAwLWZpeGVkO1xuJGdsLWhlYWRpbmctNS1maXhlZC1saW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy02LWZpeGVkLWZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS0yMDAtZml4ZWQ7XG4kZ2wtaGVhZGluZy02LWZpeGVkLWxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtaGVhZGluZztcbiRnbC1ib3JkZXItY29sb3Itc2VjdGlvbjogJGdsLWJvcmRlci1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIHRoYXQgc3Vycm91bmRzIGNvbnRlbnQgb3IgZWxlbWVudHMgd2hlbiB0aGV5IGFwcGVhciBhcyBhIGNsb3NlZCBjb250YWluZXIgb3IgY2xvc2VkIHNlY3Rpb24gb2YgdGhlIHBhZ2UuXG4kZ2wtYm9yZGVyLXJhZGl1cy1kZWZhdWx0OiAkZ2wtYm9yZGVyLXJhZGl1cy1tZDtcbiRnbC1mb250LXNpemUtYmFzZTogJGdsLWZvbnQtc2l6ZS1tZDtcbiRnbC1zaGFkb3ctc206IDAgMCAycHggMCAkZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQsIDAgMXB4IDRweCAwICRnbC1zaGFkb3ctY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3Igc3VyZmFjZXMgdGhhdCBuZWVkIHRvIGluZGljYXRlIHVzZXJzIGNhbiBtYW51YWxseSBpbnRlcmFjdCB3aXRoIHRoZW0uIEZvciBleGFtcGxlLCBjYXJkcyBpbiBpc3N1ZSBib2FyZC5cbiRnbC1zaGFkb3ctbWQ6IDAgMCAxcHggMCAkZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQsIDAgMCAycHggMCAkZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQsIDAgMnB4IDhweCAwICRnbC1zaGFkb3ctY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3Igc3VyZmFjZXMgdGhhdCBuZWVkIGJvdW5kYXJ5IGRlZmluaXRpb24gYW5kIGFwcGVhciBvbiBob3Zlci4gRm9yIGV4YW1wbGUsIHBvcG92ZXJzLlxuJGdsLXNoYWRvdy1sZzogMCAwIDJweCAwICRnbC1zaGFkb3ctY29sb3ItZGVmYXVsdCwgMCAwIDJweCAwICRnbC1zaGFkb3ctY29sb3ItZGVmYXVsdCwgMCA0cHggMTJweCAwICRnbC1zaGFkb3ctY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgbGFyZ2Ugc3VyZmFjZXMgdGhhdCBwcmVzZW50IGFkZGl0aW9uYWwgY29udGV4dCB0byB0aGUgdXNlci5cbiRnbC1hbGVydC1ib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1sZzsgLy8gVXNlZCBmb3IgYWxlcnQgYm9yZGVyIHJhZGl1cy5cbiRnbC1hbGVydC1uZXV0cmFsLXRpdGxlLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nOyAvLyBVc2VkIGZvciB0aGUgdGl0bGUgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LlxuJGdsLWFsZXJ0LW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcjogJGdsLWZlZWRiYWNrLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LlxuJGdsLWFsZXJ0LW5ldXRyYWwtYm9yZGVyLWNvbG9yOiAkZ2wtZmVlZGJhY2stbmV1dHJhbC1ib3JkZXItY29sb3I7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LlxuJGdsLWFsZXJ0LWluZm8tdGl0bGUtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7IC8vIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhbiBpbmZvIGFsZXJ0LlxuJGdsLWFsZXJ0LWluZm8tYmFja2dyb3VuZC1jb2xvcjogJGdsLWZlZWRiYWNrLWluZm8tYmFja2dyb3VuZC1jb2xvcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgYW4gaW5mbyBhbGVydC5cbiRnbC1hbGVydC1pbmZvLWJvcmRlci1jb2xvcjogJGdsLWZlZWRiYWNrLWluZm8tYm9yZGVyLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuXG4kZ2wtYWxlcnQtc3VjY2Vzcy10aXRsZS1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZzsgLy8gVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC5cbiRnbC1hbGVydC1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6ICRnbC1mZWVkYmFjay1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC5cbiRnbC1hbGVydC1zdWNjZXNzLWJvcmRlci1jb2xvcjogJGdsLWZlZWRiYWNrLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC5cbiRnbC1hbGVydC13YXJuaW5nLXRpdGxlLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nOyAvLyBVc2VkIGZvciB0aGUgdGl0bGUgY29sb3Igb2YgYSB3YXJuaW5nIGFsZXJ0LlxuJGdsLWFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogJGdsLWZlZWRiYWNrLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgYSB3YXJuaW5nIGFsZXJ0LlxuJGdsLWFsZXJ0LXdhcm5pbmctYm9yZGVyLWNvbG9yOiAkZ2wtZmVlZGJhY2std2FybmluZy1ib3JkZXItY29sb3I7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSB3YXJuaW5nIGFsZXJ0LlxuJGdsLWFsZXJ0LWRhbmdlci10aXRsZS1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZzsgLy8gVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LlxuJGdsLWFsZXJ0LWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtZmVlZGJhY2stZGFuZ2VyLWJhY2tncm91bmQtY29sb3I7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LlxuJGdsLWFsZXJ0LWRhbmdlci1ib3JkZXItY29sb3I6ICRnbC1mZWVkYmFjay1kYW5nZXItYm9yZGVyLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LlxuJGdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1sZzogJGdsLWJvcmRlci1yYWRpdXMtbGc7IC8vIEJvcmRlciByYWRpdXMgZm9yIHNxdWFyZSBhdmF0YXJzIGF0IGxhcmdlciBzaXplcyAoNDhweCwgNjRweCwgOTZweCkuXG4kZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWJhZGdlLW11dGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1mb2N1czogJGdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJhZGdlLW11dGVkLWljb24tY29sb3ItZm9jdXM6ICRnbC1iYWRnZS1tdXRlZC1pY29uLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItZm9jdXM6ICRnbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWZvY3VzOiAkZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItZm9jdXM6ICRnbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1mb2N1czogJGdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWZvY3VzOiAkZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJhZGdlLXN1Y2Nlc3MtaWNvbi1jb2xvci1mb2N1czogJGdsLWJhZGdlLXN1Y2Nlc3MtaWNvbi1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItZm9jdXM6ICRnbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWZvY3VzOiAkZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtYmFkZ2UtZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWZvY3VzOiAkZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1mb2N1czogJGdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1iYWRnZS10aWVyLXRleHQtY29sb3ItZm9jdXM6ICRnbC1iYWRnZS10aWVyLXRleHQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS10aWVyLWljb24tY29sb3ItZm9jdXM6ICRnbC1iYWRnZS10aWVyLWljb24tY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6ICRnbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXM6ICRnbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiAkZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6ICRnbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXI6ICRnbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZm9jdXM6ICRnbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1hY3RpdmU7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiAkZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6ICRnbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6ICRnbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZm9jdXM6ICRnbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiAkZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tbGluay1ib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1tZDsgLy8gVXNlZCBmb3IgbGluayBidXR0b24gYm9yZGVyIHJhZGl1cy5cbiRnbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWRlZmF1bHQ6ICRnbC10ZXh0LWNvbG9yLWxpbms7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWNhcmQtYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMteGw7IC8vIFVzZWQgZm9yIGNhcmQgYm9yZGVyIHJhZGl1cy5cbiRnbC1jaGFydC1heGlzLXRleHQtY29sb3I6ICRnbC10ZXh0LWNvbG9yLXN1YnRsZTsgLy8gVXNlZCBpbiBjaGFydHMgZm9yIHRoZSB0ZXh0IGNvbG9yIG9mIGF4aXMgdGl0bGVzIGFuZCBsYWJlbHMuXG4kZ2wtZGF0ZXBpY2tlci1kYXRlLXRleHQtY29sb3Itc2VsZWN0ZWQ6ICRnbC1jb250cm9sLWluZGljYXRvci1jb2xvci1zZWxlY3RlZDsgLy8gVXNlZCBmb3IgdGhlIGRhdGVwaWNrZXIgZGF0ZSB0ZXh0IGNvbG9yIHN0YXRlIGluZGljYXRvcnMuXG4kZ2wtZHJhd2VyLWJvcmRlci1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLTJ4bDsgLy8gVXNlZCBmb3IgZHJhd2VyIGJvcmRlciByYWRpdXMuXG4kZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcjogJGdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkcm9wZG93bi5cbiRnbC1kcm9wZG93bi1ib3JkZXItY29sb3I6ICRnbC1ib3JkZXItY29sb3Itc3Ryb25nOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZHJvcGRvd24uXG4kZ2wtZHJvcGRvd24tYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGc7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgcmFkaXVzIG9mIGEgZHJvcGRvd24uXG4kZ2wtZHJvcGRvd24tZGl2aWRlci1jb2xvcjogJGdsLWJvcmRlci1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZGl2aWRlciBvZiBhIGRyb3Bkb3duLlxuJGdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQ6ICRnbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRpc2FibGVkOiAkZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3I7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBkaXNhYmxlZCBzdGF0ZS5cbiRnbC1kcm9wZG93bi1vcHRpb24taW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6ICRnbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1ob3ZlcjogJGdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtZGVmYXVsdDogJGdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gdW5zZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1ob3ZlcjogJGdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWFjdGl2ZTogJGdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiB1bnNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzOiAkZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1tb2RhbC1ib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy0yeGw7IC8vIFVzZWQgZm9yIG1vZGFsIGJvcmRlciByYWRpdXMuXG4kZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZm9jdXM6ICRnbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6ICRnbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiAkZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLW5hdi1pdGVtLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXI6ICRnbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6ICRnbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQ6ICRnbC1zdGF0dXMtaW5mby1pY29uLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgcHJpbWFyeSBwcm9ncmVzcy1iYXIgdmFyaWFudC5cbiRnbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLXN1Y2Nlc3M6ICRnbC1zdGF0dXMtc3VjY2Vzcy1pY29uLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgc3VjY2VzcyBwcm9ncmVzcy1iYXIgdmFyaWFudC5cbiRnbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLXdhcm5pbmc6ICRnbC1zdGF0dXMtd2FybmluZy1pY29uLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgd2FybmluZyBwcm9ncmVzcy1iYXIgdmFyaWFudC5cbiRnbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLWRhbmdlcjogJGdsLXN0YXR1cy1kYW5nZXItaWNvbi1jb2xvcjsgLy8gVXNlZCBmb3IgdGhlIGluZGljYXRvciBjb2xvciBmb3IgdGhlIGRhbmdlciBwcm9ncmVzcy1iYXIgdmFyaWFudC5cbiRnbC10YWJsZS1yb3ctYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWhpZ2hsaWdodC10YXJnZXQtYmFja2dyb3VuZC1jb2xvcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0YWJsZSByb3cgaW4gaG92ZXIgc3RhdGUuXG4kZ2wtdGFibGUtc29ydGluZy1pY29uLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nOyAvLyBVc2VkIGZvciB0aGUgY29sb3Igb2YgdGhlIHNvcnRpbmcgaWNvbnMgaW4gdGhlIGNvbHVtbiBoZWFkZXJzLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ6ICRnbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWFjdGl2ZTogJGdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZDogJGdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBkaXNhYmxlZCB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaC5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZGVmYXVsdDogJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtaG92ZXI6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiAkZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZGlzYWJsZWQ6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDsgLy8gVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgZGlzYWJsZWQgY2hlY2tlZCB0b2dnbGUgc3dpdGNoLCB3aGljaCBzdGF5cyBmaWxsZWQgc28gdGhlIGNoZWNrZWQgc3RhdGUgcmVtYWlucyBsZWdpYmxlLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItbG9hZGluZzogJGdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBsb2FkaW5nIHRvZ2dsZSBzd2l0Y2guIEEgbG9hZGluZyB0b2dnbGUgcmVuZGVycyBubyB0aHVtYiBhbmQgaXRzIHZhbHVlIGlzIHN0aWxsIGluIGZsaWdodCwgc28gdGhlIHRyYWNrIGNhcnJpZXMgbm8gY2hlY2tlZCBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDogJGdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWhvdmVyOiAkZ2wtY29udHJvbC1ib3JkZXItY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZDogJGdsLWFjdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBkaXNhYmxlZCB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaC5cbiRnbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZDogJGdsLWFjdGlvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZGVmYXVsdDogJGdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZGlzYWJsZWQ6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDogJGdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBkZWZhdWx0IHN0YXRlLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWRlZmF1bHQ6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1ob3ZlcjogJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiAkZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1kaXNhYmxlZDogJGdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGRpc2FibGVkIHRvZ2dsZSBzd2l0Y2guXG4kZ2wtdG9rZW4tZm9yZWdyb3VuZC1jb2xvcjogJGdsLXRleHQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIHRva2VuIGZvcmVncm91bmQgY29sb3IuXG4kZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWxnOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIHJhZGl1cyBvZiBhbiBhY3Rpb24uXG4kZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWZvY3VzOiAkZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzOiAkZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyOyAvLyBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBiYWNrZ3JvdW5kIG9uIGZvY3VzLlxuJGdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZDogJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkOyAvLyBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBiYWNrZ3JvdW5kIHdoZW4gZGlzYWJsZWQuXG4kZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZXJyb3I6ICRnbC1mZWVkYmFjay1kYW5nZXItYm9yZGVyLWNvbG9yOyAvLyBVc2VkIGZvciBpbnZhbGlkIGZvcm0gY29udHJvbCAoaW5wdXQsIHRleHRhcmVhKSBib3JkZXIuXG4kZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdDogJGdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0OyAvLyBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBib3JkZXIuXG4kZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtaG92ZXI6ICRnbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXI7IC8vIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciBvbiBob3Zlci5cbiRnbC1jb250cm9sLWJvcmRlci1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWxnOyAvLyBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgZGVmYXVsdCBib3JkZXIgcmFkaXVzLlxuJGdsLWNvbnRyb2wtdGV4dC1jb2xvci1lcnJvcjogJGdsLXRleHQtY29sb3ItZGFuZ2VyOyAvLyBVc2VkIGZvciB0aGUgaGVscGVyIHRleHQgd2hlbiB0aGUgaW5wdXQgaXMgaW52YWxpZC5cbiRnbC1jb250cm9sLXRleHQtY29sb3ItdmFsaWQ6ICRnbC10ZXh0LWNvbG9yLXN1Y2Nlc3M7IC8vIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyB2YWxpZC5cbiRnbC1jb250cm9sLWluZGljYXRvci1jb2xvci1kaXNhYmxlZDogJGdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkOyAvLyBVc2VkIGZvciBkaXNhYmxlZCBjaGVja2JveCBhbmQgcmFkaW8gYnV0dG9uIHN0YXRlIGluZGljYXRvcnMuXG4kZ2wtZmVlZGJhY2stYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGc7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgcmFkaXVzIG9mIGEgZmVlZGJhY2sgZWxlbWVudC5cbiRnbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yOiAkZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgaW5uZXIgbmV1dHJhbCBwb3J0aW9uIG9mIHRoZSBmb2N1cyByaW5nLlxuJGdsLWljb24tY29sb3ItZGVmYXVsdDogJGdsLXRleHQtY29sb3ItZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGRlZmF1bHQgaWNvbiBjb2xvci4gQ2FuIGJlIHBhaXJlZCB3aXRoIGRlZmF1bHQgdGV4dC5cbiRnbC1pY29uLWNvbG9yLXN1YnRsZTogJGdsLXRleHQtY29sb3Itc3VidGxlOyAvLyBVc2VkIGZvciBhIHN0YXRpYyBvciBkZWNvcmF0aW9uYWwgaWNvbi4gQ2FuIGJlIHBhaXJlZCB3aXRoIHN1YnRsZSB0ZXh0LlxuJGdsLWljb24tY29sb3Itc3Ryb25nOiAkZ2wtdGV4dC1jb2xvci1zdHJvbmc7IC8vIFVzZWQgZm9yIGFuIGljb24gd2l0aCB0aGUgaGlnaGVzdCBjb250cmFzdC5cbiRnbC1pY29uLWNvbG9yLWRpc2FibGVkOiAkZ2wtdGV4dC1jb2xvci1kaXNhYmxlZDsgLy8gVXNlZCBmb3IgYW4gaWNvbiB3aXRoaW4gYSBkaXNhYmxlZCBzZWN0aW9uLlxuJGdsLWljb24tY29sb3ItbGluazogJGdsLXRleHQtY29sb3ItbGluazsgLy8gVXNlZCBmb3IgYW4gaWNvbiB3aXRoaW4gYSBsaW5rLlxuJGdsLWljb24tY29sb3Itd2FybmluZzogJGdsLXRleHQtY29sb3Itd2FybmluZzsgLy8gVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggYSB3YXJuaW5nLlxuJGdsLWljb24tY29sb3ItZGFuZ2VyOiAkZ2wtdGV4dC1jb2xvci1kYW5nZXI7IC8vIFVzZWQgZm9yIGFuIGljb24gYXNzb2NpYXRlZCB3aXRoIGFuIGVycm9yIG9yIGRhbmdlci5cbiRnbC1pY29uLWNvbG9yLXN1Y2Nlc3M6ICRnbC10ZXh0LWNvbG9yLXN1Y2Nlc3M7IC8vIFVzZWQgZm9yIGFuIGljb24gYXNzb2NpYXRlZCB3aXRoIHN1Y2Nlc3Mgb3IgdmFsaWRpdHkuXG4kZ2wtdGV4dC1wcmltYXJ5OiAkZ2wtdGV4dC1jb2xvci1kZWZhdWx0OyAvLyBVc2UgdGV4dC5jb2xvci5kZWZhdWx0IGluc3RlYWQuXG4kZ2wtdGV4dC1zZWNvbmRhcnk6ICRnbC10ZXh0LWNvbG9yLXN1YnRsZTsgLy8gVXNlIHRleHQuY29sb3Iuc3VidGxlIGluc3RlYWQuXG4kZ2wtdGV4dC10ZXJ0aWFyeTogJGdsLXRleHQtY29sb3ItZGlzYWJsZWQ7IC8vIFVzZSB0ZXh0LmNvbG9yLmRpc2FibGVkIGluc3RlYWQuXG4kZ2wtaGVhZGluZy0xLWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLTEtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctMS1tYXJnaW4tYm90dG9tOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b207XG4kZ2wtaGVhZGluZy0xLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctMi1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy0yLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLTItbWFyZ2luLWJvdHRvbTogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tO1xuJGdsLWhlYWRpbmctMi1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLTMtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctMy1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy0zLW1hcmdpbi1ib3R0b206ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbTtcbiRnbC1oZWFkaW5nLTMtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy00LWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLTQtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctNC1tYXJnaW4tYm90dG9tOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b207XG4kZ2wtaGVhZGluZy00LWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctNS1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy01LW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLTUtbWFyZ2luLWJvdHRvbTogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tO1xuJGdsLWhlYWRpbmctNS1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLTYtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctNi1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy02LW1hcmdpbi1ib3R0b206ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbTtcbiRnbC1oZWFkaW5nLTYtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS0xMDAtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtMTAwLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLXNjYWxlLTEwMC1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTIwMC1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS0yMDAtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctc2NhbGUtMjAwLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtMzAwLWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTMwMC1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy1zY2FsZS0zMDAtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS00MDAtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNDAwLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLXNjYWxlLTQwMC1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTUwMC1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS01MDAtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctc2NhbGUtNTAwLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNjAwLWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTYwMC1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy1zY2FsZS02MDAtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS03MDAtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNzAwLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLXNjYWxlLTcwMC1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTgwMC1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS04MDAtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctc2NhbGUtODAwLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtMTAwLWZpeGVkLWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtMjAwLWZpeGVkLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctc2NhbGUtMzAwLWZpeGVkLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNDAwLWZpeGVkLWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNTAwLWZpeGVkLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctc2NhbGUtNjAwLWZpeGVkLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLXNjYWxlLTcwMC1maXhlZC1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy1zY2FsZS04MDAtZml4ZWQtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLWRpc3BsYXktZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctZGlzcGxheS1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy1kaXNwbGF5LWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctMS1maXhlZC1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy0xLWZpeGVkLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLTEtZml4ZWQtbWFyZ2luLWJvdHRvbTogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tO1xuJGdsLWhlYWRpbmctMS1maXhlZC1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLTItZml4ZWQtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctMi1maXhlZC1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy0yLWZpeGVkLW1hcmdpbi1ib3R0b206ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbTtcbiRnbC1oZWFkaW5nLTItZml4ZWQtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy0zLWZpeGVkLWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLTMtZml4ZWQtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctMy1maXhlZC1tYXJnaW4tYm90dG9tOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b207XG4kZ2wtaGVhZGluZy0zLWZpeGVkLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWhlYWRpbmctNC1maXhlZC1mb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc7XG4kZ2wtaGVhZGluZy00LWZpeGVkLW1hcmdpbi10b3A6ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDtcbiRnbC1oZWFkaW5nLTQtZml4ZWQtbWFyZ2luLWJvdHRvbTogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tO1xuJGdsLWhlYWRpbmctNC1maXhlZC1jb2xvcjogJGdsLXRleHQtY29sb3ItaGVhZGluZztcbiRnbC1oZWFkaW5nLTUtZml4ZWQtZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1oZWFkaW5nO1xuJGdsLWhlYWRpbmctNS1maXhlZC1tYXJnaW4tdG9wOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3A7XG4kZ2wtaGVhZGluZy01LWZpeGVkLW1hcmdpbi1ib3R0b206ICRnbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbTtcbiRnbC1oZWFkaW5nLTUtZml4ZWQtY29sb3I6ICRnbC10ZXh0LWNvbG9yLWhlYWRpbmc7XG4kZ2wtaGVhZGluZy02LWZpeGVkLWZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtaGVhZGluZztcbiRnbC1oZWFkaW5nLTYtZml4ZWQtbWFyZ2luLXRvcDogJGdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wO1xuJGdsLWhlYWRpbmctNi1maXhlZC1tYXJnaW4tYm90dG9tOiAkZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b207XG4kZ2wtaGVhZGluZy02LWZpeGVkLWNvbG9yOiAkZ2wtdGV4dC1jb2xvci1oZWFkaW5nO1xuJGdsLWF2YXRhci1zcXVhcmUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0OiAkZ2wtYm9yZGVyLXJhZGl1cy1kZWZhdWx0OyAvLyBCb3JkZXIgcmFkaXVzIGZvciBzcXVhcmUgYXZhdGFycyBhdCBzbWFsbGVyIHNpemVzICgxNnB4LCAyNHB4LCAzMnB4KS5cbiRnbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1kZWZhdWx0OyAvLyBVc2VkIGZvciBicm9hZGNhc3QgYmFubmVyIGJvcmRlciByYWRpdXMuXG4kZ2wtYnV0dG9uLWJvcmRlci1yYWRpdXM6ICRnbC1hY3Rpb24tYm9yZGVyLXJhZGl1czsgLy8gVXNlZCBmb3IgYnV0dG9uIGJvcmRlciByYWRpdXMuXG4kZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogJGdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogJGdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1mb2N1czsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1mb2N1czsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWhvdmVyOiAkZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiAkZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogJGdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWFjdGl2ZTsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItaG92ZXI6ICRnbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZm9jdXM6ICRnbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItYWN0aXZlOiAkZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0OyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGxpbmsgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItaG92ZXI6ICRnbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWJ1dHRvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXM6ICRnbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1jaGFydC1heGlzLXBvaW50ZXItY29sb3I6ICRnbC1pY29uLWNvbG9yLXN1YnRsZTsgLy8gVXNlZCBpbiBjaGFydHMgZm9yIHRoZSBjb2xvciBvZiB0aGUgcmVmZXJlbmNlIGxpbmUgYW5kIGF4aXMgdmFsdWUgdW5kZXIgbW91c2UgcG9pbnRlci5cbiRnbC1jaGFydC16b29tLWhhbmRsZS1jb2xvcjogJGdsLWljb24tY29sb3Itc3VidGxlOyAvLyBVc2VkIGluIGNoYXJ0cyBmb3IgdGhlIGhhbmRsZSBjb2xvciB3aGVuIHpvb21pbmcgaW4gb24gYSBzcGVjaWZpYyBhcmVhIG9mIGRhdGEuXG4kZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItaG92ZXI6ICRnbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXM6ICRnbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU7IC8vIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1mb2N1czogJGdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1czsgLy8gVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtYWN0aXZlOiAkZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgZHJvcGRvd24gc2VsZWN0ZWQgb3B0aW9uIGluZGljYXRvciBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtZm9jdXM6ICRnbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiB1bnNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtbmF2LWl0ZW0tYm9yZGVyLXJhZGl1czogJGdsLWFjdGlvbi1ib3JkZXItcmFkaXVzOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIHJhZGl1cyBvZiBhIG5hdmlnYXRpb24gaXRlbVxuJGdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1mb2N1czsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZm9jdXM6ICRnbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1mb2N1czogJGdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQ6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTsgLy8gVXNlZCBmb3IgdGhlIHNlbGVjdGVkIGluZGljYXRvciBvZiBhIHRhYi5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1ob3ZlcjogJGdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgaG92ZXIgc3RhdGUuIFRoZSB0cmFjayBpcyBkZWxpYmVyYXRlbHkgdW5jaGFuZ2VkIGZyb20gdGhlIGRlZmF1bHQgc3RhdGU7IGhvdmVyIGlzIGNhcnJpZWQgYnkgdGhlIHRyYWNrIGJvcmRlciBhbmQgdGhlIHRodW1iIHNpemUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWZvY3VzOiAkZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzOiAkZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWRlZmF1bHQ6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1ob3ZlcjogJGdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiAkZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1hY3RpdmU7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWRpc2FibGVkOiAkZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRpc2FibGVkOyAvLyBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgZGlzYWJsZWQgY2hlY2tlZCB0b2dnbGUgc3dpdGNoLCB3aGljaCBtYXRjaGVzIHRoZSB0cmFjayBjb2xvci5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1sb2FkaW5nOiAkZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1sb2FkaW5nOyAvLyBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgbG9hZGluZyB0b2dnbGUgc3dpdGNoLCB3aGljaCBtYXRjaGVzIHRoZSB0cmFjayBjb2xvciBzbyB0aGUgdHJhY2sgcmVhZHMgYXMgYSBzaW5nbGUgZmxhdCBmaWxsLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtaG92ZXI6ICRnbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ7IC8vIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1mb2N1czogJGdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWFjdGl2ZTogJGdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtaG92ZXI6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYiBpbiB0aGUgaG92ZXIgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkOiAkZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZDsgLy8gVXNlIHRvZ2dsZS5zd2l0Y2guYmFja2dyb3VuZC5jb2xvci51bmNoZWNrZWQuZGlzYWJsZWQgaW5zdGVhZC5cbiRnbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWhvdmVyOiAkZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1mb2N1czogJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtdG9rZW4tYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdDsgLy8gVXNlZCBmb3IgdG9rZW4gYm9yZGVyIHJhZGl1cy5cbiRnbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1mb2N1czogJGdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1ib3JkZXItY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLlxuJGdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiAkZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS5cbiRnbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWZvY3VzOiAkZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3ZlcjsgLy8gVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZm9jdXM6ICRnbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXM7IC8vIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciBvbiBmb2N1cy5cbiRnbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZDogJGdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZDsgLy8gVXNlZCBmb3IgY2hlY2tlZCBhbmQgaW5kZXRlcm1pbmF0ZSAoc2VsZWN0ZWQpIGZvcm0gY29udHJvbCAoY2hlY2tib3gsIHJhZGlvIGJ1dHRvbikgYm9yZGVyIHdoZW4gZGlzYWJsZWQuXG4kZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czsgLy8gVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogJGdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgYWN0aXZlIHN0YXRlLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWZvY3VzOiAkZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtaG92ZXI7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuIFRoZSB0cmFjayBpcyBkZWxpYmVyYXRlbHkgdW5jaGFuZ2VkIGZyb20gdGhlIGRlZmF1bHQgc3RhdGU7IGZvY3VzIGlzIGNhcnJpZWQgYnkgdGhlIGZvY3VzIHJpbmcsIHRoZSB0cmFjayBib3JkZXIgYW5kIHRoZSB0aHVtYiBzaXplLlxuJGdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1hY3RpdmU6ICRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS5cbiRnbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWZvY3VzOiAkZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czsgLy8gVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZm9jdXM6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1czsgLy8gVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYiBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLXVuY2hlY2tlZC1mb2N1czogJGdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuXG4kZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiAkZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZm9jdXM7IC8vIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6ICRnbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWZvY3VzOyAvLyBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiAkZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOyAvLyBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4kZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLXVuY2hlY2tlZC1hY3RpdmU6ICRnbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU7IC8vIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuXG4iLCIvLyBSZXNwb25zaXZlIGltYWdlcyAoZW5zdXJlIGltYWdlcyBkb24ndCBzY2FsZSBiZXlvbmQgdGhlaXIgcGFyZW50cylcbi8vXG4vLyBUaGlzIGlzIHB1cnBvc2VmdWxseSBvcHQtaW4gdmlhIGFuIGV4cGxpY2l0IGNsYXNzIHJhdGhlciB0aGFuIGJlaW5nIHRoZSBkZWZhdWx0IGZvciBhbGwgYDxpbWc+YHMuXG4vLyBXZSBwcmV2aW91c2x5IHRyaWVkIHRoZSBcImltYWdlcyBhcmUgcmVzcG9uc2l2ZSBieSBkZWZhdWx0XCIgYXBwcm9hY2ggaW4gQm9vdHN0cmFwIHYyLFxuLy8gYW5kIGFiYW5kb25lZCBpdCBpbiBCb290c3RyYXAgdjMgYmVjYXVzZSBpdCBicmVha3MgbG90cyBvZiB0aGlyZC1wYXJ0eSB3aWRnZXRzIChpbmNsdWRpbmcgR29vZ2xlIE1hcHMpXG4vLyB3aGljaCB3ZXJlbid0IGV4cGVjdGluZyB0aGUgaW1hZ2VzIHdpdGhpbiB0aGVtc2VsdmVzIHRvIGJlIGludm9sdW50YXJpbHkgcmVzaXplZC5cbi8vIFNlZSBhbHNvIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTgxNzhcbi5pbWctZmx1aWQge1xuICBAaW5jbHVkZSBpbWctZmx1aWQoKTtcbn1cblxuXG4vLyBJbWFnZSB0aHVtYm5haWxzXG4uaW1nLXRodW1ibmFpbCB7XG4gIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlci13aWR0aCBzb2xpZCAkdGh1bWJuYWlsLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkdGh1bWJuYWlsLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCR0aHVtYm5haWwtYm94LXNoYWRvdyk7XG5cbiAgLy8gS2VlcCB0aGVtIGF0IG1vc3QgMTAwJSB3aWRlXG4gIEBpbmNsdWRlIGltZy1mbHVpZCgpO1xufVxuXG4vL1xuLy8gRmlndXJlc1xuLy9cblxuLmZpZ3VyZSB7XG4gIC8vIEVuc3VyZXMgdGhlIGNhcHRpb24ncyB0ZXh0IGFsaWducyB3aXRoIHRoZSBpbWFnZS5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZmlndXJlLWltZyB7XG4gIG1hcmdpbi1ib3R0b206ICRzcGFjZXIgKiAuNTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5maWd1cmUtY2FwdGlvbiB7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZmlndXJlLWNhcHRpb24tZm9udC1zaXplKTtcbiAgY29sb3I6ICRmaWd1cmUtY2FwdGlvbi1jb2xvcjtcbn1cbiIsIi8vIEltYWdlIE1peGluc1xuLy8gLSBSZXNwb25zaXZlIGltYWdlXG4vLyAtIFJldGluYSBpbWFnZVxuXG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vXG4vLyBLZWVwIGltYWdlcyBmcm9tIHNjYWxpbmcgYmV5b25kIHRoZSB3aWR0aCBvZiB0aGVpciBwYXJlbnRzLlxuXG5AbWl4aW4gaW1nLWZsdWlkKCkge1xuICAvLyBQYXJ0IDE6IFNldCBhIG1heGltdW0gcmVsYXRpdmUgdG8gdGhlIHBhcmVudFxuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC8vIFBhcnQgMjogT3ZlcnJpZGUgdGhlIGhlaWdodCB0byBhdXRvLCBvdGhlcndpc2UgaW1hZ2VzIHdpbGwgYmUgc3RyZXRjaGVkXG4gIC8vIHdoZW4gc2V0dGluZyBhIHdpZHRoIGFuZCBoZWlnaHQgYXR0cmlidXRlIG9uIHRoZSBpbWcgZWxlbWVudC5cbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS5cblxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCRmaWxlLTF4KTtcblxuICAvLyBBdXRvcHJlZml4ZXIgdGFrZXMgY2FyZSBvZiBhZGRpbmcgLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvIGFuZCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvLFxuICAvLyBidXQgZG9lc24ndCBjb252ZXJ0IGRwcHg9PmRwaS5cbiAgLy8gVGhlcmUncyBubyBzdWNoIHRoaW5nIGFzIHVucHJlZml4ZWQgbWluLWRldmljZS1waXhlbC1yYXRpbyBzaW5jZSBpdCdzIG5vbnN0YW5kYXJkLlxuICAvLyBDb21wYXRpYmlsaXR5IGluZm86IGh0dHBzOi8vY2FuaXVzZS5jb20vY3NzLW1lZGlhLXJlc29sdXRpb25cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSksIC8vIElFOS0xMSBkb24ndCBzdXBwb3J0IGRwcHhcbiAgICBvbmx5IHNjcmVlbiBhbmQgKG1pbi1yZXNvbHV0aW9uOiAyZHBweCkgeyAvLyBTdGFuZGFyZGl6ZWRcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJGZpbGUtMngpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiYGltZy1yZXRpbmEoKWBcIiwgXCJ2NC4zLjBcIiwgXCJ2NVwiKTtcbn1cbiIsIkB1c2UgXCJzYXNzOmxpc3RcIjtcbkB1c2UgXCJzYXNzOm1ldGFcIjtcbi8vIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LWRpc2FsbG93ZWQtbGlzdFxuLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG4vLyBIZWxwZXIgZnVuY3Rpb24gdG8gcmVwbGFjZSBuZWdhdGl2ZSB2YWx1ZXMgd2l0aCAwXG5AZnVuY3Rpb24gdmFsaWQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgJHJldHVybjogKCk7XG4gIEBlYWNoICR2YWx1ZSBpbiAkcmFkaXVzIHtcbiAgICBAaWYgbWV0YS50eXBlLW9mKCR2YWx1ZSkgPT0gbnVtYmVyIHtcbiAgICAgICRyZXR1cm46IGxpc3QuYXBwZW5kKCRyZXR1cm4sIG1heCgkdmFsdWUsIDApKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGxpc3QuYXBwZW5kKCRyZXR1cm4sICR2YWx1ZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJHJldHVybjtcbn1cblxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1czogJGJvcmRlci1yYWRpdXMsICRmYWxsYmFjay1ib3JkZXItcmFkaXVzOiBmYWxzZSkge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbiAgQGVsc2UgaWYgJGZhbGxiYWNrLWJvcmRlci1yYWRpdXMgIT0gZmFsc2Uge1xuICAgIGJvcmRlci1yYWRpdXM6ICRmYWxsYmFjay1ib3JkZXItcmFkaXVzO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItYm90dG9tLXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItbGVmdC1yYWRpdXMoJHJhZGl1cykge1xuICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogdmFsaWQtcmFkaXVzKCRyYWRpdXMpO1xuICB9XG59XG5cbkBtaXhpbiBib3JkZXItdG9wLXJpZ2h0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiB2YWxpZC1yYWRpdXMoJHJhZGl1cyk7XG4gIH1cbn1cblxuQG1peGluIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgQGlmICRlbmFibGUtcm91bmRlZCB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuXG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIEBpZiAkZW5hYmxlLXJvdW5kZWQge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IHZhbGlkLXJhZGl1cygkcmFkaXVzKTtcbiAgfVxufVxuIiwiLy8gSW5saW5lIGNvZGVcbmNvZGUge1xuICBAaW5jbHVkZSBmb250LXNpemUoJGNvZGUtZm9udC1zaXplKTtcbiAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgLy8gU3RyZWFtbGluZSB0aGUgc3R5bGUgd2hlbiBpbnNpZGUgYW5jaG9ycyB0byBhdm9pZCBicm9rZW4gdW5kZXJsaW5lIGFuZCBtb3JlXG4gIGEgPiAmIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBCbG9ja3Mgb2YgY29kZVxucHJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY29kZS1mb250LXNpemUpO1xuICBjb2xvcjogJHByZS1jb2xvcjtcblxuICAvLyBBY2NvdW50IGZvciBzb21lIGNvZGUgb3V0cHV0cyB0aGF0IHBsYWNlIGNvZGUgdGFncyBpbiBwcmUgdGFnc1xuICBjb2RlIHtcbiAgICBAaW5jbHVkZSBmb250LXNpemUoaW5oZXJpdCk7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgd29yZC1icmVhazogbm9ybWFsO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy8gQ29udGFpbmVyIHdpZHRoc1xuLy9cbi8vIFNldCB0aGUgY29udGFpbmVyIHdpZHRoLCBhbmQgb3ZlcnJpZGUgaXQgZm9yIGZpeGVkIG5hdmJhcnMgaW4gbWVkaWEgcXVlcmllcy5cblxuQGlmICRlbmFibGUtZ3JpZC1jbGFzc2VzIHtcbiAgLy8gU2luZ2xlIGNvbnRhaW5lciBjbGFzcyB3aXRoIGJyZWFrcG9pbnQgbWF4LXdpZHRoc1xuICAuY29udGFpbmVyLFxuICAvLyAxMDAlIHdpZGUgY29udGFpbmVyIGF0IGFsbCBicmVha3BvaW50c1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAaW5jbHVkZSBtYWtlLWNvbnRhaW5lcigpO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSBjb250YWluZXJzIHRoYXQgYXJlIDEwMCUgd2lkZSB1bnRpbCBhIGJyZWFrcG9pbnRcbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgLmNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICBAZXh0ZW5kIC5jb250YWluZXItZmx1aWQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICVyZXNwb25zaXZlLWNvbnRhaW5lci0jeyRicmVha3BvaW50fSB7XG4gICAgICAgIG1heC13aWR0aDogJGNvbnRhaW5lci1tYXgtd2lkdGg7XG4gICAgICB9XG5cbiAgICAgIC8vIEV4dGVuZCBlYWNoIGJyZWFrcG9pbnQgd2hpY2ggaXMgc21hbGxlciBvciBlcXVhbCB0byB0aGUgY3VycmVudCBicmVha3BvaW50XG4gICAgICAkZXh0ZW5kLWJyZWFrcG9pbnQ6IHRydWU7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkd2lkdGggaW4gJGdyaWQtYnJlYWtwb2ludHMge1xuICAgICAgICBAaWYgKCRleHRlbmQtYnJlYWtwb2ludCkge1xuICAgICAgICAgIC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJG5hbWUsICRncmlkLWJyZWFrcG9pbnRzKX0ge1xuICAgICAgICAgICAgQGV4dGVuZCAlcmVzcG9uc2l2ZS1jb250YWluZXItI3skYnJlYWtwb2ludH07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLy8gT25jZSB0aGUgY3VycmVudCBicmVha3BvaW50IGlzIHJlYWNoZWQsIHN0b3AgZXh0ZW5kaW5nXG4gICAgICAgICAgQGlmICgkYnJlYWtwb2ludCA9PSAkbmFtZSkge1xuICAgICAgICAgICAgJGV4dGVuZC1icmVha3BvaW50OiBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4geW91ciBjb2x1bW5zLlxuXG5AaWYgJGVuYWJsZS1ncmlkLWNsYXNzZXMge1xuICAucm93IHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdygpO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBuZWdhdGl2ZSBtYXJnaW4gZnJvbSBkZWZhdWx0IC5yb3csIHRoZW4gdGhlIGhvcml6b250YWwgcGFkZGluZ1xuICAvLyBmcm9tIGFsbCBpbW1lZGlhdGUgY2hpbGRyZW4gY29sdW1ucyAodG8gcHJldmVudCBydW5hd2F5IHN0eWxlIGluaGVyaXRhbmNlKS5cbiAgLm5vLWd1dHRlcnMge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcblxuICAgID4gLmNvbCxcbiAgICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENvbHVtbnNcbi8vXG4vLyBDb21tb24gc3R5bGVzIGZvciBzbWFsbCBhbmQgbGFyZ2UgZ3JpZCBjb2x1bW5zXG5cbkBpZiAkZW5hYmxlLWdyaWQtY2xhc3NlcyB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZC1jb2x1bW5zKCk7XG59XG4iLCJAdXNlIFwic2FzczptYXRoXCI7XG4vLy8gR3JpZCBzeXN0ZW1cbi8vXG4vLyBHZW5lcmF0ZSBzZW1hbnRpYyBncmlkIGNvbHVtbnMgd2l0aCB0aGVzZSBtaXhpbnMuXG5cbkBtaXhpbiBtYWtlLWNvbnRhaW5lcigkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6ICRndXR0ZXIgKiAuNTtcbiAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZ3V0dGVyICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGd1dHRlciAqIC41O1xufVxuXG4vLyBGb3IgZWFjaCBicmVha3BvaW50LCBkZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgdGhlIGNvbnRhaW5lciBpbiBhIG1lZGlhIHF1ZXJ5XG5AbWl4aW4gbWFrZS1jb250YWluZXItbWF4LXdpZHRocygkbWF4LXdpZHRoczogJGNvbnRhaW5lci1tYXgtd2lkdGhzLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gIEBlYWNoICRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aCBpbiAkbWF4LXdpZHRocyB7XG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCgkYnJlYWtwb2ludCwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBtYXgtd2lkdGg6ICRjb250YWluZXItbWF4LXdpZHRoO1xuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBkZXByZWNhdGUoXCJUaGUgYG1ha2UtY29udGFpbmVyLW1heC13aWR0aHNgIG1peGluXCIsIFwidjQuNS4yXCIsIFwidjVcIik7XG59XG5cbkBtaXhpbiBtYWtlLWNvbC1yZWFkeSgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBiZWNvbWluZyB0b28gbmFycm93IHdoZW4gYXQgc21hbGxlciBncmlkIHRpZXJzIGJ5XG4gIC8vIGFsd2F5cyBzZXR0aW5nIGB3aWR0aDogMTAwJTtgLiBUaGlzIHdvcmtzIGJlY2F1c2Ugd2UgdXNlIGBmbGV4YCB2YWx1ZXNcbiAgLy8gbGF0ZXIgb24gdG8gb3ZlcnJpZGUgdGhpcyBpbml0aWFsIHdpZHRoLlxuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogJGd1dHRlciAqIC41O1xuICBwYWRkaW5nLWxlZnQ6ICRndXR0ZXIgKiAuNTtcbn1cblxuQG1peGluIG1ha2UtY29sKCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICBmbGV4OiAwIDAgbWF0aC5wZXJjZW50YWdlKGRpdmlkZSgkc2l6ZSwgJGNvbHVtbnMpKTtcbiAgLy8gQWRkIGEgYG1heC13aWR0aGAgdG8gZW5zdXJlIGNvbnRlbnQgd2l0aGluIGVhY2ggY29sdW1uIGRvZXMgbm90IGJsb3cgb3V0XG4gIC8vIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uLiBBcHBsaWVzIHRvIElFMTArIGFuZCBGaXJlZm94LiBDaHJvbWUgYW5kIFNhZmFyaVxuICAvLyBkbyBub3QgYXBwZWFyIHRvIHJlcXVpcmUgdGhpcy5cbiAgbWF4LXdpZHRoOiBtYXRoLnBlcmNlbnRhZ2UoZGl2aWRlKCRzaXplLCAkY29sdW1ucykpO1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtYXV0bygpIHtcbiAgZmxleDogMCAwIGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFJlc2V0IGVhcmxpZXIgZ3JpZCB0aWVyc1xufVxuXG5AbWl4aW4gbWFrZS1jb2wtb2Zmc2V0KCRzaXplLCAkY29sdW1uczogJGdyaWQtY29sdW1ucykge1xuICAkbnVtOiBkaXZpZGUoJHNpemUsICRjb2x1bW5zKTtcbiAgbWFyZ2luLWxlZnQ6IGlmKCRudW0gPT0gMCwgMCwgbWF0aC5wZXJjZW50YWdlKCRudW0pKTtcbn1cblxuLy8gUm93IGNvbHVtbnNcbi8vXG4vLyBTcGVjaWZ5IG9uIGEgcGFyZW50IGVsZW1lbnQoZS5nLiwgLnJvdykgdG8gZm9yY2UgaW1tZWRpYXRlIGNoaWxkcmVuIGludG8gTk5cbi8vIG51bWJlcm9mIGNvbHVtbnMuIFN1cHBvcnRzIHdyYXBwaW5nIHRvIG5ldyBsaW5lcywgYnV0IGRvZXMgbm90IGRvIGEgTWFzb25yeVxuLy8gc3R5bGUgZ3JpZC5cbkBtaXhpbiByb3ctY29scygkY291bnQpIHtcbiAgPiAqIHtcbiAgICBmbGV4OiAwIDAgZGl2aWRlKDEwMCUsICRjb3VudCk7XG4gICAgbWF4LXdpZHRoOiBkaXZpZGUoMTAwJSwgJGNvdW50KTtcbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bGlzdFwiO1xuQHVzZSBcInNhc3M6bWFwXCI7XG4vLyBCcmVha3BvaW50IHZpZXdwb3J0IHNpemVzIGFuZCBtZWRpYSBxdWVyaWVzLlxuLy9cbi8vIEJyZWFrcG9pbnRzIGFyZSBkZWZpbmVkIGFzIGEgbWFwIG9mIChuYW1lOiBtaW5pbXVtIHdpZHRoKSwgb3JkZXIgZnJvbSBzbWFsbCB0byBsYXJnZTpcbi8vXG4vLyAgICAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpXG4vL1xuLy8gVGhlIG1hcCBkZWZpbmVkIGluIHRoZSBgJGdyaWQtYnJlYWtwb2ludHNgIGdsb2JhbCB2YXJpYWJsZSBpcyB1c2VkIGFzIHRoZSBgJGJyZWFrcG9pbnRzYCBhcmd1bWVudCBieSBkZWZhdWx0LlxuXG4vLyBOYW1lIG9mIHRoZSBuZXh0IGJyZWFrcG9pbnQsIG9yIG51bGwgZm9yIHRoZSBsYXN0IGJyZWFrcG9pbnQuXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1uZXh0KHNtKVxuLy8gICAgbWRcbi8vICAgID4+IGJyZWFrcG9pbnQtbmV4dChzbSwgKHhzOiAwLCBzbTogNTc2cHgsIG1kOiA3NjhweCwgbGc6IDk5MnB4LCB4bDogMTIwMHB4KSlcbi8vICAgIG1kXG4vLyAgICA+PiBicmVha3BvaW50LW5leHQoc20sICRicmVha3BvaW50LW5hbWVzOiAoeHMgc20gbWQgbGcgeGwpKVxuLy8gICAgbWRcbkBmdW5jdGlvbiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMsICRicmVha3BvaW50LW5hbWVzOiBtYXAua2V5cygkYnJlYWtwb2ludHMpKSB7XG4gICRuOiBsaXN0LmluZGV4KCRicmVha3BvaW50LW5hbWVzLCAkbmFtZSk7XG4gIEByZXR1cm4gaWYoJG4gIT0gbnVsbCBhbmQgJG4gPCBsaXN0Lmxlbmd0aCgkYnJlYWtwb2ludC1uYW1lcyksIGxpc3QubnRoKCRicmVha3BvaW50LW5hbWVzLCAkbiArIDEpLCBudWxsKTtcbn1cblxuLy8gTWluaW11bSBicmVha3BvaW50IHdpZHRoLiBOdWxsIGZvciB0aGUgc21hbGxlc3QgKGZpcnN0KSBicmVha3BvaW50LlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtbWluKHNtLCAoeHM6IDAsIHNtOiA1NzZweCwgbWQ6IDc2OHB4LCBsZzogOTkycHgsIHhsOiAxMjAwcHgpKVxuLy8gICAgNTc2cHhcbkBmdW5jdGlvbiBicmVha3BvaW50LW1pbigkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICAkbWluOiBtYXAuZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICBAcmV0dXJuIGlmKCRtaW4gIT0gMCwgJG1pbiwgbnVsbCk7XG59XG5cbi8vIE1heGltdW0gYnJlYWtwb2ludCB3aWR0aC4gTnVsbCBmb3IgdGhlIGxhcmdlc3QgKGxhc3QpIGJyZWFrcG9pbnQuXG4vLyBUaGUgbWF4aW11bSB2YWx1ZSBpcyBjYWxjdWxhdGVkIGFzIHRoZSBtaW5pbXVtIG9mIHRoZSBuZXh0IG9uZSBsZXNzIDAuMDJweFxuLy8gdG8gd29yayBhcm91bmQgdGhlIGxpbWl0YXRpb25zIG9mIGBtaW4tYCBhbmQgYG1heC1gIHByZWZpeGVzIGFuZCB2aWV3cG9ydHMgd2l0aCBmcmFjdGlvbmFsIHdpZHRocy5cbi8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvbWVkaWFxdWVyaWVzLTQvI21xLW1pbi1tYXhcbi8vIFVzZXMgMC4wMnB4IHJhdGhlciB0aGFuIDAuMDFweCB0byB3b3JrIGFyb3VuZCBhIGN1cnJlbnQgcm91bmRpbmcgYnVnIGluIFNhZmFyaS5cbi8vIFNlZSBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc4MjYxXG4vL1xuLy8gICAgPj4gYnJlYWtwb2ludC1tYXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICA3NjcuOThweFxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHM6ICRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICRuZXh0OiBicmVha3BvaW50LW5leHQoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEByZXR1cm4gaWYoJG5leHQsIGJyZWFrcG9pbnQtbWluKCRuZXh0LCAkYnJlYWtwb2ludHMpIC0gLjAyLCBudWxsKTtcbn1cblxuLy8gUmV0dXJucyBhIGJsYW5rIHN0cmluZyBpZiBzbWFsbGVzdCBicmVha3BvaW50LCBvdGhlcndpc2UgcmV0dXJucyB0aGUgbmFtZSB3aXRoIGEgZGFzaCBpbiBmcm9udC5cbi8vIFVzZWZ1bCBmb3IgbWFraW5nIHJlc3BvbnNpdmUgdXRpbGl0aWVzLlxuLy9cbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoeHMsICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIlwiICAoUmV0dXJucyBhIGJsYW5rIHN0cmluZylcbi8vICAgID4+IGJyZWFrcG9pbnQtaW5maXgoc20sICh4czogMCwgc206IDU3NnB4LCBtZDogNzY4cHgsIGxnOiA5OTJweCwgeGw6IDEyMDBweCkpXG4vLyAgICBcIi1zbVwiXG5AZnVuY3Rpb24gYnJlYWtwb2ludC1pbmZpeCgkbmFtZSwgJGJyZWFrcG9pbnRzOiAkZ3JpZC1icmVha3BvaW50cykge1xuICBAcmV0dXJuIGlmKGJyZWFrcG9pbnQtbWluKCRuYW1lLCAkYnJlYWtwb2ludHMpID09IG51bGwsIFwiXCIsIFwiLSN7JG5hbWV9XCIpO1xufVxuXG4vLyBNZWRpYSBvZiBhdCBsZWFzdCB0aGUgbWluaW11bSBicmVha3BvaW50IHdpZHRoLiBObyBxdWVyeSBmb3IgdGhlIHNtYWxsZXN0IGJyZWFrcG9pbnQuXG4vLyBNYWtlcyB0aGUgQGNvbnRlbnQgYXBwbHkgdG8gdGhlIGdpdmVuIGJyZWFrcG9pbnQgYW5kIHdpZGVyLlxuQG1peGluIG1lZGlhLWJyZWFrcG9pbnQtdXAoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWluIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJG1pbikge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBvZiBhdCBtb3N0IHRoZSBtYXhpbXVtIGJyZWFrcG9pbnQgd2lkdGguIE5vIHF1ZXJ5IGZvciB0aGUgbGFyZ2VzdCBicmVha3BvaW50LlxuLy8gTWFrZXMgdGhlIEBjb250ZW50IGFwcGx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50IGFuZCBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LWRvd24oJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1heDogYnJlYWtwb2ludC1tYXgoJG5hbWUsICRicmVha3BvaW50cyk7XG4gIEBpZiAkbWF4IHtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJG1heCkge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG4vLyBNZWRpYSBiZXR3ZWVuIHRoZSBicmVha3BvaW50J3MgbWluaW11bSBhbmQgbWF4aW11bSB3aWR0aHMuXG4vLyBObyBtaW5pbXVtIGZvciB0aGUgc21hbGxlc3QgYnJlYWtwb2ludCwgYW5kIG5vIG1heGltdW0gZm9yIHRoZSBsYXJnZXN0IG9uZS5cbi8vIE1ha2VzIHRoZSBAY29udGVudCBhcHBseSBvbmx5IHRvIHRoZSBnaXZlbiBicmVha3BvaW50LCBub3Qgdmlld3BvcnRzIGFueSB3aWRlciBvciBuYXJyb3dlci5cbkBtaXhpbiBtZWRpYS1icmVha3BvaW50LW9ubHkoJG5hbWUsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgJG1pbjogYnJlYWtwb2ludC1taW4oJG5hbWUsICRicmVha3BvaW50cyk7XG4gICRtYXg6IGJyZWFrcG9pbnQtbWF4KCRuYW1lLCAkYnJlYWtwb2ludHMpO1xuXG4gIEBpZiAkbWluICE9IG51bGwgYW5kICRtYXggIT0gbnVsbCB7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRtaW4pIGFuZCAobWF4LXdpZHRoOiAkbWF4KSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH0gQGVsc2UgaWYgJG1heCA9PSBudWxsIHtcbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuYW1lLCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSBpZiAkbWluID09IG51bGwge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bigkbmFtZSwgJGJyZWFrcG9pbnRzKSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zOiAkZ3JpZC1jb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgsICRicmVha3BvaW50czogJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgLy8gQ29tbW9uIHByb3BlcnRpZXMgZm9yIGFsbCBicmVha3BvaW50c1xuICAlZ3JpZC1jb2x1bW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ3V0dGVyICogLjU7XG4gICAgcGFkZGluZy1sZWZ0OiAkZ3V0dGVyICogLjU7XG4gIH1cblxuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAua2V5cygkYnJlYWtwb2ludHMpIHtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJGJyZWFrcG9pbnQsICRicmVha3BvaW50cyk7XG5cbiAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgIC8vIEFsbG93IGNvbHVtbnMgdG8gc3RyZXRjaCBmdWxsIHdpZHRoIGJlbG93IHRoZWlyIGJyZWFrcG9pbnRzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgLmNvbCN7JGluZml4fS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlZ3JpZC1jb2x1bW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29sI3skaW5maXh9LFxuICAgIC5jb2wjeyRpbmZpeH0tYXV0byB7XG4gICAgICBAZXh0ZW5kICVncmlkLWNvbHVtbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRicmVha3BvaW50LCAkYnJlYWtwb2ludHMpIHtcbiAgICAgIC8vIFByb3ZpZGUgYmFzaWMgYC5jb2wte2JwfWAgY2xhc3NlcyBmb3IgZXF1YWwtd2lkdGggZmxleGJveCBjb2x1bW5zXG4gICAgICAuY29sI3skaW5maXh9IHtcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgZmxleC1ncm93OiAxO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZ3JpZC1yb3ctY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLXJvdy1jb2x1bW5zIHtcbiAgICAgICAgICAucm93LWNvbHMjeyRpbmZpeH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcm93LWNvbHMoJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY29sI3skaW5maXh9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSBtYWtlLWNvbC1hdXRvKCk7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkY29sdW1ucyA+IDAge1xuICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICAgICAgICAuY29sI3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIG1ha2UtY29sKCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5vcmRlciN7JGluZml4fS1maXJzdCB7IG9yZGVyOiAtMTsgfVxuXG4gICAgICAub3JkZXIjeyRpbmZpeH0tbGFzdCB7IG9yZGVyOiAkY29sdW1ucyArIDE7IH1cblxuICAgICAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkY29sdW1ucyB7XG4gICAgICAgIC5vcmRlciN7JGluZml4fS0jeyRpfSB7IG9yZGVyOiAkaTsgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJGNvbHVtbnMgPiAwIHtcbiAgICAgICAgLy8gYCRjb2x1bW5zIC0gMWAgYmVjYXVzZSBvZmZzZXR0aW5nIGJ5IHRoZSB3aWR0aCBvZiBhbiBlbnRpcmUgcm93IGlzbid0IHBvc3NpYmxlXG4gICAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggKCRjb2x1bW5zIC0gMSkge1xuICAgICAgICAgIEBpZiBub3QgKCRpbmZpeCA9PSBcIlwiIGFuZCAkaSA9PSAwKSB7IC8vIEF2b2lkIGVtaXR0aW5nIHVzZWxlc3MgLm9mZnNldC0wXG4gICAgICAgICAgICAub2Zmc2V0I3skaW5maXh9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgbWFrZS1jb2wtb2Zmc2V0KCRpLCAkY29sdW1ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcbi8vXG4vLyBDb25kZW5zZWQgdGFibGUgdy8gaGFsZiBwYWRkaW5nXG4vL1xuXG4udGFibGUtc20ge1xuICB0aCxcbiAgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmctc207XG4gIH1cbn1cblxuXG4vLyBCb3JkZXIgdmVyc2lvbnNcbi8vXG4vLyBBZGQgb3IgcmVtb3ZlIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItd2lkdGggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICB0aCxcbiAgdGQge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlci13aWR0aCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIgKiAkdGFibGUtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYm9yZGVybGVzcyB7XG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgsXG4gIHRib2R5ICsgdGJvZHkge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4vLyBaZWJyYS1zdHJpcGluZ1xuLy9cbi8vIERlZmF1bHQgemVicmEtc3RyaXBlIHN0eWxlcyAoYWx0ZXJuYXRpbmcgZ3JheSBhbmQgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMpXG5cbi50YWJsZS1zdHJpcGVkIHtcbiAgdGJvZHkgdHI6bnRoLW9mLXR5cGUoI3skdGFibGUtc3RyaXBlZC1vcmRlcn0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWNjZW50LWJnO1xuICB9XG59XG5cblxuLy8gSG92ZXIgZWZmZWN0XG4vL1xuLy8gUGxhY2VkIGhlcmUgc2luY2UgaXQgaGFzIHRvIGNvbWUgYWZ0ZXIgdGhlIHBvdGVudGlhbCB6ZWJyYSBzdHJpcGluZ1xuXG4udGFibGUtaG92ZXIge1xuICB0Ym9keSB0ciB7XG4gICAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFRhYmxlIGJhY2tncm91bmRzXG4vL1xuLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbi8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICBAaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgkY29sb3IsIHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJHRhYmxlLWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkdGFibGUtYm9yZGVyLWxldmVsKSk7XG59XG5cbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KGFjdGl2ZSwgJHRhYmxlLWFjdGl2ZS1iZyk7XG5cblxuLy8gRGFyayBzdHlsZXNcbi8vXG4vLyBTYW1lIHRhYmxlIG1hcmt1cCwgYnV0IGludmVydGVkIGNvbG9yIHNjaGVtZTogZGFyayBiYWNrZ3JvdW5kIGFuZCBsaWdodCB0ZXh0LlxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLnRhYmxlIHtcbiAgLnRoZWFkLWRhcmsge1xuICAgIHRoIHtcbiAgICAgIGNvbG9yOiAkdGFibGUtZGFyay1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtZGFyay1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLnRoZWFkLWxpZ2h0IHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogJHRhYmxlLWhlYWQtY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLnRhYmxlLWRhcmsge1xuICBjb2xvcjogJHRhYmxlLWRhcmstY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWJnO1xuXG4gIHRoLFxuICB0ZCxcbiAgdGhlYWQgdGgge1xuICAgIGJvcmRlci1jb2xvcjogJHRhYmxlLWRhcmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgJi50YWJsZS1zdHJpcGVkIHtcbiAgICB0Ym9keSB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWNjZW50LWJnO1xuICAgIH1cbiAgfVxuXG4gICYudGFibGUtaG92ZXIge1xuICAgIHRib2R5IHRyIHtcbiAgICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gR2VuZXJhdGUgc2VyaWVzIG9mIGAudGFibGUtcmVzcG9uc2l2ZS0qYCBjbGFzc2VzIGZvciBjb25maWd1cmluZyB0aGUgc2NyZWVuXG4vLyBzaXplIG9mIHdoZXJlIHlvdXIgdGFibGUgd2lsbCBvdmVyZmxvdy5cbkBtaXhpbiByZXNvbnNpdmUtdGFibGUtc3R5bGVzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgLy8gUHJldmVudCBkb3VibGUgYm9yZGVyIG9uIGhvcml6b250YWwgc2Nyb2xsIGR1ZSB0byB1c2Ugb2YgYGRpc3BsYXk6IGJsb2NrO2BcbiAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4udGFibGUtcmVzcG9uc2l2ZSB7XG4gIEBlYWNoICRicmVha3BvaW50IGluIG1hcC5rZXlzKCRncmlkLWJyZWFrcG9pbnRzKSB7XG4gICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICRpbmZpeDogYnJlYWtwb2ludC1pbmZpeCgkbmV4dCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgIEBpZiAoJG5leHQgIT0gbnVsbCkge1xuICAgICAgJiN7JGluZml4fSB7XG4gICAgICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKCRuZXh0KSB7XG4gICAgICAgICAgQGluY2x1ZGUgcmVzb25zaXZlLXRhYmxlLXN0eWxlcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYge1xuICAgIEBpbmNsdWRlIHJlc29uc2l2ZS10YWJsZS1zdHlsZXM7XG4gIH1cbn1cbiIsIi8vIEhvdmVyIG1peGluIGFuZCBgJGVuYWJsZS1ob3Zlci1tZWRpYS1xdWVyeWAgYXJlIGRlcHJlY2F0ZWQuXG4vL1xuLy8gT3JpZ2luYWxseSBhZGRlZCBkdXJpbmcgb3VyIGFscGhhcyBhbmQgbWFpbnRhaW5lZCBkdXJpbmcgYmV0YXMsIHRoaXMgbWl4aW4gd2FzXG4vLyBkZXNpZ25lZCB0byBwcmV2ZW50IGA6aG92ZXJgIHN0aWNraW5lc3Mgb24gaU9TLWFuIGlzc3VlIHdoZXJlIGhvdmVyIHN0eWxlc1xuLy8gd291bGQgcGVyc2lzdCBhZnRlciBpbml0aWFsIHRvdWNoLlxuLy9cbi8vIEZvciBiYWNrd2FyZCBjb21wYXRpYmlsaXR5LCB3ZSd2ZSBrZXB0IHRoZXNlIG1peGlucyBhbmQgdXBkYXRlZCB0aGVtIHRvXG4vLyBhbHdheXMgcmV0dXJuIHRoZWlyIHJlZ3VsYXIgcHNldWRvLWNsYXNzZXMgaW5zdGVhZCBvZiBhIHNoaW1tZWQgbWVkaWEgcXVlcnkuXG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjUxOTVcblxuQG1peGluIGhvdmVyKCkge1xuICAmOmhvdmVyIHsgQGNvbnRlbnQ7IH1cbn1cblxuQG1peGluIGhvdmVyLWZvY3VzKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBwbGFpbi1ob3Zlci1mb2N1cygpIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gaG92ZXItZm9jdXMtYWN0aXZlKCkge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUsXG4gICY6YWN0aXZlIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6Y29sb3JcIjtcbi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGJvcmRlcjogbnVsbCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUtI3skc3RhdGV9IHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlciAhPSBudWxsIHtcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyIHtcbiAgICAkaG92ZXItYmFja2dyb3VuZDogY29sb3IuYWRqdXN0KCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtNSUpO1xuXG4gICAgLnRhYmxlLSN7JHN0YXRlfSB7XG4gICAgICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG5cbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBUZXh0dWFsIGZvcm0gY29udHJvbHNcbi8vXG5cbi5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAkaW5wdXQtcGFkZGluZy14O1xuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLXdpZHRoIHNvbGlkICRpbnB1dC1ib3JkZXItY29sb3I7XG5cbiAgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLCAwKTtcblxuICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkaW5wdXQtdHJhbnNpdGlvbik7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIEN1c3RvbWl6ZSB0aGUgYDpmb2N1cy12aXNpYmxlYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcblxuICAvLyBQbGFjZWhvbGRlclxuICAmOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgICAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNi5cbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYW5kIHJlYWQtb25seSBpbnB1dHNcbiAgLy9cbiAgLy8gSFRNTDUgc2F5cyB0aGF0IGNvbnRyb2xzIHVuZGVyIGEgZmllbGRzZXQgPiBsZWdlbmQ6Zmlyc3QtY2hpbGQgd29uJ3QgYmVcbiAgLy8gZGlzYWJsZWQgaWYgdGhlIGZpZWxkc2V0IGlzIGRpc2FibGVkLiBEdWUgdG8gaW1wbGVtZW50YXRpb24gZGlmZmljdWx0eSwgd2VcbiAgLy8gZG9uJ3QgaG9ub3IgdGhhdCBlZGdlIGNhc2U7IHdlIHN0eWxlIHRoZW0gYXMgZGlzYWJsZWQgYW55d2F5LlxuICAmOmRpc2FibGVkLFxuICAmW3JlYWRvbmx5XSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTUuXG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbmlucHV0W3R5cGU9XCJ0aW1lXCJdLFxuaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgJi5mb3JtLWNvbnRyb2wge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7IC8vIEZpeCBhcHBlYXJhbmNlIGZvciBkYXRlIGlucHV0cyBpbiBTYWZhcmlcbiAgfVxufVxuXG5zZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgLy8gUmVtb3ZlIHNlbGVjdCBvdXRsaW5lIGZyb20gc2VsZWN0IGJveCBpbiBGRlxuICAmOi1tb3otZm9jdXNyaW5nIHtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdGV4dC1zaGFkb3c6IDAgMCAwICRpbnB1dC1jb2xvcjtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZTo6LW1zLXZhbHVlIHtcbiAgICAvLyBTdXBwcmVzcyB0aGUgbmVzdGVkIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgLy8gdGhlIHNlbGVjdGVkIG9wdGlvbiB0ZXh0IHdoZW4gdGhlIChzdGlsbCBjbG9zZWQpIDxzZWxlY3Q+IHJlY2VpdmVzIGZvY3VzXG4gICAgLy8gaW4gSUUgYW5kICh1bmRlciBjZXJ0YWluIGNvbmRpdGlvbnMpIEVkZ2UsIGFzIGl0IGxvb2tzIGJhZCBhbmQgY2Fubm90IGJlIG1hZGUgdG9cbiAgICAvLyBtYXRjaCB0aGUgYXBwZWFyYW5jZSBvZiB0aGUgbmF0aXZlIHdpZGdldC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTM5OC5cbiAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgfVxufVxuXG4vLyBNYWtlIGZpbGUgaW5wdXRzIGJldHRlciBtYXRjaCB0ZXh0IGlucHV0cyBieSBmb3JjaW5nIHRoZW0gdG8gbmV3IGxpbmVzLlxuLmZvcm0tY29udHJvbC1maWxlLFxuLmZvcm0tY29udHJvbC1yYW5nZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cblxuXG4vL1xuLy8gTGFiZWxzXG4vL1xuXG4vLyBGb3IgdXNlIHdpdGggaG9yaXpvbnRhbCBhbmQgaW5saW5lIGZvcm1zLCB3aGVuIHlvdSBuZWVkIHRoZSBsYWJlbCAob3IgbGVnZW5kKVxuLy8gdGV4dCB0byBhbGlnbiB3aXRoIHRoZSBmb3JtIGNvbnRyb2xzLlxuLmNvbC1mb3JtLWxhYmVsIHtcbiAgcGFkZGluZy10b3A6IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgcGFkZGluZy1ib3R0b206IGFkZCgkaW5wdXQtcGFkZGluZy15LCAkaW5wdXQtYm9yZGVyLXdpZHRoKTtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgdGhlIGA8bGFiZWw+LzxsZWdlbmQ+YCBkZWZhdWx0XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZShpbmhlcml0KTsgLy8gT3ZlcnJpZGUgdGhlIGA8bGVnZW5kPmAgZGVmYXVsdFxuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xufVxuXG4uY29sLWZvcm0tbGFiZWwtbGcge1xuICBwYWRkaW5nLXRvcDogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBwYWRkaW5nLWJvdHRvbTogYWRkKCRpbnB1dC1wYWRkaW5nLXktbGcsICRpbnB1dC1ib3JkZXItd2lkdGgpO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG59XG5cbi5jb2wtZm9ybS1sYWJlbC1zbSB7XG4gIHBhZGRpbmctdG9wOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIHBhZGRpbmctYm90dG9tOiBhZGQoJGlucHV0LXBhZGRpbmcteS1zbSwgJGlucHV0LWJvcmRlci13aWR0aCk7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkaW5wdXQtZm9udC1zaXplLXNtKTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodC1zbTtcbn1cblxuXG4vLyBSZWFkb25seSBjb250cm9scyBhcyBwbGFpbiB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSByZWFkb25seSBpbnB1dCB0byBtYWtlIGl0IGFwcGVhciBsaWtlIHJlZ3VsYXIgcGxhaW5cbi8vIHRleHQgKHdpdGhvdXQgYW55IGJvcmRlciwgYmFja2dyb3VuZCBjb2xvciwgZm9jdXMgaW5kaWNhdG9yKVxuXG4uZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteSAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBtYXRjaCBpbnB1dHMgaWYgdGhpcyBjbGFzcyBjb21lcyBvbiBpbnB1dHMgd2l0aCBkZWZhdWx0IG1hcmdpbnNcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUpO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LXBsYWludGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci13aWR0aDogJGlucHV0LWJvcmRlci13aWR0aCAwO1xuXG4gICYuZm9ybS1jb250cm9sLXNtLFxuICAmLmZvcm0tY29udHJvbC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gQnVpbGQgb24gYC5mb3JtLWNvbnRyb2xgIHdpdGggbW9kaWZpZXIgY2xhc3NlcyB0byBkZWNyZWFzZSBvciBpbmNyZWFzZSB0aGVcbi8vIGhlaWdodCBhbmQgZm9udC1zaXplIG9mIGZvcm0gY29udHJvbHMuXG4vL1xuLy8gUmVwZWF0ZWQgaW4gYF9pbnB1dF9ncm91cC5zY3NzYCB0byBhdm9pZCBTYXNzIGV4dGVuZCBpc3N1ZXMuXG5cbi5mb3JtLWNvbnRyb2wtc20ge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc207XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nLXktc20gJGlucHV0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRpbnB1dC1mb250LXNpemUtc20pO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0LXNtO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzLXNtKTtcbn1cblxuLmZvcm0tY29udHJvbC1sZyB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuc2VsZWN0LmZvcm0tY29udHJvbCB7XG4gICZbc2l6ZV0sXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuLmZvcm0tdGV4dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAkZm9ybS10ZXh0LW1hcmdpbi10b3A7XG59XG5cblxuLy8gRm9ybSBncmlkXG4vL1xuLy8gU3BlY2lhbCByZXBsYWNlbWVudCBmb3Igb3VyIGdyaWQgc3lzdGVtJ3MgYC5yb3dgIGZvciB0aWdodGVyIGZvcm0gbGF5b3V0cy5cblxuLmZvcm0tcm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tcmlnaHQ6IC0kZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICBtYXJnaW4tbGVmdDogLSRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG5cbiAgPiAuY29sLFxuICA+IFtjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZm9ybS1ncmlkLWd1dHRlci13aWR0aCAqIC41O1xuICAgIHBhZGRpbmctbGVmdDogJGZvcm0tZ3JpZC1ndXR0ZXItd2lkdGggKiAuNTtcbiAgfVxufVxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEluZGVudCB0aGUgbGFiZWxzIHRvIHBvc2l0aW9uIHJhZGlvcy9jaGVja2JveGVzIGFzIGhhbmdpbmcgY29udHJvbHMuXG5cbi5mb3JtLWNoZWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAkZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG59XG5cbi5mb3JtLWNoZWNrLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teTtcbiAgbWFyZ2luLWxlZnQ6IC0kZm9ybS1jaGVjay1pbnB1dC1ndXR0ZXI7XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCBmb3Igd29ya2Fyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdIH4gLmZvcm0tY2hlY2stbGFiZWwsXG4gICY6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCB7XG4gICAgY29sb3I6ICR0ZXh0LW11dGVkO1xuICB9XG59XG5cbi5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgYm90dG9tIG1hcmdpblxufVxuXG4uZm9ybS1jaGVjay1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBiYXNlIC5mb3JtLWNoZWNrXG4gIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLW1hcmdpbi14O1xuXG4gIC8vIFVuZG8gLmZvcm0tY2hlY2staW5wdXQgZGVmYXVsdHMgYW5kIGFkZCBzb21lIGBtYXJnaW4tcmlnaHRgLlxuICAuZm9ybS1jaGVjay1pbnB1dCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGZvcm0tY2hlY2staW5saW5lLWlucHV0LW1hcmdpbi14O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gRm9ybSB2YWxpZGF0aW9uXG4vL1xuLy8gUHJvdmlkZSBmZWVkYmFjayB0byB1c2VycyB3aGVuIGZvcm0gZmllbGQgdmFsdWVzIGFyZSB2YWxpZCBvciBpbnZhbGlkLiBXb3Jrc1xuLy8gcHJpbWFyaWx5IGZvciBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIHZpYSBzY29wZWQgYDppbnZhbGlkYCBhbmQgYDp2YWxpZGBcbi8vIHBzZXVkby1jbGFzc2VzIGJ1dCBhbHNvIGluY2x1ZGVzIGAuaXMtaW52YWxpZGAgYW5kIGAuaXMtdmFsaWRgIGNsYXNzZXMgZm9yXG4vLyBzZXJ2ZXIgc2lkZSB2YWxpZGF0aW9uLlxuXG5AZWFjaCAkc3RhdGUsICRkYXRhIGluICRmb3JtLXZhbGlkYXRpb24tc3RhdGVzIHtcbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlKCRzdGF0ZSwgbWFwLmdldCgkZGF0YSwgY29sb3IpLCBtYXAuZ2V0KCRkYXRhLCBpY29uKSk7XG59XG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG5cbi5mb3JtLWlubGluZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIFByZXZlbnQgc2hvcnRlciBlbGVtZW50cyBmcm9tIGdyb3dpbmcgdG8gc2FtZSBoZWlnaHQgYXMgb3RoZXJzIChlLmcuLCBzbWFsbCBidXR0b25zIGdyb3dpbmcgdG8gbm9ybWFsIHNpemVkIGJ1dHRvbiBoZWlnaHQpXG5cbiAgLy8gQmVjYXVzZSB3ZSB1c2UgZmxleCwgdGhlIGluaXRpYWwgc2l6aW5nIG9mIGNoZWNrYm94ZXMgaXMgY29sbGFwc2VkIGFuZFxuICAvLyBkb2Vzbid0IG9jY3VweSB0aGUgZnVsbC13aWR0aCAod2hpY2ggaXMgd2hhdCB3ZSB3YW50IGZvciB4cyBncmlkIHRpZXIpLFxuICAvLyBzbyB3ZSBmb3JjZSB0aGF0IGhlcmUuXG4gIC5mb3JtLWNoZWNrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIEtpY2sgaW4gdGhlIGlubGluZVxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHNtKSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLy8gSW5saW5lLWJsb2NrIGFsbCB0aGUgdGhpbmdzIGZvciBcImlubGluZVwiXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC8vIEFsbG93IGZvbGtzIHRvICpub3QqIHVzZSBgLmZvcm0tZ3JvdXBgXG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB3aWR0aDogYXV0bzsgLy8gUHJldmVudCBsYWJlbHMgZnJvbSBzdGFja2luZyBhYm92ZSBpbnB1dHMgaW4gYC5mb3JtLWdyb3VwYFxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAvLyBNYWtlIHN0YXRpYyBjb250cm9scyBiZWhhdmUgbGlrZSByZWd1bGFyIG9uZXNcbiAgICAuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLmlucHV0LWdyb3VwLFxuICAgIC5jdXN0b20tc2VsZWN0IHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5mb3JtLWNoZWNrIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZm9ybS1jaGVjay1pbnB1dC1tYXJnaW4teDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbCB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bGlzdFwiO1xuLy8gc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICBAaWYgbGlzdC5sZW5ndGgoJHRyYW5zaXRpb24pID09IDAge1xuICAgICR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1iYXNlO1xuICB9XG5cbiAgQGlmIGxpc3QubGVuZ3RoKCR0cmFuc2l0aW9uKSA+IDEge1xuICAgIEBlYWNoICR2YWx1ZSBpbiAkdHJhbnNpdGlvbiB7XG4gICAgICBAaWYgJHZhbHVlID09IG51bGwgb3IgJHZhbHVlID09IG5vbmUge1xuICAgICAgICBAd2FybiBcIlRoZSBrZXl3b3JkICdub25lJyBvciAnbnVsbCcgbXVzdCBiZSB1c2VkIGFzIGEgc2luZ2xlIGFyZ3VtZW50LlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkZW5hYmxlLXRyYW5zaXRpb25zIHtcbiAgICBAaWYgbGlzdC5udGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwge1xuICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGlmICRlbmFibGUtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1tZWRpYS1xdWVyeSBhbmQgbGlzdC5udGgoJHRyYW5zaXRpb24sIDEpICE9IG51bGwgYW5kIGxpc3QubnRoKCR0cmFuc2l0aW9uLCAxKSAhPSBub25lIHtcbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2Fzczpjb2xvclwiO1xuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcmAgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiBmYWxzZSkge1xuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiAkaW5wdXQtZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWZvY3VzLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpZiAkZW5hYmxlLXNoYWRvd3Mge1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkaW5wdXQtYm94LXNoYWRvdywgJGlucHV0LWZvY3VzLWJveC1zaGFkb3cpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogJGlucHV0LWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGRlcHJlY2F0ZShcIlRoZSBgZm9ybS1jb250cm9sLWZvY3VzKClgIG1peGluXCIsIFwidjQuNC4wXCIsIFwidjVcIiwgJGlnbm9yZS13YXJuaW5nKTtcbn1cblxuLy8gVGhpcyBtaXhpbiB1c2VzIGFuIGBpZigpYCB0ZWNobmlxdWUgdG8gYmUgY29tcGF0aWJsZSB3aXRoIERhcnQgU2Fzc1xuLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9zYXNzL3Nhc3MvaXNzdWVzLzE4NzMjaXNzdWVjb21tZW50LTE1MjI5MzcyNSBmb3IgbW9yZSBkZXRhaWxzXG5AbWl4aW4gZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICBAaWYgKCRzdGF0ZSA9PSBcInZhbGlkXCIgb3IgJHN0YXRlID09IFwiaW52YWxpZFwiKSB7XG4gICAgLndhcy12YWxpZGF0ZWQgI3tpZigmLCBcIiZcIiwgXCJcIil9OiN7JHN0YXRlfSxcbiAgICAje2lmKCYsIFwiJlwiLCBcIlwiKX0uaXMtI3skc3RhdGV9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgI3tpZigmLCBcIiZcIiwgXCJcIil9LmlzLSN7JHN0YXRlfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvciwgJGljb24pIHtcbiAgLiN7JHN0YXRlfS1mZWVkYmFjayB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tdG9wOiAkZm9ybS1mZWVkYmFjay1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9ybS1mZWVkYmFjay1mb250LXNpemUpO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAuI3skc3RhdGV9LXRvb2x0aXAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyBDb250YWluIHRvIHBhcmVudCB3aGVuIHBvc3NpYmxlXG4gICAgcGFkZGluZzogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXkgJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1wYWRkaW5nLXg7XG4gICAgbWFyZ2luLXRvcDogLjFyZW07XG4gICAgQGluY2x1ZGUgZm9udC1zaXplKCRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tZmVlZGJhY2stdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICBjb2xvcjogY29sb3IteWlxKCRjb2xvcik7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkY29sb3IsICRmb3JtLWZlZWRiYWNrLXRvb2x0aXAtb3BhY2l0eSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZm9ybS1mZWVkYmFjay10b29sdGlwLWJvcmRlci1yYWRpdXMpO1xuXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzMxNTU3XG4gICAgLy8gQWxpZ24gdG9vbHRpcCB0byBmb3JtIGVsZW1lbnRzXG4gICAgLmZvcm0tcm93ID4gLmNvbCA+ICYsXG4gICAgLmZvcm0tcm93ID4gW2NsYXNzKj1cImNvbC1cIl0gPiAmIHtcbiAgICAgIGxlZnQ6ICRmb3JtLWdyaWQtZ3V0dGVyLXdpZHRoICogLjU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBmb3JtLXZhbGlkYXRpb24tc3RhdGUtc2VsZWN0b3IoJHN0YXRlKSB7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAgICAgQGlmICRlbmFibGUtdmFsaWRhdGlvbi1pY29ucyB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1oZWlnaHQtaW5uZXIgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkaWNvbik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlciBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogJGlucHV0LWhlaWdodC1pbm5lci1oYWxmICRpbnB1dC1oZWlnaHQtaW5uZXItaGFsZjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtcGFkZGluZy14ICogNCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAkaW5wdXQtcGFkZGluZy14ICogMiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkaW5wdXQtaGVpZ2h0LWlubmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3AgJGlucHV0LWhlaWdodC1pbm5lci1xdWFydGVyIHJpZ2h0ICRpbnB1dC1oZWlnaHQtaW5uZXItcXVhcnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgIEBpZiAkZW5hYmxlLXZhbGlkYXRpb24taWNvbnMge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkY3VzdG9tLXNlbGVjdC1mZWVkYmFjay1pY29uLXBhZGRpbmctcmlnaHQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBkZWNsYXJhdGlvbi1uby1pbXBvcnRhbnRcbiAgICAgICAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZCwgJGN1c3RvbS1zZWxlY3QtYmcgZXNjYXBlLXN2ZygkaWNvbikgJGN1c3RvbS1zZWxlY3QtZmVlZGJhY2staWNvbi1wb3NpdGlvbiAvICRjdXN0b20tc2VsZWN0LWZlZWRiYWNrLWljb24tc2l6ZSBuby1yZXBlYXQ7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAkaW5wdXQtZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tY2hlY2staW5wdXQge1xuICAgIEBpbmNsdWRlIGZvcm0tdmFsaWRhdGlvbi1zdGF0ZS1zZWxlY3Rvcigkc3RhdGUpIHtcbiAgICAgIH4gLmZvcm0tY2hlY2stbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgfVxuXG4gICAgICB+IC4jeyRzdGF0ZX0tZmVlZGJhY2ssXG4gICAgICB+IC4jeyRzdGF0ZX0tdG9vbHRpcCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpjaGVja2VkIHtcbiAgICAgICAgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBjb2xvci5hZGp1c3QoJGNvbG9yLCAkbGlnaHRuZXNzOiAxMCUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKGNvbG9yLmFkanVzdCgkY29sb3IsICRsaWdodG5lc3M6IDEwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bm90KDpjaGVja2VkKSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGN1c3RvbSBmaWxlXG4gIC5jdXN0b20tZmlsZS1pbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybS12YWxpZGF0aW9uLXN0YXRlLXNlbGVjdG9yKCRzdGF0ZSkge1xuICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRpbnB1dC1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6Y29sb3JcIjtcbi8vIEdyYWRpZW50c1xuXG5AbWl4aW4gZ3JhZGllbnQtYmcoJGNvbG9yKSB7XG4gIEBpZiAkZW5hYmxlLWdyYWRpZW50cyB7XG4gICAgYmFja2dyb3VuZDogJGNvbG9yIGxpbmVhci1ncmFkaWVudCgxODBkZWcsIGNvbG9yLm1peCgkYm9keS1iZywgJGNvbG9yLCAxNSUpLCAkY29sb3IpIHJlcGVhdC14O1xuICB9IEBlbHNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbkBtaXhpbiBncmFkaWVudC14KCRzdGFydC1jb2xvcjogJGdyYXktNzAwLCAkZW5kLWNvbG9yOiAkZ3JheS04MDAsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG5AbWl4aW4gZ3JhZGllbnQteSgkc3RhcnQtY29sb3I6ICRncmF5LTcwMCwgJGVuZC1jb2xvcjogJGdyYXktODAwLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAkZ3JheS03MDAsICRlbmQtY29sb3I6ICRncmF5LTgwMCwgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cbkBtaXhpbiBncmFkaWVudC14LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC15LXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICRibHVlLCAkbWlkLWNvbG9yOiAkcHVycGxlLCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAkcmVkKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICRncmF5LTcwMCwgJG91dGVyLWNvbG9yOiAkZ3JheS04MDApIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKCR3aGl0ZSwgLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy9cbi8vIEJhc2Ugc3R5bGVzXG4vL1xuXG4uYnRuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGJ0bi1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRidG4tZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkYm9keS1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIHdoaXRlLXNwYWNlOiAkYnRuLXdoaXRlLXNwYWNlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogJGJ0bi1ib3JkZXItd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LCAkYnRuLXBhZGRpbmcteCwgJGJ0bi1mb250LXNpemUsICRidG4tbGluZS1oZWlnaHQsICRidG4tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJ0bi10cmFuc2l0aW9uKTtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGJvZHktY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlLFxuICAmLmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6ICRidG4tZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIERpc2FibGVkIGNvbWVzIGZpcnN0IHNvIGFjdGl2ZSBjYW4gcHJvcGVybHkgcmVzdHlsZVxuICAmLmRpc2FibGVkLFxuICAmOmRpc2FibGVkIHtcbiAgICBvcGFjaXR5OiAkYnRuLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgIGN1cnNvcjogaWYoJGVuYWJsZS1wb2ludGVyLWN1cnNvci1mb3ItYnV0dG9ucywgcG9pbnRlciwgbnVsbCk7XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmLmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYWN0aXZlLWJveC1zaGFkb3cpO1xuXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tZm9jdXMtYm94LXNoYWRvdywgJGJ0bi1hY3RpdmUtYm94LXNoYWRvdyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZ1dHVyZS1wcm9vZiBkaXNhYmxpbmcgb2YgY2xpY2tzIG9uIGA8YT5gIGVsZW1lbnRzXG5hLmJ0bi5kaXNhYmxlZCxcbmZpZWxkc2V0OmRpc2FibGVkIGEuYnRuIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cblxuLy9cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vL1xuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCR2YWx1ZSwgJHZhbHVlKTtcbiAgfVxufVxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgLmJ0bi1vdXRsaW5lLSN7JGNvbG9yfSB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLW91dGxpbmUtdmFyaWFudCgkdmFsdWUpO1xuICB9XG59XG5cblxuLy9cbi8vIExpbmsgYnV0dG9uc1xuLy9cblxuLy8gTWFrZSBhIGJ1dHRvbiBsb29rIGFuZCBiZWhhdmUgbGlrZSBhIGxpbmtcbi5idG4tbGluayB7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBjb2xvcjogJGxpbmstY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogJGxpbmstZGVjb3JhdGlvbjtcblxuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkbGluay1ob3Zlci1kZWNvcmF0aW9uO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlLFxuICAmLmZvY3VzIHtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmRpc2FibGVkLFxuICAmLmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLy8gTm8gbmVlZCBmb3IgYW4gYWN0aXZlIHN0YXRlIGhlcmVcbn1cblxuXG4vL1xuLy8gQnV0dG9uIFNpemVzXG4vL1xuXG4uYnRuLWxnIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJGJ0bi1wYWRkaW5nLXktbGcsICRidG4tcGFkZGluZy14LWxnLCAkYnRuLWZvbnQtc2l6ZS1sZywgJGJ0bi1saW5lLWhlaWdodC1sZywgJGJ0bi1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmJ0bi1zbSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRidG4tcGFkZGluZy15LXNtLCAkYnRuLXBhZGRpbmcteC1zbSwgJGJ0bi1mb250LXNpemUtc20sICRidG4tbGluZS1oZWlnaHQtc20sICRidG4tYm9yZGVyLXJhZGl1cy1zbSk7XG59XG5cblxuLy9cbi8vIEJsb2NrIGJ1dHRvblxuLy9cblxuLmJ0bi1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogJGJ0bi1ibG9jay1zcGFjaW5nLXk7XG4gIH1cbn1cblxuLy8gU3BlY2lmaWNpdHkgb3ZlcnJpZGVzXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuaW5wdXRbdHlwZT1cInJlc2V0XCJdLFxuaW5wdXRbdHlwZT1cImJ1dHRvblwiXSB7XG4gICYuYnRuLWJsb2NrIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6Y29sb3JcIjtcbi8vIEJ1dHRvbiB2YXJpYW50c1xuLy9cbi8vIEVhc2lseSBwdW1wIG91dCBkZWZhdWx0IHN0eWxlcywgYXMgd2VsbCBhcyA6aG92ZXIsIDpmb2N1cy12aXNpYmxlLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJGhvdmVyLWJhY2tncm91bmQ6IGNvbG9yLmFkanVzdCgkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTcuNSUpLCAkaG92ZXItYm9yZGVyOiBjb2xvci5hZGp1c3QoJGJvcmRlciwgJGxpZ2h0bmVzczogLTEwJSksICRhY3RpdmUtYmFja2dyb3VuZDogY29sb3IuYWRqdXN0KCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTAlKSwgJGFjdGl2ZS1ib3JkZXI6IGNvbG9yLmFkanVzdCgkYm9yZGVyLCAkbGlnaHRuZXNzOiAtMTIuNSUpKSB7XG4gIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICBAaW5jbHVkZSBncmFkaWVudC1iZygkYmFja2dyb3VuZCk7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWJveC1zaGFkb3cpO1xuXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGhvdmVyLWJhY2tncm91bmQpO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRob3Zlci1iYWNrZ3JvdW5kKTtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXI7XG4gICAgQGlmICRlbmFibGUtc2hhZG93cyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRidG4tYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKGNvbG9yLm1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgLy8gQXZvaWQgdXNpbmcgbWl4aW4gc28gd2UgY2FuIHBhc3MgY3VzdG9tIGZvY3VzIHNoYWRvdyBwcm9wZXJseVxuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKGNvbG9yLm1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgY29tZXMgZmlyc3Qgc28gYWN0aXZlIGNhbiBwcm9wZXJseSByZXN0eWxlXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKS5hY3RpdmUsXG4gIC5zaG93ID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiBjb2xvci15aXEoJGFjdGl2ZS1iYWNrZ3JvdW5kKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgQGlmICRlbmFibGUtZ3JhZGllbnRzIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IC8vIFJlbW92ZSB0aGUgZ3JhZGllbnQgZm9yIHRoZSBwcmVzc2VkL2FjdGl2ZSBzdGF0ZVxuICAgIH1cbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKGNvbG9yLm1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSkpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEF2b2lkIHVzaW5nIG1peGluIHNvIHdlIGNhbiBwYXNzIGN1c3RvbSBmb2N1cyBzaGFkb3cgcHJvcGVybHlcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKGNvbG9yLm1peChjb2xvci15aXEoJGJhY2tncm91bmQpLCAkYm9yZGVyLCAxNSUpLCAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBidXR0b24tb3V0bGluZS12YXJpYW50KCRjb2xvciwgJGNvbG9yLWhvdmVyOiBjb2xvci15aXEoJGNvbG9yKSwgJGFjdGl2ZS1iYWNrZ3JvdW5kOiAkY29sb3IsICRhY3RpdmUtYm9yZGVyOiAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgQGluY2x1ZGUgaG92ZXIoKSB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlcjtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJi5mb2N1cyB7XG4gICAgYm94LXNoYWRvdzogMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCk6YWN0aXZlLFxuICAmOm5vdCg6ZGlzYWJsZWQpOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSxcbiAgLnNob3cgPiAmLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgY29sb3I6IGNvbG9yLXlpcSgkYWN0aXZlLWJhY2tncm91bmQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZDtcbiAgICBib3JkZXItY29sb3I6ICRhY3RpdmUtYm9yZGVyO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIEBpZiAkZW5hYmxlLXNoYWRvd3MgYW5kICRidG4tYWN0aXZlLWJveC1zaGFkb3cgIT0gbm9uZSB7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGJ0bi1hY3RpdmUtYm94LXNoYWRvdywgMCAwIDAgJGJ0bi1mb2N1cy13aWR0aCByZ2JhKCRjb2xvciwgLjUpKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICAgIGJveC1zaGFkb3c6IDAgMCAwICRidG4tZm9jdXMtd2lkdGggcmdiYSgkY29sb3IsIC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmcteSwgJHBhZGRpbmcteCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy15ICRwYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgLy8gTWFudWFsbHkgZGVjbGFyZSB0byBwcm92aWRlIGFuIG92ZXJyaWRlIHRvIHRoZSBicm93c2VyIGRlZmF1bHRcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYm9yZGVyLXJhZGl1cywgMCk7XG59XG4iLCIuZmFkZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHRyYW5zaXRpb24tZmFkZSk7XG5cbiAgJjpub3QoLnNob3cpIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gICY6bm90KC5zaG93KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uY29sbGFwc2luZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLWNvbGxhcHNlKTtcblxuICAmLndpZHRoIHtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkdHJhbnNpdGlvbi1jb2xsYXBzZS13aWR0aCk7XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuLy8gVGhlIGRyb3Bkb3duIHdyYXBwZXIgKGA8ZGl2PmApXG4uZHJvcHVwLFxuLmRyb3ByaWdodCxcbi5kcm9wZG93bixcbi5kcm9wbGVmdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLy8gR2VuZXJhdGUgdGhlIGNhcmV0IGF1dG9tYXRpY2FsbHlcbiAgQGluY2x1ZGUgY2FyZXQoKTtcbn1cblxuLy8gVGhlIGRyb3Bkb3duIG1lbnVcbi5kcm9wZG93bi1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd247XG4gIGRpc3BsYXk6IG5vbmU7IC8vIG5vbmUgYnkgZGVmYXVsdCwgYnV0IGJsb2NrIG9uIFwib3BlblwiIG9mIHRoZSBtZW51XG4gIGZsb2F0OiBsZWZ0O1xuICBtaW4td2lkdGg6ICRkcm9wZG93bi1taW4td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nLXkgJGRyb3Bkb3duLXBhZGRpbmcteDtcbiAgbWFyZ2luOiAkZHJvcGRvd24tc3BhY2VyIDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBAaW5jbHVkZSBmb250LXNpemUoJGRyb3Bkb3duLWZvbnQtc2l6ZSk7XG4gIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEVuc3VyZXMgcHJvcGVyIGFsaWdubWVudCBpZiBwYXJlbnQgaGFzIGl0IGNoYW5nZWQgKGUuZy4sIG1vZGFsIGZvb3RlcilcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICBib3JkZXI6ICRkcm9wZG93bi1ib3JkZXItd2lkdGggc29saWQgJGRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJGRyb3Bkb3duLWJveC1zaGFkb3cpO1xufVxuXG4uZHJvcGRvd24tbWVudS1sZWZ0IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDA7XG59XG5cbi5kcm9wZG93bi1tZW51LXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG5cbi8vIEFsbG93IGZvciBkcm9wZG93bnMgdG8gZ28gYm90dG9tIHVwIChha2EsIGRyb3B1cC1tZW51KVxuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LlxuLmRyb3B1cCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KHVwKTtcbiAgfVxufVxuXG4uZHJvcHJpZ2h0IHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1zcGFjZXI7XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBAaW5jbHVkZSBjYXJldChyaWdodCk7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdmVydGljYWwtYWxpZ246IDA7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wbGVmdCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1yaWdodDogJGRyb3Bkb3duLXNwYWNlcjtcbiAgfVxuXG4gIC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGNhcmV0KGxlZnQpO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogMDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2hlbiBQb3BwZXIgaXMgZW5hYmxlZCwgcmVzZXQgdGhlIGJhc2ljIGRyb3Bkb3duIHBvc2l0aW9uXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuLmRyb3Bkb3duLW1lbnUge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSxcbiAgJlt4LXBsYWNlbWVudF49XCJib3R0b21cIl0sXG4gICZbeC1wbGFjZW1lbnRePVwibGVmdFwiXSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICB9XG59XG5cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gYDxocj5gKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4uZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIG5hdi1kaXZpZGVyKCRkcm9wZG93bi1kaXZpZGVyLWJnLCAkZHJvcGRvd24tZGl2aWRlci1tYXJnaW4teSwgdHJ1ZSk7XG59XG5cbi8vIExpbmtzLCBidXR0b25zLCBhbmQgbW9yZSB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbi8vXG4vLyBgPGJ1dHRvbj5gLXNwZWNpZmljIHN0eWxlcyBhcmUgZGVub3RlZCB3aXRoIGAvLyBGb3IgPGJ1dHRvbj5zYFxuLmRyb3Bkb3duLWl0ZW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gc1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBjbGVhcjogYm90aDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzXG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gcHJldmVudCBsaW5rcyBmcm9tIHJhbmRvbWx5IGJyZWFraW5nIG9udG8gbmV3IGxpbmVzXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyBGb3IgYDxidXR0b24+YHNcbiAgYm9yZGVyOiAwOyAvLyBGb3IgYDxidXR0b24+YHNcblxuICAvLyBQcmV2ZW50IGRyb3Bkb3duIG92ZXJmbG93IGlmIHRoZXJlJ3Mgbm8gcGFkZGluZ1xuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMjc3MDNcbiAgQGlmICRkcm9wZG93bi1wYWRkaW5nLXkgPT0gMCB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnKTtcbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnKTtcbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICY6ZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50cyBpZiB0aGV5J3JlIGVuYWJsZWRcbiAgICBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUuc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWhlYWRlci1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBmb3IgdXNlIHdpdGggaGVhZGluZyBlbGVtZW50c1xuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1zbSk7XG4gIGNvbG9yOiAkZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBhcyB3aXRoID4gbGkgPiBhXG59XG5cbi8vIERyb3Bkb3duIHRleHRcbi5kcm9wZG93bi1pdGVtLXRleHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRkcm9wZG93bi1saW5rLWNvbG9yO1xufVxuIiwiQG1peGluIGNhcmV0LWRvd24oKSB7XG4gIGJvcmRlci10b3A6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJvcmRlci1sZWZ0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbkBtaXhpbiBjYXJldC11cCgpIHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWxlZnQ6ICRjYXJldC13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIGNhcmV0LXJpZ2h0KCkge1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoIHNvbGlkO1xufVxuXG5AbWl4aW4gY2FyZXQtbGVmdCgpIHtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aCBzb2xpZDtcbiAgYm9yZGVyLWJvdHRvbTogJGNhcmV0LXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG5AbWl4aW4gY2FyZXQoJGRpcmVjdGlvbjogZG93bikge1xuICBAaWYgJGVuYWJsZS1jYXJldCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRjYXJldC1zcGFjaW5nO1xuICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBAaWYgJGRpcmVjdGlvbiA9PSBkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtZG93bigpO1xuICAgICAgfSBAZWxzZSBpZiAkZGlyZWN0aW9uID09IHVwIHtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtdXAoKTtcbiAgICAgIH0gQGVsc2UgaWYgJGRpcmVjdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGNhcmV0LXJpZ2h0KCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkaXJlY3Rpb24gPT0gbGVmdCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkY2FyZXQtc3BhY2luZztcbiAgICAgICAgdmVydGljYWwtYWxpZ246ICRjYXJldC12ZXJ0aWNhbC1hbGlnbjtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgY2FyZXQtbGVmdCgpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZW1wdHk6OmFmdGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAkbmF2LWRpdmlkZXItY29sb3IsICRtYXJnaW4teTogJG5hdi1kaXZpZGVyLW1hcmdpbi15LCAkaWdub3JlLXdhcm5pbmc6IGZhbHNlKSB7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAkbWFyZ2luLXkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRjb2xvcjtcbiAgQGluY2x1ZGUgZGVwcmVjYXRlKFwiVGhlIGBuYXYtZGl2aWRlcigpYCBtaXhpblwiLCBcInY0LjQuMFwiLCBcInY1XCIsICRpZ25vcmUtd2FybmluZyk7XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZSBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gTWFrZSB0aGUgZGl2IGJlaGF2ZSBsaWtlIGEgYnV0dG9uXG4uYnRuLWdyb3VwLFxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG5cbiAgPiAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleDogMSAxIGF1dG87XG5cbiAgICAvLyBCcmluZyB0aGUgaG92ZXIsIGZvY3VzZWQsIGFuZCBcImFjdGl2ZVwiIGJ1dHRvbnMgdG8gdGhlIGZyb250IHRvIG92ZXJsYXlcbiAgICAvLyB0aGUgYm9yZGVycyBwcm9wZXJseVxuICAgIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6YWN0aXZlLFxuICAgICYuYWN0aXZlIHtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIE9wdGlvbmFsOiBHcm91cCBtdWx0aXBsZSBidXR0b24gZ3JvdXBzIHRvZ2V0aGVyIGZvciBhIHRvb2xiYXJcbi5idG4tdG9vbGJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLmJ0bi1ncm91cCB7XG4gIC8vIFByZXZlbnQgZG91YmxlIGJvcmRlcnMgd2hlbiBidXR0b25zIGFyZSBuZXh0IHRvIGVhY2ggb3RoZXJcbiAgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1sZWZ0OiAtJGJ0bi1ib3JkZXItd2lkdGg7XG4gIH1cblxuICAvLyBSZXNldCByb3VuZGVkIGNvcm5lcnNcbiAgPiAuYnRuOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4ge1xuICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgfVxufVxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC1zbSA+IC5idG4geyBAZXh0ZW5kIC5idG4tc207IH1cbi5idG4tZ3JvdXAtbGcgPiAuYnRuIHsgQGV4dGVuZCAuYnRuLWxnOyB9XG5cblxuLy9cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vXG5cbi5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteCAqIC43NTtcblxuICAmOjphZnRlcixcbiAgLmRyb3B1cCAmOjphZnRlcixcbiAgLmRyb3ByaWdodCAmOjphZnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuZHJvcGxlZnQgJjo6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLmJ0bi1zbSArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1zbSAqIC43NTtcbn1cblxuLmJ0bi1sZyArIC5kcm9wZG93bi10b2dnbGUtc3BsaXQge1xuICBwYWRkaW5nLXJpZ2h0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbiAgcGFkZGluZy1sZWZ0OiAkYnRuLXBhZGRpbmcteC1sZyAqIC43NTtcbn1cblxuXG4vLyBUaGUgY2xpY2thYmxlIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIG1lbnVcbi8vIFNldCB0aGUgc2FtZSBpbnNldCBzaGFkb3cgYXMgdGhlIDphY3RpdmUgc3RhdGVcbi5idG4tZ3JvdXAuc2hvdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkYnRuLWFjdGl2ZS1ib3gtc2hhZG93KTtcblxuICAvLyBTaG93IG5vIHNoYWRvdyBmb3IgYC5idG4tbGlua2Agc2luY2UgaXQgaGFzIG5vIG90aGVyIGJ1dHRvbiBzdHlsZXMuXG4gICYuYnRuLWxpbmsge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3cobm9uZSk7XG4gIH1cbn1cblxuXG4vL1xuLy8gVmVydGljYWwgYnV0dG9uIGdyb3Vwc1xuLy9cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICA+IC5idG4sXG4gID4gLmJ0bi1ncm91cCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG46bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXRvcDogLSRidG4tYm9yZGVyLXdpZHRoO1xuICB9XG5cbiAgLy8gUmVzZXQgcm91bmRlZCBjb3JuZXJzXG4gID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuYnRuIHtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgfVxuXG4gID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmJ0biB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG4uYnRuLWdyb3VwLXRvZ2dsZSB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwID4gLmJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgLy8gT3ZlcnJpZGUgZGVmYXVsdCBgPGxhYmVsPmAgdmFsdWVcblxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgc2VsZWN0b3Itbm8tcXVhbGlmeWluZy10eXBlXG5cbi8vXG4vLyBCYXNlIHN0eWxlc1xuLy9cblxuLmlucHV0LWdyb3VwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7IC8vIEZvciBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2tcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gLmZvcm0tY29udHJvbCxcbiAgPiAuZm9ybS1jb250cm9sLXBsYWludGV4dCxcbiAgPiAuY3VzdG9tLXNlbGVjdCxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgLy8gRm9yIGZvY3VzIHN0YXRlJ3Mgei1pbmRleFxuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHdpZHRoOiAxJTtcbiAgICBtaW4td2lkdGg6IDA7IC8vIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzM2MjQ3MTQwL3doeS1kb250LWZsZXgtaXRlbXMtc2hyaW5rLXBhc3QtY29udGVudC1zaXplXG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5jdXN0b20tc2VsZWN0LFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAvLyBCcmluZyB0aGUgXCJhY3RpdmVcIiBmb3JtIGNvbnRyb2wgdG8gdGhlIHRvcCBvZiBzdXJyb3VuZGluZyBlbGVtZW50c1xuICA+IC5mb3JtLWNvbnRyb2w6Zm9jdXMtdmlzaWJsZSxcbiAgPiAuY3VzdG9tLXNlbGVjdDpmb2N1cy12aXNpYmxlLFxuICA+IC5jdXN0b20tZmlsZSAuY3VzdG9tLWZpbGUtaW5wdXQ6Zm9jdXMtdmlzaWJsZSB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgei1pbmRleDogMztcbiAgfVxuXG4gIC8vIEJyaW5nIHRoZSBjdXN0b20gZmlsZSBpbnB1dCBhYm92ZSB0aGUgbGFiZWxcbiAgPiAuY3VzdG9tLWZpbGUgLmN1c3RvbS1maWxlLWlucHV0OmZvY3VzLXZpc2libGUge1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmN1c3RvbS1zZWxlY3Qge1xuICAgICY6bm90KDpmaXJzdC1jaGlsZCkgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gIC8vIEN1c3RvbSBmaWxlIGlucHV0cyBoYXZlIG1vcmUgY29tcGxleCBtYXJrdXAsIHRodXMgcmVxdWlyaW5nIGRpZmZlcmVudFxuICAvLyBib3JkZXItcmFkaXVzIG92ZXJyaWRlcy5cbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIgeyBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApOyB9XG4gICAgJjpub3QoOmZpcnN0LWNoaWxkKSAuY3VzdG9tLWZpbGUtbGFiZWwgeyBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoMCk7IH1cbiAgfVxuXG4gICY6bm90KC5oYXMtdmFsaWRhdGlvbikge1xuICAgID4gLmZvcm0tY29udHJvbDpub3QoOmxhc3QtY2hpbGQpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bm90KDpsYXN0LWNoaWxkKSxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgICA+IC5jdXN0b20tZmlsZTpub3QoOmxhc3QtY2hpbGQpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICAmLmhhcy12YWxpZGF0aW9uIHtcbiAgICA+IC5mb3JtLWNvbnRyb2w6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1zZWxlY3Q6bnRoLWxhc3QtY2hpbGQobiArIDMpLFxuICAgID4gLmN1c3RvbS1maWxlOm50aC1sYXN0LWNoaWxkKG4gKyAzKSAuY3VzdG9tLWZpbGUtbGFiZWwsXG4gICAgPiAuY3VzdG9tLWZpbGU6bnRoLWxhc3QtY2hpbGQobiArIDMpIC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBQcmVwZW5kIGFuZCBhcHBlbmRcbi8vXG4vLyBXaGlsZSBpdCByZXF1aXJlcyBvbmUgZXh0cmEgbGF5ZXIgb2YgSFRNTCBmb3IgZWFjaCwgZGVkaWNhdGVkIHByZXBlbmQgYW5kXG4vLyBhcHBlbmQgZWxlbWVudHMgYWxsb3cgdXMgdG8gMSkgYmUgbGVzcyBjbGV2ZXIsIDIpIHNpbXBsaWZ5IG91ciBzZWxlY3RvcnMsIGFuZFxuLy8gMykgc3VwcG9ydCBIVE1MNSBmb3JtIHZhbGlkYXRpb24uXG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG5cbiAgLy8gRW5zdXJlIGJ1dHRvbnMgYXJlIGFsd2F5cyBhYm92ZSBpbnB1dHMgZm9yIG1vcmUgdmlzdWFsbHkgcGxlYXNpbmcgYm9yZGVycy5cbiAgLy8gVGhpcyBpc24ndCBuZWVkZWQgZm9yIGAuaW5wdXQtZ3JvdXAtdGV4dGAgc2luY2UgaXQgc2hhcmVzIHRoZSBzYW1lIGJvcmRlci1jb2xvclxuICAvLyBhcyBvdXIgaW5wdXRzLlxuICAuYnRuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMjtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgIH1cbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmlucHV0LWdyb3VwLXRleHQsXG4gIC5pbnB1dC1ncm91cC10ZXh0ICsgLmJ0biB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kaW5wdXQtYm9yZGVyLXdpZHRoO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kIHsgbWFyZ2luLXJpZ2h0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuLmlucHV0LWdyb3VwLWFwcGVuZCB7IG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDsgfVxuXG5cbi8vIFRleHR1YWwgYWRkb25zXG4vL1xuLy8gU2VydmVzIGFzIGEgY2F0Y2gtYWxsIGVsZW1lbnQgZm9yIGFueSB0ZXh0IG9yIHJhZGlvL2NoZWNrYm94IGlucHV0IHlvdSB3aXNoXG4vLyB0byBwcmVwZW5kIG9yIGFwcGVuZCB0byBhbiBpbnB1dC5cblxuLmlucHV0LWdyb3VwLXRleHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZy15ICRpbnB1dC1wYWRkaW5nLXg7XG4gIG1hcmdpbi1ib3R0b206IDA7IC8vIEFsbG93IHVzZSBvZiA8bGFiZWw+IGVsZW1lbnRzIGJ5IG92ZXJyaWRpbmcgb3VyIGRlZmF1bHQgbWFyZ2luLWJvdHRvbVxuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZSk7IC8vIE1hdGNoIGlucHV0c1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1ncm91cC1hZGRvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZ3JvdXAtYWRkb24tYmc7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlci13aWR0aCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRpbnB1dC1ib3JkZXItcmFkaXVzKTtcblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cblxuLy8gU2l6aW5nXG4vL1xuLy8gUmVtaXggdGhlIGRlZmF1bHQgZm9ybSBjb250cm9sIHNpemluZyBjbGFzc2VzIGludG8gbmV3IG9uZXMgZm9yIGVhc2llclxuLy8gbWFuaXB1bGF0aW9uLlxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1sZztcbn1cblxuLmlucHV0LWdyb3VwLWxnID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1sZyA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLWxnID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1sZyA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1sZyAkaW5wdXQtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1sZyk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSksXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXNlbGVjdCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbn1cblxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0LFxuLmlucHV0LWdyb3VwLXNtID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1wcmVwZW5kID4gLmJ0bixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hcHBlbmQgPiAuYnRuIHtcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmcteS1zbSAkaW5wdXQtcGFkZGluZy14LXNtO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGlucHV0LWZvbnQtc2l6ZS1zbSk7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXNlbGVjdCxcbi5pbnB1dC1ncm91cC1zbSA+IC5jdXN0b20tc2VsZWN0IHtcbiAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14ICsgJGN1c3RvbS1zZWxlY3QtaW5kaWNhdG9yLXBhZGRpbmc7XG59XG5cblxuLy8gUHJlcGVuZCBhbmQgYXBwZW5kIHJvdW5kZWQgY29ybmVyc1xuLy9cbi8vIFRoZXNlIHJ1bGVzZXRzIG11c3QgY29tZSBhZnRlciB0aGUgc2l6aW5nIG9uZXMgdG8gcHJvcGVybHkgb3ZlcnJpZGUgc20gYW5kIGxnXG4vLyBib3JkZXItcmFkaXVzIHZhbHVlcyB3aGVuIGV4dGVuZGluZy4gVGhleSdyZSBtb3JlIHNwZWNpZmljIHRoYW4gd2UnZCBsaWtlXG4vLyB3aXRoIHRoZSBgLmlucHV0LWdyb3VwID5gIHBhcnQsIGJ1dCB3aXRob3V0IGl0LCB3ZSBjYW5ub3Qgb3ZlcnJpZGUgdGhlIHNpemluZy5cblxuXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZCA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwOm5vdCguaGFzLXZhbGlkYXRpb24pID4gLmlucHV0LWdyb3VwLWFwcGVuZDpub3QoOmxhc3QtY2hpbGQpID4gLmJ0bixcbi5pbnB1dC1ncm91cDpub3QoLmhhcy12YWxpZGF0aW9uKSA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuYnRuLFxuLmlucHV0LWdyb3VwLmhhcy12YWxpZGF0aW9uID4gLmlucHV0LWdyb3VwLWFwcGVuZDpudGgtbGFzdC1jaGlsZChuICsgMykgPiAuaW5wdXQtZ3JvdXAtdGV4dCxcbi5pbnB1dC1ncm91cCA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bGFzdC1jaGlsZCA+IC5idG46bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kOmxhc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbn1cblxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLWFwcGVuZCA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmlucHV0LWdyb3VwLXRleHQsXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4sXG4uaW5wdXQtZ3JvdXAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5pbnB1dC1ncm91cC10ZXh0LFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuaW5wdXQtZ3JvdXAtdGV4dDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cbiIsIi8vIEVtYmVkZGVkIGljb25zIGZyb20gT3BlbiBJY29uaWMuXG4vLyBSZWxlYXNlZCB1bmRlciBNSVQgYW5kIGNvcHlyaWdodCAyMDE0IFdheWJ1cnkuXG4vLyBodHRwczovL3VzZWljb25pYy5jb20vb3BlblxuXG5cbi8vIENoZWNrYm94ZXMgYW5kIHJhZGlvc1xuLy9cbi8vIEJhc2UgY2xhc3MgdGFrZXMgY2FyZSBvZiBhbGwgdGhlIGtleSBiZWhhdmlvcmFsIGFzcGVjdHMuXG5cbi5jdXN0b20tY29udHJvbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6ICRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7IC8vIEtlZXAgdGhlbWVkIGFwcGVhcmFuY2UgZm9yIHByaW50XG59XG5cbi5jdXN0b20tY29udHJvbC1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgbWFyZ2luLXJpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtc3BhY2VyLXg7XG59XG5cbi5jdXN0b20tY29udHJvbC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogLTE7IC8vIFB1dCB0aGUgaW5wdXQgYmVoaW5kIHRoZSBsYWJlbCBzbyBpdCBkb2Vzbid0IG92ZXJsYXkgdGV4dFxuICB3aWR0aDogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplO1xuICBoZWlnaHQ6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSArICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgb3BhY2l0eTogMDtcblxuICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWJnKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1ib3gtc2hhZG93KTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAvLyB0aGUgbWl4aW4gaXMgbm90IHVzZWQgaGVyZSB0byBtYWtlIHN1cmUgdGhlcmUgaXMgZmVlZGJhY2tcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1ib3gtc2hhZG93LCAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJveC1zaGFkb3c7XG4gICAgfVxuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlOm5vdCg6Y2hlY2tlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICY6bm90KDpkaXNhYmxlZCk6YWN0aXZlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWFjdGl2ZS1iZztcbiAgICBib3JkZXItY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYWN0aXZlLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gVXNlIFtkaXNhYmxlZF0gYW5kIDpkaXNhYmxlZCB0byB3b3JrIGFyb3VuZCBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI4MjQ3XG4gICZbZGlzYWJsZWRdLFxuICAmOmRpc2FibGVkIHtcbiAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBjb2xvcjogJGN1c3RvbS1jb250cm9sLWxhYmVsLWRpc2FibGVkLWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBDdXN0b20gY29udHJvbCBpbmRpY2F0b3JzXG4vL1xuLy8gQnVpbGQgdGhlIGN1c3RvbSBjb250cm9scyBvdXQgb2YgcHNldWRvLWVsZW1lbnRzLlxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtbGFiZWwtY29sb3I7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIGN1cnNvcjogJGN1c3RvbS1jb250cm9sLWN1cnNvcjtcblxuICAvLyBCYWNrZ3JvdW5kLWNvbG9yIGFuZCAod2hlbiBlbmFibGVkKSBncmFkaWVudFxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnO1xuICAgIGJvcmRlcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgLy8gRm9yZWdyb3VuZCAoaWNvbilcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNTtcbiAgICBsZWZ0OiAtKCRjdXN0b20tY29udHJvbC1ndXR0ZXIgKyAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgaGVpZ2h0OiAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBiYWNrZ3JvdW5kOiA1MCUgLyAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZX0gbm8tcmVwZWF0O1xuICB9XG59XG5cblxuLy8gQ2hlY2tib3hlc1xuLy9cbi8vIFR3ZWFrIGp1c3QgYSBmZXcgdGhpbmdzIGZvciBjaGVja2JveGVzLlxuXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pY29uLWNoZWNrZWQpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJvcmRlci1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWluZGV0ZXJtaW5hdGUtYmcpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLWNoZWNrYm94LWluZGljYXRvci1pbmRldGVybWluYXRlLWJveC1zaGFkb3cpO1xuICAgIH1cbiAgICAmOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBlc2NhcGUtc3ZnKCRjdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWljb24taW5kZXRlcm1pbmF0ZSk7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkIHtcbiAgICAmOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgICAmOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWNoZWNrZWQtZGlzYWJsZWQtYmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBSYWRpb3Ncbi8vXG4vLyBUd2VhayBqdXN0IGEgZmV3IHRoaW5ncyBmb3IgcmFkaW9zLlxuXG4uY3VzdG9tLXJhZGlvIHtcbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGVzY2FwZS1zdmcoJGN1c3RvbS1yYWRpby1pbmRpY2F0b3ItaWNvbi1jaGVja2VkKTtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQge1xuICAgICY6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItY2hlY2tlZC1kaXNhYmxlZC1iZyk7XG4gICAgfVxuICB9XG59XG5cblxuLy8gc3dpdGNoZXNcbi8vXG4vLyBUd2VhayBhIGZldyB0aGluZ3MgZm9yIHN3aXRjaGVzXG5cbi5jdXN0b20tc3dpdGNoIHtcbiAgcGFkZGluZy1sZWZ0OiAkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXI7XG5cbiAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgbGVmdDogLSgkY3VzdG9tLXN3aXRjaC13aWR0aCArICRjdXN0b20tY29udHJvbC1ndXR0ZXIpO1xuICAgICAgd2lkdGg6ICRjdXN0b20tc3dpdGNoLXdpZHRoO1xuICAgICAgcG9pbnRlci1ldmVudHM6IGFsbDtcbiAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBwcm9wZXJ0eS1kaXNhbGxvd2VkLWxpc3RcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHRvcDogYWRkKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSAtICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSkgKiAuNSwgJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiAyKTtcbiAgICAgIGxlZnQ6IGFkZCgtKCRjdXN0b20tc3dpdGNoLXdpZHRoICsgJGN1c3RvbS1jb250cm9sLWd1dHRlciksICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogMik7XG4gICAgICB3aWR0aDogJGN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLXNpemU7XG4gICAgICBoZWlnaHQ6ICRjdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJvcGVydHktZGlzYWxsb3dlZC1saXN0XG4gICAgICBib3JkZXItcmFkaXVzOiAkY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24odHJhbnNmb3JtIC4xNXMgZWFzZS1pbi1vdXQsICRjdXN0b20tZm9ybXMtdHJhbnNpdGlvbik7XG4gICAgfVxuICB9XG5cbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmc7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJGN1c3RvbS1zd2l0Y2gtd2lkdGggLSAkY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB7XG4gICAgJjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1jaGVja2VkLWRpc2FibGVkLWJnKTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBTZWxlY3Rcbi8vXG4vLyBSZXBsYWNlcyB0aGUgYnJvd3NlciBkZWZhdWx0IHNlbGVjdCB3aXRoIGEgY3VzdG9tIG9uZSwgbW9zdGx5IHB1bGxlZCBmcm9tXG4vLyBodHRwczovL3ByaW1lci5naXRodWIuaW8vLlxuLy9cblxuLmN1c3RvbS1zZWxlY3Qge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWhlaWdodDtcbiAgcGFkZGluZzogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICgkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXggKyAkY3VzdG9tLXNlbGVjdC1pbmRpY2F0b3ItcGFkZGluZykgJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteDtcbiAgZm9udC1mYW1pbHk6ICRjdXN0b20tc2VsZWN0LWZvbnQtZmFtaWx5O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjdXN0b20tc2VsZWN0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGN1c3RvbS1zZWxlY3QtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYmFja2dyb3VuZDogJGN1c3RvbS1zZWxlY3QtYmcgJGN1c3RvbS1zZWxlY3QtYmFja2dyb3VuZDtcbiAgYm9yZGVyOiAkY3VzdG9tLXNlbGVjdC1ib3JkZXItd2lkdGggc29saWQgJGN1c3RvbS1zZWxlY3QtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tc2VsZWN0LWJvcmRlci1yYWRpdXMsIDApO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tc2VsZWN0LWJveC1zaGFkb3cpO1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3JkZXItY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJGN1c3RvbS1zZWxlY3QtYm94LXNoYWRvdywgJGN1c3RvbS1zZWxlY3QtZm9jdXMtYm94LXNoYWRvdyk7XG4gICAgfSBAZWxzZSB7XG4gICAgICAvLyBBdm9pZCB1c2luZyBtaXhpbiBzbyB3ZSBjYW4gcGFzcyBjdXN0b20gZm9jdXMgc2hhZG93IHByb3Blcmx5XG4gICAgICBib3gtc2hhZG93OiAkY3VzdG9tLXNlbGVjdC1mb2N1cy1ib3gtc2hhZG93O1xuICAgIH1cblxuICAgICY6Oi1tcy12YWx1ZSB7XG4gICAgICAvLyBGb3IgdmlzdWFsIGNvbnNpc3RlbmN5IHdpdGggb3RoZXIgcGxhdGZvcm1zL2Jyb3dzZXJzLFxuICAgICAgLy8gc3VwcHJlc3MgdGhlIGRlZmF1bHQgd2hpdGUgdGV4dCBvbiBibHVlIGJhY2tncm91bmQgaGlnaGxpZ2h0IGdpdmVuIHRvXG4gICAgICAvLyB0aGUgc2VsZWN0ZWQgb3B0aW9uIHRleHQgd2hlbiB0aGUgKHN0aWxsIGNsb3NlZCkgPHNlbGVjdD4gcmVjZWl2ZXMgZm9jdXNcbiAgICAgIC8vIGluIElFIGFuZCAodW5kZXIgY2VydGFpbiBjb25kaXRpb25zKSBFZGdlLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTkzOTguXG4gICAgICBjb2xvcjogJGlucHV0LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnO1xuICAgIH1cbiAgfVxuXG4gICZbbXVsdGlwbGVdLFxuICAmW3NpemVdOm5vdChbc2l6ZT1cIjFcIl0pIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cblxuICAmOmRpc2FibGVkIHtcbiAgICBjb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1zZWxlY3QtZGlzYWJsZWQtYmc7XG4gIH1cblxuICAvLyBIaWRlcyB0aGUgZGVmYXVsdCBjYXJldCBpbiBJRTExXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgb3V0bGluZSBmcm9tIHNlbGVjdCBib3ggaW4gRkZcbiAgJjotbW96LWZvY3VzcmluZyB7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRleHQtc2hhZG93OiAwIDAgMCAkY3VzdG9tLXNlbGVjdC1jb2xvcjtcbiAgfVxufVxuXG4uY3VzdG9tLXNlbGVjdC1zbSB7XG4gIGhlaWdodDogJGN1c3RvbS1zZWxlY3QtaGVpZ2h0LXNtO1xuICBwYWRkaW5nLXRvcDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWJvdHRvbTogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy15LXNtO1xuICBwYWRkaW5nLWxlZnQ6ICRjdXN0b20tc2VsZWN0LXBhZGRpbmcteC1zbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRjdXN0b20tc2VsZWN0LWZvbnQtc2l6ZS1zbSk7XG59XG5cbi5jdXN0b20tc2VsZWN0LWxnIHtcbiAgaGVpZ2h0OiAkY3VzdG9tLXNlbGVjdC1oZWlnaHQtbGc7XG4gIHBhZGRpbmctdG9wOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctYm90dG9tOiAkY3VzdG9tLXNlbGVjdC1wYWRkaW5nLXktbGc7XG4gIHBhZGRpbmctbGVmdDogJGN1c3RvbS1zZWxlY3QtcGFkZGluZy14LWxnO1xuICBAaW5jbHVkZSBmb250LXNpemUoJGN1c3RvbS1zZWxlY3QtZm9udC1zaXplLWxnKTtcbn1cblxuXG4vLyBGaWxlXG4vL1xuLy8gQ3VzdG9tIGZpbGUgaW5wdXQuXG5cbi5jdXN0b20tZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY3VzdG9tLWZpbGUtaW5wdXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgb3BhY2l0eTogMDtcblxuICAmOmZvY3VzLXZpc2libGUgfiAuY3VzdG9tLWZpbGUtbGFiZWwge1xuICAgIGJvcmRlci1jb2xvcjogJGN1c3RvbS1maWxlLWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAkY3VzdG9tLWZpbGUtZm9jdXMtYm94LXNoYWRvdztcbiAgfVxuXG4gIC8vIFVzZSBbZGlzYWJsZWRdIGFuZCA6ZGlzYWJsZWQgdG8gd29yayBhcm91bmQgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yODI0N1xuICAmW2Rpc2FibGVkXSB+IC5jdXN0b20tZmlsZS1sYWJlbCxcbiAgJjpkaXNhYmxlZCB+IC5jdXN0b20tZmlsZS1sYWJlbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1maWxlLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgQGVhY2ggJGxhbmcsICR2YWx1ZSBpbiAkY3VzdG9tLWZpbGUtdGV4dCB7XG4gICAgJjpsYW5nKCN7JGxhbmd9KSB+IC5jdXN0b20tZmlsZS1sYWJlbDo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIH4gLmN1c3RvbS1maWxlLWxhYmVsW2RhdGEtYnJvd3NlXTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1icm93c2UpO1xuICB9XG59XG5cbi5jdXN0b20tZmlsZS1sYWJlbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgaGVpZ2h0OiAkY3VzdG9tLWZpbGUtaGVpZ2h0O1xuICBwYWRkaW5nOiAkY3VzdG9tLWZpbGUtcGFkZGluZy15ICRjdXN0b20tZmlsZS1wYWRkaW5nLXg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGZvbnQtZmFtaWx5OiAkY3VzdG9tLWZpbGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtd2VpZ2h0OiAkY3VzdG9tLWZpbGUtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkY3VzdG9tLWZpbGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tZmlsZS1iZztcbiAgYm9yZGVyOiAkY3VzdG9tLWZpbGUtYm9yZGVyLXdpZHRoIHNvbGlkICRjdXN0b20tZmlsZS1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tZmlsZS1ib3gtc2hhZG93KTtcblxuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgei1pbmRleDogMztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6ICRjdXN0b20tZmlsZS1oZWlnaHQtaW5uZXI7XG4gICAgcGFkZGluZzogJGN1c3RvbS1maWxlLXBhZGRpbmcteSAkY3VzdG9tLWZpbGUtcGFkZGluZy14O1xuICAgIGxpbmUtaGVpZ2h0OiAkY3VzdG9tLWZpbGUtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRjdXN0b20tZmlsZS1idXR0b24tY29sb3I7XG4gICAgY29udGVudDogXCJCcm93c2VcIjtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLWZpbGUtYnV0dG9uLWJnKTtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgJGN1c3RvbS1maWxlLWJvcmRlci1yYWRpdXMgMCk7XG4gIH1cbn1cblxuLy8gUmFuZ2Vcbi8vXG4vLyBTdHlsZSByYW5nZSBpbnB1dHMgdGhlIHNhbWUgYWNyb3NzIGJyb3dzZXJzLiBWZW5kb3Itc3BlY2lmaWMgcnVsZXMgZm9yIHBzZXVkb1xuLy8gZWxlbWVudHMgY2Fubm90IGJlIG1peGVkLiBBcyBzdWNoLCB0aGVyZSBhcmUgbm8gc2hhcmVkIHN0eWxlcyBmb3IgZm9jdXMgb3Jcbi8vIGFjdGl2ZSBzdGF0ZXMgb24gcHJlZml4ZWQgc2VsZWN0b3JzLlxuXG4uY3VzdG9tLXJhbmdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYWRkKCRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0LCAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3ctd2lkdGggKiAyKTtcbiAgcGFkZGluZzogMDsgLy8gTmVlZCB0byByZXNldCBwYWRkaW5nXG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBhcHBlYXJhbmNlOiBub25lO1xuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3V0bGluZTogMDtcblxuICAgIC8vIFBzZXVkby1lbGVtZW50cyBtdXN0IGJlIHNwbGl0IGFjcm9zcyBtdWx0aXBsZSBydWxlc2V0cyB0byBoYXZlIGFuIGVmZmVjdC5cbiAgICAvLyBObyBib3gtc2hhZG93KCkgbWl4aW4gZm9yIGZvY3VzIGFjY2Vzc2liaWxpdHkuXG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIgeyBib3gtc2hhZG93OiAkY3VzdG9tLXJhbmdlLXRodW1iLWZvY3VzLWJveC1zaGFkb3c7IH1cbiAgICAmOjotbW96LXJhbmdlLXRodW1iICAgICB7IGJveC1zaGFkb3c6ICRjdXN0b20tcmFuZ2UtdGh1bWItZm9jdXMtYm94LXNoYWRvdzsgfVxuICAgICY6Oi1tcy10aHVtYiAgICAgICAgICAgIHsgYm94LXNoYWRvdzogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93OyB9XG4gIH1cblxuICAmOjotbW96LWZvY3VzLW91dGVyIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10aHVtYi13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0O1xuICAgIG1hcmdpbi10b3A6ICgkY3VzdG9tLXJhbmdlLXRyYWNrLWhlaWdodCAtICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0KSAqIC41OyAvLyBXZWJraXQgc3BlY2lmaWNcbiAgICBAaW5jbHVkZSBncmFkaWVudC1iZygkY3VzdG9tLXJhbmdlLXRodW1iLWJnKTtcbiAgICBib3JkZXI6ICRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10aHVtYi1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdGh1bWItYm94LXNoYWRvdyk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xuXG4gICAgJjphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1hY3RpdmUtYmcpO1xuICAgIH1cbiAgfVxuXG4gICY6Oi13ZWJraXQtc2xpZGVyLXJ1bm5hYmxlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDsgLy8gV2h5P1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10cmFjay1iZztcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGN1c3RvbS1yYW5nZS10cmFjay1ib3JkZXItcmFkaXVzKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRjdXN0b20tcmFuZ2UtdHJhY2stYm94LXNoYWRvdyk7XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRodW1iIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbW96LXJhbmdlLXRyYWNrIHtcbiAgICB3aWR0aDogJGN1c3RvbS1yYW5nZS10cmFjay13aWR0aDtcbiAgICBoZWlnaHQ6ICRjdXN0b20tcmFuZ2UtdHJhY2staGVpZ2h0O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjdXJzb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stY3Vyc29yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgLy8gRmlyZWZveCBzcGVjaWZpYz9cbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdHJhY2stYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLXRodW1iIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRodW1iLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1oZWlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMDsgLy8gRWRnZSBzcGVjaWZpY1xuICAgIG1hcmdpbi1yaWdodDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAvLyBXb3JrYXJvdW5kIHRoYXQgb3ZlcmZsb3dlZCBib3gtc2hhZG93IGlzIGhpZGRlbi5cbiAgICBtYXJnaW4tbGVmdDogJGN1c3RvbS1yYW5nZS10aHVtYi1mb2N1cy1ib3gtc2hhZG93LXdpZHRoOyAgLy8gV29ya2Fyb3VuZCB0aGF0IG92ZXJmbG93ZWQgYm94LXNoYWRvdyBpcyBoaWRkZW4uXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGN1c3RvbS1yYW5nZS10aHVtYi1iZyk7XG4gICAgYm9yZGVyOiAkY3VzdG9tLXJhbmdlLXRodW1iLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRjdXN0b20tcmFuZ2UtdGh1bWItYm9yZGVyLXJhZGl1cyk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRodW1iLWJveC1zaGFkb3cpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oJGN1c3RvbS1mb3Jtcy10cmFuc2l0aW9uKTtcblxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LWJnKCRjdXN0b20tcmFuZ2UtdGh1bWItYWN0aXZlLWJnKTtcbiAgICB9XG4gIH1cblxuICAmOjotbXMtdHJhY2sge1xuICAgIHdpZHRoOiAkY3VzdG9tLXJhbmdlLXRyYWNrLXdpZHRoO1xuICAgIGhlaWdodDogJGN1c3RvbS1yYW5nZS10cmFjay1oZWlnaHQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGN1cnNvcjogJGN1c3RvbS1yYW5nZS10cmFjay1jdXJzb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItd2lkdGg6ICRjdXN0b20tcmFuZ2UtdGh1bWItaGVpZ2h0ICogLjU7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygkY3VzdG9tLXJhbmdlLXRyYWNrLWJveC1zaGFkb3cpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtbG93ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjo6LW1zLWZpbGwtdXBwZXIge1xuICAgIG1hcmdpbi1yaWdodDogMTVweDsgLy8gYXJiaXRyYXJ5P1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjdXN0b20tcmFuZ2UtdHJhY2stYmc7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY3VzdG9tLXJhbmdlLXRyYWNrLWJvcmRlci1yYWRpdXMpO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGN1c3RvbS1yYW5nZS10aHVtYi1kaXNhYmxlZC1iZztcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgfVxuXG4gICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cblxuICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3VzdG9tLXJhbmdlLXRodW1iLWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSxcbi5jdXN0b20tZmlsZS1sYWJlbCxcbi5jdXN0b20tc2VsZWN0IHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbigkY3VzdG9tLWZvcm1zLXRyYW5zaXRpb24pO1xufVxuIiwiLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEtpY2tzdGFydCBhbnkgbmF2aWdhdGlvbiBjb21wb25lbnQgd2l0aCBhIHNldCBvZiBzdHlsZSByZXNldHMuIFdvcmtzIHdpdGhcbi8vIGA8bmF2PmBzLCBgPHVsPmBzIG9yIGA8b2w+YHMuXG5cbi5uYXYge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLm5hdi1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nLXkgJG5hdi1saW5rLXBhZGRpbmcteDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBpZigkbGluay1kZWNvcmF0aW9uID09IG5vbmUsIG51bGwsIG5vbmUpO1xuXG4gIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlIGxpZ2h0ZW5zIHRleHRcbiAgJi5kaXNhYmxlZCB7XG4gICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gIH1cbn1cblxuLy9cbi8vIFRhYnNcbi8vXG5cbi5uYXYtdGFicyB7XG4gIGJvcmRlci1ib3R0b206ICRuYXYtdGFicy1ib3JkZXItd2lkdGggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcblxuICAubmF2LWxpbmsge1xuICAgIG1hcmdpbi1ib3R0b206IC0kbmF2LXRhYnMtYm9yZGVyLXdpZHRoO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogJG5hdi10YWJzLWJvcmRlci13aWR0aCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2LXRhYnMtYm9yZGVyLXJhZGl1cyk7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIC8vIFByZXZlbnRzIGFjdGl2ZSAubmF2LWxpbmsgdGFiIG92ZXJsYXBwaW5nIGZvY3VzIG91dGxpbmUgb2YgcHJldmlvdXMvbmV4dCAubmF2LWxpbmtcbiAgICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRuYXYtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAubmF2LWl0ZW0uc2hvdyAubmF2LWxpbmsge1xuICAgIGNvbG9yOiAkbmF2LXRhYnMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJG5hdi10YWJzLWxpbmstYWN0aXZlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICAvLyBNYWtlIGRyb3Bkb3duIGJvcmRlciBvdmVybGFwIHRhYiBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAtJG5hdi10YWJzLWJvcmRlci13aWR0aDtcbiAgICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKDApO1xuICB9XG59XG5cblxuLy9cbi8vIFBpbGxzXG4vL1xuXG4ubmF2LXBpbGxzIHtcbiAgLm5hdi1saW5rIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRuYXYtcGlsbHMtYm9yZGVyLXJhZGl1cyk7XG4gIH1cblxuICAubmF2LWxpbmsuYWN0aXZlLFxuICAuc2hvdyA+IC5uYXYtbGluayB7XG4gICAgY29sb3I6ICRuYXYtcGlsbHMtbGluay1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi1waWxscy1saW5rLWFjdGl2ZS1iZztcbiAgfVxufVxuXG5cbi8vXG4vLyBKdXN0aWZpZWQgdmFyaWFudHNcbi8vXG5cbi5uYXYtZmlsbCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gID4gLm5hdi1saW5rLFxuICAubmF2LWl0ZW0ge1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG5cbi8vIFRhYmJhYmxlIHRhYnNcbi8vXG4vLyBIaWRlIHRhYmJhYmxlIHBhbmVzIHRvIHN0YXJ0LCBzaG93IHRoZW0gd2hlbiBgLmFjdGl2ZWBcblxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG4vLyBDb250ZW50c1xuLy9cbi8vIE5hdmJhclxuLy8gTmF2YmFyIGJyYW5kXG4vLyBOYXZiYXIgbmF2XG4vLyBOYXZiYXIgdGV4dFxuLy8gTmF2YmFyIGRpdmlkZXJcbi8vIFJlc3BvbnNpdmUgbmF2YmFyXG4vLyBOYXZiYXIgcG9zaXRpb25cbi8vIE5hdmJhciB0aGVtZXNcblxuXG4vLyBOYXZiYXJcbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDsgLy8gYWxsb3cgdXMgdG8gZG8gdGhlIGxpbmUgYnJlYWsgZm9yIGNvbGxhcHNpbmcgY29udGVudFxuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IC8vIHNwYWNlIG91dCBicmFuZCBmcm9tIGxvZ29cbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXkgJG5hdmJhci1wYWRkaW5nLXg7XG5cbiAgLy8gQmVjYXVzZSBmbGV4IHByb3BlcnRpZXMgYXJlbid0IGluaGVyaXRlZCwgd2UgbmVlZCB0byByZWRlY2xhcmUgdGhlc2UgZmlyc3RcbiAgLy8gZmV3IHByb3BlcnRpZXMgc28gdGhhdCBjb250ZW50IG5lc3RlZCB3aXRoaW4gYmVoYXZlIHByb3Blcmx5LlxuICAlY29udGFpbmVyLWZsZXgtcHJvcGVydGllcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAuY29udGFpbmVyLFxuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnQsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRicmVha3BvaW50LCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICBAZXh0ZW5kICVjb250YWluZXItZmxleC1wcm9wZXJ0aWVzO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIE5hdmJhciBicmFuZFxuLy9cbi8vIFVzZWQgZm9yIGJyYW5kLCBwcm9qZWN0LCBvciBzaXRlIG5hbWVzLlxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLXRvcDogJG5hdmJhci1icmFuZC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkbmF2YmFyLWJyYW5kLXBhZGRpbmcteTtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRuYXZiYXItYnJhbmQtZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIG5hdlxuLy9cbi8vIEN1c3RvbSBuYXZiYXIgbmF2aWdhdGlvbiAoZG9lc24ndCByZXF1aXJlIGAubmF2YCwgYnV0IGRvZXMgbWFrZSB1c2Ugb2YgYC5uYXYtbGlua2ApLlxuXG4ubmF2YmFyLW5hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IC8vIGNhbm5vdCB1c2UgYGluaGVyaXRgIHRvIGdldCB0aGUgYC5uYXZiYXJgcyB2YWx1ZVxuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cblxuLy8gTmF2YmFyIHRleHRcbi8vXG4vL1xuXG4ubmF2YmFyLXRleHQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAkbmF2LWxpbmstcGFkZGluZy15O1xuICBwYWRkaW5nLWJvdHRvbTogJG5hdi1saW5rLXBhZGRpbmcteTtcbn1cblxuXG4vLyBSZXNwb25zaXZlIG5hdmJhclxuLy9cbi8vIEN1c3RvbSBzdHlsZXMgZm9yIHJlc3BvbnNpdmUgY29sbGFwc2luZyBhbmQgdG9nZ2xpbmcgb2YgbmF2YmFyIGNvbnRlbnRzLlxuLy8gUG93ZXJlZCBieSB0aGUgY29sbGFwc2UgQm9vdHN0cmFwIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4vLyBXaGVuIGNvbGxhcHNlZCwgcHJldmVudCB0aGUgdG9nZ2xlYWJsZSBuYXZiYXIgY29udGVudHMgZnJvbSBhcHBlYXJpbmcgaW5cbi8vIHRoZSBkZWZhdWx0IGZsZXhib3ggcm93IG9yaWVudGF0aW9uLiBSZXF1aXJlcyB0aGUgdXNlIG9mIGBmbGV4LXdyYXA6IHdyYXBgXG4vLyBvbiB0aGUgYC5uYXZiYXJgIHBhcmVudC5cbi5uYXZiYXItY29sbGFwc2Uge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmbGV4LWdyb3c6IDE7XG4gIC8vIEZvciBhbHdheXMgZXhwYW5kZWQgb3IgZXh0cmEgZnVsbCBuYXZiYXJzLCBlbnN1cmUgY29udGVudCBhbGlnbnMgaXRzZWxmXG4gIC8vIHByb3Blcmx5IHZlcnRpY2FsbHkuIENhbiBiZSBlYXNpbHkgb3ZlcnJpZGRlbiB3aXRoIGZsZXggdXRpbGl0aWVzLlxuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBCdXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBuYXZiYXIgd2hlbiBpbiBpdHMgY29sbGFwc2VkIHN0YXRlXG4ubmF2YmFyLXRvZ2dsZXIge1xuICBwYWRkaW5nOiAkbmF2YmFyLXRvZ2dsZXItcGFkZGluZy15ICRuYXZiYXItdG9nZ2xlci1wYWRkaW5nLXg7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkbmF2YmFyLXRvZ2dsZXItZm9udC1zaXplKTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50OyAvLyByZW1vdmUgZGVmYXVsdCBidXR0b24gc3R5bGVcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkbmF2YmFyLXRvZ2dsZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi8vIEtlZXAgYXMgYSBzZXBhcmF0ZSBlbGVtZW50IHNvIGZvbGtzIGNhbiBlYXNpbHkgb3ZlcnJpZGUgaXQgd2l0aCBhbm90aGVyIGljb25cbi8vIG9yIGltYWdlIGZpbGUgYXMgbmVlZGVkLlxuLm5hdmJhci10b2dnbGVyLWljb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjVlbTtcbiAgaGVpZ2h0OiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZDogNTAlIC8gMTAwJSAxMDAlIG5vLXJlcGVhdDtcbn1cblxuLm5hdmJhci1uYXYtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogJG5hdmJhci1uYXYtc2Nyb2xsLW1heC1oZWlnaHQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIEdlbmVyYXRlIHNlcmllcyBvZiBgLm5hdmJhci1leHBhbmQtKmAgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciBjb25maWd1cmluZ1xuLy8gd2hlcmUgeW91ciBuYXZiYXIgY29sbGFwc2VzLlxuLm5hdmJhci1leHBhbmQge1xuICBAZWFjaCAkYnJlYWtwb2ludCBpbiBtYXAua2V5cygkZ3JpZC1icmVha3BvaW50cykge1xuICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICYjeyRpbmZpeH0ge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKCRicmVha3BvaW50KSB7XG4gICAgICAgICVjb250YWluZXItbmF2YmFyLWV4cGFuZC0jeyRicmVha3BvaW50fSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jb250YWluZXIsXG4gICAgICAgID4gLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICAgICAgQGV4dGVuZCAlY29udGFpbmVyLW5hdmJhci1leHBhbmQtI3skYnJlYWtwb2ludH07XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkc2l6ZSwgJGNvbnRhaW5lci1tYXgtd2lkdGggaW4gJGNvbnRhaW5lci1tYXgtd2lkdGhzIHtcbiAgICAgICAgICA+IC5jb250YWluZXIje2JyZWFrcG9pbnQtaW5maXgoJHNpemUsICRjb250YWluZXItbWF4LXdpZHRocyl9IHtcbiAgICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uYXZiYXItZXhwYW5kLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKCRuZXh0KSB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkbmF2YmFyLW5hdi1saW5rLXBhZGRpbmcteDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogJG5hdmJhci1uYXYtbGluay1wYWRkaW5nLXg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9yIG5lc3RpbmcgY29udGFpbmVycywgaGF2ZSB0byByZWRlY2xhcmUgZm9yIGFsaWdubWVudCBwdXJwb3Nlc1xuICAgICAgICAlY29udGFpbmVyLW5lc3RpbmctI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAuY29udGFpbmVyLFxuICAgICAgICA+IC5jb250YWluZXItZmx1aWQge1xuICAgICAgICAgIEBleHRlbmQgJWNvbnRhaW5lci1uZXN0aW5nLSN7JGJyZWFrcG9pbnR9O1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJHNpemUsICRjb250YWluZXItbWF4LXdpZHRoIGluICRjb250YWluZXItbWF4LXdpZHRocyB7XG4gICAgICAgICAgPiAuY29udGFpbmVyI3ticmVha3BvaW50LWluZml4KCRzaXplLCAkY29udGFpbmVyLW1heC13aWR0aHMpfSB7XG4gICAgICAgICAgICBAZXh0ZW5kICVjb250YWluZXItbmVzdGluZy0jeyRicmVha3BvaW50fTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLW5hdi1zY3JvbGwge1xuICAgICAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudFxuXG4gICAgICAgICAgLy8gQ2hhbmdlcyBmbGV4LWJhc2VzIHRvIGF1dG8gYmVjYXVzZSBvZiBhbiBJRTEwIGJ1Z1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdGhlbWVzXG4vL1xuLy8gU3R5bGVzIGZvciBzd2l0Y2hpbmcgYmV0d2VlbiBuYXZiYXJzIHdpdGggbGlnaHQgb3IgZGFyayBiYWNrZ3JvdW5kLlxuXG4vLyBEYXJrIGxpbmtzIGFnYWluc3QgYSBsaWdodCBiYWNrZ3JvdW5kXG4ubmF2YmFyLWxpZ2h0IHtcbiAgLm5hdmJhci1icmFuZCB7XG4gICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYnJhbmQtY29sb3I7XG5cbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtY29sb3I7XG5cbiAgICAgIEBpbmNsdWRlIGhvdmVyLWZvY3VzKCkge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1saWdodC1ob3Zlci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5kaXNhYmxlZCB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1saWdodC1hY3RpdmUtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogJG5hdmJhci1saWdodC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItbGlnaHQtdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWxpZ2h0LXRvZ2dsZXItaWNvbi1iZyk7XG4gIH1cblxuICAubmF2YmFyLXRleHQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWxpZ2h0LWNvbG9yO1xuICAgIGEge1xuICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItbGlnaHQtYWN0aXZlLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBXaGl0ZSBsaW5rcyBhZ2FpbnN0IGEgZGFyayBiYWNrZ3JvdW5kXG4ubmF2YmFyLWRhcmsge1xuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWNvbG9yO1xuXG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICAubmF2LWxpbmsge1xuICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcblxuICAgICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zaG93ID4gLm5hdi1saW5rLFxuICAgIC5hY3RpdmUgPiAubmF2LWxpbmssXG4gICAgLm5hdi1saW5rLnNob3csXG4gICAgLm5hdi1saW5rLmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kYXJrLWFjdGl2ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXIge1xuICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWRhcmstdG9nZ2xlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXItaWNvbiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogZXNjYXBlLXN2ZygkbmF2YmFyLWRhcmstdG9nZ2xlci1pY29uLWJnKTtcbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGFyay1jb2xvcjtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRhcmstYWN0aXZlLWNvbG9yO1xuXG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGFyay1hY3RpdmUtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4td2lkdGg6IDA7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yMjc0MCNpc3N1ZWNvbW1lbnQtMzA1ODY4MTA2XG4gIGhlaWdodDogJGNhcmQtaGVpZ2h0O1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWJnO1xuICBiYWNrZ3JvdW5kLWNsaXA6IGJvcmRlci1ib3g7XG4gIGJvcmRlcjogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1ib3JkZXItcmFkaXVzKTtcblxuICA+IGhyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICA+IC5saXN0LWdyb3VwIHtcbiAgICBib3JkZXItdG9wOiBpbmhlcml0O1xuICAgIGJvcmRlci1ib3R0b206IGluaGVyaXQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQgIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cblxuICAvLyBEdWUgdG8gc3BlY2lmaWNpdHkgb2YgdGhlIGFib3ZlIHNlbGVjdG9yIChgLmNhcmQgPiAubGlzdC1ncm91cGApLCB3ZSBtdXN0XG4gIC8vIHVzZSBhIGNoaWxkIHNlbGVjdG9yIGhlcmUgdG8gcHJldmVudCBkb3VibGUgYm9yZGVycy5cbiAgPiAuY2FyZC1oZWFkZXIgKyAubGlzdC1ncm91cCxcbiAgPiAubGlzdC1ncm91cCArIC5jYXJkLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG4uY2FyZC1ib2R5IHtcbiAgLy8gRW5hYmxlIGBmbGV4LWdyb3c6IDFgIGZvciBkZWNrcyBhbmQgZ3JvdXBzIHNvIHRoYXQgY2FyZCBibG9ja3MgdGFrZSB1cFxuICAvLyBhcyBtdWNoIHNwYWNlIGFzIHBvc3NpYmxlLCBlbnN1cmluZyBmb290ZXJzIGFyZSBhbGlnbmVkIHRvIHRoZSBib3R0b20uXG4gIGZsZXg6IDEgMSBhdXRvO1xuICAvLyBXb3JrYXJvdW5kIGZvciB0aGUgaW1hZ2Ugc2l6ZSBidWcgaW4gSUVcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8yODg1NVxuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmc6ICRjYXJkLXNwYWNlci14O1xuICBjb2xvcjogJGNhcmQtY29sb3I7XG59XG5cbi5jYXJkLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogJGNhcmQtc3BhY2VyLXk7XG59XG5cbi5jYXJkLXN1YnRpdGxlIHtcbiAgbWFyZ2luLXRvcDogLSRjYXJkLXNwYWNlci15ICogLjU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXRleHQ6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWxpbmsge1xuICBAaW5jbHVkZSBob3ZlcigpIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICArIC5jYXJkLWxpbmsge1xuICAgIG1hcmdpbi1sZWZ0OiAkY2FyZC1zcGFjZXIteDtcbiAgfVxufVxuXG4vL1xuLy8gT3B0aW9uYWwgdGV4dHVhbCBjYXBzXG4vL1xuXG4uY2FyZC1oZWFkZXIge1xuICBwYWRkaW5nOiAkY2FyZC1zcGFjZXIteSAkY2FyZC1zcGFjZXIteDtcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gUmVtb3ZlcyB0aGUgZGVmYXVsdCBtYXJnaW4tYm90dG9tIG9mIDxoTj5cbiAgY29sb3I6ICRjYXJkLWNhcC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNhcmQtY2FwLWJnO1xuICBib3JkZXItYm90dG9tOiAkY2FyZC1ib3JkZXItd2lkdGggc29saWQgJGNhcmQtYm9yZGVyLWNvbG9yO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyAkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzIDAgMCk7XG4gIH1cbn1cblxuLmNhcmQtZm9vdGVyIHtcbiAgcGFkZGluZzogJGNhcmQtc3BhY2VyLXkgJGNhcmQtc3BhY2VyLXg7XG4gIGNvbG9yOiAkY2FyZC1jYXAtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjYXJkLWNhcC1iZztcbiAgYm9yZGVyLXRvcDogJGNhcmQtYm9yZGVyLXdpZHRoIHNvbGlkICRjYXJkLWJvcmRlci1jb2xvcjtcblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwICRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMgJGNhcmQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gIH1cbn1cblxuXG4vL1xuLy8gSGVhZGVyIG5hdnNcbi8vXG5cbi5jYXJkLWhlYWRlci10YWJzIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbiAgbWFyZ2luLWJvdHRvbTogLSRjYXJkLXNwYWNlci15O1xuICBtYXJnaW4tbGVmdDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG5cbi5jYXJkLWhlYWRlci1waWxscyB7XG4gIG1hcmdpbi1yaWdodDogLSRjYXJkLXNwYWNlci14ICogLjU7XG4gIG1hcmdpbi1sZWZ0OiAtJGNhcmQtc3BhY2VyLXggKiAuNTtcbn1cblxuLy8gQ2FyZCBpbWFnZVxuLmNhcmQtaW1nLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogJGNhcmQtaW1nLW92ZXJsYXktcGFkZGluZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLXRvcCxcbi5jYXJkLWltZy1ib3R0b20ge1xuICBmbGV4LXNocmluazogMDsgLy8gRm9yIElFOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzI5Mzk2XG4gIHdpZHRoOiAxMDAlOyAvLyBSZXF1aXJlZCBiZWNhdXNlIHdlIHVzZSBmbGV4Ym94IGFuZCB0aGlzIGluaGVyZW50bHkgYXBwbGllcyBhbGlnbi1zZWxmOiBzdHJldGNoXG59XG5cbi5jYXJkLWltZyxcbi5jYXJkLWltZy10b3Age1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbn1cblxuLmNhcmQtaW1nLFxuLmNhcmQtaW1nLWJvdHRvbSB7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRjYXJkLWlubmVyLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vXG4vLyBBY2NvcmRpb25cbi8vXG5cbi5hY2NvcmRpb24ge1xuICBvdmVyZmxvdy1hbmNob3I6IG5vbmU7XG5cbiAgPiAuY2FyZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICY6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuXG4gICAgPiAuY2FyZC1oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0kY2FyZC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG59XG4iLCIuYnJlYWRjcnVtYiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy15ICRicmVhZGNydW1iLXBhZGRpbmcteDtcbiAgbWFyZ2luLWJvdHRvbTogJGJyZWFkY3J1bWItbWFyZ2luLWJvdHRvbTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRicmVhZGNydW1iLWZvbnQtc2l6ZSk7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRicmVhZGNydW1iLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRicmVhZGNydW1iLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uYnJlYWRjcnVtYi1pdGVtIHtcbiAgLy8gVGhlIHNlcGFyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWJzIChieSBkZWZhdWx0LCBhIGZvcndhcmQtc2xhc2g6IFwiL1wiKVxuICArIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgIHBhZGRpbmctbGVmdDogJGJyZWFkY3J1bWItaXRlbS1wYWRkaW5nO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyAvLyBTdXBwcmVzcyBpbmxpbmUgc3BhY2luZ3MgYW5kIHVuZGVybGluaW5nIG9mIHRoZSBzZXBhcmF0b3JcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRicmVhZGNydW1iLWl0ZW0tcGFkZGluZztcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1kaXZpZGVyLWNvbG9yO1xuICAgICAgY29udGVudDogZXNjYXBlLXN2ZygkYnJlYWRjcnVtYi1kaXZpZGVyKTtcbiAgICB9XG4gIH1cblxuICAvLyBJRTktMTEgaGFjayB0byBwcm9wZXJseSBoYW5kbGUgaHlwZXJsaW5rIHVuZGVybGluZXMgZm9yIGJyZWFkY3J1bWJzIGJ1aWx0XG4gIC8vIHdpdGhvdXQgYDx1bD5gcy4gVGhlIGA6OmJlZm9yZWAgcHNldWRvLWVsZW1lbnQgZ2VuZXJhdGVzIGFuIGVsZW1lbnRcbiAgLy8gKndpdGhpbiogdGhlIC5icmVhZGNydW1iLWl0ZW0gYW5kIHRoZXJlYnkgaW5oZXJpdHMgdGhlIGB0ZXh0LWRlY29yYXRpb25gLlxuICAvL1xuICAvLyBUbyB0cmljayBJRSBpbnRvIHN1cHByZXNzaW5nIHRoZSB1bmRlcmxpbmUsIHdlIGdpdmUgdGhlIHBzZXVkby1lbGVtZW50IGFuXG4gIC8vIHVuZGVybGluZSBhbmQgdGhlbiBpbW1lZGlhdGVseSByZW1vdmUgaXQuXG4gICsgLmJyZWFkY3J1bWItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tZHVwbGljYXRlLXNlbGVjdG9yc1xuICArIC5icmVhZGNydW1iLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgQGluY2x1ZGUgbGlzdC11bnN0eWxlZCgpO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCk7XG59XG5cbi5wYWdlLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFnaW5hdGlvbi1wYWRkaW5nLXkgJHBhZ2luYXRpb24tcGFkZGluZy14O1xuICBtYXJnaW4tbGVmdDogLSRwYWdpbmF0aW9uLWJvcmRlci13aWR0aDtcbiAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gIHRleHQtZGVjb3JhdGlvbjogaWYoJGxpbmstZGVjb3JhdGlvbiA9PSBub25lLCBudWxsLCBub25lKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tYmc7XG4gIGJvcmRlcjogJHBhZ2luYXRpb24tYm9yZGVyLXdpZHRoIHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlci1jb2xvcjtcblxuICAmOmhvdmVyIHtcbiAgICB6LWluZGV4OiAyO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIHotaW5kZXg6IDM7XG4gICAgb3V0bGluZTogJHBhZ2luYXRpb24tZm9jdXMtb3V0bGluZTtcbiAgICBib3gtc2hhZG93OiAkcGFnaW5hdGlvbi1mb2N1cy1ib3gtc2hhZG93O1xuICB9XG59XG5cbi5wYWdlLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICAucGFnZS1saW5rIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlIC5wYWdlLWxpbmsge1xuICAgIHotaW5kZXg6IDM7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJi5kaXNhYmxlZCAucGFnZS1saW5rIHtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgLy8gT3BpbmlvbmF0ZWQ6IHJlbW92ZSB0aGUgXCJoYW5kXCIgY3Vyc29yIHNldCBwcmV2aW91c2x5IGZvciAucGFnZS1saW5rXG4gICAgY3Vyc29yOiBhdXRvO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cblxuLy9cbi8vIFNpemluZ1xuLy9cblxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZ2luYXRpb24tcGFkZGluZy15LWxnLCAkcGFnaW5hdGlvbi1wYWRkaW5nLXgtbGcsICRmb250LXNpemUtbGcsICRsaW5lLWhlaWdodC1sZywgJHBhZ2luYXRpb24tYm9yZGVyLXJhZGl1cy1sZyk7XG59XG5cbi5wYWdpbmF0aW9uLXNtIHtcbiAgQGluY2x1ZGUgcGFnaW5hdGlvbi1zaXplKCRwYWdpbmF0aW9uLXBhZGRpbmcteS1zbSwgJHBhZ2luYXRpb24tcGFkZGluZy14LXNtLCAkZm9udC1zaXplLXNtLCAkbGluZS1oZWlnaHQtc20sICRwYWdpbmF0aW9uLWJvcmRlci1yYWRpdXMtc20pO1xufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXksICRwYWRkaW5nLXgsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgLnBhZ2UtbGluayB7XG4gICAgcGFkZGluZzogJHBhZGRpbmcteSAkcGFkZGluZy14O1xuICAgIEBpbmNsdWRlIGZvbnQtc2l6ZSgkZm9udC1zaXplKTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICB9XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAucGFnZS1saW5rIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBSZXF1aXJlcyBvbmUgb2YgdGhlIGNvbnRleHR1YWwsIGNvbG9yIG1vZGlmaWVyIGNsYXNzZXMgZm9yIGBjb2xvcmAgYW5kXG4vLyBgYmFja2dyb3VuZC1jb2xvcmAuXG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmcteSAkYmFkZ2UtcGFkZGluZy14O1xuICBAaW5jbHVkZSBmb250LXNpemUoJGJhZGdlLWZvbnQtc2l6ZSk7XG4gIGZvbnQtd2VpZ2h0OiAkYmFkZ2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJGJhZGdlLXRyYW5zaXRpb24pO1xuXG4gIEBhdC1yb290IGEjeyZ9IHtcbiAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBFbXB0eSBiYWRnZXMgY29sbGFwc2UgYXV0b21hdGljYWxseVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFF1aWNrIGZpeCBmb3IgYmFkZ2VzIGluIGJ1dHRvbnNcbi5idG4gLmJhZGdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0xcHg7XG59XG5cbi8vIFBpbGwgYmFkZ2VzXG4vL1xuLy8gTWFrZSB0aGVtIGV4dHJhIHJvdW5kZWQgd2l0aCBhIG1vZGlmaWVyIHRvIHJlcGxhY2UgdjMncyBiYWRnZXMuXG5cbi5iYWRnZS1waWxsIHtcbiAgcGFkZGluZy1yaWdodDogJGJhZGdlLXBpbGwtcGFkZGluZy14O1xuICBwYWRkaW5nLWxlZnQ6ICRiYWRnZS1waWxsLXBhZGRpbmcteDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkYmFkZ2UtcGlsbC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gQ29sb3JzXG4vL1xuLy8gQ29udGV4dHVhbCB2YXJpYXRpb25zIChsaW5rZWQgYmFkZ2VzIGdldCBkYXJrZXIgb24gOmhvdmVyKS5cblxuQGVhY2ggJGNvbG9yLCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gIC5iYWRnZS0jeyRjb2xvcn0ge1xuICAgIEBpbmNsdWRlIGJhZGdlLXZhcmlhbnQoJHZhbHVlKTtcbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6Y29sb3JcIjtcbkBtaXhpbiBiYWRnZS12YXJpYW50KCRiZykge1xuICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiZztcblxuICBAYXQtcm9vdCBhI3smfSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBjb2xvcjogY29sb3IteWlxKCRiZyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci5hZGp1c3QoJGJnLCAkbGlnaHRuZXNzOiAtMTAlKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJi5mb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGJhZGdlLWZvY3VzLXdpZHRoIHJnYmEoJGJnLCAuNSk7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQmFzZSBzdHlsZXNcbi8vXG5cbi5hbGVydCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAkYWxlcnQtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyOiAkYWxlcnQtYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRhbGVydC1ib3JkZXItcmFkaXVzKTtcbn1cblxuLy8gSGVhZGluZ3MgZm9yIGxhcmdlciBhbGVydHNcbi5hbGVydC1oZWFkaW5nIHtcbiAgLy8gU3BlY2lmaWVkIHRvIHByZXZlbnQgY29uZmxpY3RzIG9mIGNoYW5naW5nICRoZWFkaW5ncy1jb2xvclxuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLy8gUHJvdmlkZSBjbGFzcyBmb3IgbGlua3MgdGhhdCBtYXRjaCBhbGVydHNcbi5hbGVydC1saW5rIHtcbiAgZm9udC13ZWlnaHQ6ICRhbGVydC1saW5rLWZvbnQtd2VpZ2h0O1xufVxuXG5cbi8vIERpc21pc3NpYmxlIGFsZXJ0c1xuLy9cbi8vIEV4cGFuZCB0aGUgcmlnaHQgcGFkZGluZyBhbmQgYWNjb3VudCBmb3IgdGhlIGNsb3NlIGJ1dHRvbidzIHBvc2l0aW9uaW5nLlxuXG4uYWxlcnQtZGlzbWlzc2libGUge1xuICBwYWRkaW5nLXJpZ2h0OiAkY2xvc2UtZm9udC1zaXplICsgJGFsZXJ0LXBhZGRpbmcteCAqIDI7XG5cbiAgLy8gQWRqdXN0IGNsb3NlIGxpbmsgcG9zaXRpb25cbiAgLmNsb3NlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDI7XG4gICAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmcteSAkYWxlcnQtcGFkZGluZy14O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbkBlYWNoICRjb2xvciwgJHZhbHVlIGluICR0aGVtZS1jb2xvcnMge1xuICAuYWxlcnQtI3skY29sb3J9IHtcbiAgICBAaW5jbHVkZSBhbGVydC12YXJpYW50KHRoZW1lLWNvbG9yLWxldmVsKCRjb2xvciwgJGFsZXJ0LWJnLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtYm9yZGVyLWxldmVsKSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCAkYWxlcnQtY29sb3ItbGV2ZWwpKTtcbiAgfVxufVxuIiwiQHVzZSBcInNhc3M6Y29sb3JcIjtcbkBtaXhpbiBhbGVydC12YXJpYW50KCRiYWNrZ3JvdW5kLCAkYm9yZGVyLCAkY29sb3IpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtYmcoJGJhY2tncm91bmQpO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGNvbG9yLmFkanVzdCgkYm9yZGVyLCAkbGlnaHRuZXNzOiAtNSUpO1xuICB9XG5cbiAgLmFsZXJ0LWxpbmsge1xuICAgIGNvbG9yOiBjb2xvci5hZGp1c3QoJGNvbG9yLCAkbGlnaHRuZXNzOiAtMTAlKTtcbiAgfVxufVxuIiwiLy8gRGlzYWJsZSBhbmltYXRpb24gaWYgdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkXG5AaWYgJGVuYWJsZS10cmFuc2l0aW9ucyB7XG4gIEBrZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICAgIGZyb20geyBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcHJvZ3Jlc3MtaGVpZ2h0IDA7IH1cbiAgICB0byB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxuICB9XG59XG5cbi5wcm9ncmVzcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogJHByb2dyZXNzLWhlaWdodDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgLy8gZm9yY2Ugcm91bmRlZCBjb3JuZXJzIGJ5IGNyb3BwaW5nIGl0XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBAaW5jbHVkZSBmb250LXNpemUoJHByb2dyZXNzLWZvbnQtc2l6ZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1cyk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHByb2dyZXNzLWJveC1zaGFkb3cpO1xufVxuXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oJHByb2dyZXNzLWJhci10cmFuc2l0aW9uKTtcbn1cblxuLnByb2dyZXNzLWJhci1zdHJpcGVkIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZCgpO1xuICBiYWNrZ3JvdW5kLXNpemU6ICRwcm9ncmVzcy1oZWlnaHQgJHByb2dyZXNzLWhlaWdodDtcbn1cblxuQGlmICRlbmFibGUtdHJhbnNpdGlvbnMge1xuICAucHJvZ3Jlc3MtYmFyLWFuaW1hdGVkIHtcbiAgICBhbmltYXRpb246ICRwcm9ncmVzcy1iYXItYW5pbWF0aW9uLXRpbWluZyBwcm9ncmVzcy1iYXItc3RyaXBlcztcblxuICAgIEBpZiAkZW5hYmxlLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tbWVkaWEtcXVlcnkge1xuICAgICAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgICAgICAgYW5pbWF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1lZGlhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgZmxleDogMTtcbn1cbiIsIkB1c2UgXCJzYXNzOm1hcFwiO1xuLy8gQmFzZSBjbGFzc1xuLy9cbi8vIEVhc2lseSB1c2FibGUgb24gPHVsPiwgPG9sPiwgb3IgPGRpdj4uXG5cbi5saXN0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAvLyBObyBuZWVkIHRvIHNldCBsaXN0LXN0eWxlOiBub25lOyBzaW5jZSAubGlzdC1ncm91cC1pdGVtIGlzIGJsb2NrIGxldmVsXG4gIHBhZGRpbmctbGVmdDogMDsgLy8gcmVzZXQgcGFkZGluZyBiZWNhdXNlIHVsIGFuZCBvbFxuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xufVxuXG5cbi8vIEludGVyYWN0aXZlIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2UgYW5jaG9yIG9yIGJ1dHRvbiBlbGVtZW50cyBpbnN0ZWFkIG9mIGBsaWBzIG9yIGBkaXZgcyB0byBjcmVhdGUgaW50ZXJhY3RpdmVcbi8vIGxpc3QgaXRlbXMuIEluY2x1ZGVzIGFuIGV4dHJhIGAuYWN0aXZlYCBtb2RpZmllciBjbGFzcyBmb3Igc2VsZWN0ZWQgaXRlbXMuXG5cbi5saXN0LWdyb3VwLWl0ZW0tYWN0aW9uIHtcbiAgd2lkdGg6IDEwMCU7IC8vIEZvciBgPGJ1dHRvbj5gcyAoYW5jaG9ycyBiZWNvbWUgMTAwJSBieSBkZWZhdWx0IHRob3VnaClcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1jb2xvcjtcbiAgdGV4dC1hbGlnbjogaW5oZXJpdDsgLy8gRm9yIGA8YnV0dG9uPmBzIChhbmNob3JzIGluaGVyaXQpXG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgei1pbmRleDogMTsgLy8gUGxhY2UgaG92ZXIvZm9jdXMgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24taG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWhvdmVyLWJnO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3Rpb24tYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWFjdGlvbi1hY3RpdmUtYmc7XG4gIH1cbn1cblxuXG4vLyBJbmRpdmlkdWFsIGxpc3QgaXRlbXNcbi8vXG4vLyBVc2Ugb24gYGxpYHMgb3IgYGRpdmBzIHdpdGhpbiB0aGUgYC5saXN0LWdyb3VwYCBwYXJlbnQuXG5cbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteSAkbGlzdC1ncm91cC1pdGVtLXBhZGRpbmcteDtcbiAgY29sb3I6ICRsaXN0LWdyb3VwLWNvbG9yO1xuICB0ZXh0LWRlY29yYXRpb246IGlmKCRsaW5rLWRlY29yYXRpb24gPT0gbm9uZSwgbnVsbCwgbm9uZSk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6ICRsaXN0LWdyb3VwLWJvcmRlci13aWR0aCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXItY29sb3I7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoaW5oZXJpdCk7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKGluaGVyaXQpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJjpkaXNhYmxlZCB7XG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWJnO1xuICB9XG5cbiAgLy8gSW5jbHVkZSBib3RoIGhlcmUgZm9yIGA8YT5gcyBhbmQgYDxidXR0b24+YHNcbiAgJi5hY3RpdmUge1xuICAgIHotaW5kZXg6IDI7IC8vIFBsYWNlIGFjdGl2ZSBpdGVtcyBhYm92ZSB0aGVpciBzaWJsaW5ncyBmb3IgcHJvcGVyIGJvcmRlciBzdHlsaW5nXG4gICAgY29sb3I6ICRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJiArICYge1xuICAgIGJvcmRlci10b3Atd2lkdGg6IDA7XG5cbiAgICAmLmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIEZsdXNoIGxpc3QgaXRlbXNcbi8vXG4vLyBSZW1vdmUgYm9yZGVycyBhbmQgYm9yZGVyLXJhZGl1cyB0byBrZWVwIGxpc3QgZ3JvdXAgaXRlbXMgZWRnZS10by1lZGdlLiBNb3N0XG4vLyB1c2VmdWwgd2l0aGluIG90aGVyIGNvbXBvbmVudHMgKGUuZy4sIGNhcmRzKS5cblxuLmxpc3QtZ3JvdXAtZmx1c2gge1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuXG4gID4gLmxpc3QtZ3JvdXAtaXRlbSB7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAgJGxpc3QtZ3JvdXAtYm9yZGVyLXdpZHRoO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQ29udGV4dHVhbCB2YXJpYW50c1xuLy9cbi8vIEFkZCBtb2RpZmllciBjbGFzc2VzIHRvIGNoYW5nZSB0ZXh0IGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGluZGl2aWR1YWwgaXRlbXMuXG4vLyBPcmdhbml6YXRpb25hbGx5LCB0aGlzIG11c3QgY29tZSBhZnRlciB0aGUgYDpob3ZlcmAgc3RhdGVzLlxuXG5AZWFjaCAkY29sb3IsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJGNvbG9yLCB0aGVtZS1jb2xvci1sZXZlbCgkY29sb3IsIC05KSwgdGhlbWUtY29sb3ItbGV2ZWwoJGNvbG9yLCA2KSk7XG59XG4iLCJAdXNlIFwic2Fzczpjb2xvclwiO1xuLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgICYubGlzdC1ncm91cC1pdGVtLWFjdGlvbiB7XG4gICAgICBAaW5jbHVkZSBob3Zlci1mb2N1cygpIHtcbiAgICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IuYWRqdXN0KCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtNSUpO1xuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIEBpbmNsdWRlIGZvbnQtc2l6ZSgkY2xvc2UtZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6ICRjbG9zZS1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gIHRleHQtc2hhZG93OiAkY2xvc2UtdGV4dC1zaGFkb3c7XG4gIG9wYWNpdHk6IC41O1xuXG4gIC8vIE92ZXJyaWRlIDxhPidzIGhvdmVyIHN0eWxlXG4gIEBpbmNsdWRlIGhvdmVyKCkge1xuICAgIGNvbG9yOiAkY2xvc2UtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoOmRpc2FibGVkKTpub3QoLmRpc2FibGVkKSB7XG4gICAgQGluY2x1ZGUgaG92ZXItZm9jdXMoKSB7XG4gICAgICBvcGFjaXR5OiAuNzU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFkZGl0aW9uYWwgcHJvcGVydGllcyBmb3IgYnV0dG9uIHZlcnNpb25cbi8vIGlPUyByZXF1aXJlcyB0aGUgYnV0dG9uIGVsZW1lbnQgaW5zdGVhZCBvZiBhbiBhbmNob3IgdGFnLlxuLy8gSWYgeW91IHdhbnQgdGhlIGFuY2hvciB2ZXJzaW9uLCBpdCByZXF1aXJlcyBgaHJlZj1cIiNcImAuXG4vLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI1NhZmFyaV9Nb2JpbGVcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHNlbGVjdG9yLW5vLXF1YWxpZnlpbmctdHlwZVxuYS5jbG9zZS5kaXNhYmxlZCB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuIiwiLy8gLm1vZGFsLW9wZW4gICAgICAtIGJvZHkgY2xhc3MgZm9yIGtpbGxpbmcgdGhlIHNjcm9sbFxuLy8gLm1vZGFsICAgICAgICAgICAtIGNvbnRhaW5lciB0byBzY3JvbGwgd2l0aGluXG4vLyAubW9kYWwtZGlhbG9nICAgIC0gcG9zaXRpb25pbmcgc2hlbGwgZm9yIHRoZSBhY3R1YWwgbW9kYWxcbi8vIC5tb2RhbC1jb250ZW50ICAgLSBhY3R1YWwgbW9kYWwgdy8gYmcgYW5kIGNvcm5lcnMgYW5kIHN0dWZmXG5cblxuLm1vZGFsLW9wZW4ge1xuICAvLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubW9kYWwge1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5cbi8vIENvbnRhaW5lciB0aGF0IHRoZSBtb2RhbCBzY3JvbGxzIHdpdGhpblxuLm1vZGFsIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWw7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuICAvLyBXZSBkZWxpYmVyYXRlbHkgZG9uJ3QgdXNlIGAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7YCBkdWUgdG8gYVxuICAvLyBnbmFybHkgaU9TIFNhZmFyaSBidWc6IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgzNDJcbiAgLy8gU2VlIGFsc28gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xNzY5NVxufVxuXG4vLyBTaGVsbCBkaXYgdG8gcG9zaXRpb24gdGhlIG1vZGFsIHdpdGggYm90dG9tIHBhZGRpbmdcbi5tb2RhbC1kaWFsb2cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW46ICRtb2RhbC1kaWFsb2ctbWFyZ2luO1xuICAvLyBhbGxvdyBjbGlja3MgdG8gcGFzcyB0aHJvdWdoIGZvciBjdXN0b20gY2xpY2sgaGFuZGxpbmcgdG8gY2xvc2UgbW9kYWxcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgLy8gV2hlbiBmYWRpbmcgaW4gdGhlIG1vZGFsLCBhbmltYXRlIGl0IHRvIHNsaWRlIGRvd25cbiAgLm1vZGFsLmZhZGUgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtZmFkZS10cmFuc2Zvcm07XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigkbW9kYWwtdHJhbnNpdGlvbik7XG4gIH1cbiAgLm1vZGFsLnNob3cgJiB7XG4gICAgdHJhbnNmb3JtOiAkbW9kYWwtc2hvdy10cmFuc2Zvcm07XG4gIH1cblxuICAvLyBXaGVuIHRyeWluZyB0byBjbG9zZSwgYW5pbWF0ZSBmb2N1cyB0byBzY2FsZVxuICAubW9kYWwubW9kYWwtc3RhdGljICYge1xuICAgIHRyYW5zZm9ybTogJG1vZGFsLXNjYWxlLXRyYW5zZm9ybTtcbiAgfVxufVxuXG4ubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICBkaXNwbGF5OiBmbGV4OyAvLyBJRTEwLzExXG4gIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLm1vZGFsLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbiAqIDIpOyAvLyBJRTEwLzExXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXIsXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cbn1cblxuLm1vZGFsLWRpYWxvZy1jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luICogMik7XG5cbiAgLy8gRW5zdXJlIGBtb2RhbC1kaWFsb2ctY2VudGVyZWRgIGV4dGVuZHMgdGhlIGZ1bGwgaGVpZ2h0IG9mIHRoZSB2aWV3IChJRTEwLzExKVxuICAmOjpiZWZvcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyAvLyBJRTEwXG4gICAgaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4gKiAyKTtcbiAgICBoZWlnaHQ6IG1pbi1jb250ZW50OyAvLyBSZXNldCBoZWlnaHQgdG8gMCBleGNlcHQgb24gSUVcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgLy8gRW5zdXJlIGAubW9kYWwtYm9keWAgc2hvd3Mgc2Nyb2xsYmFyIChJRTEwLzExKVxuICAmLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmU7XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIEFjdHVhbCBtb2RhbFxuLm1vZGFsLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHdpZHRoOiAxMDAlOyAvLyBFbnN1cmUgYC5tb2RhbC1jb250ZW50YCBleHRlbmRzIHRoZSBmdWxsIHdpZHRoIG9mIHRoZSBwYXJlbnQgYC5tb2RhbC1kaWFsb2dgXG4gIC8vIGNvdW50ZXJhY3QgdGhlIHBvaW50ZXItZXZlbnRzOiBub25lOyBpbiB0aGUgLm1vZGFsLWRpYWxvZ1xuICBjb2xvcjogJG1vZGFsLWNvbnRlbnQtY29sb3I7XG4gIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtY29udGVudC1iZztcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkbW9kYWwtY29udGVudC1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRtb2RhbC1jb250ZW50LWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3cteHMpO1xuICAvLyBSZW1vdmUgZm9jdXMgb3V0bGluZSBmcm9tIG9wZW5lZCBtb2RhbFxuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBNb2RhbCBiYWNrZ3JvdW5kXG4ubW9kYWwtYmFja2Ryb3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbC1iYWNrZHJvcDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbW9kYWwtYmFja2Ryb3AtYmc7XG5cbiAgLy8gRmFkZSBmb3IgYmFja2Ryb3BcbiAgJi5mYWRlIHsgb3BhY2l0eTogMDsgfVxuICAmLnNob3cgeyBvcGFjaXR5OiAkbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0OyAvLyBzbyB0aGUgY2xvc2UgYnRuIGFsd2F5cyBzdGF5cyBvbiB0aGUgdXBwZXIgcmlnaHQgY29ybmVyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgLy8gUHV0IG1vZGFsIGhlYWRlciBlbGVtZW50cyAodGl0bGUgYW5kIGRpc21pc3MpIG9uIG9wcG9zaXRlIGVuZHNcbiAgcGFkZGluZzogJG1vZGFsLWhlYWRlci1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAkbW9kYWwtaGVhZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJG1vZGFsLWNvbnRlbnQtaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgLmNsb3NlIHtcbiAgICBwYWRkaW5nOiAkbW9kYWwtaGVhZGVyLXBhZGRpbmc7XG4gICAgLy8gYXV0byBvbiB0aGUgbGVmdCBmb3JjZSBpY29uIHRvIHRoZSByaWdodCBldmVuIHdoZW4gdGhlcmUgaXMgbm8gLm1vZGFsLXRpdGxlXG4gICAgbWFyZ2luOiAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy14KSAoLSRtb2RhbC1oZWFkZXItcGFkZGluZy15KSBhdXRvO1xuICB9XG59XG5cbi8vIFRpdGxlIHRleHQgd2l0aGluIGhlYWRlclxuLm1vZGFsLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC8vIEVuYWJsZSBgZmxleC1ncm93OiAxYCBzbyB0aGF0IHRoZSBib2R5IHRha2UgdXAgYXMgbXVjaCBzcGFjZSBhcyBwb3NzaWJsZVxuICAvLyB3aGVuIHRoZXJlIHNob3VsZCBiZSBhIGZpeGVkIGhlaWdodCBvbiBgLm1vZGFsLWRpYWxvZ2AuXG4gIGZsZXg6IDEgMSBhdXRvO1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZztcbn1cblxuLy8gRm9vdGVyIChmb3IgYWN0aW9ucylcbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7IC8vIHZlcnRpY2FsbHkgY2VudGVyXG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IC8vIFJpZ2h0IGFsaWduIGJ1dHRvbnMgd2l0aCBmbGV4IHByb3BlcnR5IGJlY2F1c2UgdGV4dC1hbGlnbiBkb2Vzbid0IHdvcmsgb24gZmxleCBpdGVtc1xuICBwYWRkaW5nOiAkbW9kYWwtaW5uZXItcGFkZGluZyAtICRtb2RhbC1mb290ZXItbWFyZ2luLWJldHdlZW4gKiAuNTtcbiAgYm9yZGVyLXRvcDogJG1vZGFsLWZvb3Rlci1ib3JkZXItd2lkdGggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKCRtb2RhbC1jb250ZW50LWlubmVyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC8vIFBsYWNlIG1hcmdpbiBiZXR3ZWVuIGZvb3RlciBlbGVtZW50c1xuICAvLyBUaGlzIHNvbHV0aW9uIGlzIGZhciBmcm9tIGlkZWFsIGJlY2F1c2Ugb2YgdGhlIHVuaXZlcnNhbCBzZWxlY3RvciB1c2FnZSxcbiAgLy8gYnV0IGlzIG5lZWRlZCB0byBmaXggaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8yNDgwMFxuICA+ICoge1xuICAgIG1hcmdpbjogJG1vZGFsLWZvb3Rlci1tYXJnaW4tYmV0d2VlbiAqIC41O1xuICB9XG59XG5cbi8vIE1lYXN1cmUgc2Nyb2xsYmFyIHdpZHRoIGZvciBwYWRkaW5nIGJvZHkgZHVyaW5nIG1vZGFsIHNob3cvaGlkZVxuLm1vZGFsLXNjcm9sbGJhci1tZWFzdXJlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIG92ZXJmbG93OiBzY3JvbGw7XG59XG5cbi8vIFNjYWxlIHVwIHRoZSBtb2RhbFxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAvLyBBdXRvbWF0aWNhbGx5IHNldCBtb2RhbCdzIHdpZHRoIGZvciBsYXJnZXIgdmlld3BvcnRzXG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIG1heC13aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCBhdXRvO1xuICB9XG5cbiAgLm1vZGFsLWRpYWxvZy1zY3JvbGxhYmxlIHtcbiAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDAlLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG5cbiAgICAubW9kYWwtY29udGVudCB7XG4gICAgICBtYXgtaGVpZ2h0OiBzdWJ0cmFjdCgxMDB2aCwgJG1vZGFsLWRpYWxvZy1tYXJnaW4teS1zbS11cCAqIDIpO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1kaWFsb2ctY2VudGVyZWQge1xuICAgIG1pbi1oZWlnaHQ6IHN1YnRyYWN0KDEwMCUsICRtb2RhbC1kaWFsb2ctbWFyZ2luLXktc20tdXAgKiAyKTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IHN1YnRyYWN0KDEwMHZoLCAkbW9kYWwtZGlhbG9nLW1hcmdpbi15LXNtLXVwICogMik7XG4gICAgICBoZWlnaHQ6IG1pbi1jb250ZW50O1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRtb2RhbC1jb250ZW50LWJveC1zaGFkb3ctc20tdXApO1xuICB9XG5cbiAgLm1vZGFsLXNtIHsgbWF4LXdpZHRoOiAkbW9kYWwtc207IH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAubW9kYWwtbGcsXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiAkbW9kYWwtbGc7XG4gIH1cbn1cblxuQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAubW9kYWwteGwgeyBtYXgtd2lkdGg6ICRtb2RhbC14bDsgfVxufVxuIiwiLy8gQmFzZSBjbGFzc1xuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICR6aW5kZXgtdG9vbHRpcDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHRvb2x0aXAtbWFyZ2luO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCR0b29sdGlwLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSB0b29sdGlwJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgb3BhY2l0eTogMDtcblxuICAmLnNob3cgeyBvcGFjaXR5OiAkdG9vbHRpcC1vcGFjaXR5OyB9XG5cbiAgLmFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGhlaWdodDogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtdG9wIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICBib3R0b206IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy1oZWlnaHQgKCR0b29sdGlwLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtcmlnaHQge1xuICBwYWRkaW5nOiAwICR0b29sdGlwLWFycm93LWhlaWdodDtcblxuICAuYXJyb3cge1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAoJHRvb2x0aXAtYXJyb3ctd2lkdGggKiAuNSkgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwO1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtYm90dG9tIHtcbiAgcGFkZGluZzogJHRvb2x0aXAtYXJyb3ctaGVpZ2h0IDA7XG5cbiAgLmFycm93IHtcbiAgICB0b3A6IDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXRvb2x0aXAtbGVmdCB7XG4gIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctaGVpZ2h0O1xuXG4gIC5hcnJvdyB7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6ICR0b29sdGlwLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAwICgkdG9vbHRpcC1hcnJvdy13aWR0aCAqIC41KSAkdG9vbHRpcC1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5icy10b29sdGlwLWF1dG8ge1xuICAmW3gtcGxhY2VtZW50Xj1cInRvcFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC10b3A7XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJyaWdodFwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1yaWdodDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImJvdHRvbVwiXSB7XG4gICAgQGV4dGVuZCAuYnMtdG9vbHRpcC1ib3R0b207XG4gIH1cbiAgJlt4LXBsYWNlbWVudF49XCJsZWZ0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy10b29sdGlwLWxlZnQ7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZy15ICR0b29sdGlwLXBhZGRpbmcteDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCR0b29sdGlwLWJvcmRlci1yYWRpdXMpO1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUgb3Igd29yZC13cmFwLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIHRleHQtYWxpZ246IGxlZnQ7IC8vIEZhbGxiYWNrIGZvciB3aGVyZSBgc3RhcnRgIGlzIG5vdCBzdXBwb3J0ZWRcbiAgdGV4dC1hbGlnbjogc3RhcnQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsZXR0ZXItc3BhY2luZzogbm9ybWFsO1xuICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtc3BhY2luZzogbm9ybWFsO1xuICBsaW5lLWJyZWFrOiBhdXRvO1xufVxuIiwiQHVzZSBcInNhc3M6Y29sb3JcIjtcbi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1heC13aWR0aDogJHBvcG92ZXItbWF4LXdpZHRoO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQoKTtcbiAgQGluY2x1ZGUgZm9udC1zaXplKCRwb3BvdmVyLWZvbnQtc2l6ZSk7XG4gIC8vIEFsbG93IGJyZWFraW5nIHZlcnkgbG9uZyB3b3JkcyBzbyB0aGV5IGRvbid0IG92ZXJmbG93IHRoZSBwb3BvdmVyJ3MgYm91bmRzXG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgYm9yZGVyOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRwb3BvdmVyLWJveC1zaGFkb3cpO1xuXG4gIC5hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBtYXJnaW46IDAgJHBvcG92ZXItYm9yZGVyLXJhZGl1cztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItdG9wIHtcbiAgbWFyZ2luLWJvdHRvbTogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBib3R0b206IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItcmlnaHQge1xuICBtYXJnaW4tbGVmdDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICBsZWZ0OiBzdWJ0cmFjdCgtJHBvcG92ZXItYXJyb3ctaGVpZ2h0LCAkcG9wb3Zlci1ib3JkZXItd2lkdGgpO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW46ICRwb3BvdmVyLWJvcmRlci1yYWRpdXMgMDsgLy8gbWFrZSBzdXJlIHRoZSBhcnJvdyBkb2VzIG5vdCB0b3VjaCB0aGUgcG9wb3ZlcidzIHJvdW5kZWQgY29ybmVyc1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDA7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGxlZnQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSkgMDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYm90dG9tIHtcbiAgbWFyZ2luLXRvcDogJHBvcG92ZXItYXJyb3ctaGVpZ2h0O1xuXG4gID4gLmFycm93IHtcbiAgICB0b3A6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgYm9yZGVyLXdpZHRoOiAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpO1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgdG9wOiAkcG9wb3Zlci1ib3JkZXItd2lkdGg7XG4gICAgICBib3JkZXItd2lkdGg6IDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodCAoJHBvcG92ZXItYXJyb3ctd2lkdGggKiAuNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhpcyB3aWxsIHJlbW92ZSB0aGUgcG9wb3Zlci1oZWFkZXIncyBib3JkZXIganVzdCBiZWxvdyB0aGUgYXJyb3dcbiAgLnBvcG92ZXItaGVhZGVyOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoICogLjU7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgJHBvcG92ZXItaGVhZGVyLWJnO1xuICB9XG59XG5cbi5icy1wb3BvdmVyLWxlZnQge1xuICBtYXJnaW4tcmlnaHQ6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcblxuICA+IC5hcnJvdyB7XG4gICAgcmlnaHQ6IHN1YnRyYWN0KC0kcG9wb3Zlci1hcnJvdy1oZWlnaHQsICRwb3BvdmVyLWJvcmRlci13aWR0aCk7XG4gICAgd2lkdGg6ICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICBoZWlnaHQ6ICRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbjogJHBvcG92ZXItYm9yZGVyLXJhZGl1cyAwOyAvLyBtYWtlIHN1cmUgdGhlIGFycm93IGRvZXMgbm90IHRvdWNoIHRoZSBwb3BvdmVyJ3Mgcm91bmRlZCBjb3JuZXJzXG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3JkZXItd2lkdGg6ICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAwICgkcG9wb3Zlci1hcnJvdy13aWR0aCAqIC41KSAkcG9wb3Zlci1hcnJvdy1oZWlnaHQ7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgcmlnaHQ6ICRwb3BvdmVyLWJvcmRlci13aWR0aDtcbiAgICAgIGJvcmRlci13aWR0aDogKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpIDAgKCRwb3BvdmVyLWFycm93LXdpZHRoICogLjUpICRwb3BvdmVyLWFycm93LWhlaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLmJzLXBvcG92ZXItYXV0byB7XG4gICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICB9XG4gICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgfVxuICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgfVxufVxuXG5cbi8vIE9mZnNldCB0aGUgcG9wb3ZlciB0byBhY2NvdW50IGZvciB0aGUgcG9wb3ZlciBhcnJvd1xuLnBvcG92ZXItaGVhZGVyIHtcbiAgcGFkZGluZzogJHBvcG92ZXItaGVhZGVyLXBhZGRpbmcteSAkcG9wb3Zlci1oZWFkZXItcGFkZGluZy14O1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBSZXNldCB0aGUgZGVmYXVsdCBmcm9tIFJlYm9vdFxuICBAaW5jbHVkZSBmb250LXNpemUoJGZvbnQtc2l6ZS1iYXNlKTtcbiAgY29sb3I6ICRwb3BvdmVyLWhlYWRlci1jb2xvcjtcbiAgLy8gYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItaGVhZGVyLWJnO1xuICBib3JkZXItYm90dG9tOiAkcG9wb3Zlci1ib3JkZXItd2lkdGggc29saWQgY29sb3IuYWRqdXN0KCRwb3BvdmVyLWhlYWRlci1iZywgJGxpZ2h0bmVzczogLTUlKTtcbiAgLy8gQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJHBvcG92ZXItaW5uZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgJjplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4ucG9wb3Zlci1ib2R5IHtcbiAgcGFkZGluZzogJHBvcG92ZXItYm9keS1wYWRkaW5nLXkgJHBvcG92ZXItYm9keS1wYWRkaW5nLXg7XG4gIGNvbG9yOiAkcG9wb3Zlci1ib2R5LWNvbG9yO1xufVxuIiwiLy8gc3R5bGVsaW50LWRpc2FibGUgZGVjbGFyYXRpb24tbm8taW1wb3J0YW50LCBzZWxlY3Rvci1uby1xdWFsaWZ5aW5nLXR5cGVcblxuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9tYWluLmNzcy9ibG9iL21hc3Rlci9zcmMvX3ByaW50LmNzc1xuXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuLy8gUHJpbnQgc3R5bGVzLlxuLy8gSW5saW5lZCB0byBhdm9pZCB0aGUgYWRkaXRpb25hbCBIVFRQIHJlcXVlc3Q6XG4vLyBodHRwczovL3d3dy5waHBpZWQuY29tL2RlbGF5LWxvYWRpbmcteW91ci1wcmludC1jc3MvXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaWYgJGVuYWJsZS1wcmludC1zdHlsZXMge1xuICBAbWVkaWEgcHJpbnQge1xuICAgICosXG4gICAgKjo6YmVmb3JlLFxuICAgICo6OmFmdGVyIHtcbiAgICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYzsgY29tbWVudCBvdXQgYGNvbG9yYCBhbmQgYGJhY2tncm91bmRgXG4gICAgICAvL2NvbG9yOiAkYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlclxuICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIC8vYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgICY6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljOyBjb21tZW50IHRoZSBmb2xsb3dpbmcgc2VsZWN0b3Igb3V0XG4gICAgLy9hW2hyZWZdOjphZnRlciB7XG4gICAgLy8gIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICAgIC8vfVxuXG4gICAgYWJiclt0aXRsZV06OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgc3BlY2lmaWM7IGNvbW1lbnQgdGhlIGZvbGxvd2luZyBzZWxlY3RvciBvdXRcbiAgICAvL1xuICAgIC8vIERvbid0IHNob3cgbGlua3MgdGhhdCBhcmUgZnJhZ21lbnQgaWRlbnRpZmllcnMsXG4gICAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICAgIC8vXG5cbiAgICAvL2FbaHJlZl49XCIjXCJdOjphZnRlcixcbiAgICAvL2FbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTo6YWZ0ZXIge1xuICAgIC8vIGNvbnRlbnQ6IFwiXCI7XG4gICAgLy99XG5cbiAgICBwcmUge1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkZ3JheS01MDA7IC8vIEJvb3RzdHJhcCBjdXN0b20gY29kZTsgdXNpbmcgYCRib3JkZXItd2lkdGhgIGluc3RlYWQgb2YgMXB4XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgdHIsXG4gICAgaW1nIHtcbiAgICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gQm9vdHN0cmFwIHNwZWNpZmljIGNoYW5nZXMgc3RhcnRcblxuICAgIC8vIFNwZWNpZnkgYSBzaXplIGFuZCBtaW4td2lkdGggdG8gbWFrZSBwcmludGluZyBjbG9zZXIgYWNyb3NzIGJyb3dzZXJzLlxuICAgIC8vIFdlIGRvbid0IHNldCBtYXJnaW4gaGVyZSBiZWNhdXNlIGl0IGJyZWFrcyBgc2l6ZWAgaW4gQ2hyb21lLiBXZSBhbHNvXG4gICAgLy8gZG9uJ3QgdXNlIGAhaW1wb3J0YW50YCBvbiBgc2l6ZWAgYXMgaXQgYnJlYWtzIGluIENocm9tZS5cbiAgICBAcGFnZSB7XG4gICAgICBzaXplOiAkcHJpbnQtcGFnZS1zaXplO1xuICAgIH1cbiAgICBib2R5IHtcbiAgICAgIG1pbi13aWR0aDogJHByaW50LWJvZHktbWluLXdpZHRoICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5jb250YWluZXIge1xuICAgICAgbWluLXdpZHRoOiAkcHJpbnQtYm9keS1taW4td2lkdGggIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAvLyBCb290c3RyYXAgY29tcG9uZW50c1xuICAgIC5uYXZiYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkYmxhY2s7XG4gICAgfVxuXG4gICAgLnRhYmxlIHtcbiAgICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZS1ib3JkZXJlZCB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktMzAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlLWRhcmsge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG5cbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICB0aGVhZCB0aCxcbiAgICAgIHRib2R5ICsgdGJvZHkge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0YWJsZS1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhYmxlIC50aGVhZC1kYXJrIHRoIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgYm9yZGVyLWNvbG9yOiAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICAgIH1cblxuICAgIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIGVuZFxuICB9XG59XG4iLCIvLyAtLS0gQm9vdHN0cmFwVnVlIHV0aWxpdHkgLyBoZWxwZXIgY2xhc3NlcyAtLS1cblxuJGJ2LXV0aWxpdHktY2xhc3Nlcy1kZWZpbmVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gTWFrZSBzdXJlIHRvIGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25seSBvbmNlXG5AaWYgJGJ2LXV0aWxpdHktY2xhc3Nlcy1kZWZpbmVkID09IGZhbHNlIHtcbiAgJGJ2LXV0aWxpdHktY2xhc3Nlcy1kZWZpbmVkOiB0cnVlO1xuXG4gIC8vIE5vIGZvY3VzIG91dGxpbmUgaGVscGVyICh1c2Ugc3BhcmluZ2x5KVxuICAuYnYtbm8tZm9jdXMtcmluZzpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG4iLCIkYnYtZHJvcGRvd24tZGVmaW5lZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIE1ha2Ugc3VyZSB0byBpbmNsdWRlIHRoZXNlIHN0eWxlIGRlZmluaXRpb25zIG9ubHkgb25jZVxuQGlmICRidi1kcm9wZG93bi1kZWZpbmVkID09IGZhbHNlIHtcbiAgJGJ2LWRyb3Bkb3duLWRlZmluZWQ6IHRydWU7XG5cbiAgLy8gSGlkZSB0aGUgY2FyZXQgZm9yIGBuby1jYXJldGAgc2V0dGluZ1xuICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvaXNzdWVzLzE0NzNcbiAgLy8gU2VlOiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzIzNzI0XG4gIC5kcm9wZG93biB7XG4gICAgJjpub3QoLmRyb3BsZWZ0KSB7XG4gICAgICAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgJi5kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQ6OmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvaXNzdWVzLzI5MDlcbiAgICAmLmRyb3BsZWZ0IHtcbiAgICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgICAmLmRyb3Bkb3duLXRvZ2dsZS1uby1jYXJldDo6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBIaWRlIHRoZSBmb2N1cyByaW5nIGludHJvZHVjZWQgYnkgQm9vdHN0cmF0cCB2NC40IHJlYm9vdFxuICAgIC8vIG9uIGl0ZW1zIHdpdGggdGFiaW5kZXg9XCItMVwiLCBhcyB3ZSBrbm93IGhvdyB1c2VycyBmZWVsXG4gICAgLy8gYWJvdXQgYmx1ZSByaW5ncyB3aGVyZSB0aGV5IGRvbid0IGV4cGVjdCB0aGVtLlxuICAgIC5kcm9wZG93bi1tZW51OmZvY3VzLXZpc2libGUge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBQcmV2ZW50IGRyb3Bkb3duIGJhY2tncm91bmQgb3ZlcmZsb3cgaWYgdGhlcmUncyBubyBwYWRkaW5nXG4gICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzI3NzAzXG4gICAgLy8gQWRkZWQgaGVyZSB0byBhZGRyZXNzIDxsaT4gd3JhcHBpbmcgb2YgaXRlbXNcbiAgICBAaWYgJGRyb3Bkb3duLXBhZGRpbmcteSA9PSAwIHtcbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIC5kcm9wZG93bi1pdGVtLFxuICAgICAgICAgIC5kcm9wZG93bi1mb3JtLFxuICAgICAgICAgIC5kcm9wZG93bi10ZXh0IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRkcm9wZG93bi1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAuZHJvcGRvd24taXRlbSxcbiAgICAgICAgICAuZHJvcGRvd24tZm9ybSxcbiAgICAgICAgICAuZHJvcGRvd24tdGV4dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkZHJvcGRvd24taW5uZXItYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIkYnYtZHJvcGRvd24tZm9ybS1kZWZpbmVkOiBmYWxzZSAhZGVmYXVsdDtcblxuQGlmICRidi1kcm9wZG93bi1mb3JtLWRlZmluZWQgPT0gZmFsc2Uge1xuICAvLyBUaGlzIHRlc3Qgd2lsbCBvbmx5IGluY2x1ZGUgdGhlc2Ugc3R5bGUgZGVmaW5pdGlvbnMgb25jZVxuICAkYnYtZHJvcGRvd24tZm9ybS1kZWZpbmVkOiB0cnVlO1xuXG4gIC8vIEN1c3RvbSBzdHlsZXMgZm9yIDxiLWRyb3Bkb3duLWZvcm0+XG4gIC8vIEJhc2VkIG9uIGNsYXNzIGAuZHJvcGRvd24taXRlbWBcbiAgLmItZHJvcGRvd24tZm9ybSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteSAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgLy8gRnJvbSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvc2Nzcy9fcmVib290LnNjc3NcbiAgICAgIC8vIG1pbWlja2luZyBidXR0b246Zm9jdXMtdmlzaWJsZSBzdHlsaW5nLlxuICAgICAgLy8gV2UgYWRkIGltcG9ydGFudCBoZXJlIGFzIGFueXRoaW5nIHdpdGggdGFiaW5kZXggYC0xYCBhbmQgZm9jdXNlZCB3aWxsIG5vdFxuICAgICAgLy8gaGF2ZSBhIGZvY3VzIHJpbmcgZHVlIHRvIHJlYm9vdC5zY3NzIGFuZCBpdHMgYCFpbXBvcnRhbnRgIG92ZXJyaWRlLlxuICAgICAgLy8gTmVlZGVkIGZvciBrZXlib2FyZCBuYXZpZ2F0aW9uIGhpZ2gtbGlnaHRpbmdcbiAgICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgIWltcG9ydGFudDtcbiAgICAgIG91dGxpbmU6IDVweCBhdXRvIC13ZWJraXQtZm9jdXMtcmluZy1jb2xvciAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgICYuZGlzYWJsZWQsXG4gICAgJjpkaXNhYmxlZCB7XG4gICAgICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIC8vIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgLy8gUmVtb3ZlIENTUyBncmFkaWVudHMgaWYgdGhleSdyZSBlbmFibGVkXG4gICAgICAvLyBAaWYgJGVuYWJsZS1ncmFkaWVudHMge1xuICAgICAgLy8gICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgLy8gfVxuICAgIH1cbiAgfVxufVxuIiwiJGJ2LWRyb3Bkb3duLXRleHQtZGVmaW5lZDogZmFsc2UgIWRlZmF1bHQ7XG5cbkBpZiAkYnYtZHJvcGRvd24tdGV4dC1kZWZpbmVkID09IGZhbHNlIHtcbiAgLy8gVGhpcyB0ZXN0IHdpbGwgb25seSBpbmNsdWRlIHRoZXNlIHN0eWxlIGRlZmluaXRpb25zIG9uY2VcbiAgJGJ2LWRyb3Bkb3duLXRleHQtZGVmaW5lZDogdHJ1ZTtcblxuICAvLyBDdXN0b20gc3R5bGVzIGZvciA8Yi1kcm9wZG93bi10ZXh0PlxuICAvLyBCYXNlZCBvbiBjbGFzcyBgLmRyb3Bkb3duLWl0ZW1gXG4gIC5iLWRyb3Bkb3duLXRleHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1saWdodGVyO1xuICB9XG59XG4iLCIvLyBOZWVkZWQgdG8gYWxsb3cgVnVlIHRyYW5zaXRpb24gc3lzdGVtIHRvIHdvcmsgd2l0aCBCb290c3RyYXAgdjQgLm1vZGFsLWJhY2tkcm9wXG4vLyBhcyBtb2RhbCBvcGFjaXR5IGlzIDEgYnkgZGVmYXVsdFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgb3BhY2l0eTogJG1vZGFsLWJhY2tkcm9wLW9wYWNpdHk7XG59XG4iLCIvLyBTb21lIG92ZXJyaWRlcyB0byBtYWtlIHBvcG92ZXIgdHJhbnNpdGlvbnMgd29yayB3aXRoIFZ1ZSBgPHRyYW5zaXRpb24+YFxuLnBvcG92ZXIuYi1wb3BvdmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIC8vIE5lZWRlZCBkdWUgdG8gQm9vdHN0cmFwIHY0LjQgcmVib290LmNzcyBjaGFuZ2VzXG4gIG91dGxpbmU6IDA7XG5cbiAgJi5mYWRlOm5vdCguc2hvdykge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAmLnNob3cge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGlmICRidi1lbmFibGUtcG9wb3Zlci12YXJpYW50cyB7XG4gIEBlYWNoICR2YXJpYW50LCAkdmFsdWUgaW4gJHRoZW1lLWNvbG9ycyB7XG4gICAgLmItcG9wb3Zlci0jeyR2YXJpYW50fSB7XG4gICAgICAkcG8tYmctY29sb3I6IHRoZW1lLWNvbG9yLWxldmVsKCR2YXJpYW50LCAkYi1wb3BvdmVyLWJnLWxldmVsKTtcbiAgICAgICRwby1ib3JkZXItY29sb3I6IHRoZW1lLWNvbG9yLWxldmVsKCR2YXJpYW50LCAkYi1wb3BvdmVyLWJvcmRlci1sZXZlbCk7XG4gICAgICAkcG8tY29sb3I6IHRoZW1lLWNvbG9yLWxldmVsKCR2YXJpYW50LCAkYi1wb3BvdmVyLWNvbG9yLWxldmVsKTtcbiAgICAgICRwby1oZWFkZXItYmc6IGRhcmtlbigkcG8tYmctY29sb3IsIDMlKTtcbiAgICAgICRwby1oZWFkZXItY29sb3I6IGNvbG9yLXlpcSgkcG8taGVhZGVyLWJnKTtcbiAgICAgICRwby1hcnJvdy1jb2xvcjogJHBvLWJnLWNvbG9yO1xuICAgICAgJHBvLWFycm93LWNvbG9yLWJvdHRvbTogJHBvLWhlYWRlci1iZztcbiAgICAgICRwby1hcnJvdy1vdXRlci1jb2xvcjogZmFkZS1pbigkcG8tYm9yZGVyLWNvbG9yLCAwLjA1KTtcblxuICAgICAgJi5wb3BvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBvLWJnLWNvbG9yO1xuICAgICAgICBib3JkZXItY29sb3I6ICRwby1ib3JkZXItY29sb3I7XG4gICAgICB9XG5cbiAgICAgICYuYnMtcG9wb3Zlci10b3Age1xuICAgICAgICA+IC5hcnJvdyB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRwby1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG8tYXJyb3ctY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtcG9wb3Zlci1yaWdodCB7XG4gICAgICAgID4gLmFycm93IHtcbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG8tYXJyb3ctb3V0ZXItY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG8tYXJyb3ctY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtcG9wb3Zlci1ib3R0b20ge1xuICAgICAgICA+IC5hcnJvdyB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwby1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAvLyBVc2UgdGhlIGhlYWRlciBiZyBjb2xvclxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvLWFycm93LWNvbG9yLWJvdHRvbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAucG9wb3Zlci1oZWFkZXI6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvLWhlYWRlci1iZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXBvcG92ZXItbGVmdCB7XG4gICAgICAgID4gLmFycm93IHtcbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwby1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvLWFycm93LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXBvcG92ZXItYXV0byB7XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXRvcDtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy1wb3BvdmVyLWJvdHRvbTtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgICAgICAgIEBleHRlbmQgLmJzLXBvcG92ZXItbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucG9wb3Zlci1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJHBvLWhlYWRlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBvLWhlYWRlci1iZztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogZGFya2VuKCRwby1oZWFkZXItYmcsIDUlKTtcbiAgICAgIH1cblxuICAgICAgLnBvcG92ZXItYm9keSB7XG4gICAgICAgIGNvbG9yOiAkcG8tY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlICdzYXNzOm1hcCc7XG5AdXNlICdzYXNzOnN0cmluZyc7XG5cbi8vIC0tLSBHZW5lcmFsIHN0eWxpbmcgLS0tXG5cbi50YWJsZS5iLXRhYmxlIHtcbiAgLy8gVGFibGUgZml4ZWQgaGVhZGVyIHdpZHRoIGxheW91dFxuICAmLmItdGFibGUtZml4ZWQge1xuICAgIC8vIEZpeGVkIHdpZHRoIGNvbHVtbnNcbiAgICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYm9yZGVyLWNvbGxhcHNlXG4gIC8vIE1haW5seSBmb3IgdXNlIHdpdGggc3RpY2t5IGhlYWRlcnMgYW5kIGNvbHVtbnNcbiAgJi5iLXRhYmxlLW5vLWJvcmRlci1jb2xsYXBzZSB7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgfVxuXG4gIC8vIFRhYmxlIGJ1c3kgc3R5bGluZ1xuICAmW2FyaWEtYnVzeT1cInRydWVcIl0ge1xuICAgIG9wYWNpdHk6ICRiLXRhYmxlLWJ1c3ktb3BhY2l0eTtcbiAgfVxuXG4gIC8vIERldGFpbHMgcm93IHN0eWxpbmdcbiAgPiB0Ym9keSA+IHRyLmItdGFibGUtZGV0YWlscyA+IHRkIHtcbiAgICBib3JkZXItdG9wOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBDYXB0aW9uIHBvc2l0aW9uaW5nXG4gID4gY2FwdGlvbiB7XG4gICAgY2FwdGlvbi1zaWRlOiBib3R0b207XG4gIH1cblxuICAmLmItdGFibGUtY2FwdGlvbi10b3Age1xuICAgID4gY2FwdGlvbiB7XG4gICAgICBjYXB0aW9uLXNpZGU6IHRvcCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlLWRlY2xhcmUgYHRhYmxlLWFjdGl2ZWAgY2xhc3MgaGVyZSBzbyB0aGF0IGl0IGNhbiB0YWtlXG4gIC8vIHByZWNlZGVuY2Ugb3ZlciByb3cgdmFyaWFudHMgd2hlbiB1c2VkIG9uIHNlbGVjdGFibGUgcm93c1xuICAvLyBDbGFzcyBjYW4gb25seSBiZSBhcHBsaWVkIHRvIHJvd3MgYW5kIG5vdCBpbmRpdmlkdWFsIGNlbGxzXG4gID4gdGJvZHkgPiAudGFibGUtYWN0aXZlIHtcbiAgICAmLFxuICAgID4gdGgsXG4gICAgPiB0ZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYWN0aXZlLWJnO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFkZCBzcGVjaWFsIGhvdmVyIHN0eWxpbmcgZm9yIGB0YWJsZS1hY3RpdmVgIHJvdyB2YXJpYW50XG4gICYudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyLnRhYmxlLWFjdGl2ZTpob3ZlciB7XG4gICAgdGQsXG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1ob3Zlci1jb2xvcjtcbiAgICAgIC8vIGAkdGFibGUtaG92ZXItYmdgIGRlZmF1bHQgaXMgYSB2ZXJ5IHRyYW5zcGFyZW50IGJsYWNrXG4gICAgICAvLyBXZSBvdmVybGF5IGl0IG92ZXIgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gYWNoaWV2ZSB0aGVcbiAgICAgIC8vIHNhbWUgY29sb3IgZWZmZWN0IHdoaWxlIGtlZXBpbmcgdGhlIGJhY2tncm91bmQgc29saWRcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkdGFibGUtaG92ZXItYmcsICR0YWJsZS1ob3Zlci1iZyk7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEFkZCBpbiBtaXNzaW5nIGBiZy1hY3RpdmVgIGNsYXNzIGZvciB0YWJsZSB0Ym9keSByb3dzXG4gIC8vIEJvb3RzdHJhcCB2NC4zIGlzIG1pc3NpbmcgdGhpcyBmb3IgZGFyayB0YWJsZXNcbiAgLy8gYGJnLWFjdGl2ZWAgY2xhc3MgY2Fubm90IGJlIGFwcGxpZWQgdG8gaW5kaXZpZHVhbCBjZWxsc1xuICA+IHRib2R5ID4gLmJnLWFjdGl2ZSB7XG4gICAgJixcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgLy8gSW1wb3J0YW50IGlzIG5lZWRlZCB0byBvdmVycmlkZSB0aGUgc3RhbmRhcmQgYGJnLXZhcmlhbnRzYFxuICAgICAgLy8gYXMgdGhlIGFsc28gdXNlIGAhaW1wb3J0YW50YFxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWRhcmstYWN0aXZlLWJnICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQWRkIHNwZWNpYWwgaG92ZXIgc3R5bGluZyBmb3IgYGJnLWFjdGl2ZWAgcm93IHZhcmlhbnQgKGRhcmsgdGFibGVzKVxuICAmLnRhYmxlLWhvdmVyLnRhYmxlLWRhcmsgPiB0Ym9keSA+IHRyLmJnLWFjdGl2ZTpob3ZlciB7XG4gICAgdGQsXG4gICAgdGgge1xuICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWhvdmVyLWNvbG9yO1xuICAgICAgLy8gYCR0YWJsZS1kYXJrLWhvdmVyLWJnYCBkZWZhdWx0IGlzIGEgdmVyeSB0cmFuc3BhcmVudCB3aGl0ZVxuICAgICAgLy8gV2Ugb3ZlcmxheSBpdCBvdmVyIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIHRvIGFjaGlldmUgdGhlXG4gICAgICAvLyBzYW1lIGNvbG9yIGVmZmVjdCB3aGlsZSBrZWVwaW5nIHRoZSBiYWNrZ3JvdW5kIHNvbGlkXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHRhYmxlLWRhcmstaG92ZXItYmcsICR0YWJsZS1kYXJrLWhvdmVyLWJnKTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLSBUYWJsZSBzdGlja3kgaGVhZGVyIHN0eWxpbmcgLS0tXG5cbkBpZiAkYnYtZW5hYmxlLXRhYmxlLXN0aWNreSB7XG4gIC5iLXRhYmxlLXN0aWNreS1oZWFkZXIsXG4gIC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICAvLyBNb3ZlIHRoZSB0YWJsZSBib3R0b20gbWFyZ2luIHRvIHRoZSB3cmFwcGVyXG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNlcjtcblxuICAgID4gLnRhYmxlIHtcbiAgICAgIC8vIFJlc2V0IGBtYXJnaW4tYm90dG9tYCB0byB3ZSBkb24ndCBnZXQgYSBzcGFjZSBhZnRlclxuICAgICAgLy8gdGhlIHRhYmxlIGluc2lkZSB0aGUgc2Nyb2xsIGFyZWFcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmItdGFibGUtc3RpY2t5LWhlYWRlciB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAvLyBBbm5veWluZ2x5LCB3aGVuIG92ZXJmbG93LXkgaXMgc2V0LCBicm93c2VycyBjb252ZXJ0XG4gICAgLy8gJ292ZXJmbG93LXg6IHZpc2libGUnIHRvICdvdmVyZmxvdy14OiBhdXRvJyAtIHNvIGl0IGJlY29tZXNcbiAgICAvLyByZXNwb25zaXZlIGluIHRoZSB4IGF4aXMgYXV0b21hdGljYWxseVxuICAgIC8vIERlZmF1bHQgYG1heC1oZWlnaHRgIGJlZm9yZSBhIHNjcm9sbGJhciB3aWxsIHNob3dcbiAgICAvLyBXZSBkb24ndCB1c2UgYGhlaWdodGAgYXMgdGFibGUgY291bGQgYmUgc2hvcnRlciB0aGFuIHRoaXMgdmFsdWVcbiAgICBtYXgtaGVpZ2h0OiAkYi10YWJsZS1zdGlja3ktaGVhZGVyLW1heC1oZWlnaHQ7XG4gIH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgIC8vIE92ZXJyaWRlIGFueSBzdHlsZXMgKGluY2x1ZGluZyBpbmxpbmUgc3R5bGVzKVxuICAgIC8vIHdoZW4gcHJpbnRpbmdcbiAgICAuYi10YWJsZS1zdGlja3ktaGVhZGVyIHtcbiAgICAgIG92ZXJmbG93LXk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICAgIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICBAc3VwcG9ydHMgKHBvc2l0aW9uOiBzdGlja3kpIHtcbiAgICAvLyBQb3NpdGlvbmluZyBvZiBzdGlja3kgaGVhZGVyc1xuICAgIC5iLXRhYmxlLXN0aWNreS1oZWFkZXIgPiAudGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgICAvLyBIZWFkZXIgY2VsbHMgbmVlZCB0byBiZSBzdGlja3kgb24gdG9wXG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZyBvZiBzdGlja3kgY29sdW1uc1xuICAgIC8vIFN0aWNreSBjb2x1bW5zIG9ubHkgd29yayB3aGVuIHRhYmxlIGhhcyBzdGlja3lcbiAgICAvLyBoZWFkZXJzIGFuZC9vciBpcyByZXNwb25zaXZlXG4gICAgLmItdGFibGUtc3RpY2t5LWhlYWRlcixcbiAgICAudGFibGUtcmVzcG9uc2l2ZSB7XG4gICAgICA+IC50YWJsZS5iLXRhYmxlIHtcbiAgICAgICAgPiB0aGVhZCxcbiAgICAgICAgPiB0Ym9keSxcbiAgICAgICAgPiB0Zm9vdCB7XG4gICAgICAgICAgPiB0ciA+IC5iLXRhYmxlLXN0aWNreS1jb2x1bW4ge1xuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiB0aGVhZCB7XG4gICAgICAgICAgPiB0ciA+IC5iLXRhYmxlLXN0aWNreS1jb2x1bW4ge1xuICAgICAgICAgICAgLy8gei1pbmRleCBuZWVkcyB0byBiZSBoaWdoZXIgdGhhbiBzdGlja3kgY29sdW1ucyBhbmRcbiAgICAgICAgICAgIC8vIHN0aWNreSBoZWFkZXJzIGZvciBjb3JyZWN0IGxheWVyaW5nXG4gICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gdGJvZHksXG4gICAgICAgID4gdGZvb3Qge1xuICAgICAgICAgID4gdHIgPiAuYi10YWJsZS1zdGlja3ktY29sdW1uIHtcbiAgICAgICAgICAgIC8vIHotaW5kZXggbmVlZHMgdG8gYmUgbG93ZXIgdGhhbiBzdGlja3kgaGVhZGVyIHRoYXRcbiAgICAgICAgICAgIC8vIGlzIGFsc28gYSBzdGlja3kgY29sdW1uXG4gICAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERlZmF1bHQgdGhlbWUgY29sb3IgYmFja2dyb3VuZCBmb3IgdGFibGUgY2VsbHMgdGhhdCBhcmUgc3RpY2t5XG4gICAgLy8gQXBwbGllZCBvbmx5IHdoZW4gbm8gdmFyaWFudCBpcyBhcHBsaWVkIHRvIHRoZSByb3dzLCBvciBubyBoZWFkLXZhcmlhbnRcbiAgICAvLyBOZWVkZWQgYmVjYXVzZSBCb290c3RyYXAgdjQgZG9lcyBub3QgaGF2ZSB0YWJsZSBjaGlsZCBlbGVtZW50cyBzZXQgdXBcbiAgICAvLyB0byBpbmhlcml0IHRoZWlyIGJhY2tncm91bmQgY29sb3IgZnJvbSBwYXJlbnQgZWxlbWVudCBieSBkZWZhdWx0XG4gICAgLy9cbiAgICAvLyBBbiBpc3N1ZSBtYWRlIGF0IHR3YnMvYm9vdHN0cmFwIHJlcG8gZm9yIHRhYmxlXG4gICAgLy8gYmFja2dyb3VuZCBjb2xvciBpbmhlcml0YW5jZTpcbiAgICAvLyAgIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMjkyNDRcbiAgICAvLyBJZiBpbXBsZW1lbnRlZCwgd291bGQgbmVnYXRlIHRoZSBuZWVkIGZvciBhbGwgdGhlIGJlbG93IFNDU1NcbiAgICAudGFibGUuYi10YWJsZSB7XG4gICAgICA+IHRoZWFkLFxuICAgICAgPiB0Ym9keSxcbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyID4gLnRhYmxlLWItdGFibGUtZGVmYXVsdCB7XG4gICAgICAgICAgLy8gRGVmYXVsdCBjZWxsIGNvbG9yXG4gICAgICAgICAgY29sb3I6ICR0YWJsZS1jb2xvcjtcbiAgICAgICAgICAvLyBgJHRhYmxlLWJnYCBpcyBudWxsIGJ5IGRlZmF1bHQgaW4gQm9vdHN0cmFwIHY0IHZhcmlhYmxlc1xuICAgICAgICAgIC8vIGJ1dCBjb3VsZCBoYXZlIGEgdmFsdWUgc2V0IGJ5IHRoZSBjb25zdW1lclxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGlmKCR0YWJsZS1iZywgJHRhYmxlLWJnLCAkYm9keS1iZyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi50YWJsZS1kYXJrIHtcbiAgICAgICAgPiB0aGVhZCxcbiAgICAgICAgPiB0Ym9keSxcbiAgICAgICAgPiB0Zm9vdCB7XG4gICAgICAgICAgPiB0ciA+IC5iZy1iLXRhYmxlLWRlZmF1bHQge1xuICAgICAgICAgICAgLy8gRGVmYXVsdCBjZWxsIGNvbG9yIGluIHRhYmxlIGRhcmsgbW9kZVxuICAgICAgICAgICAgY29sb3I6ICR0YWJsZS1kYXJrLWNvbG9yO1xuICAgICAgICAgICAgLy8gRGVmYXVsdCBjZWxsIGJhY2tncm91bmQgY29sb3IgaW4gdGFibGUgZGFyayBtb2RlXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZGFyay1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gSGFuZGxlIGNhc2Ugb2YgemVicmEgc3RyaXBpbmdcbiAgICAgICYudGFibGUtc3RyaXBlZCB7XG4gICAgICAgIC8vIFwiZmFrZVwiIHplYnJhIHN0cmlwaW5nIHZpYSB1c2Ugb2YgYSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGltYWdlXG4gICAgICAgID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkgPiAudGFibGUtYi10YWJsZS1kZWZhdWx0IHtcbiAgICAgICAgICAvLyBgJHRhYmxlLWFjY2VudC1iZ2AgKHVzZWQgZm9yIHN0cmlwaW5nKSBkZWZhdWx0IGlzIGEgdmVyeSB0cmFuc3BhcmVudCBibGFja1xuICAgICAgICAgIC8vIFdlIG92ZXJsYXkgaXQgb3ZlciB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBhY2hpZXZlIHRoZSBzYW1lIGNvbG9yXG4gICAgICAgICAgLy8gZWZmZWN0IHdoaWxlIGtlZXBpbmcgdGhlIGJhY2tncm91bmQgc29saWQuXG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCR0YWJsZS1hY2NlbnQtYmcsICR0YWJsZS1hY2NlbnQtYmcpO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLnRhYmxlLWRhcmsge1xuICAgICAgICAgID4gdGJvZHkgPiB0cjpudGgtb2YtdHlwZSgjeyR0YWJsZS1zdHJpcGVkLW9yZGVyfSkgPiAuYmctYi10YWJsZS1kZWZhdWx0IHtcbiAgICAgICAgICAgIC8vIGAkdGFibGUtZGFyay1hY2NlbnQtYmdgICh1c2VkIGZvciBzdHJpcGluZykgZGVmYXVsdCBpcyBhIHZlcnkgdHJhbnNwYXJlbnQgd2hpdGVcbiAgICAgICAgICAgIC8vIFdlIG92ZXJsYXkgaXQgb3ZlciB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBhY2hpZXZlIHRoZSBzYW1lIGNvbG9yXG4gICAgICAgICAgICAvLyBlZmZlY3Qgd2hpbGUga2VlcGluZyB0aGUgYmFja2dyb3VuZCBzb2xpZC5cbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkdGFibGUtZGFyay1hY2NlbnQtYmcsICR0YWJsZS1kYXJrLWFjY2VudC1iZyk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBIYW5kbGUgY2FzZSBvZiBob3ZlclxuICAgICAgJi50YWJsZS1ob3ZlciB7XG4gICAgICAgIC8vIFwiZmFrZVwiIGhvdmVyIHZpYSB1c2Ugb2YgYSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGltYWdlXG4gICAgICAgID4gdGJvZHkgPiB0cjpob3ZlciA+IC50YWJsZS1iLXRhYmxlLWRlZmF1bHQge1xuICAgICAgICAgIGNvbG9yOiAkdGFibGUtaG92ZXItY29sb3I7XG4gICAgICAgICAgLy8gYCR0YWJsZS1ob3Zlci1iZ2AgZGVmYXVsdCBpcyBhIHZlcnkgdHJhbnNwYXJlbnQgYmxhY2tcbiAgICAgICAgICAvLyBXZSBvdmVybGF5IGl0IG92ZXIgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gYWNoaWV2ZSB0aGUgc2FtZSBjb2xvclxuICAgICAgICAgIC8vIGVmZmVjdCB3aGlsZSBrZWVwaW5nIHRoZSBiYWNrZ3JvdW5kIHNvbGlkLlxuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkdGFibGUtaG92ZXItYmcsICR0YWJsZS1ob3Zlci1iZyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuXG4gICAgICAgICYudGFibGUtZGFyayB7XG4gICAgICAgICAgPiB0Ym9keSA+IHRyOmhvdmVyID4gLmJnLWItdGFibGUtZGVmYXVsdCB7XG4gICAgICAgICAgICBjb2xvcjogJHRhYmxlLWRhcmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICAvLyBgJHRhYmxlLWRhcmstaG92ZXItYmdgIGRlZmF1bHQgaXMgYSB2ZXJ5IHRyYW5zcGFyZW50IHdoaXRlXG4gICAgICAgICAgICAvLyBXZSBvdmVybGF5IGl0IG92ZXIgdGhlIGJhY2tncm91bmQgY29sb3IgdG8gYWNoaWV2ZSB0aGUgc2FtZSBjb2xvclxuICAgICAgICAgICAgLy8gZWZmZWN0IHdoaWxlIGtlZXBpbmcgdGhlIGJhY2tncm91bmQgc29saWQuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHRhYmxlLWRhcmstaG92ZXItYmcsICR0YWJsZS1kYXJrLWhvdmVyLWJnKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLSBIZWFkZXIgc29ydCBzdHlsaW5nIC0tLVxuXG4vLyBCb290c3RyYXAgdjQuNCB3aWxsIGluY2x1ZGUgdGhpcyB2YXJpYWJsZSBhcyBgJGVzY2FwZWQtY2hhcmFjdGVyc2Bcbi8vIEJ1dCBpZiB3ZSB3YW50IHRvIHByZXNlcnZlIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggdjQuMywgd2UgbGVhdmUgdGhpcyBpblxuJGJ2LWVzY2FwZWQtY2hhcmFjdGVyczogKChcIjxcIiwgXCIlM2NcIiksIChcIj5cIiwgXCIlM2VcIiksIChcIiNcIiwgXCIlMjNcIikpO1xuXG4vLyBCb290c3RyYXAgdjQuNCB3aWxsIGluY2x1ZGUgdGhpcyBtZXRob2QgYXMgYGVzY2FwZS1zdmdgXG4vLyBCdXQgaWYgd2Ugd2FudCB0byBwcmVzZXJ2ZSBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3aXRoIHY0LjMsIHdlIGxlYXZlIHRoaXMgaW5cbi8vIFNlZSBodHRwczovL2NvZGVwZW4uaW8va2V2aW53ZWJlci9wZW4vZFhXb1J3XG5AZnVuY3Rpb24gYnYtZXNjYXBlLXN2Zygkc3RyaW5nKSB7XG4gIEBpZiBzdHJpbmcuaW5kZXgoJHN0cmluZywgXCJkYXRhOmltYWdlL3N2Zyt4bWxcIikge1xuICAgIEBlYWNoICRjaGFyLCAkZW5jb2RlZCBpbiAkYnYtZXNjYXBlZC1jaGFyYWN0ZXJzIHtcbiAgICAgICRzdHJpbmc6IHN0ci1yZXBsYWNlKCRzdHJpbmcsICRjaGFyLCAkZW5jb2RlZCk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG4udGFibGUuYi10YWJsZSB7XG4gID4gdGhlYWQsXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiBbYXJpYS1zb3J0XSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAkYi10YWJsZS1zb3J0LWljb24tYmctd2lkdGggJGItdGFibGUtc29ydC1pY29uLWJnLWhlaWdodDtcblxuICAgICAgICAmOm5vdCguYi10YWJsZS1zb3J0LWljb24tbGVmdCkge1xuICAgICAgICAgIC8vIERlZmF1bHQgaXMgaWNvbiBvbiB0aGUgcmlnaHRcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjYWxjKCN7JHRhYmxlLWNlbGwtcGFkZGluZ30gLyAyKSBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogY2FsYygjeyR0YWJsZS1jZWxsLXBhZGRpbmd9ICsgI3skYi10YWJsZS1zb3J0LWljb24tYmctd2lkdGh9KTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuYi10YWJsZS1zb3J0LWljb24tbGVmdCB7XG4gICAgICAgICAgLy8gTGVmdCBhbGlnbmVkIHNvcnQgaWNvblxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGxlZnQgY2FsYygjeyR0YWJsZS1jZWxsLXBhZGRpbmd9IC8gMikgY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogY2FsYygjeyR0YWJsZS1jZWxsLXBhZGRpbmd9ICsgI3skYi10YWJsZS1zb3J0LWljb24tYmctd2lkdGh9KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IFthcmlhLXNvcnQ9XCJub25lXCJdIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctbm90LXNvcnRlZCk7XG4gICAgICB9XG5cbiAgICAgID4gW2FyaWEtc29ydD1cImFzY2VuZGluZ1wiXSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLWFzY2VuZGluZyk7XG4gICAgICB9XG5cbiAgICAgID4gW2FyaWEtc29ydD1cImRlc2NlbmRpbmdcIl0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kZXNjZW5kaW5nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBTb3J0IGljb25zIGZvciBkYXJrIHRhYmxlcywgaGVhZGVycywgZm9vdGVyc1xuICAmLnRhYmxlLWRhcmsgPiB0aGVhZCA+IHRyLFxuICAmLnRhYmxlLWRhcmsgPiB0Zm9vdCA+IHRyLFxuICA+IC50aGVhZC1kYXJrID4gdHIge1xuICAgID4gW2FyaWEtc29ydD1cIm5vbmVcIl0ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1ub3Qtc29ydGVkKTtcbiAgICB9XG5cbiAgICA+IFthcmlhLXNvcnQ9XCJhc2NlbmRpbmdcIl0ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1hc2NlbmRpbmcpO1xuICAgIH1cblxuICAgID4gW2FyaWEtc29ydD1cImRlc2NlbmRpbmdcIl0ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1kZXNjZW5kaW5nKTtcbiAgICB9XG4gIH1cblxuICAvLyBTb3J0IGljb25zIHdoZW4gaGVhZGVyIGNlbGwgaGFzIGB0YWJsZS1kYXJrYCBjbGFzc1xuICA+IHRoZWFkID4gdHIgPiAudGFibGUtZGFyayxcbiAgPiB0Zm9vdCA+IHRyID4gLnRhYmxlLWRhcmsge1xuICAgICZbYXJpYS1zb3J0PVwibm9uZVwiXSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBidi1lc2NhcGUtc3ZnKCRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLW5vdC1zb3J0ZWQpO1xuICAgIH1cblxuICAgICZbYXJpYS1zb3J0PVwiYXNjZW5kaW5nXCJdIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGJ2LWVzY2FwZS1zdmcoJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstYXNjZW5kaW5nKTtcbiAgICB9XG5cbiAgICAmW2FyaWEtc29ydD1cImRlc2NlbmRpbmdcIl0ge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogYnYtZXNjYXBlLXN2ZygkYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1kZXNjZW5kaW5nKTtcbiAgICB9XG4gIH1cblxuICAvLyBQYWRkaW5nIGFuZCBwb3NpdGlvbiBhZGp1c3RtZW50IGZvciBzbWFsbCB0YWJsZXNcbiAgJi50YWJsZS1zbSB7XG4gICAgPiB0aGVhZCxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHIgPiBbYXJpYS1zb3J0XSB7XG4gICAgICAgICY6bm90KC5iLXRhYmxlLXNvcnQtaWNvbi1sZWZ0KSB7XG4gICAgICAgICAgLy8gRGVmYXVsdCBpcyBpY29uIG9uIHRoZSByaWdodFxuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNhbGMoI3skdGFibGUtY2VsbC1wYWRkaW5nLXNtfSAvIDIpIGNlbnRlcjtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiBjYWxjKCN7JHRhYmxlLWNlbGwtcGFkZGluZy1zbX0gKyAjeyRiLXRhYmxlLXNvcnQtaWNvbi1iZy13aWR0aH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5iLXRhYmxlLXNvcnQtaWNvbi1sZWZ0IHtcbiAgICAgICAgICAvLyBMZWZ0IGFsaWduZWQgc29ydCBpY29uXG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCBjYWxjKCN7JHRhYmxlLWNlbGwtcGFkZGluZy1zbX0gLyAyKSBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKCN7JHRhYmxlLWNlbGwtcGFkZGluZy1zbX0gKyAjeyRiLXRhYmxlLXNvcnQtaWNvbi1iZy13aWR0aH0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLSBTZWxlY3RhYmxlIHJvd3MgLS0tXG4udGFibGUuYi10YWJsZSB7XG4gICYuYi10YWJsZS1zZWxlY3RhYmxlOm5vdCguYi10YWJsZS1zZWxlY3RhYmxlLW5vLWNsaWNrKSB7XG4gICAgJiA+IHRib2R5ID4gdHIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuYi10YWJsZS1zZWxlY3Rpbmcge1xuICAgICAgLy8gRGlzYWJsZWQgdGV4dC1zZWxlY3Rpb24gd2hlbiBpbiByYW5nZSBtb2RlIHdoZW5cbiAgICAgIC8vIGF0IGxlYXN0IG9uZSByb3cgc2VsZWN0ZWRcbiAgICAgICYuYi10YWJsZS1zZWxlY3QtcmFuZ2UgPiB0Ym9keSA+IHRyIHtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIC0tLSBTdGFja2VkIHRhYmxlcyAtLS1cbkBtaXhpbiBzdGFja2VkLXRhYmxlLXN0eWxlcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcblxuICAvLyBDb252ZXJ0IHRvIGJsb2NrcyB3aGVuIHN0YWNrZWRcbiAgPiBjYXB0aW9uLFxuICA+IHRib2R5LFxuICA+IHRib2R5ID4gdHIsXG4gID4gdGJvZHkgPiB0ciA+IHRkLFxuICA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBIaWRlIHdoZW4gc3RhY2tlZFxuICA+IHRoZWFkLFxuICA+IHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgPiB0ci5iLXRhYmxlLXRvcC1yb3csXG4gICAgPiB0ci5iLXRhYmxlLWJvdHRvbS1yb3cge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBDYXB0aW9uIHBvc2l0aW9uaW5nXG4gID4gY2FwdGlvbiB7XG4gICAgY2FwdGlvbi1zaWRlOiB0b3AgIWltcG9ydGFudDtcbiAgfVxuXG4gID4gdGJvZHkge1xuICAgID4gdHIge1xuICAgICAgLy8gVHVybiBjZWxscyB3aXRoIGxhYmVscyBpbnRvIG1pY3JvLWdyaWRzXG4gICAgICA+IFtkYXRhLWxhYmVsXSB7XG4gICAgICAgIC8vIENlbGwgaGVhZGVyIGxhYmVsIHBzZXVkbyBlbGVtZW50XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWxhYmVsKTtcbiAgICAgICAgICB3aWR0aDogJGItdGFibGUtc3RhY2tlZC1oZWFkaW5nLXdpZHRoO1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIHBhZGRpbmc6IDAgY2FsYygjeyRiLXRhYmxlLXN0YWNrZWQtZ2FwfSAvIDIpIDAgMDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBZGQgY2xlYXJmaXggaW4tY2FzZSBmaWVsZCBsYWJlbCB3cmFwc1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENlbGwgdmFsdWUgKHdlIHdyYXAgdGhlIGNlbGwgdmFsdWUgaW4gYSBkaXYgd2hlbiBzdGFja2VkKVxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRiLXRhYmxlLXN0YWNrZWQtaGVhZGluZy13aWR0aH0pO1xuICAgICAgICAgIC8vIEFkZCBcImdhcFwiIGJldHdlZW4gXCJjZWxsc1wiXG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgY2FsYygjeyRiLXRhYmxlLXN0YWNrZWQtZ2FwfSAvIDIpO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBEb250IHNob3cgdGhlIGZpeGVkIHRvcC9ib3R0b20gcm93c1xuICAgICAgJi50b3Atcm93LFxuICAgICAgJi5ib3R0b20tcm93IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLy8gR2l2ZSB0aGUgdG9wIGNlbGwgb2YgZWFjaCBcInJvd1wiIGEgaGVhdnkgYm9yZGVyXG4gICAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICgzICogJHRhYmxlLWJvcmRlci13aWR0aCk7XG4gICAgICB9XG5cbiAgICAgIC8vIEdpdmUgYW55IGNlbGwgYWZ0ZXIgYSByb3dzcGFuJ2VkIGNlbGwgYSBoZWF2eSB0b3AgYm9yZGVyXG4gICAgICA+IFtyb3dzcGFuXSArIHRkLFxuICAgICAgPiBbcm93c3Bhbl0gKyB0aCB7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICgzICogJHRhYmxlLWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpZiAkYnYtZW5hYmxlLXRhYmxlLXN0YWNrZWQge1xuICAudGFibGUuYi10YWJsZSB7XG4gICAgJi5iLXRhYmxlLXN0YWNrZWQge1xuICAgICAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLmtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICAgJG5leHQ6IGJyZWFrcG9pbnQtbmV4dCgkYnJlYWtwb2ludCwgJGdyaWQtYnJlYWtwb2ludHMpO1xuICAgICAgICAkaW5maXg6IGJyZWFrcG9pbnQtaW5maXgoJG5leHQsICRncmlkLWJyZWFrcG9pbnRzKTtcblxuICAgICAgICBAaWYgKCRuZXh0ICE9IG51bGwpIHtcbiAgICAgICAgICAmI3skaW5maXh9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKCRuZXh0KSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHN0YWNrZWQtdGFibGUtc3R5bGVzO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmIHtcbiAgICAgICAgQGluY2x1ZGUgc3RhY2tlZC10YWJsZS1zdHlsZXM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCJAdXNlICdzYXNzOmNvbG9yJztcblxuLy8gLS0tIEJvb3RzdHJhcFZ1ZSBjdXN0b20gU0NTUyB2YXJpYWJsZXMgLS0tXG4vL1xuLy8gVXNlcnMgY2FuIG92ZXJyaWRlIHRoZXNlIHZhcmlhYmxlcyBpbiB0aGVpciBjdXN0b20gU0NTU1xuLy9cbi8vIFZhcmlhYmxlcyBiZWdpbm5pbmcgd2l0aCBgJGJ2LWAgYXJlIHVzZWQgdG8gZW5hYmxlL2Rpc2FibGUgc3BlY2lmaWMgc2VjdGlvbiBDU1MgZ2VuZXJhdGlvblxuLy8gVmFyaWFibGVzIGJlZ2lubmluZyB3aXRoIGAkYi1gIGFyZSB1c2VkIHRvIGNvbnRyb2wgdmFsdWVzIHdpdGhpbiB0aGUgQ1NTIGdlbmVyYXRpb25cblxuLy8gLS0tIEN1c3RvbSBpbnB1dHMgKGFkZHMgc2l6aW5nIHN1cHBvcnQpIC0tLVxuXG4vLyBJbmRpY2F0b3IgaGVpZ2h0IChhbmQgc29tZXRpbWVzIHdpZHRoKVxuJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLXNpemUtbGc6ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZSAqIDEuMjUgIWRlZmF1bHQ7XG4kYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbTogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplICogMC44NzUgIWRlZmF1bHQ7XG5cbi8vIEluZGljYXRvciBiYWNrZ3JvdW5kXG4kYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZS1sZzogJGN1c3RvbS1jb250cm9sLWluZGljYXRvci1iZy1zaXplICFkZWZhdWx0O1xuJGItY3VzdG9tLWNvbnRyb2wtaW5kaWNhdG9yLWJnLXNpemUtc206ICRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYmctc2l6ZSAhZGVmYXVsdDtcblxuLy8gR3V0dGVyIHdpZHRoc1xuJGItY3VzdG9tLWNvbnRyb2wtZ3V0dGVyLWxnOiAkY3VzdG9tLWNvbnRyb2wtZ3V0dGVyICogMS4yNSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1jb250cm9sLWd1dHRlci1zbTogJGN1c3RvbS1jb250cm9sLWd1dHRlciAqIDAuODc1ICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gcmFkaW8gc2l6ZXMgKHVzZXMgZGVmYXVsdHMgb2YgNTAlLCBzaW5jZSByYWRpb3MgYXJlIHJvdW5kKVxuJGItY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzLWxnOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuJGItY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzLXNtOiAkY3VzdG9tLXJhZGlvLWluZGljYXRvci1ib3JkZXItcmFkaXVzICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gY2hlY2tib3ggc2l6ZXNcbiRiLWN1c3RvbS1jaGVja2JveC1pbmRpY2F0b3ItYm9yZGVyLXJhZGl1cy1sZzogJGJvcmRlci1yYWRpdXMtbGcgIWRlZmF1bHQ7XG4kYi1jdXN0b20tY2hlY2tib3gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc206ICRib3JkZXItcmFkaXVzLXNtICFkZWZhdWx0O1xuXG4vLyBDdXN0b20gc3dpdGNoIHNpemVzXG4kYi1jdXN0b20tc3dpdGNoLXdpZHRoLWxnOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyAqIDEuNzUgIWRlZmF1bHQ7XG4kYi1jdXN0b20tc3dpdGNoLXdpZHRoLXNtOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1zbSAqIDEuNzUgIWRlZmF1bHQ7XG4kYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1ib3JkZXItcmFkaXVzLWxnOiAkYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZyAqIDAuNSAhZGVmYXVsdDtcbiRiLWN1c3RvbS1zd2l0Y2gtaW5kaWNhdG9yLWJvcmRlci1yYWRpdXMtc206ICRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtICogMC41ICFkZWZhdWx0O1xuJGItY3VzdG9tLXN3aXRjaC1pbmRpY2F0b3Itc2l6ZS1sZzogY2FsYyhcbiAgI3skYi1jdXN0b20tY29udHJvbC1pbmRpY2F0b3Itc2l6ZS1sZ30gLSAjeyRjdXN0b20tY29udHJvbC1pbmRpY2F0b3ItYm9yZGVyLXdpZHRoICogNH1cbikgIWRlZmF1bHQ7XG4kYi1jdXN0b20tc3dpdGNoLWluZGljYXRvci1zaXplLXNtOiBjYWxjKFxuICAjeyRiLWN1c3RvbS1jb250cm9sLWluZGljYXRvci1zaXplLXNtfSAtICN7JGN1c3RvbS1jb250cm9sLWluZGljYXRvci1ib3JkZXItd2lkdGggKiA0fVxuKSAhZGVmYXVsdDtcblxuLy8gLS0tIFRhYmxlcyAtLS1cblxuLy8gVGFibGUgYnVzeSBzdGF0ZVxuJGItdGFibGUtYnVzeS1vcGFjaXR5OiAxICFkZWZhdWx0O1xuXG4vLyBUYWJsZSBzb3J0aW5nXG4kYi10YWJsZS1zb3J0LWljb24tYmctd2lkdGg6IDAuNjVlbSAhZGVmYXVsdDtcbiRiLXRhYmxlLXNvcnQtaWNvbi1iZy1oZWlnaHQ6IDFlbSAhZGVmYXVsdDtcbi8vIFNvcnQgaWNvbnMgYXJlIHNxdWFyZSwgYnV0IFwic3F1aXNoZWRcIiBob3Jpem9udGFsbHkgYnkgdGhlIGFib3ZlIHZhcmlhYmxlc1xuJGItdGFibGUtc29ydC1pY29uLWJnLW5vdC1zb3J0ZWQ6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSc+PHBhdGggZmlsbD0nYmxhY2snIG9wYWNpdHk9Jy4zJyBkPSdNNTEgMWwyNSAyMyAyNCAyMkgxbDI1LTIyek01MSAxMDFsMjUtMjMgMjQtMjJIMWwyNSAyMnonLz48L3N2Zz5cIikgIWRlZmF1bHQ7XG4kYi10YWJsZS1zb3J0LWljb24tYmctYXNjZW5kaW5nOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnPjxwYXRoIGZpbGw9J2JsYWNrJyBkPSdNNTEgMWwyNSAyMyAyNCAyMkgxbDI1LTIyeicvPjxwYXRoIGZpbGw9J2JsYWNrJyBvcGFjaXR5PScuMycgZD0nTTUxIDEwMWwyNS0yMyAyNC0yMkgxbDI1IDIyeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kZXNjZW5kaW5nOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnPjxwYXRoIGZpbGw9J2JsYWNrJyBvcGFjaXR5PScuMycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnonLz48cGF0aCBmaWxsPSdibGFjaycgZD0nTTUxIDEwMWwyNS0yMyAyNC0yMkgxbDI1IDIyeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbi8vIEljb25zIHRvIHVzZSBvbiBkYXJrIHRhYmxlIG9yIGRhcmsgaGVhZGVyL2Zvb3RlciAobGlnaHRlciBjb2xvciBpY29ucylcbi8vIFdlIHNpbXBseSBqdXN0IHJlcGxhY2UgdGhlIGZpbGwgY29sb3IgJ2JsYWNrJyB3aGl0ZSAnd2hpdGUnXG4kYi10YWJsZS1zb3J0LWljb24tYmctZGFyay1ub3Qtc29ydGVkOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnPjxwYXRoIGZpbGw9J3doaXRlJyBvcGFjaXR5PScuMycgZD0nTTUxIDFsMjUgMjMgMjQgMjJIMWwyNS0yMnpNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuJGItdGFibGUtc29ydC1pY29uLWJnLWRhcmstYXNjZW5kaW5nOiB1cmwoXCJkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDEnIGhlaWdodD0nMTAxJyB2aWV3LWJveD0nMCAwIDEwMSAxMDEnIHByZXNlcnZlQXNwZWN0UmF0aW89J25vbmUnPjxwYXRoIGZpbGw9J3doaXRlJyBkPSdNNTEgMWwyNSAyMyAyNCAyMkgxbDI1LTIyeicvPjxwYXRoIGZpbGw9J3doaXRlJyBvcGFjaXR5PScuMycgZD0nTTUxIDEwMWwyNS0yMyAyNC0yMkgxbDI1IDIyeicvPjwvc3ZnPlwiKSAhZGVmYXVsdDtcbiRiLXRhYmxlLXNvcnQtaWNvbi1iZy1kYXJrLWRlc2NlbmRpbmc6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSdodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Zycgd2lkdGg9JzEwMScgaGVpZ2h0PScxMDEnIHZpZXctYm94PScwIDAgMTAxIDEwMScgcHJlc2VydmVBc3BlY3RSYXRpbz0nbm9uZSc+PHBhdGggZmlsbD0nd2hpdGUnIG9wYWNpdHk9Jy4zJyBkPSdNNTEgMWwyNSAyMyAyNCAyMkgxbDI1LTIyeicvPjxwYXRoIGZpbGw9J3doaXRlJyBkPSdNNTEgMTAxbDI1LTIzIDI0LTIySDFsMjUgMjJ6Jy8+PC9zdmc+XCIpICFkZWZhdWx0O1xuXG4vLyBGbGFnIHRvIGVuYWJsZSBzdGlja3kgdGFibGUgaGVhZGVyIGFuZCBjb2x1bW4gQ1NTIGdlbmVyYXRpb25cbiRidi1lbmFibGUtdGFibGUtc3RpY2t5OiB0cnVlICFkZWZhdWx0O1xuLy8gRGVmYXVsdCBtYXgtaGVpZ2h0IGZvciB0YWJsZXMgd2l0aCBzdGlja3kgaGVhZGVyc1xuJGItdGFibGUtc3RpY2t5LWhlYWRlci1tYXgtaGVpZ2h0OiAzMDBweCAhZGVmYXVsdDtcblxuLy8gRmxhZyB0byBlbmFibGUgdGFibGUgc3RhY2tlZCBDU1MgZ2VuZXJhdGlvblxuJGJ2LWVuYWJsZS10YWJsZS1zdGFja2VkOiB0cnVlICFkZWZhdWx0O1xuLy8gVGFibGUgc3RhY2tlZCBkZWZhdWx0c1xuJGItdGFibGUtc3RhY2tlZC1oZWFkaW5nLXdpZHRoOiA0MCUgIWRlZmF1bHQ7XG4kYi10YWJsZS1zdGFja2VkLWdhcDogMXJlbSAhZGVmYXVsdDtcblxuLy8gQm9vdHN0cmFwIHY0LjMgaXMgbWlzc2luZyB0aGUgXCJhY3RpdmVcIiB2YXJpYW50IGZvciBkYXJrIHRhYmxlc1xuLy8gV2hpY2ggdHJhbnNsYXRlcyB0byBgYmctYWN0aXZlYCwgYnV0IG9ubHkgZm9yIHRhYmxlc1xuJHRhYmxlLWRhcmstYWN0aXZlLWJnOiAkdGFibGUtZGFyay1ob3Zlci1iZyAhZGVmYXVsdDtcblxuLy8gLS0tIFRvYXN0cyAtLS1cblxuLy8gVG9hc3RlciBkZWZhdWx0c1xuJGItdG9hc3Rlci16aW5kZXg6IDExMDAgIWRlZmF1bHQ7XG4kYi10b2FzdGVyLW9mZnNldC10b3A6IDAuNXJlbSAhZGVmYXVsdDtcbiRiLXRvYXN0ZXItb2Zmc2V0LWJvdHRvbTogJGItdG9hc3Rlci1vZmZzZXQtdG9wICFkZWZhdWx0O1xuJGItdG9hc3Rlci1vZmZzZXQtbGVmdDogJGItdG9hc3Rlci1vZmZzZXQtdG9wICFkZWZhdWx0O1xuJGItdG9hc3Rlci1vZmZzZXQtcmlnaHQ6ICRiLXRvYXN0ZXItb2Zmc2V0LXRvcCAhZGVmYXVsdDtcblxuLy8gRGVmYXVsdCB0b2FzdCBvcGFjaXR5XG4vLyBWYWx1ZSBmcm9tIDAgdG8gMSwgb3IgMCUgdG8gMTAwJVxuLy8gQm9vdHN0cmFwIGRlZmF1bHQgaXMgMC44NSAoZXh0cmFjdGVkIGZyb20gdGhlIGAkdG9hc3QtYmFja2dyb3VuZC1jb2xvcmAgdmFsdWUpXG4vLyBCb290c3RyYXAgZG9lcyBub3QgaGF2ZSB0aGlzIGFzIGEgdmFyaWFibGUsIHNvIHdlIGFkZCBpdCBpbi5cbiRiLXRvYXN0LWJhY2tncm91bmQtb3BhY2l0eTogY29sb3IuYWxwaGEoJHRvYXN0LWJhY2tncm91bmQtY29sb3IpICFkZWZhdWx0O1xuXG4vLyBUb2FzdCB2YXJpYW50IGxldmVscyB3cnQgdGhlbWUgY29sb3IgdmFsdWVcbiRiLXRvYXN0LWJnLWxldmVsOiAkYWxlcnQtYmctbGV2ZWwgIWRlZmF1bHQ7XG4kYi10b2FzdC1ib3JkZXItbGV2ZWw6ICRhbGVydC1ib3JkZXItbGV2ZWwgIWRlZmF1bHQ7XG4kYi10b2FzdC1jb2xvci1sZXZlbDogJGFsZXJ0LWNvbG9yLWxldmVsICFkZWZhdWx0O1xuXG4vLyAtLS0gVG9vbHRpcHMgLS0tXG5cbi8vIEZsYWcgdG8gZW5hYmxlIHRvb2x0aXAgdmFyaWFudCBDU1MgZ2VuZXJhdGlvblxuJGJ2LWVuYWJsZS10b29sdGlwLXZhcmlhbnRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBUb29sdGlwIGJhY2tncm91bmQgdmFyaWFudCBsZXZlbCB3cnQgdGhlbWUgY29sb3IgdmFsdWVcbiRiLXRvb2x0aXAtYmctbGV2ZWw6IDAgIWRlZmF1bHQ7XG5cbi8vIC0tLSBQb3BvdmVycyAtLS1cblxuLy8gRmxhZyB0byBlbmFibGUgcG9wb3ZlciB2YXJpYW50IENTUyBnZW5lcmF0aW9uXG4kYnYtZW5hYmxlLXBvcG92ZXItdmFyaWFudHM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIFBvcG92ZXIgdmFyaWFudCBsZXZlbHMgd3J0IHRoZW1lIGNvbG9yIHZhbHVlXG4kYi1wb3BvdmVyLWJnLWxldmVsOiAkYWxlcnQtYmctbGV2ZWwgIWRlZmF1bHQ7XG4kYi1wb3BvdmVyLWJvcmRlci1sZXZlbDogJGFsZXJ0LWJvcmRlci1sZXZlbCAhZGVmYXVsdDtcbiRiLXBvcG92ZXItY29sb3ItbGV2ZWw6ICRhbGVydC1jb2xvci1sZXZlbCAhZGVmYXVsdDtcbiIsIi8vIFNvbWUgb3ZlcnJpZGVzIHRvIG1ha2UgdG9vbHRpcCB0cmFuc2l0aW9ucyB3b3JrIHdpdGggVnVlIGA8dHJhbnNpdGlvbj5gXG4udG9vbHRpcC5iLXRvb2x0aXAge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTtcbiAgLy8gTmVlZGVkIGR1ZSB0byBCb290c3RyYXAgdjQuNCByZWJvb3QuY3NzIGNoYW5nZXNcbiAgb3V0bGluZTogMDtcblxuICAmLmZhZGU6bm90KC5zaG93KSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gICYuc2hvdyB7XG4gICAgb3BhY2l0eTogJHRvb2x0aXAtb3BhY2l0eTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHBvaW50ZXIgZXZlbnRzIHdoZW4gaW4gJ25vbmludGVyYWN0aXZlJyBtb2RlIHRvIGhpZGVcbiAgLy8gdGhlIHRvb2x0aXAgd2hlbiB0aGUgdXNlciBob3ZlcnMgb3ZlciBpdHMgY29udGVudFxuICAmLm5vbmludGVyYWN0aXZlIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gIC5hcnJvdyB7XG4gICAgbWFyZ2luOiAwICR0b29sdGlwLWJvcmRlci1yYWRpdXM7XG4gIH1cblxuICAmLmJzLXRvb2x0aXAtcmlnaHQsXG4gICYuYnMtdG9vbHRpcC1sZWZ0IHtcbiAgICAuYXJyb3cge1xuICAgICAgbWFyZ2luOiAkdG9vbHRpcC1ib3JkZXItcmFkaXVzIDA7XG4gICAgfVxuICB9XG59XG5cbi8vIENyZWF0ZSBjdXN0b20gdmFyaWFudHMgZm9yIHRvb2x0aXBzXG5AaWYgJGJ2LWVuYWJsZS10b29sdGlwLXZhcmlhbnRzIHtcbiAgQGVhY2ggJHZhcmlhbnQsICR2YWx1ZSBpbiAkdGhlbWUtY29sb3JzIHtcbiAgICAudG9vbHRpcC5iLXRvb2x0aXAtI3skdmFyaWFudH0ge1xuICAgICAgJHRpcC1iZy1jb2xvcjogdGhlbWUtY29sb3ItbGV2ZWwoJHZhcmlhbnQsICRiLXRvb2x0aXAtYmctbGV2ZWwpO1xuICAgICAgJHRpcC10ZXh0LWNvbG9yOiBjb2xvci15aXEoJHRpcC1iZy1jb2xvcik7XG5cbiAgICAgICYuYnMtdG9vbHRpcC10b3Age1xuICAgICAgICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJHRpcC1iZy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXRvb2x0aXAtcmlnaHQge1xuICAgICAgICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdGlwLWJnLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuYnMtdG9vbHRpcC1ib3R0b20ge1xuICAgICAgICAuYXJyb3c6OmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRpcC1iZy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXRvb2x0aXAtbGVmdCB7XG4gICAgICAgIC5hcnJvdzo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJHRpcC1iZy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmJzLXRvb2x0aXAtYXV0byB7XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwidG9wXCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy10b29sdGlwLXRvcDtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cInJpZ2h0XCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy10b29sdGlwLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICAgICZbeC1wbGFjZW1lbnRePVwiYm90dG9tXCJdIHtcbiAgICAgICAgICBAZXh0ZW5kIC5icy10b29sdGlwLWJvdHRvbTtcbiAgICAgICAgfVxuICAgICAgICAmW3gtcGxhY2VtZW50Xj1cImxlZnRcIl0ge1xuICAgICAgICAgIEBleHRlbmQgLmJzLXRvb2x0aXAtbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudG9vbHRpcC1pbm5lciB7XG4gICAgICAgIGNvbG9yOiAkdGlwLXRleHQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aXAtYmctY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIERvIG5vdCBlZGl0IGRpcmVjdGx5LCB0aGlzIGZpbGUgd2FzIGF1dG8tZ2VuZXJhdGVkLlxuICovXG5cbjpyb290LCAuZ2wtbGlnaHQtc2NvcGUge1xuICAtLWdsLWJvcmRlci1yYWRpdXMtZnVsbDogOTk5OXB4O1xuICAtLWdsLWNvbG9yLWFscGhhLTA6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yOiByZ2JhKDUsIDUsIDYsIDAuMDIpO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstNDogcmdiYSg1LCA1LCA2LCAwLjA0KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1kYXJrLTY6IHJnYmEoNSwgNSwgNiwgMC4wNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay04OiByZ2JhKDUsIDUsIDYsIDAuMDgpO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstMTY6IHJnYmEoNSwgNSwgNiwgMC4xNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yNDogcmdiYSg1LCA1LCA2LCAwLjI0KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1kYXJrLTQwOiByZ2JhKDUsIDUsIDYsIDAuNCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC00OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpO1xuICAtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtODogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC0xNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE2KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC0yNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC0zNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM2KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC00MDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjQpO1xuICAtLWdsLWNvbG9yLWJsdWUtNTA6ICNlOGYyZmQ7XG4gIC0tZ2wtY29sb3ItYmx1ZS0xMDA6ICNjOGUwZjk7XG4gIC0tZ2wtY29sb3ItYmx1ZS0yMDA6ICM5ZGM4ZjI7XG4gIC0tZ2wtY29sb3ItYmx1ZS0zMDA6ICM2NGE3ZTk7XG4gIC0tZ2wtY29sb3ItYmx1ZS00MDA6ICMzZjhlZGQ7XG4gIC0tZ2wtY29sb3ItYmx1ZS01MDA6ICMxZjczY2E7XG4gIC0tZ2wtY29sb3ItYmx1ZS02MDA6ICMyNTY2YjU7XG4gIC0tZ2wtY29sb3ItYmx1ZS03MDA6ICMyNzU5OWY7XG4gIC0tZ2wtY29sb3ItYmx1ZS04MDA6ICMyNTQ1ODE7XG4gIC0tZ2wtY29sb3ItYmx1ZS05MDA6ICMxZjMxNjY7XG4gIC0tZ2wtY29sb3ItYmx1ZS05NTA6ICMxZDIxNTM7XG4gIC0tZ2wtY29sb3ItYnJhbmQtd2hpdGU6ICNmZmY7XG4gIC0tZ2wtY29sb3ItYnJhbmQtY2hhcmNvYWw6ICMxNzEzMjE7XG4gIC0tZ2wtY29sb3ItYnJhbmQtb3JhbmdlLTAxZzogI2ZmZDFiZjtcbiAgLS1nbC1jb2xvci1icmFuZC1vcmFuZ2UtMDFwOiAjZmNhMzI2O1xuICAtLWdsLWNvbG9yLWJyYW5kLW9yYW5nZS0wMnA6ICNmYzZkMjY7XG4gIC0tZ2wtY29sb3ItYnJhbmQtb3JhbmdlLTAzcDogI2UyNDMyOTtcbiAgLS1nbC1jb2xvci1icmFuZC1wdXJwbGUtMDFnOiAjY2ViM2VmO1xuICAtLWdsLWNvbG9yLWJyYW5kLXB1cnBsZS0wMXA6ICNhOTg5ZjU7XG4gIC0tZ2wtY29sb3ItYnJhbmQtcHVycGxlLTAycDogIzc3NTljMjtcbiAgLS1nbC1jb2xvci1icmFuZC1ncmF5LTAxOiAjZDFkMGQzO1xuICAtLWdsLWNvbG9yLWJyYW5kLWdyYXktMDI6ICNhMmExYTY7XG4gIC0tZ2wtY29sb3ItYnJhbmQtZ3JheS0wMzogIzc0NzE3YTtcbiAgLS1nbC1jb2xvci1icmFuZC1ncmF5LTA0OiAjNDU0MjRkO1xuICAtLWdsLWNvbG9yLWJyYW5kLWdyYXktMDU6ICMyYjI4Mzg7XG4gIC0tZ2wtY29sb3ItYnJhbmQtcGluay0wMWc6ICNmZmI5Yzk7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi01MDogI2RkZmFiNztcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTEwMDogI2M2ZWQ5NDtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTIwMDogI2IwZDk3YjtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTMwMDogIzk0YzI1ZTtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTQwMDogIzgxYWM0MTtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTUwMDogIzYxOTAyNTtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTYwMDogIzRlN2YwZTtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTcwMDogIzM2NjgwMDtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTgwMDogIzI3NTYwMDtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTkwMDogIzFhNDUwMDtcbiAgLS1nbC1jb2xvci1kYXRhLWdyZWVuLTk1MDogIzEzM2EwMztcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtNTA6ICNiNWZlZmQ7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTEwMDogIzkzZjJlZjtcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtMjAwOiAjNWVkZWUzO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS0zMDA6ICMzMmM1ZDI7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTQwMDogIzAwYWNjNDtcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtNTAwOiAjMDA5MGIxO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS02MDA6ICMwMDdiOWI7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTcwMDogIzAwNjM4MTtcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtODAwOiAjMDA1MTZjO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS05MDA6ICMwMDQwNTk7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTk1MDogIzAwMzQ0YjtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtNTA6ICNlOWViZmY7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTEwMDogI2QyZGNmZjtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtMjAwOiAjYjdjNmZmO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS0zMDA6ICM5N2FjZmY7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTQwMDogIzc5OTJmNTtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtNTAwOiAjNjE3YWUyO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS02MDA6ICM0ZTY1Y2Q7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTcwMDogIzNmNTFhZTtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtODAwOiAjMzc0MjkxO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS05MDA6ICMzMDM0NzA7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTk1MDogIzJhMmI1OTtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtNTA6ICNmZmUzZWI7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTEwMDogI2ZmY2NkYjtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtMjAwOiAjZmNhY2M1O1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS0zMDA6ICNmODhhYWY7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTQwMDogI2U4NmU5YTtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtNTAwOiAjY2Y0ZDgxO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS02MDA6ICNiOTNkNzE7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTcwMDogIzlhMmU1ZDtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtODAwOiAjN2MyMTRmO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS05MDA6ICM2NjFlM2E7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTk1MDogIzU0MWQzMTtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS01MDogI2ZhZThkMTtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS0xMDA6ICNmNWQ2YjM7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtMjAwOiAjZWViZDhjO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTMwMDogI2U5OWI2MDtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS00MDA6ICNlMDdlNDE7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNTAwOiAjYzk1ZDJlO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTYwMDogI2IxNGYxODtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS03MDA6ICM5MjQzMGE7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtODAwOiAjNmYzNTAwO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTkwMDogIzVlMmYwNTtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS05NTA6ICM0YjI3MDc7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tNTA6ICNlNmY1ZWE7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tMTAwOiAjYmVlNmQwO1xuICAtLWdsLWNvbG9yLWdyZWVuLTIwMDogIzg0ZDRiNjtcbiAgLS1nbC1jb2xvci1ncmVlbi0zMDA6ICMzNWI1OTc7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tNDAwOiAjMTI5Yzg0O1xuICAtLWdsLWNvbG9yLWdyZWVuLTUwMDogIzBkODA3MDtcbiAgLS1nbC1jb2xvci1ncmVlbi02MDA6ICMwYzcyNjU7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tNzAwOiAjMGI2NDVhO1xuICAtLWdsLWNvbG9yLWdyZWVuLTgwMDogIzA3NTA0ODtcbiAgLS1nbC1jb2xvci1ncmVlbi05MDA6ICMwMDNjMzY7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tOTUwOiAjMDAyYzI2O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMDogI2ZmZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwOiAjZjdmN2Y1O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTA6ICNlY2ViZWE7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDA6ICNkY2RiZDk7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0yMDA6ICNjMWJmYmU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0zMDA6ICNhNWEzYTM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC00MDA6ICM4YTg4ODg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDA6ICM3NDcyNzM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC02MDA6ICM2NDYxNjM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC03MDA6ICM0ZDRiNGU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC04MDA6ICMzYTM4M2Q7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05MDA6ICMyODI3MmQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05NTA6ICMxODE3MWQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwOiAjMDUwNDA4O1xuICAtLWdsLWNvbG9yLW9yYW5nZS01MDogI2ZkZjBkNTtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtMTAwOiAjZmFkYTljO1xuICAtLWdsLWNvbG9yLW9yYW5nZS0yMDA6ICNmN2I5NTE7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTMwMDogI2ZiODAxNztcbiAgLS1nbC1jb2xvci1vcmFuZ2UtNDAwOiAjZTk1ZjIxO1xuICAtLWdsLWNvbG9yLW9yYW5nZS01MDA6ICNjNzQ4MTY7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTYwMDogI2IzNDAxMztcbiAgLS1nbC1jb2xvci1vcmFuZ2UtNzAwOiAjOWUzODExO1xuICAtLWdsLWNvbG9yLW9yYW5nZS04MDA6ICM3ZDJkMGU7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTkwMDogIzVkMjIwZDtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtOTUwOiAjNDYxODA3O1xuICAtLWdsLWNvbG9yLXB1cnBsZS01MDogI2Y0ZjBmYztcbiAgLS1nbC1jb2xvci1wdXJwbGUtMTAwOiAjZTFkYWY3O1xuICAtLWdsLWNvbG9yLXB1cnBsZS0yMDA6ICNjOWJlZWY7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTMwMDogI2E5OTdlMTtcbiAgLS1nbC1jb2xvci1wdXJwbGUtNDAwOiAjOTI3Y2Q3O1xuICAtLWdsLWNvbG9yLXB1cnBsZS01MDA6ICM3ODYyYzg7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTYwMDogIzZhNTRjMDtcbiAgLS1nbC1jb2xvci1wdXJwbGUtNzAwOiAjNWI0NmI4O1xuICAtLWdsLWNvbG9yLXB1cnBsZS04MDA6ICM0ODM2OTg7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTkwMDogIzM2MjY3NjtcbiAgLS1nbC1jb2xvci1wdXJwbGUtOTUwOiAjMjkxYTVjO1xuICAtLWdsLWNvbG9yLXJlZC01MDogI2ZlZWVmMDtcbiAgLS1nbC1jb2xvci1yZWQtMTAwOiAjZmZkM2Q3O1xuICAtLWdsLWNvbG9yLXJlZC0yMDA6ICNmZmFmYjg7XG4gIC0tZ2wtY29sb3ItcmVkLTMwMDogI2ZjNzk4ODtcbiAgLS1nbC1jb2xvci1yZWQtNDAwOiAjZjE1MTY4O1xuICAtLWdsLWNvbG9yLXJlZC01MDA6ICNkZTFkNGI7XG4gIC0tZ2wtY29sb3ItcmVkLTYwMDogI2M1MjA0MjtcbiAgLS1nbC1jb2xvci1yZWQtNzAwOiAjYWMyMDNhO1xuICAtLWdsLWNvbG9yLXJlZC04MDA6ICM4OTFjMmY7XG4gIC0tZ2wtY29sb3ItcmVkLTkwMDogIzY0MTkyNTtcbiAgLS1nbC1jb2xvci1yZWQtOTUwOiAjNDgxNTFkO1xuICAtLWdsLWZvbnQtZmFtaWx5LXJlZ3VsYXI6IHZhcigtLWRlZmF1bHQtcmVndWxhci1mb250LCAnR2l0TGFiIFNhbnMnKSwnR2l0TGFiIFNhbnMnLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LCdTZWdvZSBVSScsUm9ib3RvLCdOb3RvIFNhbnMnLFVidW50dSxDYW50YXJlbGwsJ0hlbHZldGljYSBOZXVlJyxzYW5zLXNlcmlmLCdBcHBsZSBDb2xvciBFbW9qaScsJ1NlZ29lIFVJIEVtb2ppJywnU2Vnb2UgVUkgU3ltYm9sJywnTm90byBDb2xvciBFbW9qaSc7XG4gIC0tZ2wtZm9udC1mYW1pbHktbW9ub3NwYWNlOiB2YXIoLS1kZWZhdWx0LW1vbm8tZm9udCwgJ0dpdExhYiBNb25vJyksJ0dpdExhYiBNb25vJywnSmV0QnJhaW5zIE1vbm8nLE1lbmxvLCdEZWphVnUgU2FucyBNb25vJywnTGliZXJhdGlvbiBNb25vJyxDb25zb2xhcywnVWJ1bnR1IE1vbm8nLCdDb3VyaWVyIE5ldycsJ2FuZGFsZSBtb25vJywnbHVjaWRhIGNvbnNvbGUnLG1vbm9zcGFjZTtcbiAgLS1nbC1mb250LXNpemUtMTAwOiAwLjc1cmVtOyAvKiogVXNlZCBmb3IgbWV0YSB0ZXh0IGFuZCBzbWFsbCBsYWJlbHMuICovXG4gIC0tZ2wtZm9udC1zaXplLTIwMDogMC44MTI1cmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgNiBoZWFkaW5ncy4gKi9cbiAgLS1nbC1mb250LXNpemUtMzAwOiAwLjg3NXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDUgaGVhZGluZ3MsIGJvZHkgdGV4dCwgaW5wdXQgbGFiZWxzLCBhbmQgaGVscCB0ZXh0LiAqL1xuICAtLWdsLWZvbnQtc2l6ZS00MDA6IDFyZW07IC8qKiBVc2VkIGZvciBsZXZlbCA0IGhlYWRpbmdzLCBsYXJnZSBib2R5IHRleHQuICovXG4gIC0tZ2wtZm9udC1zaXplLTUwMDogY2xhbXAoMS4xMjVyZW0sIDAuOTAyNzc3Nzc3OHJlbSArIDAuNDYyOTYyOTYzdncsIDEuMjVyZW0pOyAvKiogVXNlZCBmb3IgcmVzcG9uc2l2ZSBsZXZlbCAzIGhlYWRpbmdzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS02MDA6IGNsYW1wKDEuMzEyNXJlbSwgMC44NjgwNTU1NTU2cmVtICsgMC45MjU5MjU5MjU5dncsIDEuNTYyNXJlbSk7IC8qKiBVc2VkIGZvciByZXNwb25zaXZlIGxldmVsIDIgaGVhZGluZ3MuICovXG4gIC0tZ2wtZm9udC1zaXplLTcwMDogY2xhbXAoMS41cmVtLCAwLjgzMzMzMzMzMzNyZW0gKyAxLjM4ODg4ODg4ODl2dywgMS44NzVyZW0pOyAvKiogVXNlZCBmb3IgcmVzcG9uc2l2ZSBsZXZlbCAxIGhlYWRpbmdzICovXG4gIC0tZ2wtZm9udC1zaXplLTgwMDogY2xhbXAoMS43NXJlbSwgMC44NjExMTExMTExcmVtICsgMS44NTE4NTE4NTE5dncsIDIuMjVyZW0pOyAvKiogVXNlZCBmb3IgYSByZXNwb25zaXZlIGRpc3BsYXkgb3B0aW9uIHRoYXQgY2FuIGJlIGFwcGxpZWQgdG8gYSBsZXZlbCAxIGhlYWRpbmcgdG8gaW5jcmVhc2UgaXRzIHByb21pbmVuY2UuICovXG4gIC0tZ2wtZm9udC1zaXplLXhzOiAwLjYyNXJlbTtcbiAgLS1nbC1mb250LXNpemUtMTAwLWZpeGVkOiAwLjc1cmVtOyAvKiogVXNlZCBmb3IgbWV0YSB0ZXh0IGFuZCBzbWFsbCBsYWJlbHMuICovXG4gIC0tZ2wtZm9udC1zaXplLTIwMC1maXhlZDogMC44MTI1cmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgNiBoZWFkaW5ncy4gKi9cbiAgLS1nbC1mb250LXNpemUtMzAwLWZpeGVkOiAwLjg3NXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDUgaGVhZGluZ3MsIGJvZHkgdGV4dCwgaW5wdXQgbGFiZWxzLCBhbmQgaGVscCB0ZXh0LiAqL1xuICAtLWdsLWZvbnQtc2l6ZS00MDAtZml4ZWQ6IDFyZW07IC8qKiBVc2VkIGZvciBsZXZlbCA0IGhlYWRpbmdzLCBsYXJnZSBib2R5IHRleHQuICovXG4gIC0tZ2wtZm9udC1zaXplLTUwMC1maXhlZDogMS4xMjVyZW07IC8qKiBVc2VkIGZvciBsZXZlbCAzIGhlYWRpbmdzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS02MDAtZml4ZWQ6IDEuMzEyNXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDIgaGVhZGluZ3MuICovXG4gIC0tZ2wtZm9udC1zaXplLTcwMC1maXhlZDogMS41cmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgMSBoZWFkaW5ncyAqL1xuICAtLWdsLWZvbnQtc2l6ZS04MDAtZml4ZWQ6IDEuNzVyZW07IC8qKiBVc2VkIGZvciBhIGRpc3BsYXkgb3B0aW9uIHRoYXQgY2FuIGJlIGFwcGxpZWQgdG8gYSBsZXZlbCAxIGhlYWRpbmcgdG8gaW5jcmVhc2UgaXRzIHByb21pbmVuY2UuICovXG4gIC0tZ2wtZm9udC13ZWlnaHQtMTAwOiAxMDA7XG4gIC0tZ2wtZm9udC13ZWlnaHQtMzAwOiAzMDA7XG4gIC0tZ2wtZm9udC13ZWlnaHQtbm9ybWFsOiA0MDA7XG4gIC0tZ2wtZm9udC13ZWlnaHQtc2VtaWJvbGQ6IDUwMDtcbiAgLS1nbC1mb250LXdlaWdodC1ib2xkOiA2MDA7XG4gIC0tZ2wtbGluZS1oZWlnaHQtMTI6IDAuNzVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMTY6IDFyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMjA6IDEuMjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMjQ6IDEuNXJlbTtcbiAgLS1nbC1saW5lLWhlaWdodC0yODogMS43NXJlbTtcbiAgLS1nbC1saW5lLWhlaWdodC0zMjogMnJlbTtcbiAgLS1nbC1saW5lLWhlaWdodC0zNjogMi4yNXJlbTtcbiAgLS1nbC1saW5lLWhlaWdodC00MjogMi42MjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtNDQ6IDIuNzVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtNTI6IDMuMjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZzogMS4yNTtcbiAgLS1nbC1vcGFjaXR5LTA6IDA7XG4gIC0tZ2wtb3BhY2l0eS0xOiAuMTtcbiAgLS1nbC1vcGFjaXR5LTI6IC4yO1xuICAtLWdsLW9wYWNpdHktMzogLjM7XG4gIC0tZ2wtb3BhY2l0eS00OiAuNDtcbiAgLS1nbC1vcGFjaXR5LTU6IC41O1xuICAtLWdsLW9wYWNpdHktNjogLjY7XG4gIC0tZ2wtb3BhY2l0eS03OiAuNztcbiAgLS1nbC1vcGFjaXR5LTg6IC44O1xuICAtLWdsLW9wYWNpdHktOTogLjk7XG4gIC0tZ2wtb3BhY2l0eS0xMDogMTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTA6IDBweDtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTE6IDAuMTI1cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMjogMC4yNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTM6IDAuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTQ6IDAuNzVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS01OiAxcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNjogMS41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNzogMnJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTg6IDIuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTk6IDNyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xMDogMy41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMTE6IDRyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xMjogNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTEzOiA2cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMTU6IDcuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTE4OiA5cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMjA6IDEwcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMjY6IDEzcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMjg6IDE0cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMzA6IDE1cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMzE6IDE1LjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0zMzogMTYuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTM0OiAxN3JlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTM3OiAxOC41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNDg6IDI0cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNjI6IDMxcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNzU6IDM3LjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS04MDogNDByZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS04ODogNDRyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS1weDogMXB4O1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMi01OiAwLjM3NXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTExLTU6IDQuNXJlbTtcbiAgLS1nbC16aW5kZXgtMDogMDtcbiAgLS1nbC16aW5kZXgtMTogMTtcbiAgLS1nbC16aW5kZXgtMjogMjtcbiAgLS1nbC16aW5kZXgtMzogMztcbiAgLS1nbC16aW5kZXgtNDogNDtcbiAgLS1nbC16aW5kZXgtMjAwOiAyMDA7XG4gIC0tZ2wtemluZGV4LTk5OTk6IDk5OTk7XG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItcmVkOiByZ2JhKDI1NSwgMTc1LCAxODQsIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvKiogUmVkIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1wdXJwbGU6IHJnYmEoMjAxLCAxOTAsIDIzOSwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBQdXJwbGUgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLWJsdWU6IHJnYmEoMTU3LCAyMDAsIDI0MiwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBCbHVlIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ncmVlbjogcmdiYSgxMzIsIDIxMiwgMTgyLCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLyoqIEdyZWVuIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1vcmFuZ2U6IHJnYmEoMjQ3LCAxODUsIDgxLCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLyoqIE9yYW5nZSBiYWNrZ3JvdW5kIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItbmV1dHJhbDogcmdiYSgxOTEsIDE5MSwgMTk1LCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLyoqIE5ldXRyYWwgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1ibHVlOiAjMjM1MTgwOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgZm9yIHRoZSBibHVlIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1ncmVlbjogIzFiNjUzZjsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgZ3JlZW4gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWluZGlnbzogIzQxNDE5ZjsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgaW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodGJsdWU6ICM0OTc3YTU7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0Ymx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRncmVlbjogIzMwODI1ODsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHRncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRpbmRpZ286ICM2NjY2YzQ7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodHJlZDogI2FkNGEzYjsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHRyZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLXJlZDogIzhmMjExMDsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgcmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWJsdWU6ICMwYjI2NDA7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1ncmVlbjogIzBlNDMyODsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1pbmRpZ286ICMyMjIyNjE7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgaW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0Ymx1ZTogIzIzNTE4MDsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHRncmVlbjogIzFiNjUzZjsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0aW5kaWdvOiAjNDE0MTlmOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0cmVkOiAjOGYyMTEwOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGxpZ2h0cmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLXJlZDogIzU4MGQwMjsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSByZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtY2hhcnQtdGhyZXNob2xkLWFyZWEtY29sb3I6IHJnYmEoMjIyLCAyOSwgNzUsIDAuMSk7IC8qKiBVc2VkIGluIGNoYXJ0cyB0byBkZWxpbmVhdGUgYSB0aHJlc2hvbGQgYXJlYSBpbiBhIGNoYXJ0LiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1zdHJva2UtY29sb3ItZGVmYXVsdDogIzE3MTMyMTsgLyoqIERlZmF1bHQgc3Ryb2tlIGNvbG9yIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1zdHJva2Utd2lkdGgtZGVmYXVsdDogMjsgLyoqIERlZmF1bHQgc3Ryb2tlIHdpZHRoIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1maWxsLWNvbG9yLWRlZmF1bHQ6ICNmZmY7IC8qKiBEZWZhdWx0IGZpbGwgY29sb3IgZm9yIGFuIGVsZW1lbnQgd2hlcmUgc3BlY2lmaWMgbWVhbmluZyBvciBlbXBoYXNpcyBpcyBub3QgcmVxdWlyZWQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLW5ldXRyYWw6ICNhZWE1ZDY7IC8qKiBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBjb25jZXB0IHdoaWNoIGlzIG5laXRoZXIgcG9zaXRpdmUgb3IgbmVnYXRpdmUuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLXN1Y2Nlc3M6ICM2ZmRhYzk7IC8qKiBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBzdWNjZXNzIG9yIGFjdGl2ZSBjb25jZXB0LCBoYXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3RhdHVzLWZpbGwtY29sb3Itd2FybmluZzogI2ZjYTMyNjsgLyoqIFVzZWQgYXMgYSBmaWxsIHRvIGNvbnZleSBhIGNhdXRpb24gb3Igd2FybmluZyBjb25jZXB0LCBoYXMgYSBzbGlnaHRseSBuZWdhdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3RhdHVzLWZpbGwtY29sb3ItZGFuZ2VyOiAjZmY5ZDczOyAvKiogVXNlZCBhcyBhIGZpbGwgdG8gY29udmV5IGEgY3JpdGljYWwgb3IgZGFuZ2VyIGNvbmNlcHQsIGhhcyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtc3Ryb2tlLWNvbG9yLW9yYW5nZTogI2ZmOWQ3MzsgLyoqIFVzZWQgZm9yIG9yYW5nZSBhY2NlbnQgc3Ryb2tlIGRldGFpbCBvbiBhbiBvYmplY3Qgb3IgYXR0ZW50aW9uLWRyYXdpbmcgZWxlbWVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LXN0cm9rZS1jb2xvci10ZWFsOiAjNmZkYWM5OyAvKiogVXNlZCBmb3IgdGVhbCBhY2NlbnQgc3Ryb2tlIGRldGFpbCBvbiBhbiBvYmplY3Qgb3IgYXR0ZW50aW9uLWRyYXdpbmcgZWxlbWVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LXN0cm9rZS1jb2xvci1zdHJvbmc6ICNhZWE1ZDY7IC8qKiBVc2VkIGZvciBkYXJrIGFjY2VudCBzdHJva2UgZGV0YWlsIG9uIGFuIG9iamVjdCBvciBhdHRlbnRpb24tZHJhd2luZyBlbGVtZW50LiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtZmlsbC1jb2xvci1zdWJ0bGU6ICNkMGM1ZTI7IC8qKiBVc2VkIHRvIGFkZCBkZXB0aCB0byBhIHNlY29uZGFyeSBlbGVtZW50IGFuZCBzdXBwb3J0aW5nIHN1cmZhY2UuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWFjY2VudC1maWxsLWNvbG9yLXN0cm9uZzogI2FlYTVkNjsgLyoqIFVzZWQgZm9yIGFuIGVsZW1lbnQgcmVxdWlyaW5nIHZpc3VhbCBlbXBoYXNpcyB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudCBvciBzdGF0dXMgaW5kaWNhdG9ycy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3Itb3JhbmdlOiAjZmY5ZDczOyAvKiogVXNlZCB0byBhZGQgb3JhbmdlIHRvIGEgc2Vjb25kYXJ5IGVsZW1lbnQgYW5kIHN1cHBvcnRpbmcgc3VyZmFjZS4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3ItdGVhbDogIzZmZGFjOTsgLyoqIFVzZWQgdG8gYWRkIHRlYWwgdG8gYSBzZWNvbmRhcnkgZWxlbWVudCBhbmQgc3VwcG9ydGluZyBzdXJmYWNlLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1iYXNlLWZpbGwtY29sb3I6ICNlN2U0ZjI7IC8qKiBVc2VkIGZvciB0aGUgY29uc2lzdGVudCBiYWNrZ3JvdW5kIHNoYXBlIHByZXNlbnQgYWNyb3NzIGFsbCBpbGx1c3RyYXRpb25zLiBQcm92aWRlcyBhIHVuaWZpZWQgZm91bmRhdGlvbiB0aGF0IHZpc3VhbGx5IGdyb3VuZHMgZWFjaCBpbGx1c3RyYXRpb24gd2hpbGUgbWFpbnRhaW5pbmcgc3lzdGVtIGNvaGVzaW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLWNvbG9yLWRlZmF1bHQ6ICMxNzEzMjE7IC8qKiBEZWZhdWx0IHN0cm9rZSBjb2xvciB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbCBpbiBpc29tZXRyaWMgaWxsdXN0cmF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLXdpZHRoLWRlZmF1bHQ6IDI7IC8qKiBEZWZhdWx0IHN0cm9rZSB3aWR0aCB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbCBpbiBpc29tZXRyaWMgaWxsdXN0cmF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtdG9wLWZpbGwtY29sb3I6ICNjNWY0ZWM7IC8qKiBVc2VkIGZvciB0aGUgdG9wIGZhY2Ugb2YgaXNvbWV0cmljIHRleHQgYW5kIG51bWJlciBlbGVtZW50cy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWdseXBoLWZyb250LWZpbGwtY29sb3I6ICNmZmY7IC8qKiBVc2VkIGZvciB0aGUgZnJvbnQgZmFjZSBvZiBpc29tZXRyaWMgdGV4dCBhbmQgbnVtYmVyIGVsZW1lbnRzLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtc2lkZS1maWxsLWNvbG9yOiAjNmZkYWM5OyAvKiogVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBpc29tZXRyaWMgdGV4dCBhbmQgbnVtYmVyIGVsZW1lbnRzLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtc2hhZG93LWZpbGwtY29sb3I6ICMxMGIxYjE7IC8qKiBVc2VkIGZvciB0aGUgc2hhZG93IG9mIGlzb21ldHJpYyB0ZXh0IGFuZCBudW1iZXIgZWxlbWVudHMuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3QtdG9wLWZpbGwtY29sb3I6ICNmZjlkNzM7IC8qKiBVc2VkIGZvciB0aGUgdG9wIGZhY2Ugb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3QtZnJvbnQtZmlsbC1jb2xvcjogI2ZmYzJhODsgLyoqIFVzZWQgZm9yIHRoZSBmcm9udCBmYWNlIG9mIGFuIGlzb21ldHJpYyBvYmplY3Qgb3Igc3ltYm9sLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtb2JqZWN0LXNpZGUtZmlsbC1jb2xvcjogI2ZmN2I0MjsgLyoqIFVzZWQgZm9yIHRoZSBzaWRlIGZhY2Ugb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3QtaGlnaGxpZ2h0LWZpbGwtY29sb3I6ICNmZmY7IC8qKiBVc2VkIGZvciB0aGUgZmFjZSBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbCB0aGF0IHJlcXVpcmVzIG1heGltdW0gZGlzdGluY3Rpb24gZnJvbSBvdGhlciBlbGVtZW50cy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC1zaGFkb3ctZmlsbC1jb2xvcjogI2UyNDMyOTsgLyoqIFVzZWQgZm9yIHRoZSBzaGFkb3cgb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1hY2NlbnQtdG9wLWZpbGwtY29sb3I6ICM0NTQyNGQ7IC8qKiBVc2VkIGZvciB0aGUgdG9wIGZhY2Ugb2YgYSBzdXBwb3J0aW5nIGlzb21ldHJpYyBlbGVtZW50LiBQcm92aWRlcyBzdWJ0bGUgZGltZW5zaW9uYWwgdmFyaWF0aW9uIHdpdGhvdXQgY29tcGV0aW5nIHdpdGggcHJpbWFyeSBjb250ZW50LiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtYWNjZW50LWZyb250LWZpbGwtY29sb3I6ICM3NDcxN2E7IC8qKiBVc2VkIGZvciB0aGUgZnJvbnQgZmFjZSBvZiBhIHN1cHBvcnRpbmcgaXNvbWV0cmljIGVsZW1lbnQuIFByb3ZpZGVzIHN1YnRsZSBkaW1lbnNpb25hbCB2YXJpYXRpb24gd2l0aG91dCBjb21wZXRpbmcgd2l0aCBwcmltYXJ5IGNvbnRlbnQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1hY2NlbnQtc2lkZS1maWxsLWNvbG9yOiAjMmIyODM4OyAvKiogVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBhIHN1cHBvcnRpbmcgaXNvbWV0cmljIGVsZW1lbnQuIFByb3ZpZGVzIHN1YnRsZSBkaW1lbnNpb25hbCB2YXJpYXRpb24gd2l0aG91dCBjb21wZXRpbmcgd2l0aCBwcmltYXJ5IGNvbnRlbnQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1iYXNlLXRvcC1maWxsLWNvbG9yOiAjZTdlNGYyOyAvKiogVXNlZCBmb3IgdGhlIHRvcCBzdXJmYWNlIG9mIGFuIGlzb21ldHJpYyBiYXNlIHBsYXRmb3JtLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtYmFzZS1mcm9udC1maWxsLWNvbG9yOiAjZDVkMGU4OyAvKiogVXNlZCBmb3IgdGhlIGZyb250IGZhY2Ugb2YgYW4gaXNvbWV0cmljIGJhc2UgcGxhdGZvcm0uICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1iYXNlLXNpZGUtZmlsbC1jb2xvcjogI2FlYTVkNjsgLyoqIFVzZWQgZm9yIHRoZSBzaWRlIGZhY2Ugb2YgYW4gaXNvbWV0cmljIGJhc2UgcGxhdGZvcm0uICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9udC13ZWlnaHQ6IDQyNTsgLyoqIFVzZWQgZm9yIHRoZSBmb250IHdlaWdodCBvZiBhIG5hdmlnYXRpb24gaXRlbSAqL1xuICAtLWRhdGEtdml6LWdyZWVuLTUwOiAjZGRmYWI3O1xuICAtLWRhdGEtdml6LWdyZWVuLTEwMDogI2M2ZWQ5NDtcbiAgLS1kYXRhLXZpei1ncmVlbi0yMDA6ICNiMGQ5N2I7XG4gIC0tZGF0YS12aXotZ3JlZW4tMzAwOiAjOTRjMjVlO1xuICAtLWRhdGEtdml6LWdyZWVuLTQwMDogIzgxYWM0MTtcbiAgLS1kYXRhLXZpei1ncmVlbi01MDA6ICM2MTkwMjU7XG4gIC0tZGF0YS12aXotZ3JlZW4tNjAwOiAjNGU3ZjBlO1xuICAtLWRhdGEtdml6LWdyZWVuLTcwMDogIzM2NjgwMDtcbiAgLS1kYXRhLXZpei1ncmVlbi04MDA6ICMyNzU2MDA7XG4gIC0tZGF0YS12aXotZ3JlZW4tOTAwOiAjMWE0NTAwO1xuICAtLWRhdGEtdml6LWdyZWVuLTk1MDogIzEzM2EwMztcbiAgLS1kYXRhLXZpei1hcXVhLTUwOiAjYjVmZWZkO1xuICAtLWRhdGEtdml6LWFxdWEtMTAwOiAjOTNmMmVmO1xuICAtLWRhdGEtdml6LWFxdWEtMjAwOiAjNWVkZWUzO1xuICAtLWRhdGEtdml6LWFxdWEtMzAwOiAjMzJjNWQyO1xuICAtLWRhdGEtdml6LWFxdWEtNDAwOiAjMDBhY2M0O1xuICAtLWRhdGEtdml6LWFxdWEtNTAwOiAjMDA5MGIxO1xuICAtLWRhdGEtdml6LWFxdWEtNjAwOiAjMDA3YjliO1xuICAtLWRhdGEtdml6LWFxdWEtNzAwOiAjMDA2MzgxO1xuICAtLWRhdGEtdml6LWFxdWEtODAwOiAjMDA1MTZjO1xuICAtLWRhdGEtdml6LWFxdWEtOTAwOiAjMDA0MDU5O1xuICAtLWRhdGEtdml6LWFxdWEtOTUwOiAjMDAzNDRiO1xuICAtLWRhdGEtdml6LWJsdWUtNTA6ICNlOWViZmY7XG4gIC0tZGF0YS12aXotYmx1ZS0xMDA6ICNkMmRjZmY7XG4gIC0tZGF0YS12aXotYmx1ZS0yMDA6ICNiN2M2ZmY7XG4gIC0tZGF0YS12aXotYmx1ZS0zMDA6ICM5N2FjZmY7XG4gIC0tZGF0YS12aXotYmx1ZS00MDA6ICM3OTkyZjU7XG4gIC0tZGF0YS12aXotYmx1ZS01MDA6ICM2MTdhZTI7XG4gIC0tZGF0YS12aXotYmx1ZS02MDA6ICM0ZTY1Y2Q7XG4gIC0tZGF0YS12aXotYmx1ZS03MDA6ICMzZjUxYWU7XG4gIC0tZGF0YS12aXotYmx1ZS04MDA6ICMzNzQyOTE7XG4gIC0tZGF0YS12aXotYmx1ZS05MDA6ICMzMDM0NzA7XG4gIC0tZGF0YS12aXotYmx1ZS05NTA6ICMyYTJiNTk7XG4gIC0tZGF0YS12aXotbWFnZW50YS01MDogI2ZmZTNlYjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTEwMDogI2ZmY2NkYjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTIwMDogI2ZjYWNjNTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTMwMDogI2Y4OGFhZjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTQwMDogI2U4NmU5YTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTUwMDogI2NmNGQ4MTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTYwMDogI2I5M2Q3MTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTcwMDogIzlhMmU1ZDtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTgwMDogIzdjMjE0ZjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTkwMDogIzY2MWUzYTtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTk1MDogIzU0MWQzMTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtNTA6ICNmYWU4ZDE7XG4gIC0tZGF0YS12aXotb3JhbmdlLTEwMDogI2Y1ZDZiMztcbiAgLS1kYXRhLXZpei1vcmFuZ2UtMjAwOiAjZWViZDhjO1xuICAtLWRhdGEtdml6LW9yYW5nZS0zMDA6ICNlOTliNjA7XG4gIC0tZGF0YS12aXotb3JhbmdlLTQwMDogI2UwN2U0MTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtNTAwOiAjYzk1ZDJlO1xuICAtLWRhdGEtdml6LW9yYW5nZS02MDA6ICNiMTRmMTg7XG4gIC0tZGF0YS12aXotb3JhbmdlLTcwMDogIzkyNDMwYTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtODAwOiAjNmYzNTAwO1xuICAtLWRhdGEtdml6LW9yYW5nZS05MDA6ICM1ZTJmMDU7XG4gIC0tZGF0YS12aXotb3JhbmdlLTk1MDogIzRiMjcwNztcbiAgLS1icmFuZC1jaGFyY29hbDogIzE3MTMyMTsgLyoqIFVzZSBjb2xvci5icmFuZC1jaGFyY29hbCBpbnN0ZWFkLiAqL1xuICAtLWJyYW5kLW9yYW5nZS0wMTogI2ZjYTMyNjsgLyoqIFVzZSBjb2xvci5icmFuZC1vcmFuZ2UuMDFwIGluc3RlYWQuICovXG4gIC0tYnJhbmQtb3JhbmdlLTAyOiAjZmM2ZDI2OyAvKiogVXNlIGNvbG9yLmJyYW5kLW9yYW5nZS4wMnAgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1vcmFuZ2UtMDM6ICNlMjQzMjk7IC8qKiBVc2UgY29sb3IuYnJhbmQtb3JhbmdlLjAzcCBpbnN0ZWFkLiAqL1xuICAtLWJyYW5kLXB1cnBsZS0wMTogI2E5ODlmNTsgLyoqIFVzZSBjb2xvci5wdXJwbGUuMDFwIGluc3RlYWQuICovXG4gIC0tYnJhbmQtcHVycGxlLTAyOiAjNzc1OWMyOyAvKiogVXNlIGNvbG9yLnB1cnBsZS4wMnAgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTAxOiAjZDFkMGQzOyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDEgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTAyOiAjYTJhMWE2OyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDIgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTAzOiAjNzQ3MTdhOyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDMgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTA0OiAjNDU0MjRkOyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDQgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1ncmF5LTA1OiAjMmIyODM4OyAvKiogVXNlIGNvbG9yLmJyYW5kLWdyYXkuMDUgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0xNjogcmdiYSg1LCA1LCA2LCAwLjE2KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjE2IGluc3RlYWQuICovXG4gIC0tdC1ncmF5LWEtMjQ6IHJnYmEoNSwgNSwgNiwgMC4yNCk7IC8qKiBVc2UgY29sb3IuYWxwaGEuZGFyay4yNCBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTAyOiByZ2JhKDUsIDUsIDYsIDAuMDIpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuMiBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTA0OiByZ2JhKDUsIDUsIDYsIDAuMDQpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuNCBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTA2OiByZ2JhKDUsIDUsIDYsIDAuMDYpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuNiBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTA4OiByZ2JhKDUsIDUsIDYsIDAuMDgpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuOCBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0xNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjE2KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC4xNiBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0yNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjI0KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC4yNCBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0zNjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjM2KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC4zNiBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0wMjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjAyKTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC4yIGluc3RlYWQuICovXG4gIC0tdC13aGl0ZS1hLTA0OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDQpOyAvKiogVXNlIGNvbG9yLmFscGhhLmxpZ2h0LjQgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMDY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wNik7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuNiBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0wODogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA4KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC44IGluc3RlYWQuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHJnYmEoMjIyLCAyOSwgNzUsIDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiByZ2JhKDIyMiwgMjksIDc1LCAwLjE2KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiByZ2JhKDE3MiwgMzIsIDU4LCAwLjI0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZzogLTAuMDFlbTtcbiAgLS1nbC1oZWFkaW5nLTMtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy00LWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctNS1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLTYtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtbGluZS1oZWlnaHQ6IDEuMTI1O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktbGluZS1oZWlnaHQ6IDEuMTI1O1xuICAtLWdsLWhlYWRpbmctMy1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy01LWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctNi1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1ib3JkZXItY29sb3ItdHJhbnNwYXJlbnQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCB3aGVuIGEgYm9yZGVyIG5lZWRzIHRvIGJlIHByZXNlbnQsIGJ1dCBub3QgdmlzaWJseSBwZXJjZWl2ZWQuICovXG4gIC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IGJvcmRlciBjb2xvci4gKi9cbiAgLS1nbC1ib3JkZXItY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIGEgc3VidGxlIGJvcmRlciBpbiBjb21iaW5hdGlvbiB3aXRoIHRoZSBkZWZhdWx0IGJhY2tncm91bmQuICovXG4gIC0tZ2wtYm9yZGVyLWNvbG9yLXN0cm9uZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgYSBkaXN0aW5jdCBib3JkZXIgdGhhdCBlbXBoYXNpemVzIGFuIGVkZ2Ugb3IgYm91bmRhcmllcy4gKi9cbiAgLS1nbC1ib3JkZXItcmFkaXVzLW5vbmU6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMCk7XG4gIC0tZ2wtYm9yZGVyLXJhZGl1cy14czogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS1weCk7XG4gIC0tZ2wtYm9yZGVyLXJhZGl1cy1zbTogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0xKTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLW1kOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTIpO1xuICAtLWdsLWJvcmRlci1yYWRpdXMtbGc6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMyk7XG4gIC0tZ2wtYm9yZGVyLXJhZGl1cy14bDogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS00KTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLTJ4bDogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS01KTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLTN4bDogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS02KTtcbiAgLS1nbC1mb250LXNpemUtc206IHZhcigtLWdsLWZvbnQtc2l6ZS0xMDApO1xuICAtLWdsLWZvbnQtc2l6ZS1tZDogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtZm9udC1zaXplLWxnOiB2YXIoLS1nbC1mb250LXNpemUtNDAwKTtcbiAgLS1nbC1mb250LXdlaWdodC1oZWFkaW5nOiB2YXIoLS1nbC1mb250LXdlaWdodC1ib2xkKTtcbiAgLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0wKTtcbiAgLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS01KTtcbiAgLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0xNik7IC8qKiBVc2VkIGZvciB0aGUgZGVmYXVsdCBzaGFkb3cgY29sb3IuICovXG4gIC0tZ2wtYWxlcnQtbmV1dHJhbC1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LW5ldXRyYWwtYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYW4gaW5mbyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1pbmZvLWJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBib3R0b20gY29sb3Igb2YgYW4gaW5mbyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1zdWNjZXNzLWJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC13YXJuaW5nLWJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtd2FybmluZy1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgd2FybmluZyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1kYW5nZXItYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWRhbmdlci1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFwcGxpY2F0aW9uLWNocm9tZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBhcHBsaWNhdGlvbiBjaHJvbWUgYmFja2dyb3VuZCwgdGhlIGxvd2VzdCBsYXllciBvZiB0aGUgaW50ZXJmYWNlIHRoYXQgc2l0cyBiZW5lYXRoIHBhbmVscyBhbmQgY29udGFpbnMgZ2xvYmFsIG5hdmlnYXRpb24sIHVzZXIgYWN0aW9ucywgYXBwbGljYXRpb24gbmF2aWdhdGlvbiwgYW5kIEFJIG5hdmlnYXRpb24uICovXG4gIC0tZ2wtYXZhdGFyLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTgpOyAvKiogVXNlZCB0byBkZWZpbmUgdGhlIGVkZ2Ugb2YgYW4gYXZhdGFyLiAqL1xuICAtLWdsLWF2YXRhci1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstMjQpOyAvKiogVXNlZCB0byBpbmNyZWFzZSB0aGUgZWRnZSBkZWZpbml0aW9uIG9mIGFuIGF2YXRhciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYXZhdGFyLWNpcmNsZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQ6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZnVsbCk7IC8qKiBCb3JkZXIgcmFkaXVzIGZvciBjaXJsY2UgYXZhdGFycyBhdCBhbGwgc2l6ZXMuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItcmVkOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFJlZCB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItcHVycGxlOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTsgLyoqIFB1cnBsZSB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItYmx1ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS04MDApOyAvKiogQmx1ZSB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItZ3JlZW46IHZhcigtLWdsLWNvbG9yLWdyZWVuLTgwMCk7IC8qKiBHcmVlbiB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3Itb3JhbmdlOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTsgLyoqIE9yYW5nZSB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLXRleHQtY29sb3ItbmV1dHJhbDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogTmV1dHJhbCB0ZXh0IGNvbG9yIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG11dGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWljb24tY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG5ldXRyYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWJsdWUtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWJsdWUtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWJsdWUtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3MgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ncmVlbi04MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1ncmVlbi05MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3MgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ncmVlbi02MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1ncmVlbi03MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgd2FybmluZyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS04MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS02MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWljb24tY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFubmVyLWludHJvLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBpbmZvIGJhbm5lci4gKi9cbiAgLS1nbC1iYW5uZXItcHJvbW8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgcHJvbW8gYmFubmVyLiAqL1xuICAtLWdsLWJhbm5lci1wcm9tby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHByb21vIGJhbm5lci4gKi9cbiAgLS1nbC1icmVhZGNydW1iLXNlcGFyYXRvci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJyZWFkY3J1bWIgbGV2ZWwgc2VwYXJhdG9yLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1kYXJrOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZGFyazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC03MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItYmx1ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZGFyazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgZGFyayBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZ3JlZW46IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1pbmRpZ286IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0Ymx1ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRibHVlIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGdyZWVuOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGluZGlnbzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRpbmRpZ28gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0cmVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodHJlZCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItcmVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSByZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWJsdWU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWRhcms6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWdyZWVuOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItaW5kaWdvOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBpbmRpZ28gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0IGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodGJsdWU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0Ymx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRncmVlbjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRpbmRpZ286IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodHJlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRyZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLXJlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgcmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBvdXRsaW5lZCBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1yZWQtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1yZWQtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItcmVkLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhc2hlZCBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRpc2FibGVkIGJ1dHRvbi4gKi9cbiAgLS1nbC1idXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRpc2FibGVkIGJ1dHRvbi4gKi9cbiAgLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGlzYWJsZWQgYnV0dG9uLiAqL1xuICAtLWdsLWJ1dHRvbi1jb3VudC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTgpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBidXR0b24gY291bnQgZWxlbWVudC4gKi9cbiAgLS1nbC1jaGFydC1heGlzLWxpbmUtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciBheGlzIGxpbmUgY29sb3IuICovXG4gIC0tZ2wtY2hhcnQtdGhyZXNob2xkLWxpbmUtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC01MDApOyAvKiogVXNlZCBpbiBjaGFydHMgdG8gZGl2aWRlIGEgdGhyZXNob2xkIGFyZWEgaW4gYSBjaGFydCBmcm9tIG90aGVyIGRhdGEuICovXG4gIC0tZ2wtY2hhcnQtem9vbS1maWxsZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstOCk7IC8qKiBVc2VkIGluIGNoYXJ0cyBmb3IgdGhlIG92ZXJsYXkgY29sb3Igd2hlbiB6b29taW5nIGluIG9uIGEgc3BlY2lmaWMgYXJlYSBvZiBkYXRhLiAqL1xuICAtLWdsLWRhdGVwaWNrZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGRhdGVwaWNrZXIuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1zZWFyY2gtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VhcmNoIGlucHV0IGluIGEgZHJvcGRvd24gbGlzdGJveC4gKi9cbiAgLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCB0eXBlIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCB0eXBlIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1kYXRhLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBkYXRhIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBkYXRhIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBvcGVyYXRvciBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIG9wZXJhdG9yIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWxpZ2h0LXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCB0ZXh0IGNvbG9yIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvci4gKi9cbiAgLS1nbC1sYWJlbC1saWdodC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBsaWdodCBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWxpZ2h0LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBiYWNrZ3JvdW5kIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtbGlnaHQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBvbiBhIGxpZ2h0IGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtZGFyay10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGxhYmVsIHRleHQgY29sb3Igb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWRhcmstYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBzY29wZWQgbGFiZWwgdGV4dCBjb2xvci4gKi9cbiAgLS1nbC1sYWJlbC1zY29wZWQtYnV0dG9uLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBzY29wZWQgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBiYWNrZ3JvdW5kIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1sYWJlbC1zY29wZWQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHNjb3BlZCBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLWJ1dHRvbi1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHNjb3BlZCBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxpbmstbWVudGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBtZW50aW9uIGxpbmsgdGV4dCBjb2xvci4gKi9cbiAgLS1nbC1saW5rLW1lbnRpb24tdGV4dC1jb2xvci1jdXJyZW50OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBtZW50aW9uIGxpbmsgdGV4dCBjb2xvciB3aGVuIHJlZmVyZW5jaW5nIHRoZSBjdXJyZW50IHVzZXIuICovXG4gIC0tZ2wtbGluay1tZW50aW9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIG1lbnRpb24gbGluayBkZWZhdWx0IGJhY2tncm91bmQuICovXG4gIC0tZ2wtbGluay1tZW50aW9uLWJhY2tncm91bmQtY29sb3ItY3VycmVudDogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgbWVudGlvbiBsaW5rIGJhY2tncm91bmQgd2hlbiByZWZlcmVuY2luZyB0aGUgY3VycmVudCB1c2VyLiAqL1xuICAtLWdsLW5hdi1pdGVtLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9udCBzaXplIG9mIGEgbmF2aWdhdGlvbiBpdGVtICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWJvbGQpOyAvKiogVXNlZCBmb3IgdGhlIGZvbnQgd2VpZ2h0IG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiAqL1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgYmVzaWRlIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiBUaW50ZWQgdGhlbWVzIG92ZXJyaWRlIGl0IGluIHNyYy9zY3NzL3RoZW1lcy5zY3NzLiAqL1xuICAtLWdsLXByb2dyZXNzLWJhci10cmFjay1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIGZvciBhbGwgcHJvZ3Jlc3MtYmFyIHZhcmlhbnRzLiAqL1xuICAtLWdsLXNrZWxldG9uLWxvYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgc2tlbGV0b24gbG9hZGVyIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtc2tlbGV0b24tbG9hZGVyLXNoaW1tZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGFuaW1hdGVkIHNoaW1tZXIgZWZmZWN0IGluIGEgc2tlbGV0b24gbG9hZGVyLiAqL1xuICAtLWdsLXNwaW5uZXItdHJhY2stY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIHN0YXRpYyB0cmFjayAoYmFja2dyb3VuZCkgb2YgYSBsb2FkaW5nIHNwaW5uZXIuICovXG4gIC0tZ2wtc3Bpbm5lci10cmFjay1jb2xvci1saWdodDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIHN0YXRpYyB0cmFjayAoYmFja2dyb3VuZCkgb2YgYSBsb2FkaW5nIHNwaW5uZXIgb24gYSBkYXJrIGJhY2tncm91bmQuICovXG4gIC0tZ2wtc3Bpbm5lci1zZWdtZW50LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBhbmltYXRlZCBzZWdtZW50IG9mIGEgbG9hZGluZyBzcGlubmVyLiAqL1xuICAtLWdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1saWdodDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGFuaW1hdGVkIHNlZ21lbnQgb2YgYSBsb2FkaW5nIHNwaW5uZXIgb24gYSBkYXJrIGJhY2tncm91bmQuICovXG4gIC0tZ2wtdG9rZW4tc2VsZWN0b3ItdG9rZW4tY29udGFpbmVyLXRva2VuLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdG9rZW4gaW4gYSB0b2tlbi1zZWxlY3RvciB3aGVuIGl0J3MgdG9rZW4tY29udGFpbmVyIGlzIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC10b2tlbi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgdG9rZW4gYmFja2dyb3VuZCBjb2xvci4gKi9cbiAgLS1nbC10b29sdGlwLXRleHQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciBzdXBwbGVtZW50YWwgdG9vbHRpcCB0ZXh0IHRoYXQgaXMgbGVzcyBwcm9taW5lbnQgdGhhbiB0aGUgZGVmYXVsdCB0ZXh0IGFuZCByZW1haW5zIHRoZSBzYW1lIGNvbG9yIHJlZ2FyZGxlc3Mgb2YgbW9kZS4gKi9cbiAgLS1ibGFjazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwKTtcbiAgLS13aGl0ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTtcbiAgLS1ibHVlLTUwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwKTtcbiAgLS1ibHVlLTEwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApO1xuICAtLWJsdWUtMjAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTIwMCk7XG4gIC0tYmx1ZS0zMDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtMzAwKTtcbiAgLS1ibHVlLTQwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApO1xuICAtLWJsdWUtNTAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCk7XG4gIC0tYmx1ZS02MDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtNjAwKTtcbiAgLS1ibHVlLTcwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApO1xuICAtLWJsdWUtODAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTgwMCk7XG4gIC0tYmx1ZS05MDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtOTAwKTtcbiAgLS1ibHVlLTk1MDogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApO1xuICAtLWdyYXktMTA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTApO1xuICAtLWdyYXktNTA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApO1xuICAtLWdyYXktMTAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7XG4gIC0tZ3JheS0yMDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTtcbiAgLS1ncmF5LTMwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuICAtLWdyYXktNDAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7XG4gIC0tZ3JheS01MDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTAwKTtcbiAgLS1ncmF5LTYwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApO1xuICAtLWdyYXktNzAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7XG4gIC0tZ3JheS04MDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTtcbiAgLS1ncmF5LTkwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xuICAtLWdyYXktOTUwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7XG4gIC0tZ3JlZW4tNTA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTUwKTtcbiAgLS1ncmVlbi0xMDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTEwMCk7XG4gIC0tZ3JlZW4tMjAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApO1xuICAtLWdyZWVuLTMwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMzAwKTtcbiAgLS1ncmVlbi00MDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTQwMCk7XG4gIC0tZ3JlZW4tNTAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi01MDApO1xuICAtLWdyZWVuLTYwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTtcbiAgLS1ncmVlbi03MDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTcwMCk7XG4gIC0tZ3JlZW4tODAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi04MDApO1xuICAtLWdyZWVuLTkwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTAwKTtcbiAgLS1ncmVlbi05NTA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7XG4gIC0tb3JhbmdlLTUwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTApO1xuICAtLW9yYW5nZS0xMDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApO1xuICAtLW9yYW5nZS0yMDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0yMDApO1xuICAtLW9yYW5nZS0zMDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0zMDApO1xuICAtLW9yYW5nZS00MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS00MDApO1xuICAtLW9yYW5nZS01MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MDApO1xuICAtLW9yYW5nZS02MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS02MDApO1xuICAtLW9yYW5nZS03MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS03MDApO1xuICAtLW9yYW5nZS04MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS04MDApO1xuICAtLW9yYW5nZS05MDA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05MDApO1xuICAtLW9yYW5nZS05NTA6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApO1xuICAtLXB1cnBsZS01MDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTtcbiAgLS1wdXJwbGUtMTAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMTAwKTtcbiAgLS1wdXJwbGUtMjAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTtcbiAgLS1wdXJwbGUtMzAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMzAwKTtcbiAgLS1wdXJwbGUtNDAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNDAwKTtcbiAgLS1wdXJwbGUtNTAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNTAwKTtcbiAgLS1wdXJwbGUtNjAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNjAwKTtcbiAgLS1wdXJwbGUtNzAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNzAwKTtcbiAgLS1wdXJwbGUtODAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtODAwKTtcbiAgLS1wdXJwbGUtOTAwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTAwKTtcbiAgLS1wdXJwbGUtOTUwOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTUwKTtcbiAgLS1yZWQtNTA6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7XG4gIC0tcmVkLTEwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTEwMCk7XG4gIC0tcmVkLTIwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7XG4gIC0tcmVkLTMwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTMwMCk7XG4gIC0tcmVkLTQwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTQwMCk7XG4gIC0tcmVkLTUwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTUwMCk7XG4gIC0tcmVkLTYwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTYwMCk7XG4gIC0tcmVkLTcwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTcwMCk7XG4gIC0tcmVkLTgwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTgwMCk7XG4gIC0tcmVkLTkwMDogdmFyKC0tZ2wtY29sb3ItcmVkLTkwMCk7XG4gIC0tcmVkLTk1MDogdmFyKC0tZ2wtY29sb3ItcmVkLTk1MCk7XG4gIC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkaXNhYmxlZCBhY3Rpb24uICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkaXNhYmxlZCBhY3Rpb24gdGhhdCBzdGF5cyBzZWxlY3RlZC4gU2l0cyBiZXR3ZWVuIHRoZSBkaXNhYmxlZCBiYWNrZ3JvdW5kIGFuZCB0aGUgZW5hYmxlZCBzZWxlY3RlZCBiYWNrZ3JvdW5kIHNvIHRoZSBzZWxlY3RlZCBzdGF0ZSBrZWVwcyAzOjEgY29udHJhc3QgYWdhaW5zdCB0aGUgcGFnZSB3aGlsZSBzdGlsbCByZWFkaW5nIGFzIGRpc2FibGVkLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTYpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstMTYpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTYpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0xNik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1yZWQtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWJsdWUtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWJsdWUtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgZGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwKTsgLyoqIFVzZWQgdG8gc2xpZ2h0bHkgZGlmZmVyZW50aWF0ZSB0aGUgYmFja2dyb3VuZCBmcm9tIHRoZSBkZWZhdWx0LiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itc3Ryb25nOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgdG8gbWFrZSB0aGUgYmFja2dyb3VuZCBlYXNpbHkgc3RhbmQgb3V0IGZyb20gdGhlIGRlZmF1bHQuICovXG4gIC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIHRvIGlkZW50aWZ5IGEgZGlzYWJsZWQgc2VjdGlvbi4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciBjb21wb25lbnRzLCBsaWtlIHRvb2x0aXBzIGFuZCBkcmF3ZXJzLCBhbmQgY29udGVudCwgbGlrZSBhIHN0aWNreSBoZWFkZXIsIHRoYXQgb3ZlcmxhcCBvdGhlciBjb250ZW50LiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itc2VjdGlvbjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIGNvbnRhaW5lcnMsIGxpa2UgYSBjYXJkIGhlYWRlciwgdGhhdCBhcmUgdmlzdWFsbHkgZGlzdGluY3QgZnJvbSB0aGUgZGVmYXVsdCBwYWdlIGJhY2tncm91bmQgb25seSB3aGVuIG5lY2Vzc2FyeSB0byBtYWludGFpbiBhZmZvcmRhbmNlIGFuZCBoaWVyYXJjaHkgaW4gZGlmZmVyZW50IG1vZGVzLiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxheTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yNCk7IC8qKiBVc2VkIGZvciBhbiBvdmVybGF5IHRoYXQgY292ZXJzIG90aGVyIGNvbnRlbnQuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgZGVmYXVsdCBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciBkaXNhYmxlZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItY29uY2F0ZW5hdGlvbjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBzdGF0aWMgY29udGVudCB0aGF0IHByZXBlbmRzIG9yIGFwcGVuZHMgYSB0ZXh0IGlucHV0LiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1yZWFkb25seTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIHN0YXRpYyBjb250ZW50IHRoYXQgcHJlcGVuZHMgb3IgYXBwZW5kcyBhIHRleHQgaW5wdXQuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBiYWNrZ3JvdW5kIG9uIGhvdmVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIGZvcm0gY29udHJvbCAoaW5wdXQsIHJhZGlvIGJ1dHRvbiwgY2hlY2tib3gsIHRleHRhcmVhKSBkZWZhdWx0IGJvcmRlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGJvcmRlciBvbiBob3Zlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGJvcmRlciBvbiBmb2N1cy4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApOyAvKiogVXNlZCBmb3IgZGlzYWJsZWQgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGJvcmRlci4gKi9cbiAgLS1nbC1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciBwbGFjZWhvbGRlciB0ZXh0IHdpdGhpbiBpbnB1dHMuICovXG4gIC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciBjaGVja2JveCBhbmQgcmFkaW8gYnV0dG9uIHN0YXRlIGluZGljYXRvcnMuICovXG4gIC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIGEgYmFja2dyb3VuZCBhc3NvY2lhdGVkIHdpdGggc3Ryb25nIGZlZWRiYWNrIGxpa2UgYSB0b29sdGlwIG9yIHRvYXN0IG1lc3NhZ2UuICovXG4gIC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYXNzb2NpYXRlZCB3aXRoIHN0cm9uZyBmZWVkYmFjay4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdHJvbmctdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRleHQgb24gYSBzdHJvbmcgZmVlZGJhY2sgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdHJvbmctaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gb24gYSBzdHJvbmcgZmVlZGJhY2sgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdHJvbmctbGluay1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0zMDApOyAvKiogVXNlZCBmb3IgYSBsaW5rIG9uIGEgc3Ryb25nIGZlZWRiYWNrIGJhY2tncm91bmQuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGZlZWRiYWNrIGl0ZW0gd2hlbiB0aGVyZSBpc24ndCBhIHNwZWNpZmljIG1lYW5pbmcgb3IgdXJnZW5jeS4gKi9cbiAgLS1nbC1mZWVkYmFjay1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgZmVlZGJhY2sgaXRlbSB3aGVuIHRoZXJlIGlzbid0IGEgc3BlY2lmaWMgbWVhbmluZyBvciB1cmdlbmN5LiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBpbmZvcm1hdGlvbmFsIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgbmV3IGluZm9ybWF0aW9uIG9yIGEgY2hhbmdlIHRoYXQgZG9lc24ndCByZXF1aXJlIGltbWVkaWF0ZSBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2staW5mby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8tdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8taWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS02MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stc3VjY2Vzcy1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3VjY2VzcyBmZWVkYmFjayBpdGVtIHdoZW4gY29uZmlybWluZyB0aGUgc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIGEgdXNlci1pbml0aWF0ZWQgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBmZWVkYmFjayBpdGVtIHdoZW4gY29uZmlybWluZyB0aGUgc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIGEgdXNlci1pbml0aWF0ZWQgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgc3VjY2VzcyBmZWVkYmFjayBpdGVtIHdoZW4gY29uZmlybWluZyB0aGUgc3VjY2Vzc2Z1bCBjb21wbGV0aW9uIG9mIGEgdXNlci1pbml0aWF0ZWQgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay13YXJuaW5nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBwb3RlbnRpYWwgaXNzdWUgb3Igc2Vuc2l0aXZlIGluZm9ybWF0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXdhcm5pbmctaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIHBvdGVudGlhbCBpc3N1ZSBvciBzZW5zaXRpdmUgaW5mb3JtYXRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgY3JpdGljYWwgaXNzdWUgdGhhdCBoYXMganVzdCBvY2N1cnJlZCBhbmQgcmVxdWlyZXMgaW1tZWRpYXRlIGF0dGVudGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1kYW5nZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stYnJhbmQtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYnJhbmQtcmVsYXRlZCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIGluZm9ybWF0aW9uIHRoYXQgcGVydGFpbnMgdG8gR2l0TGFiLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJyYW5kLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYnJhbmQtcmVsYXRlZCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIGluZm9ybWF0aW9uIHRoYXQgcGVydGFpbnMgdG8gR2l0TGFiLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJyYW5kLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBicmFuZC1yZWxhdGVkIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgaW5mb3JtYXRpb24gdGhhdCBwZXJ0YWlucyB0byBHaXRMYWIuICovXG4gIC0tZ2wtZmVlZGJhY2stYnJhbmQtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGJyYW5kLXJlbGF0ZWQgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBpbmZvcm1hdGlvbiB0aGF0IHBlcnRhaW5zIHRvIEdpdExhYi4gKi9cbiAgLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgb3V0ZXIgY29sb3IgcG9ydGlvbiBvZiB0aGUgZm9jdXMgcmluZy4gKi9cbiAgLS1nbC1oaWdobGlnaHQtbWF0Y2gtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTUwMCk7IC8qKiBVc2VkIGZvciB0ZW1wb3JhcnkgdmlzdWFsIGVtcGhhc2lzIG9mIGJhY2tncm91bmRzIG9mIG1hdGNoZWQgc2VhcmNoIHRlcm1zLCBmaWx0ZXJlZCByZXN1bHRzLCBvciBhdXRvY29tcGxldGUgc3VnZ2VzdGlvbnMgd2l0aG91dCBpbXBseWluZyBhbnkgcGFydGljdWxhciBzdGF0ZSBvciBtZWFuaW5nLiAqL1xuICAtLWdsLWhpZ2hsaWdodC1tYXRjaC10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGV4dCB3aXRoaW4gdGVtcG9yYXJpbHkgaGlnaGxpZ2h0ZWQgbWF0Y2hlcyB0byBtYWludGFpbiByZWFkYWJpbGl0eSB3aGlsZSBkcmF3aW5nIGF0dGVudGlvbiB3aXRob3V0IGNvbnZleWluZyBzdGF0dXMuICovXG4gIC0tZ2wtaGlnaGxpZ2h0LXRhcmdldC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwKTsgLyoqIFVzZWQgZm9yIHRlbXBvcmFyeSB2aXN1YWwgZW1waGFzaXMgZm9yIGJhY2tncm91bmRzIG9mIHJlZmVyZW5jZWQgZWxlbWVudHMgKGZvciBleGFtcGxlIFVSTCBhbmNob3JzLCBob3ZlciBzdGF0ZXMpIG9yIHRvIHNob3cgcmVsYXRpb25zaGlwcyBiZXR3ZWVuIGNvbnRlbnQgd2l0aG91dCBpbXBseWluZyBzdGF0dXMgb3IgcmVxdWlyaW5nIGFjdGlvbi4gKi9cbiAgLS1nbC1oaWdobGlnaHQtdGFyZ2V0LWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCB0byBwcm92aWRlIGFkZGl0aW9uYWwgdmlzdWFsIGVtcGhhc2lzIGZvciBib3JkZXJzIG9mIHRlbXBvcmFyaWx5IHRhcmdldGVkIGVsZW1lbnRzIG9yIHdoZW4gdmlzdWFsaXppbmcgY29ubmVjdGlvbnMgYmV0d2VlbiByZWxhdGVkIGNvbnRlbnQsIGRpc3RpbmN0IGZyb20gcGVyc2lzdGVudCBzdGF0ZXMuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1pbmZvOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7IC8qKiBVc2VkIGZvciBhbiBpY29uIGFzc29jaWF0ZWQgd2l0aCBpbmZvcm1hdGlvbiBvciBoZWxwLiAqL1xuICAtLWdsLXN0YXR1cy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBzdGF0dXMgaXRlbSB3aGVuIHRoZSBzdGF0dXMgaXMgbmVpdGhlciBwb3NpdGl2ZSBub3IgbmVnYXRpdmUsIG9yIHdoZW4gaW5kaWNhdGluZyBhIHNwZWNpYWwgYnV0IHN0YWJsZSBzdGF0ZS4gKi9cbiAgLS1nbC1zdGF0dXMtbmV1dHJhbC10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG5ldXRyYWwgc3RhdHVzIGl0ZW0gd2hlbiB0aGUgc3RhdHVzIGlzIG5laXRoZXIgcG9zaXRpdmUgbm9yIG5lZ2F0aXZlLCBvciB3aGVuIGluZGljYXRpbmcgYSBzcGVjaWFsIGJ1dCBzdGFibGUgc3RhdGUuICovXG4gIC0tZ2wtc3RhdHVzLW5ldXRyYWwtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBuZXV0cmFsIHN0YXR1cyBpdGVtIHdoZW4gdGhlIHN0YXR1cyBpcyBuZWl0aGVyIHBvc2l0aXZlIG5vciBuZWdhdGl2ZSwgb3Igd2hlbiBpbmRpY2F0aW5nIGEgc3BlY2lhbCBidXQgc3RhYmxlIHN0YXRlLiAqL1xuICAtLWdsLXN0YXR1cy1pbmZvLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGluZm9ybWF0aW9uYWwgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgbm90ZXdvcnRoeSBvbmdvaW5nIGNvbmRpdGlvbiBvciBhIHN0YXRlIG9mIGFjdGl2ZSBwcm9ncmVzcy4gKi9cbiAgLS1nbC1zdGF0dXMtaW5mby10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIG5vdGV3b3J0aHkgb25nb2luZyBjb25kaXRpb24gb3IgYSBzdGF0ZSBvZiBhY3RpdmUgcHJvZ3Jlc3MuICovXG4gIC0tZ2wtc3RhdHVzLWluZm8taWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBub3Rld29ydGh5IG9uZ29pbmcgY29uZGl0aW9uIG9yIGEgc3RhdGUgb2YgYWN0aXZlIHByb2dyZXNzLiAqL1xuICAtLWdsLXN0YXR1cy1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3Mgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgcG9zaXRpdmUgb3V0Y29tZSwgY29tcGxldGlvbiwgb3IgZGVzaXJlZCBzdGF0ZS4gQ2xlYXJseSBjb252ZXlzIGEgcG9zaXRpdmUgY29ubm90YXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLXN1Y2Nlc3MtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBwb3NpdGl2ZSBvdXRjb21lLCBjb21wbGV0aW9uLCBvciBkZXNpcmVkIHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1zdGF0dXMtc3VjY2Vzcy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHBvc2l0aXZlIG91dGNvbWUsIGNvbXBsZXRpb24sIG9yIGRlc2lyZWQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIHBvc2l0aXZlIGNvbm5vdGF0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy13YXJuaW5nLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHN0YXRlIHRoYXQgcmVxdWlyZXMgaGVpZ2h0ZW5lZCBhd2FyZW5lc3Mgb3IgY2F1dGlvbiwgYnV0IGlzIG5vdCBuZWNlc3NhcmlseSBwcm9ibGVtYXRpYy4gUmVwcmVzZW50cyBhIHN0YXRlIHRoYXQgd2FycmFudHMgZXh0cmEgYXR0ZW50aW9uIG9yIGNhcmUgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBpdGVtLiAqL1xuICAtLWdsLXN0YXR1cy13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHN0YXRlIHRoYXQgcmVxdWlyZXMgaGVpZ2h0ZW5lZCBhd2FyZW5lc3Mgb3IgY2F1dGlvbiwgYnV0IGlzIG5vdCBuZWNlc3NhcmlseSBwcm9ibGVtYXRpYy4gUmVwcmVzZW50cyBhIHN0YXRlIHRoYXQgd2FycmFudHMgZXh0cmEgYXR0ZW50aW9uIG9yIGNhcmUgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBpdGVtLiAqL1xuICAtLWdsLXN0YXR1cy13YXJuaW5nLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS01MDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHN0YXRlIHRoYXQgcmVxdWlyZXMgaGVpZ2h0ZW5lZCBhd2FyZW5lc3Mgb3IgY2F1dGlvbiwgYnV0IGlzIG5vdCBuZWNlc3NhcmlseSBwcm9ibGVtYXRpYy4gUmVwcmVzZW50cyBhIHN0YXRlIHRoYXQgd2FycmFudHMgZXh0cmEgYXR0ZW50aW9uIG9yIGNhcmUgd2hlbiBpbnRlcmFjdGluZyB3aXRoIHRoZSBpdGVtLiAqL1xuICAtLWdsLXN0YXR1cy1kYW5nZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBjcml0aWNhbCBvciBzZXZlcmVseSBwcm9ibGVtYXRpYyBjdXJyZW50IHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBuZWdhdGl2ZSBjb25ub3RhdGlvbiwgcmVwcmVzZW50aW5nIGEgc2VyaW91cywgb25nb2luZyBpc3N1ZSBvciB1bmRlc2lyZWQgY29uZGl0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy1kYW5nZXItdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRhbmdlciBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBjcml0aWNhbCBvciBzZXZlcmVseSBwcm9ibGVtYXRpYyBjdXJyZW50IHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBuZWdhdGl2ZSBjb25ub3RhdGlvbiwgcmVwcmVzZW50aW5nIGEgc2VyaW91cywgb25nb2luZyBpc3N1ZSBvciB1bmRlc2lyZWQgY29uZGl0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy1kYW5nZXItaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBjcml0aWNhbCBvciBzZXZlcmVseSBwcm9ibGVtYXRpYyBjdXJyZW50IHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBuZWdhdGl2ZSBjb25ub3RhdGlvbiwgcmVwcmVzZW50aW5nIGEgc2VyaW91cywgb25nb2luZyBpc3N1ZSBvciB1bmRlc2lyZWQgY29uZGl0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy1icmFuZC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYnJhbmQtcmVsYXRlZCBzdGF0dXMgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyB0aGUgc3RhdGUgb2YgdW5pcXVlIGZlYXR1cmVzIG9yIGVsZW1lbnRzIHNwZWNpZmljIHRvIHRoZSBHaXRMYWIgYnJhbmQgaWRlbnRpdHkuIEhlbHBzIGRpc3Rpbmd1aXNoIGFuZCBlbXBoYXNpemUgYnJhbmQtc3BlY2lmaWMgZWxlbWVudHMgd2l0aGluIHRoZSBpbnRlcmZhY2UuICovXG4gIC0tZ2wtc3RhdHVzLWJyYW5kLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBicmFuZC1yZWxhdGVkIHN0YXR1cyBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIHRoZSBzdGF0ZSBvZiB1bmlxdWUgZmVhdHVyZXMgb3IgZWxlbWVudHMgc3BlY2lmaWMgdG8gdGhlIEdpdExhYiBicmFuZCBpZGVudGl0eS4gSGVscHMgZGlzdGluZ3Vpc2ggYW5kIGVtcGhhc2l6ZSBicmFuZC1zcGVjaWZpYyBlbGVtZW50cyB3aXRoaW4gdGhlIGludGVyZmFjZS4gKi9cbiAgLS1nbC1zdGF0dXMtYnJhbmQtaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGJyYW5kLXJlbGF0ZWQgc3RhdHVzIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgdGhlIHN0YXRlIG9mIHVuaXF1ZSBmZWF0dXJlcyBvciBlbGVtZW50cyBzcGVjaWZpYyB0byB0aGUgR2l0TGFiIGJyYW5kIGlkZW50aXR5LiBIZWxwcyBkaXN0aW5ndWlzaCBhbmQgZW1waGFzaXplIGJyYW5kLXNwZWNpZmljIGVsZW1lbnRzIHdpdGhpbiB0aGUgaW50ZXJmYWNlLiAqL1xuICAtLWdsLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGRlZmF1bHQgdGV4dCBjb2xvci4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLXN1YnRsZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3Igc3VwcGxlbWVudGFsIHRleHQgdGhhdCBkb2Vzbid0IG5lZWQgdG8gYmUgYXMgcHJvbWluZW50IGFzIG90aGVyIHRleHQuICovXG4gIC0tZ2wtdGV4dC1jb2xvci1zdHJvbmc6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRleHQgd2l0aCB0aGUgaGlnaGVzdCBjb250cmFzdC4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmc6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIGhlYWRpbmdzIGxldmVsIDEtNi4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLWxpbms6IHZhcigtLWdsLWNvbG9yLWJsdWUtNzAwKTsgLyoqIFVzZWQgZm9yIGRlZmF1bHQgdGV4dCBsaW5rcy4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLXdhcm5pbmc6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS02MDApOyAvKiogVXNlZCBmb3IgdGV4dCB0aGF0IHJlcXVpcmVzIGNhdXRpb24gb3IgY2FyZWZ1bCBhdHRlbnRpb24uICovXG4gIC0tZ2wtdGV4dC1jb2xvci1kYW5nZXI6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApOyAvKiogVXNlZCBmb3IgdGV4dCBpbmRpY2F0aW5nIGEgcHJvYmxlbSwgY3JpdGljYWwgc3RhdGUsIGRlc3RydWN0aXZlIGFjdGlvbiwgZXJyb3IsIGZhaWx1cmUsIHJlbW92YWwsIHN0b3AsIG9yIGRlY2xpbmF0aW9uLiAqL1xuICAtLWdsLXRleHQtY29sb3Itc3VjY2VzczogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTsgLyoqIFVzZWQgZm9yIHRleHQgaW5kaWNhdGluZyBzdWNjZXNzLCBjb21wbGV0aW9uLCBhcHByb3ZhbCwgYWRkaXRpb24sIG9yIHZhbGlkaXR5LiAqL1xuICAtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIGRpc2FibGVkIHRleHQuICovXG4gIC0tZ2wtaGVhZGluZy0xLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTcwMCk7XG4gIC0tZ2wtaGVhZGluZy0xLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTEtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS02MDApO1xuICAtLWdsLWhlYWRpbmctMi1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTMtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNTAwKTtcbiAgLS1nbC1oZWFkaW5nLTMtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS00MDApO1xuICAtLWdsLWhlYWRpbmctNC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtaGVhZGluZy01LWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTYtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMjAwKTtcbiAgLS1nbC1oZWFkaW5nLTYtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTEwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTIwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTQwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTUwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTYwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS03MDApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtODAwKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMTAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMzAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNDAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNTAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTcwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS04MDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtODAwKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctZGlzcGxheS1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTYpO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS03MDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTUwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNDAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS0zMDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTIwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1ib3JkZXItY29sb3Itc2VjdGlvbjogdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciB0aGF0IHN1cnJvdW5kcyBjb250ZW50IG9yIGVsZW1lbnRzIHdoZW4gdGhleSBhcHBlYXIgYXMgYSBjbG9zZWQgY29udGFpbmVyIG9yIGNsb3NlZCBzZWN0aW9uIG9mIHRoZSBwYWdlLiAqL1xuICAtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdDogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1tZCk7XG4gIC0tZ2wtZm9udC1zaXplLWJhc2U6IHZhcigtLWdsLWZvbnQtc2l6ZS1tZCk7XG4gIC0tZ2wtc2hhZG93LXNtOiAwIDAgMnB4IDAgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpLCAwIDFweCA0cHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciBzdXJmYWNlcyB0aGF0IG5lZWQgdG8gaW5kaWNhdGUgdXNlcnMgY2FuIG1hbnVhbGx5IGludGVyYWN0IHdpdGggdGhlbS4gRm9yIGV4YW1wbGUsIGNhcmRzIGluIGlzc3VlIGJvYXJkLiAqL1xuICAtLWdsLXNoYWRvdy1tZDogMCAwIDFweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCAwIDJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCAycHggOHB4IDAgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3Igc3VyZmFjZXMgdGhhdCBuZWVkIGJvdW5kYXJ5IGRlZmluaXRpb24gYW5kIGFwcGVhciBvbiBob3Zlci4gRm9yIGV4YW1wbGUsIHBvcG92ZXJzLiAqL1xuICAtLWdsLXNoYWRvdy1sZzogMCAwIDJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCAwIDJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCA0cHggMTJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGxhcmdlIHN1cmZhY2VzIHRoYXQgcHJlc2VudCBhZGRpdGlvbmFsIGNvbnRleHQgdG8gdGhlIHVzZXIuICovXG4gIC0tZ2wtYWxlcnQtYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1sZyk7IC8qKiBVc2VkIGZvciBhbGVydCBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWFsZXJ0LW5ldXRyYWwtdGl0bGUtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgdGl0bGUgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbmV1dHJhbCBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1uZXV0cmFsLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby10aXRsZS1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTsgLyoqIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhbiBpbmZvIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8tYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYW4gaW5mbyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1zdWNjZXNzLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpOyAvKiogVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBzdWNjZXNzIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LXdhcm5pbmctdGl0bGUtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgdGl0bGUgY29sb3Igb2YgYSB3YXJuaW5nIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgd2FybmluZyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC13YXJuaW5nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtZGFuZ2VyLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpOyAvKiogVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1kYW5nZXItYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIGRhbmdlciBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1kYW5nZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1kYW5nZXItYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBkYW5nZXIgYWxlcnQuICovXG4gIC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLWxnKTsgLyoqIEJvcmRlciByYWRpdXMgZm9yIHNxdWFyZSBhdmF0YXJzIGF0IGxhcmdlciBzaXplcyAoNDhweCwgNjRweCwgOTZweCkuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYmFkZ2UtbXV0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLW11dGVkLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItaWNvbi1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRhc2hlZC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFzaGVkIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWxpbmstYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1tZCk7IC8qKiBVc2VkIGZvciBsaW5rIGJ1dHRvbiBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtdGV4dC1jb2xvci1saW5rKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1jYXJkLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMteGwpOyAvKiogVXNlZCBmb3IgY2FyZCBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWNoYXJ0LWF4aXMtdGV4dC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGUpOyAvKiogVXNlZCBpbiBjaGFydHMgZm9yIHRoZSB0ZXh0IGNvbG9yIG9mIGF4aXMgdGl0bGVzIGFuZCBsYWJlbHMuICovXG4gIC0tZ2wtZGF0ZXBpY2tlci1kYXRlLXRleHQtY29sb3Itc2VsZWN0ZWQ6IHZhcigtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkKTsgLyoqIFVzZWQgZm9yIHRoZSBkYXRlcGlja2VyIGRhdGUgdGV4dCBjb2xvciBzdGF0ZSBpbmRpY2F0b3JzLiAqL1xuICAtLWdsLWRyYXdlci1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLTJ4bCk7IC8qKiBVc2VkIGZvciBkcmF3ZXIgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1kcm9wZG93bi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkcm9wZG93bi4gKi9cbiAgLS1nbC1kcm9wZG93bi1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJvcmRlci1jb2xvci1zdHJvbmcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRyb3Bkb3duLiAqL1xuICAtLWdsLWRyb3Bkb3duLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciByYWRpdXMgb2YgYSBkcm9wZG93bi4gKi9cbiAgLS1nbC1kcm9wZG93bi1kaXZpZGVyLWNvbG9yOiB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZGl2aWRlciBvZiBhIGRyb3Bkb3duLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGRpc2FibGVkIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBkcm9wZG93biBzZWxlY3RlZCBvcHRpb24gaW5kaWNhdG9yIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiB1bnNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gdW5zZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1czogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLW1vZGFsLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtMnhsKTsgLyoqIFVzZWQgZm9yIG1vZGFsIGJvcmRlciByYWRpdXMuICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLXN0YXR1cy1pbmZvLWljb24tY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGluZGljYXRvciBjb2xvciBmb3IgdGhlIHByaW1hcnkgcHJvZ3Jlc3MtYmFyIHZhcmlhbnQuICovXG4gIC0tZ2wtcHJvZ3Jlc3MtYmFyLWluZGljYXRvci1jb2xvci1zdWNjZXNzOiB2YXIoLS1nbC1zdGF0dXMtc3VjY2Vzcy1pY29uLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgY29sb3IgZm9yIHRoZSBzdWNjZXNzIHByb2dyZXNzLWJhciB2YXJpYW50LiAqL1xuICAtLWdsLXByb2dyZXNzLWJhci1pbmRpY2F0b3ItY29sb3Itd2FybmluZzogdmFyKC0tZ2wtc3RhdHVzLXdhcm5pbmctaWNvbi1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgd2FybmluZyBwcm9ncmVzcy1iYXIgdmFyaWFudC4gKi9cbiAgLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLWRhbmdlcjogdmFyKC0tZ2wtc3RhdHVzLWRhbmdlci1pY29uLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgY29sb3IgZm9yIHRoZSBkYW5nZXIgcHJvZ3Jlc3MtYmFyIHZhcmlhbnQuICovXG4gIC0tZ2wtdGFibGUtcm93LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWhpZ2hsaWdodC10YXJnZXQtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHRhYmxlIHJvdyBpbiBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10YWJsZS1zb3J0aW5nLWljb24tY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgY29sb3Igb2YgdGhlIHNvcnRpbmcgaWNvbnMgaW4gdGhlIGNvbHVtbiBoZWFkZXJzLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRpc2FibGVkOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBkaXNhYmxlZCB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaC4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGRpc2FibGVkIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCwgd2hpY2ggc3RheXMgZmlsbGVkIHNvIHRoZSBjaGVja2VkIHN0YXRlIHJlbWFpbnMgbGVnaWJsZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWxvYWRpbmc6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGxvYWRpbmcgdG9nZ2xlIHN3aXRjaC4gQSBsb2FkaW5nIHRvZ2dsZSByZW5kZXJzIG5vIHRodW1iIGFuZCBpdHMgdmFsdWUgaXMgc3RpbGwgaW4gZmxpZ2h0LCBzbyB0aGUgdHJhY2sgY2FycmllcyBubyBjaGVja2VkIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGRpc2FibGVkIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgZGlzYWJsZWQgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGEgZGlzYWJsZWQgdG9nZ2xlIHN3aXRjaC4gKi9cbiAgLS1nbC10b2tlbi1mb3JlZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRva2VuIGZvcmVncm91bmQgY29sb3IuICovXG4gIC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciByYWRpdXMgb2YgYW4gYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1czogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQgb24gZm9jdXMuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBiYWNrZ3JvdW5kIHdoZW4gZGlzYWJsZWQuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZXJyb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgaW52YWxpZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYm9yZGVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciBvbiBob3Zlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGRlZmF1bHQgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1jb250cm9sLXRleHQtY29sb3ItZXJyb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGFuZ2VyKTsgLyoqIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyBpbnZhbGlkLiAqL1xuICAtLWdsLWNvbnRyb2wtdGV4dC1jb2xvci12YWxpZDogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWNjZXNzKTsgLyoqIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyB2YWxpZC4gKi9cbiAgLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQpOyAvKiogVXNlZCBmb3IgZGlzYWJsZWQgY2hlY2tib3ggYW5kIHJhZGlvIGJ1dHRvbiBzdGF0ZSBpbmRpY2F0b3JzLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciByYWRpdXMgb2YgYSBmZWVkYmFjayBlbGVtZW50LiAqL1xuICAtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgaW5uZXIgbmV1dHJhbCBwb3J0aW9uIG9mIHRoZSBmb2N1cyByaW5nLiAqL1xuICAtLWdsLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IGljb24gY29sb3IuIENhbiBiZSBwYWlyZWQgd2l0aCBkZWZhdWx0IHRleHQuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdWJ0bGU6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgZm9yIGEgc3RhdGljIG9yIGRlY29yYXRpb25hbCBpY29uLiBDYW4gYmUgcGFpcmVkIHdpdGggc3VidGxlIHRleHQuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdHJvbmc6IHZhcigtLWdsLXRleHQtY29sb3Itc3Ryb25nKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gd2l0aCB0aGUgaGlnaGVzdCBjb250cmFzdC4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWRpc2FibGVkOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gd2l0aGluIGEgZGlzYWJsZWQgc2VjdGlvbi4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWxpbms6IHZhcigtLWdsLXRleHQtY29sb3ItbGluayk7IC8qKiBVc2VkIGZvciBhbiBpY29uIHdpdGhpbiBhIGxpbmsuICovXG4gIC0tZ2wtaWNvbi1jb2xvci13YXJuaW5nOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXdhcm5pbmcpOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggYSB3YXJuaW5nLiAqL1xuICAtLWdsLWljb24tY29sb3ItZGFuZ2VyOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRhbmdlcik7IC8qKiBVc2VkIGZvciBhbiBpY29uIGFzc29jaWF0ZWQgd2l0aCBhbiBlcnJvciBvciBkYW5nZXIuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdWNjZXNzOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXN1Y2Nlc3MpOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggc3VjY2VzcyBvciB2YWxpZGl0eS4gKi9cbiAgLS1nbC10ZXh0LXByaW1hcnk6IHZhcigtLWdsLXRleHQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2UgdGV4dC5jb2xvci5kZWZhdWx0IGluc3RlYWQuICovXG4gIC0tZ2wtdGV4dC1zZWNvbmRhcnk6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZSB0ZXh0LmNvbG9yLnN1YnRsZSBpbnN0ZWFkLiAqL1xuICAtLWdsLXRleHQtdGVydGlhcnk6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpOyAvKiogVXNlIHRleHQuY29sb3IuZGlzYWJsZWQgaW5zdGVhZC4gKi9cbiAgLS1nbC1oZWFkaW5nLTEtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMS1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy0xLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTEtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTItbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctMi1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy0yLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMy1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0zLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTMtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctMy1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy00LW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTUtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctNS1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy01LWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNi1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy02LW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTYtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctNi1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctZGlzcGxheS1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1kaXNwbGF5LW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTEtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMy1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctNC1maXhlZC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTUtZml4ZWQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNi1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQ6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7IC8qKiBCb3JkZXIgcmFkaXVzIGZvciBzcXVhcmUgYXZhdGFycyBhdCBzbWFsbGVyIHNpemVzICgxNnB4LCAyNHB4LCAzMnB4KS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGJyb2FkY2FzdCBiYW5uZXIgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1idXR0b24tYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXMpOyAvKiogVXNlZCBmb3IgYnV0dG9uIGJvcmRlciByYWRpdXMuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGxpbmsgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1jaGFydC1heGlzLXBvaW50ZXItY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgY29sb3Igb2YgdGhlIHJlZmVyZW5jZSBsaW5lIGFuZCBheGlzIHZhbHVlIHVuZGVyIG1vdXNlIHBvaW50ZXIuICovXG4gIC0tZ2wtY2hhcnQtem9vbS1oYW5kbGUtY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgaGFuZGxlIGNvbG9yIHdoZW4gem9vbWluZyBpbiBvbiBhIHNwZWNpZmljIGFyZWEgb2YgZGF0YS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24taW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkLWZvY3VzOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtYWN0aXZlOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hY3Rpb24tYm9yZGVyLXJhZGl1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIHJhZGl1cyBvZiBhIG5hdmlnYXRpb24gaXRlbSAqL1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBzZWxlY3RlZCBpbmRpY2F0b3Igb2YgYSB0YWIuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gVGhlIHRyYWNrIGlzIGRlbGliZXJhdGVseSB1bmNoYW5nZWQgZnJvbSB0aGUgZGVmYXVsdCBzdGF0ZTsgaG92ZXIgaXMgY2FycmllZCBieSB0aGUgdHJhY2sgYm9yZGVyIGFuZCB0aGUgdGh1bWIgc2l6ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBkaXNhYmxlZCBjaGVja2VkIHRvZ2dsZSBzd2l0Y2gsIHdoaWNoIG1hdGNoZXMgdGhlIHRyYWNrIGNvbG9yLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWxvYWRpbmc6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItbG9hZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgbG9hZGluZyB0b2dnbGUgc3dpdGNoLCB3aGljaCBtYXRjaGVzIHRoZSB0cmFjayBjb2xvciBzbyB0aGUgdHJhY2sgcmVhZHMgYXMgYSBzaW5nbGUgZmxhdCBmaWxsLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCk7IC8qKiBVc2UgdG9nZ2xlLnN3aXRjaC5iYWNrZ3JvdW5kLmNvbG9yLnVuY2hlY2tlZC5kaXNhYmxlZCBpbnN0ZWFkLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRva2VuLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0b2tlbiBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1mb2N1czogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciBvbiBmb2N1cy4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciB3aGVuIGRpc2FibGVkLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGZvY3VzIHN0YXRlLiBUaGUgdHJhY2sgaXMgZGVsaWJlcmF0ZWx5IHVuY2hhbmdlZCBmcm9tIHRoZSBkZWZhdWx0IHN0YXRlOyBmb2N1cyBpcyBjYXJyaWVkIGJ5IHRoZSBmb2N1cyByaW5nLCB0aGUgdHJhY2sgYm9yZGVyIGFuZCB0aGUgdGh1bWIgc2l6ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG59XG4iLCIvKipcbiAqIERvIG5vdCBlZGl0IGRpcmVjdGx5LCB0aGlzIGZpbGUgd2FzIGF1dG8tZ2VuZXJhdGVkLlxuICovXG5cbjpyb290LmdsLWRhcmssIC5nbC1kYXJrLXNjb3BlIHtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLWZ1bGw6IDk5OTlweDtcbiAgLS1nbC1jb2xvci1hbHBoYS0wOiByZ2JhKDAsIDAsIDAsIDApO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstMjogcmdiYSg1LCA1LCA2LCAwLjAyKTtcbiAgLS1nbC1jb2xvci1hbHBoYS1kYXJrLTQ6IHJnYmEoNSwgNSwgNiwgMC4wNCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay02OiByZ2JhKDUsIDUsIDYsIDAuMDYpO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstODogcmdiYSg1LCA1LCA2LCAwLjA4KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1kYXJrLTE2OiByZ2JhKDUsIDUsIDYsIDAuMTYpO1xuICAtLWdsLWNvbG9yLWFscGhhLWRhcmstMjQ6IHJnYmEoNSwgNSwgNiwgMC4yNCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtZGFyay00MDogcmdiYSg1LCA1LCA2LCAwLjQpO1xuICAtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTtcbiAgLS1nbC1jb2xvci1hbHBoYS1saWdodC02OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpO1xuICAtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTg6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMTY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMjQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMzY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNik7XG4gIC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtNDA6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC40KTtcbiAgLS1nbC1jb2xvci1ibHVlLTUwOiAjZThmMmZkO1xuICAtLWdsLWNvbG9yLWJsdWUtMTAwOiAjYzhlMGY5O1xuICAtLWdsLWNvbG9yLWJsdWUtMjAwOiAjOWRjOGYyO1xuICAtLWdsLWNvbG9yLWJsdWUtMzAwOiAjNjRhN2U5O1xuICAtLWdsLWNvbG9yLWJsdWUtNDAwOiAjM2Y4ZWRkO1xuICAtLWdsLWNvbG9yLWJsdWUtNTAwOiAjMWY3M2NhO1xuICAtLWdsLWNvbG9yLWJsdWUtNjAwOiAjMjU2NmI1O1xuICAtLWdsLWNvbG9yLWJsdWUtNzAwOiAjMjc1OTlmO1xuICAtLWdsLWNvbG9yLWJsdWUtODAwOiAjMjU0NTgxO1xuICAtLWdsLWNvbG9yLWJsdWUtOTAwOiAjMWYzMTY2O1xuICAtLWdsLWNvbG9yLWJsdWUtOTUwOiAjMWQyMTUzO1xuICAtLWdsLWNvbG9yLWJyYW5kLXdoaXRlOiAjZmZmO1xuICAtLWdsLWNvbG9yLWJyYW5kLWNoYXJjb2FsOiAjMTcxMzIxO1xuICAtLWdsLWNvbG9yLWJyYW5kLW9yYW5nZS0wMWc6ICNmZmQxYmY7XG4gIC0tZ2wtY29sb3ItYnJhbmQtb3JhbmdlLTAxcDogI2ZjYTMyNjtcbiAgLS1nbC1jb2xvci1icmFuZC1vcmFuZ2UtMDJwOiAjZmM2ZDI2O1xuICAtLWdsLWNvbG9yLWJyYW5kLW9yYW5nZS0wM3A6ICNlMjQzMjk7XG4gIC0tZ2wtY29sb3ItYnJhbmQtcHVycGxlLTAxZzogI2NlYjNlZjtcbiAgLS1nbC1jb2xvci1icmFuZC1wdXJwbGUtMDFwOiAjYTk4OWY1O1xuICAtLWdsLWNvbG9yLWJyYW5kLXB1cnBsZS0wMnA6ICM3NzU5YzI7XG4gIC0tZ2wtY29sb3ItYnJhbmQtZ3JheS0wMTogI2QxZDBkMztcbiAgLS1nbC1jb2xvci1icmFuZC1ncmF5LTAyOiAjYTJhMWE2O1xuICAtLWdsLWNvbG9yLWJyYW5kLWdyYXktMDM6ICM3NDcxN2E7XG4gIC0tZ2wtY29sb3ItYnJhbmQtZ3JheS0wNDogIzQ1NDI0ZDtcbiAgLS1nbC1jb2xvci1icmFuZC1ncmF5LTA1OiAjMmIyODM4O1xuICAtLWdsLWNvbG9yLWJyYW5kLXBpbmstMDFnOiAjZmZiOWM5O1xuICAtLWdsLWNvbG9yLWRhdGEtZ3JlZW4tNTA6ICNkZGZhYjc7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi0xMDA6ICNjNmVkOTQ7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi0yMDA6ICNiMGQ5N2I7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi0zMDA6ICM5NGMyNWU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi00MDA6ICM4MWFjNDE7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi01MDA6ICM2MTkwMjU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi02MDA6ICM0ZTdmMGU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi03MDA6ICMzNjY4MDA7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi04MDA6ICMyNzU2MDA7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi05MDA6ICMxYTQ1MDA7XG4gIC0tZ2wtY29sb3ItZGF0YS1ncmVlbi05NTA6ICMxMzNhMDM7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTUwOiAjYjVmZWZkO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS0xMDA6ICM5M2YyZWY7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTIwMDogIzVlZGVlMztcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtMzAwOiAjMzJjNWQyO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS00MDA6ICMwMGFjYzQ7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTUwMDogIzAwOTBiMTtcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtNjAwOiAjMDA3YjliO1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS03MDA6ICMwMDYzODE7XG4gIC0tZ2wtY29sb3ItZGF0YS1hcXVhLTgwMDogIzAwNTE2YztcbiAgLS1nbC1jb2xvci1kYXRhLWFxdWEtOTAwOiAjMDA0MDU5O1xuICAtLWdsLWNvbG9yLWRhdGEtYXF1YS05NTA6ICMwMDM0NGI7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTUwOiAjZTllYmZmO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS0xMDA6ICNkMmRjZmY7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTIwMDogI2I3YzZmZjtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtMzAwOiAjOTdhY2ZmO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS00MDA6ICM3OTkyZjU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTUwMDogIzYxN2FlMjtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtNjAwOiAjNGU2NWNkO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS03MDA6ICMzZjUxYWU7XG4gIC0tZ2wtY29sb3ItZGF0YS1ibHVlLTgwMDogIzM3NDI5MTtcbiAgLS1nbC1jb2xvci1kYXRhLWJsdWUtOTAwOiAjMzAzNDcwO1xuICAtLWdsLWNvbG9yLWRhdGEtYmx1ZS05NTA6ICMyYTJiNTk7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTUwOiAjZmZlM2ViO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS0xMDA6ICNmZmNjZGI7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTIwMDogI2ZjYWNjNTtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtMzAwOiAjZjg4YWFmO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS00MDA6ICNlODZlOWE7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTUwMDogI2NmNGQ4MTtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtNjAwOiAjYjkzZDcxO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS03MDA6ICM5YTJlNWQ7XG4gIC0tZ2wtY29sb3ItZGF0YS1tYWdlbnRhLTgwMDogIzdjMjE0ZjtcbiAgLS1nbC1jb2xvci1kYXRhLW1hZ2VudGEtOTAwOiAjNjYxZTNhO1xuICAtLWdsLWNvbG9yLWRhdGEtbWFnZW50YS05NTA6ICM1NDFkMzE7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNTA6ICNmYWU4ZDE7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtMTAwOiAjZjVkNmIzO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTIwMDogI2VlYmQ4YztcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS0zMDA6ICNlOTliNjA7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNDAwOiAjZTA3ZTQxO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTUwMDogI2M5NWQyZTtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS02MDA6ICNiMTRmMTg7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtNzAwOiAjOTI0MzBhO1xuICAtLWdsLWNvbG9yLWRhdGEtb3JhbmdlLTgwMDogIzZmMzUwMDtcbiAgLS1nbC1jb2xvci1kYXRhLW9yYW5nZS05MDA6ICM1ZTJmMDU7XG4gIC0tZ2wtY29sb3ItZGF0YS1vcmFuZ2UtOTUwOiAjNGIyNzA3O1xuICAtLWdsLWNvbG9yLWdyZWVuLTUwOiAjZTZmNWVhO1xuICAtLWdsLWNvbG9yLWdyZWVuLTEwMDogI2JlZTZkMDtcbiAgLS1nbC1jb2xvci1ncmVlbi0yMDA6ICM4NGQ0YjY7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tMzAwOiAjMzViNTk3O1xuICAtLWdsLWNvbG9yLWdyZWVuLTQwMDogIzEyOWM4NDtcbiAgLS1nbC1jb2xvci1ncmVlbi01MDA6ICMwZDgwNzA7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tNjAwOiAjMGM3MjY1O1xuICAtLWdsLWNvbG9yLWdyZWVuLTcwMDogIzBiNjQ1YTtcbiAgLS1nbC1jb2xvci1ncmVlbi04MDA6ICMwNzUwNDg7XG4gIC0tZ2wtY29sb3ItZ3JlZW4tOTAwOiAjMDAzYzM2O1xuICAtLWdsLWNvbG9yLWdyZWVuLTk1MDogIzAwMmMyNjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTA6ICNmZmY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDogI2Y3ZjdmNTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTUwOiAjZWNlYmVhO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwOiAjZGNkYmQ5O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMjAwOiAjYzFiZmJlO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMzAwOiAjYTVhM2EzO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNDAwOiAjOGE4ODg4O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTAwOiAjNzQ3MjczO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNjAwOiAjNjQ2MTYzO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNzAwOiAjNGQ0YjRlO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtODAwOiAjM2EzODNkO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTAwOiAjMjgyNzJkO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtOTUwOiAjMTgxNzFkO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTAwMDogIzA1MDQwODtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtNTA6ICNmZGYwZDU7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTEwMDogI2ZhZGE5YztcbiAgLS1nbC1jb2xvci1vcmFuZ2UtMjAwOiAjZjdiOTUxO1xuICAtLWdsLWNvbG9yLW9yYW5nZS0zMDA6ICNmYjgwMTc7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTQwMDogI2U5NWYyMTtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtNTAwOiAjYzc0ODE2O1xuICAtLWdsLWNvbG9yLW9yYW5nZS02MDA6ICNiMzQwMTM7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTcwMDogIzllMzgxMTtcbiAgLS1nbC1jb2xvci1vcmFuZ2UtODAwOiAjN2QyZDBlO1xuICAtLWdsLWNvbG9yLW9yYW5nZS05MDA6ICM1ZDIyMGQ7XG4gIC0tZ2wtY29sb3Itb3JhbmdlLTk1MDogIzQ2MTgwNztcbiAgLS1nbC1jb2xvci1wdXJwbGUtNTA6ICNmNGYwZmM7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTEwMDogI2UxZGFmNztcbiAgLS1nbC1jb2xvci1wdXJwbGUtMjAwOiAjYzliZWVmO1xuICAtLWdsLWNvbG9yLXB1cnBsZS0zMDA6ICNhOTk3ZTE7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTQwMDogIzkyN2NkNztcbiAgLS1nbC1jb2xvci1wdXJwbGUtNTAwOiAjNzg2MmM4O1xuICAtLWdsLWNvbG9yLXB1cnBsZS02MDA6ICM2YTU0YzA7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTcwMDogIzViNDZiODtcbiAgLS1nbC1jb2xvci1wdXJwbGUtODAwOiAjNDgzNjk4O1xuICAtLWdsLWNvbG9yLXB1cnBsZS05MDA6ICMzNjI2NzY7XG4gIC0tZ2wtY29sb3ItcHVycGxlLTk1MDogIzI5MWE1YztcbiAgLS1nbC1jb2xvci1yZWQtNTA6ICNmZWVlZjA7XG4gIC0tZ2wtY29sb3ItcmVkLTEwMDogI2ZmZDNkNztcbiAgLS1nbC1jb2xvci1yZWQtMjAwOiAjZmZhZmI4O1xuICAtLWdsLWNvbG9yLXJlZC0zMDA6ICNmYzc5ODg7XG4gIC0tZ2wtY29sb3ItcmVkLTQwMDogI2YxNTE2ODtcbiAgLS1nbC1jb2xvci1yZWQtNTAwOiAjZGUxZDRiO1xuICAtLWdsLWNvbG9yLXJlZC02MDA6ICNjNTIwNDI7XG4gIC0tZ2wtY29sb3ItcmVkLTcwMDogI2FjMjAzYTtcbiAgLS1nbC1jb2xvci1yZWQtODAwOiAjODkxYzJmO1xuICAtLWdsLWNvbG9yLXJlZC05MDA6ICM2NDE5MjU7XG4gIC0tZ2wtY29sb3ItcmVkLTk1MDogIzQ4MTUxZDtcbiAgLS1nbC1mb250LWZhbWlseS1yZWd1bGFyOiB2YXIoLS1kZWZhdWx0LXJlZ3VsYXItZm9udCwgJ0dpdExhYiBTYW5zJyksJ0dpdExhYiBTYW5zJywtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCwnU2Vnb2UgVUknLFJvYm90bywnTm90byBTYW5zJyxVYnVudHUsQ2FudGFyZWxsLCdIZWx2ZXRpY2EgTmV1ZScsc2Fucy1zZXJpZiwnQXBwbGUgQ29sb3IgRW1vamknLCdTZWdvZSBVSSBFbW9qaScsJ1NlZ29lIFVJIFN5bWJvbCcsJ05vdG8gQ29sb3IgRW1vamknO1xuICAtLWdsLWZvbnQtZmFtaWx5LW1vbm9zcGFjZTogdmFyKC0tZGVmYXVsdC1tb25vLWZvbnQsICdHaXRMYWIgTW9ubycpLCdHaXRMYWIgTW9ubycsJ0pldEJyYWlucyBNb25vJyxNZW5sbywnRGVqYVZ1IFNhbnMgTW9ubycsJ0xpYmVyYXRpb24gTW9ubycsQ29uc29sYXMsJ1VidW50dSBNb25vJywnQ291cmllciBOZXcnLCdhbmRhbGUgbW9ubycsJ2x1Y2lkYSBjb25zb2xlJyxtb25vc3BhY2U7XG4gIC0tZ2wtZm9udC1zaXplLTEwMDogMC43NXJlbTsgLyoqIFVzZWQgZm9yIG1ldGEgdGV4dCBhbmQgc21hbGwgbGFiZWxzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS0yMDA6IDAuODEyNXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDYgaGVhZGluZ3MuICovXG4gIC0tZ2wtZm9udC1zaXplLTMwMDogMC44NzVyZW07IC8qKiBVc2VkIGZvciBsZXZlbCA1IGhlYWRpbmdzLCBib2R5IHRleHQsIGlucHV0IGxhYmVscywgYW5kIGhlbHAgdGV4dC4gKi9cbiAgLS1nbC1mb250LXNpemUtNDAwOiAxcmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgNCBoZWFkaW5ncywgbGFyZ2UgYm9keSB0ZXh0LiAqL1xuICAtLWdsLWZvbnQtc2l6ZS01MDA6IGNsYW1wKDEuMTI1cmVtLCAwLjkwMjc3Nzc3NzhyZW0gKyAwLjQ2Mjk2Mjk2M3Z3LCAxLjI1cmVtKTsgLyoqIFVzZWQgZm9yIHJlc3BvbnNpdmUgbGV2ZWwgMyBoZWFkaW5ncy4gKi9cbiAgLS1nbC1mb250LXNpemUtNjAwOiBjbGFtcCgxLjMxMjVyZW0sIDAuODY4MDU1NTU1NnJlbSArIDAuOTI1OTI1OTI1OXZ3LCAxLjU2MjVyZW0pOyAvKiogVXNlZCBmb3IgcmVzcG9uc2l2ZSBsZXZlbCAyIGhlYWRpbmdzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS03MDA6IGNsYW1wKDEuNXJlbSwgMC44MzMzMzMzMzMzcmVtICsgMS4zODg4ODg4ODg5dncsIDEuODc1cmVtKTsgLyoqIFVzZWQgZm9yIHJlc3BvbnNpdmUgbGV2ZWwgMSBoZWFkaW5ncyAqL1xuICAtLWdsLWZvbnQtc2l6ZS04MDA6IGNsYW1wKDEuNzVyZW0sIDAuODYxMTExMTExMXJlbSArIDEuODUxODUxODUxOXZ3LCAyLjI1cmVtKTsgLyoqIFVzZWQgZm9yIGEgcmVzcG9uc2l2ZSBkaXNwbGF5IG9wdGlvbiB0aGF0IGNhbiBiZSBhcHBsaWVkIHRvIGEgbGV2ZWwgMSBoZWFkaW5nIHRvIGluY3JlYXNlIGl0cyBwcm9taW5lbmNlLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS14czogMC42MjVyZW07XG4gIC0tZ2wtZm9udC1zaXplLTEwMC1maXhlZDogMC43NXJlbTsgLyoqIFVzZWQgZm9yIG1ldGEgdGV4dCBhbmQgc21hbGwgbGFiZWxzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS0yMDAtZml4ZWQ6IDAuODEyNXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDYgaGVhZGluZ3MuICovXG4gIC0tZ2wtZm9udC1zaXplLTMwMC1maXhlZDogMC44NzVyZW07IC8qKiBVc2VkIGZvciBsZXZlbCA1IGhlYWRpbmdzLCBib2R5IHRleHQsIGlucHV0IGxhYmVscywgYW5kIGhlbHAgdGV4dC4gKi9cbiAgLS1nbC1mb250LXNpemUtNDAwLWZpeGVkOiAxcmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgNCBoZWFkaW5ncywgbGFyZ2UgYm9keSB0ZXh0LiAqL1xuICAtLWdsLWZvbnQtc2l6ZS01MDAtZml4ZWQ6IDEuMTI1cmVtOyAvKiogVXNlZCBmb3IgbGV2ZWwgMyBoZWFkaW5ncy4gKi9cbiAgLS1nbC1mb250LXNpemUtNjAwLWZpeGVkOiAxLjMxMjVyZW07IC8qKiBVc2VkIGZvciBsZXZlbCAyIGhlYWRpbmdzLiAqL1xuICAtLWdsLWZvbnQtc2l6ZS03MDAtZml4ZWQ6IDEuNXJlbTsgLyoqIFVzZWQgZm9yIGxldmVsIDEgaGVhZGluZ3MgKi9cbiAgLS1nbC1mb250LXNpemUtODAwLWZpeGVkOiAxLjc1cmVtOyAvKiogVXNlZCBmb3IgYSBkaXNwbGF5IG9wdGlvbiB0aGF0IGNhbiBiZSBhcHBsaWVkIHRvIGEgbGV2ZWwgMSBoZWFkaW5nIHRvIGluY3JlYXNlIGl0cyBwcm9taW5lbmNlLiAqL1xuICAtLWdsLWZvbnQtd2VpZ2h0LTEwMDogMTAwO1xuICAtLWdsLWZvbnQtd2VpZ2h0LTMwMDogMzAwO1xuICAtLWdsLWZvbnQtd2VpZ2h0LW5vcm1hbDogNDAwO1xuICAtLWdsLWZvbnQtd2VpZ2h0LXNlbWlib2xkOiA1MDA7XG4gIC0tZ2wtZm9udC13ZWlnaHQtYm9sZDogNjAwO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTEyOiAwLjc1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTE2OiAxcmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTIwOiAxLjI1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTI0OiAxLjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMjg6IDEuNzVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMzI6IDJyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtMzY6IDIuMjVyZW07XG4gIC0tZ2wtbGluZS1oZWlnaHQtNDI6IDIuNjI1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTQ0OiAyLjc1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LTUyOiAzLjI1cmVtO1xuICAtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmc6IDEuMjU7XG4gIC0tZ2wtb3BhY2l0eS0wOiAwO1xuICAtLWdsLW9wYWNpdHktMTogLjE7XG4gIC0tZ2wtb3BhY2l0eS0yOiAuMjtcbiAgLS1nbC1vcGFjaXR5LTM6IC4zO1xuICAtLWdsLW9wYWNpdHktNDogLjQ7XG4gIC0tZ2wtb3BhY2l0eS01OiAuNTtcbiAgLS1nbC1vcGFjaXR5LTY6IC42O1xuICAtLWdsLW9wYWNpdHktNzogLjc7XG4gIC0tZ2wtb3BhY2l0eS04OiAuODtcbiAgLS1nbC1vcGFjaXR5LTk6IC45O1xuICAtLWdsLW9wYWNpdHktMTA6IDE7XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0wOiAwcHg7XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xOiAwLjEyNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTI6IDAuMjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0zOiAwLjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS00OiAwLjc1cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtNTogMXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTY6IDEuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTc6IDJyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS04OiAyLjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS05OiAzcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMTA6IDMuNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTExOiA0cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMTI6IDVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xMzogNnJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTE1OiA3LjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xODogOXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTIwOiAxMHJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTI2OiAxM3JlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTI4OiAxNHJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTMwOiAxNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTMxOiAxNS41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtMzM6IDE2LjVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0zNDogMTdyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0zNzogMTguNXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTQ4OiAyNHJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTYyOiAzMXJlbTtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTc1OiAzNy41cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtODA6IDQwcmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtODg6IDQ0cmVtO1xuICAtLWdsLXNwYWNpbmctc2NhbGUtcHg6IDFweDtcbiAgLS1nbC1zcGFjaW5nLXNjYWxlLTItNTogMC4zNzVyZW07XG4gIC0tZ2wtc3BhY2luZy1zY2FsZS0xMS01OiA0LjVyZW07XG4gIC0tZ2wtemluZGV4LTA6IDA7XG4gIC0tZ2wtemluZGV4LTE6IDE7XG4gIC0tZ2wtemluZGV4LTI6IDI7XG4gIC0tZ2wtemluZGV4LTM6IDM7XG4gIC0tZ2wtemluZGV4LTQ6IDQ7XG4gIC0tZ2wtemluZGV4LTIwMDogMjAwO1xuICAtLWdsLXppbmRleC05OTk5OiA5OTk5O1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLXJlZDogcmdiYSgyNTUsIDE3NSwgMTg0LCAwLjIzOTIxNTY4NjI3NDUwOTgxKTsgLyoqIFJlZCBiYWNrZ3JvdW5kIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItcHVycGxlOiByZ2JhKDIwMSwgMTkwLCAyMzksIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvKiogUHVycGxlIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ibHVlOiByZ2JhKDE1NywgMjAwLCAyNDIsIDAuMjM5MjE1Njg2Mjc0NTA5ODEpOyAvKiogQmx1ZSBiYWNrZ3JvdW5kIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItZ3JlZW46IHJnYmEoMTMyLCAyMTIsIDE4MiwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBHcmVlbiBiYWNrZ3JvdW5kIGZvciBhdmF0YXIgZmFsbGJhY2sgd2l0aCBubyBwYXJ0aWN1bGFyIG1lYW5pbmcuICovXG4gIC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3Itb3JhbmdlOiByZ2JhKDI0NywgMTg1LCA4MSwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBPcmFuZ2UgYmFja2dyb3VuZCBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay1iYWNrZ3JvdW5kLWNvbG9yLW5ldXRyYWw6IHJnYmEoMTkxLCAxOTEsIDE5NSwgMC4yMzkyMTU2ODYyNzQ1MDk4MSk7IC8qKiBOZXV0cmFsIGJhY2tncm91bmQgZm9yIGF2YXRhciBmYWxsYmFjayB3aXRoIG5vIHBhcnRpY3VsYXIgbWVhbmluZy4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItYmx1ZTogIzIzNTE4MDsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItZ3JlZW46ICMxYjY1M2Y7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1pbmRpZ286ICM0MTQxOWY7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRibHVlOiAjNDk3N2E1OyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgZm9yIHRoZSBsaWdodGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0Z3JlZW46ICMzMDgyNTg7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0Z3JlZW4gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0aW5kaWdvOiAjNjY2NmM0OyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgZm9yIHRoZSBsaWdodGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHRyZWQ6ICNhZDRhM2I7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGxpZ2h0cmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1yZWQ6ICM4ZjIxMTA7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIHJlZCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1ibHVlOiAjMGIyNjQwOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZ3JlZW46ICMwZTQzMjg7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgZ3JlZW4gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItaW5kaWdvOiAjMjIyMjYxOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodGJsdWU6ICMyMzUxODA7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgbGlnaHRibHVlIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWxpZ2h0Z3JlZW46ICMxYjY1M2Y7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgbGlnaHRncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodGluZGlnbzogIzQxNDE5ZjsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodHJlZDogIzhmMjExMDsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodHJlZCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1yZWQ6ICM1ODBkMDI7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGZvciB0aGUgcmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDEzNywgMTM2LCAxNDEsIDAuNCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogcmdiYSgxMzcsIDEzNiwgMTQxLCAwLjY0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHJnYmEoMTM3LCAxMzYsIDE0MSwgMC4zMik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDI0MSwgODEsIDEwNCwgMC40KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiByZ2JhKDI0MSwgODEsIDEwNCwgMC42NCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiByZ2JhKDI0MSwgODEsIDEwNCwgMC4zMik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMzcsIDEzNiwgMTQxLCAwLjE2KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYnV0dG9uLiAqL1xuICAtLWdsLWNoYXJ0LXRocmVzaG9sZC1hcmVhLWNvbG9yOiByZ2JhKDIyMiwgMjksIDc1LCAwLjEpOyAvKiogVXNlZCBpbiBjaGFydHMgdG8gZGVsaW5lYXRlIGEgdGhyZXNob2xkIGFyZWEgaW4gYSBjaGFydC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3Ryb2tlLWNvbG9yLWRlZmF1bHQ6ICNlM2UzZTg7IC8qKiBEZWZhdWx0IHN0cm9rZSBjb2xvciB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3Ryb2tlLXdpZHRoLWRlZmF1bHQ6IDEuNTsgLyoqIERlZmF1bHQgc3Ryb2tlIHdpZHRoIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1maWxsLWNvbG9yLWRlZmF1bHQ6ICM0MjNmNGY7IC8qKiBEZWZhdWx0IGZpbGwgY29sb3IgZm9yIGFuIGVsZW1lbnQgd2hlcmUgc3BlY2lmaWMgbWVhbmluZyBvciBlbXBoYXNpcyBpcyBub3QgcmVxdWlyZWQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLW5ldXRyYWw6ICM2ZjY3OTY7IC8qKiBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBjb25jZXB0IHdoaWNoIGlzIG5laXRoZXIgcG9zaXRpdmUgb3IgbmVnYXRpdmUuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLXN0YXR1cy1maWxsLWNvbG9yLXN1Y2Nlc3M6ICMzYjg1ODE7IC8qKiBVc2VkIGFzIGEgZmlsbCB0byBjb252ZXkgYSBzdWNjZXNzIG9yIGFjdGl2ZSBjb25jZXB0LCBoYXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3RhdHVzLWZpbGwtY29sb3Itd2FybmluZzogI2FiNzUyZjsgLyoqIFVzZWQgYXMgYSBmaWxsIHRvIGNvbnZleSBhIGNhdXRpb24gb3Igd2FybmluZyBjb25jZXB0LCBoYXMgYSBzbGlnaHRseSBuZWdhdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tc3RhdHVzLWZpbGwtY29sb3ItZGFuZ2VyOiAjYWE1NjNhOyAvKiogVXNlZCBhcyBhIGZpbGwgdG8gY29udmV5IGEgY3JpdGljYWwgb3IgZGFuZ2VyIGNvbmNlcHQsIGhhcyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtc3Ryb2tlLWNvbG9yLW9yYW5nZTogI2UzODY1ZjsgLyoqIFVzZWQgZm9yIG9yYW5nZSBhY2NlbnQgc3Ryb2tlIGRldGFpbCBvbiBhbiBvYmplY3Qgb3IgYXR0ZW50aW9uLWRyYXdpbmcgZWxlbWVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LXN0cm9rZS1jb2xvci10ZWFsOiAjNmJhZWEzOyAvKiogVXNlZCBmb3IgdGVhbCBhY2NlbnQgc3Ryb2tlIGRldGFpbCBvbiBhbiBvYmplY3Qgb3IgYXR0ZW50aW9uLWRyYXdpbmcgZWxlbWVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LXN0cm9rZS1jb2xvci1zdHJvbmc6ICNhZWE1ZDY7IC8qKiBVc2VkIGZvciBkYXJrIGFjY2VudCBzdHJva2UgZGV0YWlsIG9uIGFuIG9iamVjdCBvciBhdHRlbnRpb24tZHJhd2luZyBlbGVtZW50LiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1hY2NlbnQtZmlsbC1jb2xvci1zdWJ0bGU6ICM1YzUzNzE7IC8qKiBVc2VkIHRvIGFkZCBkZXB0aCB0byBhIHNlY29uZGFyeSBlbGVtZW50IGFuZCBzdXBwb3J0aW5nIHN1cmZhY2UuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWFjY2VudC1maWxsLWNvbG9yLXN0cm9uZzogIzZmNjc5NjsgLyoqIFVzZWQgZm9yIGFuIGVsZW1lbnQgcmVxdWlyaW5nIHZpc3VhbCBlbXBoYXNpcyB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudCBvciBzdGF0dXMgaW5kaWNhdG9ycy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3Itb3JhbmdlOiAjYWE1NjNhOyAvKiogVXNlZCB0byBhZGQgb3JhbmdlIHRvIGEgc2Vjb25kYXJ5IGVsZW1lbnQgYW5kIHN1cHBvcnRpbmcgc3VyZmFjZS4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24tYWNjZW50LWZpbGwtY29sb3ItdGVhbDogIzNiODU4MTsgLyoqIFVzZWQgdG8gYWRkIHRlYWwgdG8gYSBzZWNvbmRhcnkgZWxlbWVudCBhbmQgc3VwcG9ydGluZyBzdXJmYWNlLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1iYXNlLWZpbGwtY29sb3I6ICMzMjMwM2M7IC8qKiBVc2VkIGZvciB0aGUgY29uc2lzdGVudCBiYWNrZ3JvdW5kIHNoYXBlIHByZXNlbnQgYWNyb3NzIGFsbCBpbGx1c3RyYXRpb25zLiBQcm92aWRlcyBhIHVuaWZpZWQgZm91bmRhdGlvbiB0aGF0IHZpc3VhbGx5IGdyb3VuZHMgZWFjaCBpbGx1c3RyYXRpb24gd2hpbGUgbWFpbnRhaW5pbmcgc3lzdGVtIGNvaGVzaW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLWNvbG9yLWRlZmF1bHQ6ICNlM2UzZTg7IC8qKiBEZWZhdWx0IHN0cm9rZSBjb2xvciB0byBkZWZpbmUgc2hhcGUgYW5kIHByb3ZpZGUgZXNzZW50aWFsIGRldGFpbCBpbiBpc29tZXRyaWMgaWxsdXN0cmF0aW9uLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtc3Ryb2tlLXdpZHRoLWRlZmF1bHQ6IDEuNTsgLyoqIERlZmF1bHQgc3Ryb2tlIHdpZHRoIHRvIGRlZmluZSBzaGFwZSBhbmQgcHJvdmlkZSBlc3NlbnRpYWwgZGV0YWlsIGluIGlzb21ldHJpYyBpbGx1c3RyYXRpb24uICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC10b3AtZmlsbC1jb2xvcjogIzVhNTY2YzsgLyoqIFVzZWQgZm9yIHRoZSB0b3AgZmFjZSBvZiBpc29tZXRyaWMgdGV4dCBhbmQgbnVtYmVyIGVsZW1lbnRzLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtZ2x5cGgtZnJvbnQtZmlsbC1jb2xvcjogIzQyM2Y0ZjsgLyoqIFVzZWQgZm9yIHRoZSBmcm9udCBmYWNlIG9mIGlzb21ldHJpYyB0ZXh0IGFuZCBudW1iZXIgZWxlbWVudHMuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC1zaWRlLWZpbGwtY29sb3I6ICMzNzM0NDE7IC8qKiBVc2VkIGZvciB0aGUgc2lkZSBmYWNlIG9mIGlzb21ldHJpYyB0ZXh0IGFuZCBudW1iZXIgZWxlbWVudHMuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1nbHlwaC1zaGFkb3ctZmlsbC1jb2xvcjogIzI5MjczMDsgLyoqIFVzZWQgZm9yIHRoZSBzaGFkb3cgb2YgaXNvbWV0cmljIHRleHQgYW5kIG51bWJlciBlbGVtZW50cy4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC10b3AtZmlsbC1jb2xvcjogI2FhNTYzYTsgLyoqIFVzZWQgZm9yIHRoZSB0b3AgZmFjZSBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC1mcm9udC1maWxsLWNvbG9yOiAjYTU0NjIzOyAvKiogVXNlZCBmb3IgdGhlIGZyb250IGZhY2Ugb2YgYW4gaXNvbWV0cmljIG9iamVjdCBvciBzeW1ib2wuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1vYmplY3Qtc2lkZS1maWxsLWNvbG9yOiAjOGY0NDI0OyAvKiogVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLW9iamVjdC1oaWdobGlnaHQtZmlsbC1jb2xvcjogIzQyM2Y0ZjsgLyoqIFVzZWQgZm9yIHRoZSBmYWNlIG9mIGFuIGlzb21ldHJpYyBvYmplY3Qgb3Igc3ltYm9sIHRoYXQgcmVxdWlyZXMgbWF4aW11bSBkaXN0aW5jdGlvbiBmcm9tIG90aGVyIGVsZW1lbnRzLiAqL1xuICAtLWdsLWlsbHVzdHJhdGlvbi1pc29tZXRyaWMtb2JqZWN0LXNoYWRvdy1maWxsLWNvbG9yOiAjM2QyYjJhOyAvKiogVXNlZCBmb3IgdGhlIHNoYWRvdyBvZiBhbiBpc29tZXRyaWMgb2JqZWN0IG9yIHN5bWJvbC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWFjY2VudC10b3AtZmlsbC1jb2xvcjogIzZkNjk3MjsgLyoqIFVzZWQgZm9yIHRoZSB0b3AgZmFjZSBvZiBhIHN1cHBvcnRpbmcgaXNvbWV0cmljIGVsZW1lbnQuIFByb3ZpZGVzIHN1YnRsZSBkaW1lbnNpb25hbCB2YXJpYXRpb24gd2l0aG91dCBjb21wZXRpbmcgd2l0aCBwcmltYXJ5IGNvbnRlbnQuICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1hY2NlbnQtZnJvbnQtZmlsbC1jb2xvcjogIzQ5NDc0ZDsgLyoqIFVzZWQgZm9yIHRoZSBmcm9udCBmYWNlIG9mIGEgc3VwcG9ydGluZyBpc29tZXRyaWMgZWxlbWVudC4gUHJvdmlkZXMgc3VidGxlIGRpbWVuc2lvbmFsIHZhcmlhdGlvbiB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWFjY2VudC1zaWRlLWZpbGwtY29sb3I6ICMyMTIwMjM7IC8qKiBVc2VkIGZvciB0aGUgc2lkZSBmYWNlIG9mIGEgc3VwcG9ydGluZyBpc29tZXRyaWMgZWxlbWVudC4gUHJvdmlkZXMgc3VidGxlIGRpbWVuc2lvbmFsIHZhcmlhdGlvbiB3aXRob3V0IGNvbXBldGluZyB3aXRoIHByaW1hcnkgY29udGVudC4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWJhc2UtdG9wLWZpbGwtY29sb3I6ICMzMjMwM2M7IC8qKiBVc2VkIGZvciB0aGUgdG9wIHN1cmZhY2Ugb2YgYW4gaXNvbWV0cmljIGJhc2UgcGxhdGZvcm0uICovXG4gIC0tZ2wtaWxsdXN0cmF0aW9uLWlzb21ldHJpYy1iYXNlLWZyb250LWZpbGwtY29sb3I6ICMyYjI5MzI7IC8qKiBVc2VkIGZvciB0aGUgZnJvbnQgZmFjZSBvZiBhbiBpc29tZXRyaWMgYmFzZSBwbGF0Zm9ybS4gKi9cbiAgLS1nbC1pbGx1c3RyYXRpb24taXNvbWV0cmljLWJhc2Utc2lkZS1maWxsLWNvbG9yOiAjMjMyMjJiOyAvKiogVXNlZCBmb3IgdGhlIHNpZGUgZmFjZSBvZiBhbiBpc29tZXRyaWMgYmFzZSBwbGF0Zm9ybS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1mb250LXdlaWdodDogNDI1OyAvKiogVXNlZCBmb3IgdGhlIGZvbnQgd2VpZ2h0IG9mIGEgbmF2aWdhdGlvbiBpdGVtICovXG4gIC0tZGF0YS12aXotZ3JlZW4tNTA6ICMxMzNhMDM7XG4gIC0tZGF0YS12aXotZ3JlZW4tMTAwOiAjMWE0NTAwO1xuICAtLWRhdGEtdml6LWdyZWVuLTIwMDogIzI3NTYwMDtcbiAgLS1kYXRhLXZpei1ncmVlbi0zMDA6ICMzNjY4MDA7XG4gIC0tZGF0YS12aXotZ3JlZW4tNDAwOiAjNGU3ZjBlO1xuICAtLWRhdGEtdml6LWdyZWVuLTUwMDogIzYxOTAyNTtcbiAgLS1kYXRhLXZpei1ncmVlbi02MDA6ICM4MWFjNDE7XG4gIC0tZGF0YS12aXotZ3JlZW4tNzAwOiAjOTRjMjVlO1xuICAtLWRhdGEtdml6LWdyZWVuLTgwMDogI2IwZDk3YjtcbiAgLS1kYXRhLXZpei1ncmVlbi05MDA6ICNjNmVkOTQ7XG4gIC0tZGF0YS12aXotZ3JlZW4tOTUwOiAjZGRmYWI3O1xuICAtLWRhdGEtdml6LWFxdWEtNTA6ICMwMDM0NGI7XG4gIC0tZGF0YS12aXotYXF1YS0xMDA6ICMwMDQwNTk7XG4gIC0tZGF0YS12aXotYXF1YS0yMDA6ICMwMDUxNmM7XG4gIC0tZGF0YS12aXotYXF1YS0zMDA6ICMwMDYzODE7XG4gIC0tZGF0YS12aXotYXF1YS00MDA6ICMwMDdiOWI7XG4gIC0tZGF0YS12aXotYXF1YS01MDA6ICMwMDkwYjE7XG4gIC0tZGF0YS12aXotYXF1YS02MDA6ICMwMGFjYzQ7XG4gIC0tZGF0YS12aXotYXF1YS03MDA6ICMzMmM1ZDI7XG4gIC0tZGF0YS12aXotYXF1YS04MDA6ICM1ZWRlZTM7XG4gIC0tZGF0YS12aXotYXF1YS05MDA6ICM5M2YyZWY7XG4gIC0tZGF0YS12aXotYXF1YS05NTA6ICNiNWZlZmQ7XG4gIC0tZGF0YS12aXotYmx1ZS01MDogIzJhMmI1OTtcbiAgLS1kYXRhLXZpei1ibHVlLTEwMDogIzMwMzQ3MDtcbiAgLS1kYXRhLXZpei1ibHVlLTIwMDogIzM3NDI5MTtcbiAgLS1kYXRhLXZpei1ibHVlLTMwMDogIzNmNTFhZTtcbiAgLS1kYXRhLXZpei1ibHVlLTQwMDogIzRlNjVjZDtcbiAgLS1kYXRhLXZpei1ibHVlLTUwMDogIzYxN2FlMjtcbiAgLS1kYXRhLXZpei1ibHVlLTYwMDogIzc5OTJmNTtcbiAgLS1kYXRhLXZpei1ibHVlLTcwMDogIzk3YWNmZjtcbiAgLS1kYXRhLXZpei1ibHVlLTgwMDogI2I3YzZmZjtcbiAgLS1kYXRhLXZpei1ibHVlLTkwMDogI2QyZGNmZjtcbiAgLS1kYXRhLXZpei1ibHVlLTk1MDogI2U5ZWJmZjtcbiAgLS1kYXRhLXZpei1tYWdlbnRhLTUwOiAjNTQxZDMxO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtMTAwOiAjNjYxZTNhO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtMjAwOiAjN2MyMTRmO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtMzAwOiAjOWEyZTVkO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtNDAwOiAjYjkzZDcxO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtNTAwOiAjY2Y0ZDgxO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtNjAwOiAjZTg2ZTlhO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtNzAwOiAjZjg4YWFmO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtODAwOiAjZmNhY2M1O1xuICAtLWRhdGEtdml6LW1hZ2VudGEtOTAwOiAjZmZjY2RiO1xuICAtLWRhdGEtdml6LW1hZ2VudGEtOTUwOiAjZmZlM2ViO1xuICAtLWRhdGEtdml6LW9yYW5nZS01MDogIzRiMjcwNztcbiAgLS1kYXRhLXZpei1vcmFuZ2UtMTAwOiAjNWUyZjA1O1xuICAtLWRhdGEtdml6LW9yYW5nZS0yMDA6ICM2ZjM1MDA7XG4gIC0tZGF0YS12aXotb3JhbmdlLTMwMDogIzkyNDMwYTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtNDAwOiAjYjE0ZjE4O1xuICAtLWRhdGEtdml6LW9yYW5nZS01MDA6ICNjOTVkMmU7XG4gIC0tZGF0YS12aXotb3JhbmdlLTYwMDogI2UwN2U0MTtcbiAgLS1kYXRhLXZpei1vcmFuZ2UtNzAwOiAjZTk5YjYwO1xuICAtLWRhdGEtdml6LW9yYW5nZS04MDA6ICNlZWJkOGM7XG4gIC0tZGF0YS12aXotb3JhbmdlLTkwMDogI2Y1ZDZiMztcbiAgLS1kYXRhLXZpei1vcmFuZ2UtOTUwOiAjZmFlOGQxO1xuICAtLWJsdWUtOTUwOiAjZjJmOWZmO1xuICAtLWdyZWVuLTk1MDogI2YxZmRmNjtcbiAgLS1vcmFuZ2UtOTUwOiAjZmZmNGUxO1xuICAtLXJlZC05NTA6ICNmZmY0ZjM7XG4gIC0tYnJhbmQtY2hhcmNvYWw6ICMxNzEzMjE7IC8qKiBVc2UgY29sb3IuYnJhbmQtY2hhcmNvYWwgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1vcmFuZ2UtMDE6ICNmY2EzMjY7IC8qKiBVc2UgY29sb3IuYnJhbmQtb3JhbmdlLjAxcCBpbnN0ZWFkLiAqL1xuICAtLWJyYW5kLW9yYW5nZS0wMjogI2ZjNmQyNjsgLyoqIFVzZSBjb2xvci5icmFuZC1vcmFuZ2UuMDJwIGluc3RlYWQuICovXG4gIC0tYnJhbmQtb3JhbmdlLTAzOiAjZTI0MzI5OyAvKiogVXNlIGNvbG9yLmJyYW5kLW9yYW5nZS4wM3AgaW5zdGVhZC4gKi9cbiAgLS1icmFuZC1wdXJwbGUtMDE6ICNhOTg5ZjU7IC8qKiBVc2UgY29sb3IucHVycGxlLjAxcCBpbnN0ZWFkLiAqL1xuICAtLWJyYW5kLXB1cnBsZS0wMjogIzc3NTljMjsgLyoqIFVzZSBjb2xvci5wdXJwbGUuMDJwIGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wMTogI2QxZDBkMzsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjAxIGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wMjogI2EyYTFhNjsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjAyIGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wMzogIzc0NzE3YTsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjAzIGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wNDogIzQ1NDI0ZDsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjA0IGluc3RlYWQuICovXG4gIC0tYnJhbmQtZ3JheS0wNTogIzJiMjgzODsgLyoqIFVzZSBjb2xvci5icmFuZC1ncmF5LjA1IGluc3RlYWQuICovXG4gIC0tdC1ncmF5LWEtMTY6IHJnYmEoNSwgNSwgNiwgMC4xNik7IC8qKiBVc2UgY29sb3IuYWxwaGEuZGFyay4xNiBpbnN0ZWFkLiAqL1xuICAtLXQtZ3JheS1hLTI0OiByZ2JhKDUsIDUsIDYsIDAuMjQpOyAvKiogVXNlIGNvbG9yLmFscGhhLmRhcmsuMjQgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0wMjogcmdiYSg1LCA1LCA2LCAwLjAyKTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjIgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0wNDogcmdiYSg1LCA1LCA2LCAwLjA0KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjQgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0wNjogcmdiYSg1LCA1LCA2LCAwLjA2KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjYgaW5zdGVhZC4gKi9cbiAgLS10LWdyYXktYS0wODogcmdiYSg1LCA1LCA2LCAwLjA4KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5kYXJrLjggaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMTY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xNik7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuMTYgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMjQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yNCk7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuMjQgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMzY6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zNik7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuMzYgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMDI6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wMik7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuMiBpbnN0ZWFkLiAqL1xuICAtLXQtd2hpdGUtYS0wNDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjA0KTsgLyoqIFVzZSBjb2xvci5hbHBoYS5saWdodC40IGluc3RlYWQuICovXG4gIC0tdC13aGl0ZS1hLTA2OiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMDYpOyAvKiogVXNlIGNvbG9yLmFscGhhLmxpZ2h0LjYgaW5zdGVhZC4gKi9cbiAgLS10LXdoaXRlLWEtMDg6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4wOCk7IC8qKiBVc2UgY29sb3IuYWxwaGEubGlnaHQuOCBpbnN0ZWFkLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiByZ2JhKDI0MSwgODEsIDEwNCwgMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHJnYmEoMjQxLCA4MSwgMTA0LCAwLjQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHJnYmEoMjQxLCA4MSwgMTA0LCAwLjE2KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGF5OiByZ2JhKDAsIDAsIDAsIDAuNjQpOyAvKiogVXNlZCBmb3IgYW4gb3ZlcmxheSB0aGF0IGNvdmVycyBvdGhlciBjb250ZW50LiAqL1xuICAtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmc6IC0wLjAxZW07XG4gIC0tZ2wtaGVhZGluZy0zLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctNC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLTUtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy02LWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1saW5lLWhlaWdodDogMS4xMjU7XG4gIC0tZ2wtaGVhZGluZy1kaXNwbGF5LWxpbmUtaGVpZ2h0OiAxLjEyNTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWxldHRlci1zcGFjaW5nOiBpbmhlcml0O1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1sZXR0ZXItc3BhY2luZzogaW5oZXJpdDtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IGluaGVyaXQ7XG4gIC0tZ2wtYm9yZGVyLWNvbG9yLXRyYW5zcGFyZW50OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgd2hlbiBhIGJvcmRlciBuZWVkcyB0byBiZSBwcmVzZW50LCBidXQgbm90IHZpc2libHkgcGVyY2VpdmVkLiAqL1xuICAtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgZGVmYXVsdCBib3JkZXIgY29sb3IuICovXG4gIC0tZ2wtYm9yZGVyLWNvbG9yLXN1YnRsZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgYSBzdWJ0bGUgYm9yZGVyIGluIGNvbWJpbmF0aW9uIHdpdGggdGhlIGRlZmF1bHQgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1ib3JkZXItY29sb3Itc3Ryb25nOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciBhIGRpc3RpbmN0IGJvcmRlciB0aGF0IGVtcGhhc2l6ZXMgYW4gZWRnZSBvciBib3VuZGFyaWVzLiAqL1xuICAtLWdsLWJvcmRlci1yYWRpdXMtbm9uZTogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0wKTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLXhzOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLXB4KTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLXNtOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTEpO1xuICAtLWdsLWJvcmRlci1yYWRpdXMtbWQ6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMik7XG4gIC0tZ2wtYm9yZGVyLXJhZGl1cy1sZzogdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0zKTtcbiAgLS1nbC1ib3JkZXItcmFkaXVzLXhsOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTQpO1xuICAtLWdsLWJvcmRlci1yYWRpdXMtMnhsOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTUpO1xuICAtLWdsLWJvcmRlci1yYWRpdXMtM3hsOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTYpO1xuICAtLWdsLWZvbnQtc2l6ZS1zbTogdmFyKC0tZ2wtZm9udC1zaXplLTEwMCk7XG4gIC0tZ2wtZm9udC1zaXplLW1kOiB2YXIoLS1nbC1mb250LXNpemUtMzAwKTtcbiAgLS1nbC1mb250LXNpemUtbGc6IHZhcigtLWdsLWZvbnQtc2l6ZS00MDApO1xuICAtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmc6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWJvbGQpO1xuICAtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTApO1xuICAtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTUpO1xuICAtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTQwKTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IHNoYWRvdyBjb2xvci4gKi9cbiAgLS1nbC1hbGVydC1uZXV0cmFsLWJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LW5ldXRyYWwtYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby10aXRsZS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy10aXRsZS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgc3VjY2VzcyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC13YXJuaW5nLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtd2FybmluZy1ib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSB3YXJuaW5nIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LXdhcm5pbmctYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGJvdHRvbSBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtZGFuZ2VyLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0aXRsZSBjb2xvciBvZiBhIGRhbmdlciBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1kYW5nZXItYm9yZGVyLXRvcC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWRhbmdlci1ib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgYm90dG9tIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFwcGxpY2F0aW9uLWNocm9tZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMDApOyAvKiogVXNlZCBmb3IgdGhlIGFwcGxpY2F0aW9uIGNocm9tZSBiYWNrZ3JvdW5kLCB0aGUgbG93ZXN0IGxheWVyIG9mIHRoZSBpbnRlcmZhY2UgdGhhdCBzaXRzIGJlbmVhdGggcGFuZWxzIGFuZCBjb250YWlucyBnbG9iYWwgbmF2aWdhdGlvbiwgdXNlciBhY3Rpb25zLCBhcHBsaWNhdGlvbiBuYXZpZ2F0aW9uLCBhbmQgQUkgbmF2aWdhdGlvbi4gKi9cbiAgLS1nbC1hdmF0YXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTgpOyAvKiogVXNlZCB0byBkZWZpbmUgdGhlIGVkZ2Ugb2YgYW4gYXZhdGFyLiAqL1xuICAtLWdsLWF2YXRhci1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTI0KTsgLyoqIFVzZWQgdG8gaW5jcmVhc2UgdGhlIGVkZ2UgZGVmaW5pdGlvbiBvZiBhbiBhdmF0YXIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWF2YXRhci1jaXJjbGUtYm9yZGVyLXJhZGl1cy1kZWZhdWx0OiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLWZ1bGwpOyAvKiogQm9yZGVyIHJhZGl1cyBmb3IgY2lybGNlIGF2YXRhcnMgYXQgYWxsIHNpemVzLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXJlZDogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7IC8qKiBSZWQgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXB1cnBsZTogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7IC8qKiBQdXJwbGUgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLWJsdWU6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIEJsdWUgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLWdyZWVuOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogR3JlZW4gdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLW9yYW5nZTogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBPcmFuZ2UgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLW5ldXRyYWw6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIE5ldXRyYWwgdGV4dCBjb2xvciBmb3IgYXZhdGFyIGZhbGxiYWNrIHdpdGggbm8gcGFydGljdWxhciBtZWFuaW5nLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW11dGVkLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBtdXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ibHVlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1pY29uLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ncmVlbi0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgc3VjY2VzcyBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXN1Y2Nlc3MtaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIHdoZW4gc3RhdGljIG9yIHRoZSBkZWZhdWx0IHN0YXRlIHdoZW4gbGlua2VkLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2Ugd2hlbiBzdGF0aWMgb3IgdGhlIGRlZmF1bHQgc3RhdGUgd2hlbiBsaW5rZWQuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItdGV4dC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSB3aGVuIHN0YXRpYyBvciB0aGUgZGVmYXVsdCBzdGF0ZSB3aGVuIGxpbmtlZC4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXRpZXItaWNvbi1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1iYW5uZXItaW50cm8tYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm8gYmFubmVyLiAqL1xuICAtLWdsLWJhbm5lci1wcm9tby1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgcHJvbW8gYmFubmVyLiAqL1xuICAtLWdsLWJhbm5lci1wcm9tby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS03MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHByb21vIGJhbm5lci4gKi9cbiAgLS1nbC1icmVhZGNydW1iLXNlcGFyYXRvci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJyZWFkY3J1bWIgbGV2ZWwgc2VwYXJhdG9yLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1kYXJrOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZGFyazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC03MDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgZm9yIHRoZSBsaWdodCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItYmx1ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgYmx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZGFyazogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgZGFyayBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZ3JlZW46IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1pbmRpZ286IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBmb3IgdGhlIGluZGlnbyBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0Ymx1ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRibHVlIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGdyZWVuOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodGdyZWVuIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGluZGlnbzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGZvciB0aGUgbGlnaHRpbmRpZ28gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0cmVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSBsaWdodHJlZCBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItcmVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gZm9yIHRoZSByZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWJsdWU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGJsdWUgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWRhcms6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGRhcmsgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWdyZWVuOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItaW5kaWdvOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgZm9yIHRoZSBpbmRpZ28gYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0IGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodGJsdWU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0Ymx1ZSBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRncmVlbjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRncmVlbiBiYW5uZXIgdHlwZS4gKi9cbiAgLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHRpbmRpZ286IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBmb3IgdGhlIGxpZ2h0aW5kaWdvIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodHJlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgbGlnaHRyZWQgYmFubmVyIHR5cGUuICovXG4gIC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLXJlZDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IGZvciB0aGUgcmVkIGJhbm5lciB0eXBlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGRlZmF1bHQgcHJpbWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTI0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTQwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtMTYpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1yZWQtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1yZWQtMTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gb3V0bGluZWQgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhbiBvdXRsaW5lZCBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFzaGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYXNoZWQgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRpc2FibGVkIGJ1dHRvbi4gKi9cbiAgLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkaXNhYmxlZCBidXR0b24uICovXG4gIC0tZ2wtYnV0dG9uLWNvdW50LWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLWxpZ2h0LTE2KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgYnV0dG9uIGNvdW50IGVsZW1lbnQuICovXG4gIC0tZ2wtY2hhcnQtYXhpcy1saW5lLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGluIGNoYXJ0cyBmb3IgYXhpcyBsaW5lIGNvbG9yLiAqL1xuICAtLWdsLWNoYXJ0LXRocmVzaG9sZC1saW5lLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtNjAwKTsgLyoqIFVzZWQgaW4gY2hhcnRzIHRvIGRpdmlkZSBhIHRocmVzaG9sZCBhcmVhIGluIGEgY2hhcnQgZnJvbSBvdGhlciBkYXRhLiAqL1xuICAtLWdsLWNoYXJ0LXpvb20tZmlsbGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1saWdodC0xNik7IC8qKiBVc2VkIGluIGNoYXJ0cyBmb3IgdGhlIG92ZXJsYXkgY29sb3Igd2hlbiB6b29taW5nIGluIG9uIGEgc3BlY2lmaWMgYXJlYSBvZiBkYXRhLiAqL1xuICAtLWdsLWRhdGVwaWNrZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgZGF0ZXBpY2tlci4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC03MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1zZWFyY2gtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay0xNik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlYXJjaCBpbnB1dCBpbiBhIGRyb3Bkb3duIGxpc3Rib3guICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIHR5cGUgdG9rZW4gYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIHR5cGUgdG9rZW4gYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIGRhdGEgYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tZGF0YS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIGRhdGEgdG9rZW4gYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGZpbHRlcmVkIHNlYXJjaCBvcGVyYXRvciBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgZmlsdGVyZWQgc2VhcmNoIG9wZXJhdG9yIHRva2VuIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWxpZ2h0LXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCB0ZXh0IGNvbG9yIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvci4gKi9cbiAgLS1nbC1sYWJlbC1saWdodC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBsaWdodCBiYWNrZ3JvdW5kIGNvbG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWxpZ2h0LWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgbGFiZWwgcmVtb3ZlIGJ1dHRvbiBiYWNrZ3JvdW5kIG9uIGEgbGlnaHQgYmFja2dyb3VuZCBjb2xvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtbGlnaHQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05NTApOyAvKiogVXNlZCBmb3IgdGhlIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBvbiBhIGxpZ2h0IGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtZGFyay10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGxhYmVsIHRleHQgY29sb3Igb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLWRhcmstYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gb24gYSBkYXJrIGJhY2tncm91bmQgY29sb3IgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7IC8qKiBVc2VkIGZvciB0aGUgc2NvcGVkIGxhYmVsIHRleHQgY29sb3IuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLWJ1dHRvbi1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHNjb3BlZCBsYWJlbCByZW1vdmUgYnV0dG9uIGJhY2tncm91bmQgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWxhYmVsLXNjb3BlZC1idXR0b24taWNvbi1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIHNjb3BlZCBsYWJlbCByZW1vdmUgYnV0dG9uIGljb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbGFiZWwtc2NvcGVkLWJ1dHRvbi1pY29uLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgc2NvcGVkIGxhYmVsIHJlbW92ZSBidXR0b24gaWNvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbGluay1tZW50aW9uLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIG1lbnRpb24gbGluayB0ZXh0IGNvbG9yLiAqL1xuICAtLWdsLWxpbmstbWVudGlvbi10ZXh0LWNvbG9yLWN1cnJlbnQ6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0xMDApOyAvKiogVXNlZCBmb3IgdGhlIG1lbnRpb24gbGluayB0ZXh0IGNvbG9yIHdoZW4gcmVmZXJlbmNpbmcgdGhlIGN1cnJlbnQgdXNlci4gKi9cbiAgLS1nbC1saW5rLW1lbnRpb24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgbWVudGlvbiBsaW5rIGRlZmF1bHQgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1saW5rLW1lbnRpb24tYmFja2dyb3VuZC1jb2xvci1jdXJyZW50OiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBtZW50aW9uIGxpbmsgYmFja2dyb3VuZCB3aGVuIHJlZmVyZW5jaW5nIHRoZSBjdXJyZW50IHVzZXIuICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb250IHNpemUgb2YgYSBuYXZpZ2F0aW9uIGl0ZW0gKi9cbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWJvbGQpOyAvKiogVXNlZCBmb3IgdGhlIGZvbnQgd2VpZ2h0IG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiAqL1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgYmVzaWRlIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtLiBUaW50ZWQgdGhlbWVzIG92ZXJyaWRlIGl0IGluIHNyYy9zY3NzL3RoZW1lcy5zY3NzLiAqL1xuICAtLWdsLXByb2dyZXNzLWJhci10cmFjay1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC03MDApOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIGZvciBhbGwgcHJvZ3Jlc3MtYmFyIHZhcmlhbnRzLiAqL1xuICAtLWdsLXNrZWxldG9uLWxvYWRlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgc2tlbGV0b24gbG9hZGVyIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtc2tlbGV0b24tbG9hZGVyLXNoaW1tZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBhbmltYXRlZCBzaGltbWVyIGVmZmVjdCBpbiBhIHNrZWxldG9uIGxvYWRlci4gKi9cbiAgLS1nbC1zcGlubmVyLXRyYWNrLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBzdGF0aWMgdHJhY2sgKGJhY2tncm91bmQpIG9mIGEgbG9hZGluZyBzcGlubmVyLiAqL1xuICAtLWdsLXNwaW5uZXItdHJhY2stY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBzdGF0aWMgdHJhY2sgKGJhY2tncm91bmQpIG9mIGEgbG9hZGluZyBzcGlubmVyIG9uIGEgZGFyayBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwMCk7IC8qKiBVc2VkIGZvciB0aGUgYW5pbWF0ZWQgc2VnbWVudCBvZiBhIGxvYWRpbmcgc3Bpbm5lci4gKi9cbiAgLS1nbC1zcGlubmVyLXNlZ21lbnQtY29sb3ItbGlnaHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBhbmltYXRlZCBzZWdtZW50IG9mIGEgbG9hZGluZyBzcGlubmVyIG9uIGEgZGFyayBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLXRva2VuLXNlbGVjdG9yLXRva2VuLWNvbnRhaW5lci10b2tlbi1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHRva2VuIGluIGEgdG9rZW4tc2VsZWN0b3Igd2hlbiBpdCdzIHRva2VuLWNvbnRhaW5lciBpcyBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9rZW4tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIHRva2VuIGJhY2tncm91bmQgY29sb3IuICovXG4gIC0tZ2wtdG9vbHRpcC10ZXh0LWNvbG9yLXN1YnRsZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApOyAvKiogVXNlZCBmb3Igc3VwcGxlbWVudGFsIHRvb2x0aXAgdGV4dCB0aGF0IGlzIGxlc3MgcHJvbWluZW50IHRoYW4gdGhlIGRlZmF1bHQgdGV4dCBhbmQgcmVtYWlucyB0aGUgc2FtZSBjb2xvciByZWdhcmRsZXNzIG9mIG1vZGUuICovXG4gIC0tYmxhY2s6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gIC0td2hpdGU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTtcbiAgLS1ibHVlLTUwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTkwMCk7XG4gIC0tYmx1ZS0xMDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTtcbiAgLS1ibHVlLTIwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS03MDApO1xuICAtLWJsdWUtMzAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTYwMCk7XG4gIC0tYmx1ZS00MDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTAwKTtcbiAgLS1ibHVlLTUwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApO1xuICAtLWJsdWUtNjAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7XG4gIC0tYmx1ZS03MDA6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTtcbiAgLS1ibHVlLTgwMDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0xMDApO1xuICAtLWJsdWUtOTAwOiB2YXIoLS1nbC1jb2xvci1ibHVlLTUwKTtcbiAgLS1ncmF5LTEwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7XG4gIC0tZ3JheS01MDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xuICAtLWdyYXktMTAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7XG4gIC0tZ3JheS0yMDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNzAwKTtcbiAgLS1ncmF5LTMwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApO1xuICAtLWdyYXktNDAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwMCk7XG4gIC0tZ3JheS01MDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTtcbiAgLS1ncmF5LTYwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuICAtLWdyYXktNzAwOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7XG4gIC0tZ3JheS04MDA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTtcbiAgLS1ncmF5LTkwMDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7XG4gIC0tZ3JheS05NTA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTApO1xuICAtLWdyZWVuLTUwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi05MDApO1xuICAtLWdyZWVuLTEwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tODAwKTtcbiAgLS1ncmVlbi0yMDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTcwMCk7XG4gIC0tZ3JlZW4tMzAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi02MDApO1xuICAtLWdyZWVuLTQwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNTAwKTtcbiAgLS1ncmVlbi01MDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTQwMCk7XG4gIC0tZ3JlZW4tNjAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0zMDApO1xuICAtLWdyZWVuLTcwMDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMjAwKTtcbiAgLS1ncmVlbi04MDA6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTEwMCk7XG4gIC0tZ3JlZW4tOTAwOiB2YXIoLS1nbC1jb2xvci1ncmVlbi01MCk7XG4gIC0tb3JhbmdlLTUwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtOTAwKTtcbiAgLS1vcmFuZ2UtMTAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtODAwKTtcbiAgLS1vcmFuZ2UtMjAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNzAwKTtcbiAgLS1vcmFuZ2UtMzAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNjAwKTtcbiAgLS1vcmFuZ2UtNDAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTAwKTtcbiAgLS1vcmFuZ2UtNTAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNDAwKTtcbiAgLS1vcmFuZ2UtNjAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMzAwKTtcbiAgLS1vcmFuZ2UtNzAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTtcbiAgLS1vcmFuZ2UtODAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMTAwKTtcbiAgLS1vcmFuZ2UtOTAwOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtNTApO1xuICAtLXB1cnBsZS01MDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTk1MCk7XG4gIC0tcHVycGxlLTEwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTkwMCk7XG4gIC0tcHVycGxlLTIwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTgwMCk7XG4gIC0tcHVycGxlLTMwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTcwMCk7XG4gIC0tcHVycGxlLTQwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTYwMCk7XG4gIC0tcHVycGxlLTUwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwMCk7XG4gIC0tcHVycGxlLTYwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTQwMCk7XG4gIC0tcHVycGxlLTcwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTMwMCk7XG4gIC0tcHVycGxlLTgwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7XG4gIC0tcHVycGxlLTkwMDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTEwMCk7XG4gIC0tcHVycGxlLTk1MDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTtcbiAgLS1yZWQtNTA6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApO1xuICAtLXJlZC0xMDA6IHZhcigtLWdsLWNvbG9yLXJlZC04MDApO1xuICAtLXJlZC0yMDA6IHZhcigtLWdsLWNvbG9yLXJlZC03MDApO1xuICAtLXJlZC0zMDA6IHZhcigtLWdsLWNvbG9yLXJlZC02MDApO1xuICAtLXJlZC00MDA6IHZhcigtLWdsLWNvbG9yLXJlZC01MDApO1xuICAtLXJlZC01MDA6IHZhcigtLWdsLWNvbG9yLXJlZC00MDApO1xuICAtLXJlZC02MDA6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApO1xuICAtLXJlZC03MDA6IHZhcigtLWdsLWNvbG9yLXJlZC0yMDApO1xuICAtLXJlZC04MDA6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApO1xuICAtLXJlZC05MDA6IHZhcigtLWdsLWNvbG9yLXJlZC01MCk7XG4gIC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRpc2FibGVkIGFjdGlvbi4gKi9cbiAgLS1nbC1hY3Rpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGlzYWJsZWQgYWN0aW9uLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGlzYWJsZWQgYWN0aW9uIHRoYXQgc3RheXMgc2VsZWN0ZWQuIFNpdHMgYmV0d2VlbiB0aGUgZGlzYWJsZWQgYmFja2dyb3VuZCBhbmQgdGhlIGVuYWJsZWQgc2VsZWN0ZWQgYmFja2dyb3VuZCBzbyB0aGUgc2VsZWN0ZWQgc3RhdGUga2VlcHMgMzoxIGNvbnRyYXN0IGFnYWluc3QgdGhlIHBhZ2Ugd2hpbGUgc3RpbGwgcmVhZGluZyBhcyBkaXNhYmxlZC4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1saWdodC0xNik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtOCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1saWdodC0xNik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1jb2xvci1hbHBoYS1saWdodC04KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWNvbG9yLXJlZC0xMDApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItYmx1ZS00MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTcwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC02MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciB0aGUgZGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLiAqL1xuICAtLWdsLWJhY2tncm91bmQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIHRvIHNsaWdodGx5IGRpZmZlcmVudGlhdGUgdGhlIGJhY2tncm91bmQgZnJvbSB0aGUgZGVmYXVsdC4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCB0byBtYWtlIHRoZSBiYWNrZ3JvdW5kIGVhc2lseSBzdGFuZCBvdXQgZnJvbSB0aGUgZGVmYXVsdC4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTkwMCk7IC8qKiBVc2VkIHRvIGlkZW50aWZ5IGEgZGlzYWJsZWQgc2VjdGlvbi4gKi9cbiAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIGNvbXBvbmVudHMsIGxpa2UgdG9vbHRpcHMgYW5kIGRyYXdlcnMsIGFuZCBjb250ZW50LCBsaWtlIGEgc3RpY2t5IGhlYWRlciwgdGhhdCBvdmVybGFwIG90aGVyIGNvbnRlbnQuICovXG4gIC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zZWN0aW9uOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTgwMCk7IC8qKiBVc2VkIGZvciBjb250YWluZXJzLCBsaWtlIGEgY2FyZCBoZWFkZXIsIHRoYXQgYXJlIHZpc3VhbGx5IGRpc3RpbmN0IGZyb20gdGhlIGRlZmF1bHQgcGFnZSBiYWNrZ3JvdW5kIG9ubHkgd2hlbiBuZWNlc3NhcnkgdG8gbWFpbnRhaW4gYWZmb3JkYW5jZSBhbmQgaGllcmFyY2h5IGluIGRpZmZlcmVudCBtb2Rlcy4gKi9cbiAgLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay00MCk7IC8qKiBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgZGVmYXVsdCBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtNCk7IC8qKiBVc2VkIGZvciBkaXNhYmxlZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItY29uY2F0ZW5hdGlvbjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtNCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBzdGF0aWMgY29udGVudCB0aGF0IHByZXBlbmRzIG9yIGFwcGVuZHMgYSB0ZXh0IGlucHV0LiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1yZWFkb25seTogdmFyKC0tZ2wtY29sb3ItYWxwaGEtbGlnaHQtOCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBzdGF0aWMgY29udGVudCB0aGF0IHByZXBlbmRzIG9yIGFwcGVuZHMgYSB0ZXh0IGlucHV0LiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTEwKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQgb24gaG92ZXIuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MDApOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGRlZmF1bHQgYm9yZGVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTMwMCk7IC8qKiBVc2VkIGZvciBmb3JtIGNvbnRyb2wgKGlucHV0LCByYWRpbyBidXR0b24sIGNoZWNrYm94LCB0ZXh0YXJlYSkgYm9yZGVyIG9uIGhvdmVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIGZvcm0gY29udHJvbCAoaW5wdXQsIHJhZGlvIGJ1dHRvbiwgY2hlY2tib3gsIHRleHRhcmVhKSBib3JkZXIgb24gZm9jdXMuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIGRpc2FibGVkIGZvcm0gY29udHJvbCAoaW5wdXQsIHJhZGlvIGJ1dHRvbiwgY2hlY2tib3gsIHRleHRhcmVhKSBib3JkZXIuICovXG4gIC0tZ2wtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC00MDApOyAvKiogVXNlZCBmb3IgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gaW5wdXRzLiAqL1xuICAtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7IC8qKiBVc2VkIGZvciBjaGVja2JveCBhbmQgcmFkaW8gYnV0dG9uIHN0YXRlIGluZGljYXRvcnMuICovXG4gIC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTsgLyoqIFVzZWQgZm9yIGEgYmFja2dyb3VuZCBhc3NvY2lhdGVkIHdpdGggc3Ryb25nIGZlZWRiYWNrIGxpa2UgYSB0b29sdGlwIG9yIHRvYXN0IG1lc3NhZ2UuICovXG4gIC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBhc3NvY2lhdGVkIHdpdGggc3Ryb25nIGZlZWRiYWNrLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN0cm9uZy10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGV4dCBvbiBhIHN0cm9uZyBmZWVkYmFjayBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN0cm9uZy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBvbiBhIHN0cm9uZyBmZWVkYmFjayBiYWNrZ3JvdW5kLiAqL1xuICAtLWdsLWZlZWRiYWNrLXN0cm9uZy1saW5rLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7IC8qKiBVc2VkIGZvciBhIGxpbmsgb24gYSBzdHJvbmcgZmVlZGJhY2sgYmFja2dyb3VuZC4gKi9cbiAgLS1nbC1mZWVkYmFjay1uZXV0cmFsLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1ib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBuZXV0cmFsIGZlZWRiYWNrIGl0ZW0gd2hlbiB0aGVyZSBpc24ndCBhIHNwZWNpZmljIG1lYW5pbmcgb3IgdXJnZW5jeS4gKi9cbiAgLS1nbC1mZWVkYmFjay1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBmZWVkYmFjayBpdGVtIHdoZW4gdGhlcmUgaXNuJ3QgYSBzcGVjaWZpYyBtZWFuaW5nIG9yIHVyZ2VuY3kuICovXG4gIC0tZ2wtZmVlZGJhY2stbmV1dHJhbC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgZmVlZGJhY2sgaXRlbSB3aGVuIHRoZXJlIGlzbid0IGEgc3BlY2lmaWMgbWVhbmluZyBvciB1cmdlbmN5LiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIG5ldyBpbmZvcm1hdGlvbiBvciBhIGNoYW5nZSB0aGF0IGRvZXNuJ3QgcmVxdWlyZSBpbW1lZGlhdGUgYWN0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWluZm8tYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIGluZm9ybWF0aW9uYWwgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBuZXcgaW5mb3JtYXRpb24gb3IgYSBjaGFuZ2UgdGhhdCBkb2Vzbid0IHJlcXVpcmUgaW1tZWRpYXRlIGFjdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1pbmZvLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBuZXcgaW5mb3JtYXRpb24gb3IgYSBjaGFuZ2UgdGhhdCBkb2Vzbid0IHJlcXVpcmUgaW1tZWRpYXRlIGFjdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1pbmZvLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGFuIGluZm9ybWF0aW9uYWwgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBuZXcgaW5mb3JtYXRpb24gb3IgYSBjaGFuZ2UgdGhhdCBkb2Vzbid0IHJlcXVpcmUgaW1tZWRpYXRlIGFjdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTkwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN1Y2Nlc3MgZmVlZGJhY2sgaXRlbSB3aGVuIGNvbmZpcm1pbmcgdGhlIHN1Y2Nlc3NmdWwgY29tcGxldGlvbiBvZiBhIHVzZXItaW5pdGlhdGVkIGFjdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay1zdWNjZXNzLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stc3VjY2Vzcy10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stc3VjY2Vzcy1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSBzdWNjZXNzIGZlZWRiYWNrIGl0ZW0gd2hlbiBjb25maXJtaW5nIHRoZSBzdWNjZXNzZnVsIGNvbXBsZXRpb24gb2YgYSB1c2VyLWluaXRpYXRlZCBhY3Rpb24uICovXG4gIC0tZ2wtZmVlZGJhY2std2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtOTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay13YXJuaW5nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTYwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgd2FybmluZyBmZWVkYmFjayBpdGVtIHdoZW4gbm90aWZ5aW5nIGFib3V0IGEgcG90ZW50aWFsIGlzc3VlIG9yIHNlbnNpdGl2ZSBpbmZvcm1hdGlvbi4gKi9cbiAgLS1nbC1mZWVkYmFjay13YXJuaW5nLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSB3YXJuaW5nIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBwb3RlbnRpYWwgaXNzdWUgb3Igc2Vuc2l0aXZlIGluZm9ybWF0aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLXdhcm5pbmctaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIHBvdGVudGlhbCBpc3N1ZSBvciBzZW5zaXRpdmUgaW5mb3JtYXRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC05MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgZmVlZGJhY2sgaXRlbSB3aGVuIG5vdGlmeWluZyBhYm91dCBhIGNyaXRpY2FsIGlzc3VlIHRoYXQgaGFzIGp1c3Qgb2NjdXJyZWQgYW5kIHJlcXVpcmVzIGltbWVkaWF0ZSBhdHRlbnRpb24uICovXG4gIC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcmVkLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBjcml0aWNhbCBpc3N1ZSB0aGF0IGhhcyBqdXN0IG9jY3VycmVkIGFuZCByZXF1aXJlcyBpbW1lZGlhdGUgYXR0ZW50aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWRhbmdlci10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBjcml0aWNhbCBpc3N1ZSB0aGF0IGhhcyBqdXN0IG9jY3VycmVkIGFuZCByZXF1aXJlcyBpbW1lZGlhdGUgYXR0ZW50aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWRhbmdlci1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGZlZWRiYWNrIGl0ZW0gd2hlbiBub3RpZnlpbmcgYWJvdXQgYSBjcml0aWNhbCBpc3N1ZSB0aGF0IGhhcyBqdXN0IG9jY3VycmVkIGFuZCByZXF1aXJlcyBpbW1lZGlhdGUgYXR0ZW50aW9uLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJyYW5kLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05NTApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBicmFuZC1yZWxhdGVkIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgaW5mb3JtYXRpb24gdGhhdCBwZXJ0YWlucyB0byBHaXRMYWIuICovXG4gIC0tZ2wtZmVlZGJhY2stYnJhbmQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBicmFuZC1yZWxhdGVkIGZlZWRiYWNrIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgaW5mb3JtYXRpb24gdGhhdCBwZXJ0YWlucyB0byBHaXRMYWIuICovXG4gIC0tZ2wtZmVlZGJhY2stYnJhbmQtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGJyYW5kLXJlbGF0ZWQgZmVlZGJhY2sgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyBpbmZvcm1hdGlvbiB0aGF0IHBlcnRhaW5zIHRvIEdpdExhYi4gKi9cbiAgLS1nbC1mZWVkYmFjay1icmFuZC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgYnJhbmQtcmVsYXRlZCBmZWVkYmFjayBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIGluZm9ybWF0aW9uIHRoYXQgcGVydGFpbnMgdG8gR2l0TGFiLiAqL1xuICAtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtNDAwKTsgLyoqIFVzZWQgZm9yIHRoZSBvdXRlciBjb2xvciBwb3J0aW9uIG9mIHRoZSBmb2N1cyByaW5nLiAqL1xuICAtLWdsLWhpZ2hsaWdodC1tYXRjaC1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1vcmFuZ2UtMjAwKTsgLyoqIFVzZWQgZm9yIHRlbXBvcmFyeSB2aXN1YWwgZW1waGFzaXMgb2YgYmFja2dyb3VuZHMgb2YgbWF0Y2hlZCBzZWFyY2ggdGVybXMsIGZpbHRlcmVkIHJlc3VsdHMsIG9yIGF1dG9jb21wbGV0ZSBzdWdnZXN0aW9ucyB3aXRob3V0IGltcGx5aW5nIGFueSBwYXJ0aWN1bGFyIHN0YXRlIG9yIG1lYW5pbmcuICovXG4gIC0tZ2wtaGlnaGxpZ2h0LW1hdGNoLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTsgLyoqIFVzZWQgZm9yIHRleHQgd2l0aGluIHRlbXBvcmFyaWx5IGhpZ2hsaWdodGVkIG1hdGNoZXMgdG8gbWFpbnRhaW4gcmVhZGFiaWxpdHkgd2hpbGUgZHJhd2luZyBhdHRlbnRpb24gd2l0aG91dCBjb252ZXlpbmcgc3RhdHVzLiAqL1xuICAtLWdsLWhpZ2hsaWdodC10YXJnZXQtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS05NTApOyAvKiogVXNlZCBmb3IgdGVtcG9yYXJ5IHZpc3VhbCBlbXBoYXNpcyBmb3IgYmFja2dyb3VuZHMgb2YgcmVmZXJlbmNlZCBlbGVtZW50cyAoZm9yIGV4YW1wbGUgVVJMIGFuY2hvcnMsIGhvdmVyIHN0YXRlcykgb3IgdG8gc2hvdyByZWxhdGlvbnNoaXBzIGJldHdlZW4gY29udGVudCB3aXRob3V0IGltcGx5aW5nIHN0YXR1cyBvciByZXF1aXJpbmcgYWN0aW9uLiAqL1xuICAtLWdsLWhpZ2hsaWdodC10YXJnZXQtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTcwMCk7IC8qKiBVc2VkIHRvIHByb3ZpZGUgYWRkaXRpb25hbCB2aXN1YWwgZW1waGFzaXMgZm9yIGJvcmRlcnMgb2YgdGVtcG9yYXJpbHkgdGFyZ2V0ZWQgZWxlbWVudHMgb3Igd2hlbiB2aXN1YWxpemluZyBjb25uZWN0aW9ucyBiZXR3ZWVuIHJlbGF0ZWQgY29udGVudCwgZGlzdGluY3QgZnJvbSBwZXJzaXN0ZW50IHN0YXRlcy4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWluZm86IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gYXNzb2NpYXRlZCB3aXRoIGluZm9ybWF0aW9uIG9yIGhlbHAuICovXG4gIC0tZ2wtc3RhdHVzLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIHN0YXR1cyBpdGVtIHdoZW4gdGhlIHN0YXR1cyBpcyBuZWl0aGVyIHBvc2l0aXZlIG5vciBuZWdhdGl2ZSwgb3Igd2hlbiBpbmRpY2F0aW5nIGEgc3BlY2lhbCBidXQgc3RhYmxlIHN0YXRlLiAqL1xuICAtLWdsLXN0YXR1cy1uZXV0cmFsLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbmV1dHJhbCBzdGF0dXMgaXRlbSB3aGVuIHRoZSBzdGF0dXMgaXMgbmVpdGhlciBwb3NpdGl2ZSBub3IgbmVnYXRpdmUsIG9yIHdoZW4gaW5kaWNhdGluZyBhIHNwZWNpYWwgYnV0IHN0YWJsZSBzdGF0ZS4gKi9cbiAgLS1nbC1zdGF0dXMtbmV1dHJhbC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIG5ldXRyYWwgc3RhdHVzIGl0ZW0gd2hlbiB0aGUgc3RhdHVzIGlzIG5laXRoZXIgcG9zaXRpdmUgbm9yIG5lZ2F0aXZlLCBvciB3aGVuIGluZGljYXRpbmcgYSBzcGVjaWFsIGJ1dCBzdGFibGUgc3RhdGUuICovXG4gIC0tZ2wtc3RhdHVzLWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS04MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBub3Rld29ydGh5IG9uZ29pbmcgY29uZGl0aW9uIG9yIGEgc3RhdGUgb2YgYWN0aXZlIHByb2dyZXNzLiAqL1xuICAtLWdsLXN0YXR1cy1pbmZvLXRleHQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGFuIGluZm9ybWF0aW9uYWwgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgbm90ZXdvcnRoeSBvbmdvaW5nIGNvbmRpdGlvbiBvciBhIHN0YXRlIG9mIGFjdGl2ZSBwcm9ncmVzcy4gKi9cbiAgLS1nbC1zdGF0dXMtaW5mby1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ibHVlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhbiBpbmZvcm1hdGlvbmFsIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIG5vdGV3b3J0aHkgb25nb2luZyBjb25kaXRpb24gb3IgYSBzdGF0ZSBvZiBhY3RpdmUgcHJvZ3Jlc3MuICovXG4gIC0tZ2wtc3RhdHVzLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBzdGF0dXMgaXRlbSB3aGVuIGluZGljYXRpbmcgYSBwb3NpdGl2ZSBvdXRjb21lLCBjb21wbGV0aW9uLCBvciBkZXNpcmVkIHN0YXRlLiBDbGVhcmx5IGNvbnZleXMgYSBwb3NpdGl2ZSBjb25ub3RhdGlvbi4gKi9cbiAgLS1nbC1zdGF0dXMtc3VjY2Vzcy10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi0yMDApOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIHBvc2l0aXZlIG91dGNvbWUsIGNvbXBsZXRpb24sIG9yIGRlc2lyZWQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIHBvc2l0aXZlIGNvbm5vdGF0aW9uLiAqL1xuICAtLWdsLXN0YXR1cy1zdWNjZXNzLWljb24tY29sb3I6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3Mgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgcG9zaXRpdmUgb3V0Y29tZSwgY29tcGxldGlvbiwgb3IgZGVzaXJlZCBzdGF0ZS4gQ2xlYXJseSBjb252ZXlzIGEgcG9zaXRpdmUgY29ubm90YXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTgwMCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgc3RhdGUgdGhhdCByZXF1aXJlcyBoZWlnaHRlbmVkIGF3YXJlbmVzcyBvciBjYXV0aW9uLCBidXQgaXMgbm90IG5lY2Vzc2FyaWx5IHByb2JsZW1hdGljLiBSZXByZXNlbnRzIGEgc3RhdGUgdGhhdCB3YXJyYW50cyBleHRyYSBhdHRlbnRpb24gb3IgY2FyZSB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIGl0ZW0uICovXG4gIC0tZ2wtc3RhdHVzLXdhcm5pbmctdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTIwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHdhcm5pbmcgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgc3RhdGUgdGhhdCByZXF1aXJlcyBoZWlnaHRlbmVkIGF3YXJlbmVzcyBvciBjYXV0aW9uLCBidXQgaXMgbm90IG5lY2Vzc2FyaWx5IHByb2JsZW1hdGljLiBSZXByZXNlbnRzIGEgc3RhdGUgdGhhdCB3YXJyYW50cyBleHRyYSBhdHRlbnRpb24gb3IgY2FyZSB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIGl0ZW0uICovXG4gIC0tZ2wtc3RhdHVzLXdhcm5pbmctaWNvbi1jb2xvcjogdmFyKC0tZ2wtY29sb3Itb3JhbmdlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHdhcm5pbmcgc3RhdHVzIGl0ZW0gd2hlbiBpbmRpY2F0aW5nIGEgc3RhdGUgdGhhdCByZXF1aXJlcyBoZWlnaHRlbmVkIGF3YXJlbmVzcyBvciBjYXV0aW9uLCBidXQgaXMgbm90IG5lY2Vzc2FyaWx5IHByb2JsZW1hdGljLiBSZXByZXNlbnRzIGEgc3RhdGUgdGhhdCB3YXJyYW50cyBleHRyYSBhdHRlbnRpb24gb3IgY2FyZSB3aGVuIGludGVyYWN0aW5nIHdpdGggdGhlIGl0ZW0uICovXG4gIC0tZ2wtc3RhdHVzLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtODAwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIGNyaXRpY2FsIG9yIHNldmVyZWx5IHByb2JsZW1hdGljIGN1cnJlbnQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLCByZXByZXNlbnRpbmcgYSBzZXJpb3VzLCBvbmdvaW5nIGlzc3VlIG9yIHVuZGVzaXJlZCBjb25kaXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLWRhbmdlci10ZXh0LWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMjAwKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZGFuZ2VyIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIGNyaXRpY2FsIG9yIHNldmVyZWx5IHByb2JsZW1hdGljIGN1cnJlbnQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLCByZXByZXNlbnRpbmcgYSBzZXJpb3VzLCBvbmdvaW5nIGlzc3VlIG9yIHVuZGVzaXJlZCBjb25kaXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLWRhbmdlci1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1yZWQtMzAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIHN0YXR1cyBpdGVtIHdoZW4gaW5kaWNhdGluZyBhIGNyaXRpY2FsIG9yIHNldmVyZWx5IHByb2JsZW1hdGljIGN1cnJlbnQgc3RhdGUuIENsZWFybHkgY29udmV5cyBhIG5lZ2F0aXZlIGNvbm5vdGF0aW9uLCByZXByZXNlbnRpbmcgYSBzZXJpb3VzLCBvbmdvaW5nIGlzc3VlIG9yIHVuZGVzaXJlZCBjb25kaXRpb24uICovXG4gIC0tZ2wtc3RhdHVzLWJyYW5kLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS05MDApOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBicmFuZC1yZWxhdGVkIHN0YXR1cyBpdGVtIHdoZW4gaGlnaGxpZ2h0aW5nIHRoZSBzdGF0ZSBvZiB1bmlxdWUgZmVhdHVyZXMgb3IgZWxlbWVudHMgc3BlY2lmaWMgdG8gdGhlIEdpdExhYiBicmFuZCBpZGVudGl0eS4gSGVscHMgZGlzdGluZ3Vpc2ggYW5kIGVtcGhhc2l6ZSBicmFuZC1zcGVjaWZpYyBlbGVtZW50cyB3aXRoaW4gdGhlIGludGVyZmFjZS4gKi9cbiAgLS1nbC1zdGF0dXMtYnJhbmQtdGV4dC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTMwMCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGJyYW5kLXJlbGF0ZWQgc3RhdHVzIGl0ZW0gd2hlbiBoaWdobGlnaHRpbmcgdGhlIHN0YXRlIG9mIHVuaXF1ZSBmZWF0dXJlcyBvciBlbGVtZW50cyBzcGVjaWZpYyB0byB0aGUgR2l0TGFiIGJyYW5kIGlkZW50aXR5LiBIZWxwcyBkaXN0aW5ndWlzaCBhbmQgZW1waGFzaXplIGJyYW5kLXNwZWNpZmljIGVsZW1lbnRzIHdpdGhpbiB0aGUgaW50ZXJmYWNlLiAqL1xuICAtLWdsLXN0YXR1cy1icmFuZC1pY29uLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNTAwKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgYnJhbmQtcmVsYXRlZCBzdGF0dXMgaXRlbSB3aGVuIGhpZ2hsaWdodGluZyB0aGUgc3RhdGUgb2YgdW5pcXVlIGZlYXR1cmVzIG9yIGVsZW1lbnRzIHNwZWNpZmljIHRvIHRoZSBHaXRMYWIgYnJhbmQgaWRlbnRpdHkuIEhlbHBzIGRpc3Rpbmd1aXNoIGFuZCBlbXBoYXNpemUgYnJhbmQtc3BlY2lmaWMgZWxlbWVudHMgd2l0aGluIHRoZSBpbnRlcmZhY2UuICovXG4gIC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IHRleHQgY29sb3IuICovXG4gIC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMjAwKTsgLyoqIFVzZWQgZm9yIHN1cHBsZW1lbnRhbCB0ZXh0IHRoYXQgZG9lc24ndCBuZWVkIHRvIGJlIGFzIHByb21pbmVudCBhcyBvdGhlciB0ZXh0LiAqL1xuICAtLWdsLXRleHQtY29sb3Itc3Ryb25nOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTApOyAvKiogVXNlZCBmb3IgdGV4dCB3aXRoIHRoZSBoaWdoZXN0IGNvbnRyYXN0LiAqL1xuICAtLWdsLXRleHQtY29sb3ItaGVhZGluZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTsgLyoqIFVzZWQgZm9yIGhlYWRpbmdzIGxldmVsIDEtNi4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLWxpbms6IHZhcigtLWdsLWNvbG9yLWJsdWUtMjAwKTsgLyoqIFVzZWQgZm9yIGRlZmF1bHQgdGV4dCBsaW5rcy4gKi9cbiAgLS1nbC10ZXh0LWNvbG9yLXdhcm5pbmc6IHZhcigtLWdsLWNvbG9yLW9yYW5nZS0zMDApOyAvKiogVXNlZCBmb3IgdGV4dCB0aGF0IHJlcXVpcmVzIGNhdXRpb24gb3IgY2FyZWZ1bCBhdHRlbnRpb24uICovXG4gIC0tZ2wtdGV4dC1jb2xvci1kYW5nZXI6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApOyAvKiogVXNlZCBmb3IgdGV4dCBpbmRpY2F0aW5nIGEgcHJvYmxlbSwgY3JpdGljYWwgc3RhdGUsIGRlc3RydWN0aXZlIGFjdGlvbiwgZXJyb3IsIGZhaWx1cmUsIHJlbW92YWwsIHN0b3AsIG9yIGRlY2xpbmF0aW9uLiAqL1xuICAtLWdsLXRleHQtY29sb3Itc3VjY2VzczogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMzAwKTsgLyoqIFVzZWQgZm9yIHRleHQgaW5kaWNhdGluZyBzdWNjZXNzLCBjb21wbGV0aW9uLCBhcHByb3ZhbCwgYWRkaXRpb24sIG9yIHZhbGlkaXR5LiAqL1xuICAtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNDAwKTsgLyoqIFVzZWQgZm9yIGRpc2FibGVkIHRleHQuICovXG4gIC0tZ2wtaGVhZGluZy0xLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTcwMCk7XG4gIC0tZ2wtaGVhZGluZy0xLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTEtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS02MDApO1xuICAtLWdsLWhlYWRpbmctMi1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTMtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNTAwKTtcbiAgLS1nbC1oZWFkaW5nLTMtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS00MDApO1xuICAtLWdsLWhlYWRpbmctNC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtaGVhZGluZy01LWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTYtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMjAwKTtcbiAgLS1nbC1oZWFkaW5nLTYtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTEwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTIwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTMwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTQwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTUwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTYwMCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS03MDApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtODAwKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMTAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtMzAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNDAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNTAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTcwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS04MDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWxldHRlci1zcGFjaW5nOiB2YXIoLS1nbC1sZXR0ZXItc3BhY2luZy1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtODAwKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctZGlzcGxheS1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1zcGFjaW5nLXNjYWxlLTYpO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS03MDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1sZXR0ZXItc3BhY2luZzogdmFyKC0tZ2wtbGV0dGVyLXNwYWNpbmctaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNjAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtbGV0dGVyLXNwYWNpbmc6IHZhcigtLWdsLWxldHRlci1zcGFjaW5nLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTUwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtZm9udC1zaXplOiB2YXIoLS1nbC1mb250LXNpemUtNDAwLWZpeGVkKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbGluZS1oZWlnaHQ6IHZhcigtLWdsLWxpbmUtaGVpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1mb250LXNpemU6IHZhcigtLWdsLWZvbnQtc2l6ZS0zMDAtZml4ZWQpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1saW5lLWhlaWdodDogdmFyKC0tZ2wtbGluZS1oZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLWZvbnQtc2l6ZTogdmFyKC0tZ2wtZm9udC1zaXplLTIwMC1maXhlZCk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLWxpbmUtaGVpZ2h0OiB2YXIoLS1nbC1saW5lLWhlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1ib3JkZXItY29sb3Itc2VjdGlvbjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3IgdGhhdCBzdXJyb3VuZHMgY29udGVudCBvciBlbGVtZW50cyB3aGVuIHRoZXkgYXBwZWFyIGFzIGEgY2xvc2VkIGNvbnRhaW5lciBvciBjbG9zZWQgc2VjdGlvbiBvZiB0aGUgcGFnZS4gKi9cbiAgLS1nbC1ib3JkZXItcmFkaXVzLWRlZmF1bHQ6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbWQpO1xuICAtLWdsLWZvbnQtc2l6ZS1iYXNlOiB2YXIoLS1nbC1mb250LXNpemUtbWQpO1xuICAtLWdsLXNoYWRvdy1zbTogMCAwIDJweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KSwgMCAxcHggNHB4IDAgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3Igc3VyZmFjZXMgdGhhdCBuZWVkIHRvIGluZGljYXRlIHVzZXJzIGNhbiBtYW51YWxseSBpbnRlcmFjdCB3aXRoIHRoZW0uIEZvciBleGFtcGxlLCBjYXJkcyBpbiBpc3N1ZSBib2FyZC4gKi9cbiAgLS1nbC1zaGFkb3ctbWQ6IDAgMCAxcHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIDAgMCAycHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIDAgMnB4IDhweCAwIHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHN1cmZhY2VzIHRoYXQgbmVlZCBib3VuZGFyeSBkZWZpbml0aW9uIGFuZCBhcHBlYXIgb24gaG92ZXIuIEZvciBleGFtcGxlLCBwb3BvdmVycy4gKi9cbiAgLS1nbC1zaGFkb3ctbGc6IDAgMCAycHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIDAgMCAycHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIDAgNHB4IDEycHggMCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciBsYXJnZSBzdXJmYWNlcyB0aGF0IHByZXNlbnQgYWRkaXRpb25hbCBjb250ZXh0IHRvIHRoZSB1c2VyLiAqL1xuICAtLWdsLWFsZXJ0LWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgYWxlcnQgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1hbGVydC1uZXV0cmFsLXRpdGxlLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpOyAvKiogVXNlZCBmb3IgdGhlIHRpdGxlIGNvbG9yIG9mIGEgbmV1dHJhbCBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1uZXV0cmFsLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIG5ldXRyYWwgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtbmV1dHJhbC1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLW5ldXRyYWwtYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBuZXV0cmFsIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWluZm8tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGluZm8gYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtaW5mby1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8tYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYW4gaW5mbyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC1zdWNjZXNzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiBhIHN1Y2Nlc3MgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN1Y2Nlc3MtYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgY29sb3Igb2YgYSBzdWNjZXNzIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgd2FybmluZyBhbGVydC4gKi9cbiAgLS1nbC1hbGVydC13YXJuaW5nLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2std2FybmluZy1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIHdhcm5pbmcgYWxlcnQuICovXG4gIC0tZ2wtYWxlcnQtZGFuZ2VyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgZGFuZ2VyIGFsZXJ0LiAqL1xuICAtLWdsLWFsZXJ0LWRhbmdlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBjb2xvciBvZiBhIGRhbmdlciBhbGVydC4gKi9cbiAgLS1nbC1hdmF0YXItc3F1YXJlLWJvcmRlci1yYWRpdXMtbGc6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogQm9yZGVyIHJhZGl1cyBmb3Igc3F1YXJlIGF2YXRhcnMgYXQgbGFyZ2VyIHNpemVzICg0OHB4LCA2NHB4LCA5NnB4KS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBtdXRlZCBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbXV0ZWQtdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG11dGVkIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1tdXRlZC1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIG5ldXRyYWwgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLWluZm8tdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhbiBpbmZvcm1hdGlvbmFsIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3VjY2VzcyBiYWRnZSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLXRleHQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtaWNvbi1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBvZiBhIHN1Y2Nlc3MgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB3YXJuaW5nIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgd2FybmluZyBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkYW5nZXIgYmFkZ2UgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtZGFuZ2VyLWljb24tY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIG9mIGEgZGFuZ2VyIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgdGllciByZWxhdGVkIGJhZGdlIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXRpZXItdGV4dC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIHRpZXIgcmVsYXRlZCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS10aWVyLWljb24tY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gZGVmYXVsdCBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiBvdXRsaW5lZCBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYW4gb3V0bGluZWQgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIHByaW1hcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGFuIG91dGxpbmVkIGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFzaGVkLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWRhc2hlZC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFzaGVkIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhc2hlZC1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1kYXNoZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGRhc2hlZCBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1saW5rLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbWQpOyAvKiogVXNlZCBmb3IgbGluayBidXR0b24gYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLXRleHQtY29sb3ItbGluayk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGxpbmsgYnV0dG9uIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtY2FyZC1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLXhsKTsgLyoqIFVzZWQgZm9yIGNhcmQgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1jaGFydC1heGlzLXRleHQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgdGV4dCBjb2xvciBvZiBheGlzIHRpdGxlcyBhbmQgbGFiZWxzLiAqL1xuICAtLWdsLWRhdGVwaWNrZXItZGF0ZS10ZXh0LWNvbG9yLXNlbGVjdGVkOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1zZWxlY3RlZCk7IC8qKiBVc2VkIGZvciB0aGUgZGF0ZXBpY2tlciBkYXRlIHRleHQgY29sb3Igc3RhdGUgaW5kaWNhdG9ycy4gKi9cbiAgLS1nbC1kcmF3ZXItYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy0yeGwpOyAvKiogVXNlZCBmb3IgZHJhd2VyIGJvcmRlciByYWRpdXMuICovXG4gIC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgZHJvcGRvd24uICovXG4gIC0tZ2wtZHJvcGRvd24tYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZHJvcGRvd24uICovXG4gIC0tZ2wtZHJvcGRvd24tYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1sZyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIHJhZGl1cyBvZiBhIGRyb3Bkb3duLiAqL1xuICAtLWdsLWRyb3Bkb3duLWRpdmlkZXItY29sb3I6IHZhcigtLWdsLWJvcmRlci1jb2xvci1zdWJ0bGUpOyAvKiogVXNlZCBmb3IgdGhlIGRpdmlkZXIgb2YgYSBkcm9wZG93bi4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBkaXNhYmxlZCBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24taW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBkcm9wZG93biBzZWxlY3RlZCBvcHRpb24gaW5kaWNhdG9yIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtaG92ZXI6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZHJvcGRvd24gc2VsZWN0ZWQgb3B0aW9uIGluZGljYXRvciBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gdW5zZWxlY3RlZCBkcm9wZG93biBvcHRpb24gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhbiB1bnNlbGVjdGVkIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXM6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1tb2RhbC1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLTJ4bCk7IC8qKiBVc2VkIGZvciBtb2RhbCBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkZWZhdWx0IG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHNlbGVjdGVkIG5hdmlnYXRpb24gaXRlbSBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmU6IHZhcigtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtcHJvZ3Jlc3MtYmFyLWluZGljYXRvci1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1zdGF0dXMtaW5mby1pY29uLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBpbmRpY2F0b3IgY29sb3IgZm9yIHRoZSBwcmltYXJ5IHByb2dyZXNzLWJhciB2YXJpYW50LiAqL1xuICAtLWdsLXByb2dyZXNzLWJhci1pbmRpY2F0b3ItY29sb3Itc3VjY2VzczogdmFyKC0tZ2wtc3RhdHVzLXN1Y2Nlc3MtaWNvbi1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgc3VjY2VzcyBwcm9ncmVzcy1iYXIgdmFyaWFudC4gKi9cbiAgLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLXdhcm5pbmc6IHZhcigtLWdsLXN0YXR1cy13YXJuaW5nLWljb24tY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGluZGljYXRvciBjb2xvciBmb3IgdGhlIHdhcm5pbmcgcHJvZ3Jlc3MtYmFyIHZhcmlhbnQuICovXG4gIC0tZ2wtcHJvZ3Jlc3MtYmFyLWluZGljYXRvci1jb2xvci1kYW5nZXI6IHZhcigtLWdsLXN0YXR1cy1kYW5nZXItaWNvbi1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgaW5kaWNhdG9yIGNvbG9yIGZvciB0aGUgZGFuZ2VyIHByb2dyZXNzLWJhciB2YXJpYW50LiAqL1xuICAtLWdsLXRhYmxlLXJvdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1oaWdobGlnaHQtdGFyZ2V0LWJhY2tncm91bmQtY29sb3IpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0YWJsZSByb3cgaW4gaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtdGFibGUtc29ydGluZy1pY29uLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpOyAvKiogVXNlZCBmb3IgdGhlIGNvbG9yIG9mIHRoZSBzb3J0aW5nIGljb25zIGluIHRoZSBjb2x1bW4gaGVhZGVycy4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgZGlzYWJsZWQgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2guICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBkaXNhYmxlZCBjaGVja2VkIHRvZ2dsZSBzd2l0Y2gsIHdoaWNoIHN0YXlzIGZpbGxlZCBzbyB0aGUgY2hlY2tlZCBzdGF0ZSByZW1haW5zIGxlZ2libGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1sb2FkaW5nOiB2YXIoLS1nbC1hY3Rpb24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgY29sb3Igb2YgYSBsb2FkaW5nIHRvZ2dsZSBzd2l0Y2guIEEgbG9hZGluZyB0b2dnbGUgcmVuZGVycyBubyB0aHVtYiBhbmQgaXRzIHZhbHVlIGlzIHN0aWxsIGluIGZsaWdodCwgc28gdGhlIHRyYWNrIGNhcnJpZXMgbm8gY2hlY2tlZCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1ob3ZlcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBkaXNhYmxlZCB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaC4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBkZWZhdWx0IHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBkaXNhYmxlZCB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYi4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIGRpc2FibGVkIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCB0aHVtYi4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGRlZmF1bHQgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWNoZWNrZWQtZGVmYXVsdDogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tZGlzYWJsZWQtYmFja2dyb3VuZC1jb2xvcik7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhIGRpc2FibGVkIHRvZ2dsZSBzd2l0Y2guICovXG4gIC0tZ2wtdG9rZW4tZm9yZWdyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0b2tlbiBmb3JlZ3JvdW5kIGNvbG9yLiAqL1xuICAtLWdsLWFjdGlvbi1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1ib3JkZXItcmFkaXVzLWxnKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgcmFkaXVzIG9mIGFuIGFjdGlvbi4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc2VsZWN0ZWQgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzZWxlY3RlZCBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIG5ldXRyYWwgYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgY29uZmlybSAocG9zaXRpdmUpIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBjb25maXJtIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWZvcmVncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBkYW5nZXIgKGRlc3RydWN0aXZlKSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGFuZ2VyIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLWRhbmdlci1ib3JkZXItY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkYW5nZXIgYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHN0cm9uZyBjb25maXJtIGFjdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgbmV1dHJhbCBhY3Rpb24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1czogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJhY2tncm91bmQgb24gZm9jdXMuICovXG4gIC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBiYWNrZ3JvdW5kIHdoZW4gZGlzYWJsZWQuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZXJyb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1ib3JkZXItY29sb3IpOyAvKiogVXNlZCBmb3IgaW52YWxpZCBmb3JtIGNvbnRyb2wgKGlucHV0LCB0ZXh0YXJlYSkgYm9yZGVyLiAqL1xuICAtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1ob3ZlcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTsgLyoqIFVzZWQgZm9yIGNoZWNrZWQgYW5kIGluZGV0ZXJtaW5hdGUgKHNlbGVjdGVkKSBmb3JtIGNvbnRyb2wgKGNoZWNrYm94LCByYWRpbyBidXR0b24pIGJvcmRlciBvbiBob3Zlci4gKi9cbiAgLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgZm9ybSBjb250cm9sIChpbnB1dCwgcmFkaW8gYnV0dG9uLCBjaGVja2JveCwgdGV4dGFyZWEpIGRlZmF1bHQgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1jb250cm9sLXRleHQtY29sb3ItZXJyb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGFuZ2VyKTsgLyoqIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyBpbnZhbGlkLiAqL1xuICAtLWdsLWNvbnRyb2wtdGV4dC1jb2xvci12YWxpZDogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWNjZXNzKTsgLyoqIFVzZWQgZm9yIHRoZSBoZWxwZXIgdGV4dCB3aGVuIHRoZSBpbnB1dCBpcyB2YWxpZC4gKi9cbiAgLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQpOyAvKiogVXNlZCBmb3IgZGlzYWJsZWQgY2hlY2tib3ggYW5kIHJhZGlvIGJ1dHRvbiBzdGF0ZSBpbmRpY2F0b3JzLiAqL1xuICAtLWdsLWZlZWRiYWNrLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtbGcpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciByYWRpdXMgb2YgYSBmZWVkYmFjayBlbGVtZW50LiAqL1xuICAtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgaW5uZXIgbmV1dHJhbCBwb3J0aW9uIG9mIHRoZSBmb2N1cyByaW5nLiAqL1xuICAtLWdsLWljb24tY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSBkZWZhdWx0IGljb24gY29sb3IuIENhbiBiZSBwYWlyZWQgd2l0aCBkZWZhdWx0IHRleHQuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdWJ0bGU6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgZm9yIGEgc3RhdGljIG9yIGRlY29yYXRpb25hbCBpY29uLiBDYW4gYmUgcGFpcmVkIHdpdGggc3VidGxlIHRleHQuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdHJvbmc6IHZhcigtLWdsLXRleHQtY29sb3Itc3Ryb25nKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gd2l0aCB0aGUgaGlnaGVzdCBjb250cmFzdC4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWRpc2FibGVkOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIGFuIGljb24gd2l0aGluIGEgZGlzYWJsZWQgc2VjdGlvbi4gKi9cbiAgLS1nbC1pY29uLWNvbG9yLWxpbms6IHZhcigtLWdsLXRleHQtY29sb3ItbGluayk7IC8qKiBVc2VkIGZvciBhbiBpY29uIHdpdGhpbiBhIGxpbmsuICovXG4gIC0tZ2wtaWNvbi1jb2xvci13YXJuaW5nOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXdhcm5pbmcpOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggYSB3YXJuaW5nLiAqL1xuICAtLWdsLWljb24tY29sb3ItZGFuZ2VyOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRhbmdlcik7IC8qKiBVc2VkIGZvciBhbiBpY29uIGFzc29jaWF0ZWQgd2l0aCBhbiBlcnJvciBvciBkYW5nZXIuICovXG4gIC0tZ2wtaWNvbi1jb2xvci1zdWNjZXNzOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXN1Y2Nlc3MpOyAvKiogVXNlZCBmb3IgYW4gaWNvbiBhc3NvY2lhdGVkIHdpdGggc3VjY2VzcyBvciB2YWxpZGl0eS4gKi9cbiAgLS1nbC10ZXh0LXByaW1hcnk6IHZhcigtLWdsLXRleHQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2UgdGV4dC5jb2xvci5kZWZhdWx0IGluc3RlYWQuICovXG4gIC0tZ2wtdGV4dC1zZWNvbmRhcnk6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTsgLyoqIFVzZSB0ZXh0LmNvbG9yLnN1YnRsZSBpbnN0ZWFkLiAqL1xuICAtLWdsLXRleHQtdGVydGlhcnk6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpOyAvKiogVXNlIHRleHQuY29sb3IuZGlzYWJsZWQgaW5zdGVhZC4gKi9cbiAgLS1nbC1oZWFkaW5nLTEtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMS1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy0xLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTEtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTItbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctMi1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy0yLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMy1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0zLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTMtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctMy1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy00LW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTUtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctNS1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy01LWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNi1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy02LW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTYtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctNi1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0xMDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMTAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTEwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTIwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0yMDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMjAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtMzAwLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTMwMC1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS0zMDAtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS00MDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNDAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTQwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTUwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS01MDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNTAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNjAwLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTYwMC1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS02MDAtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS03MDAtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtNzAwLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTcwMC1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLXNjYWxlLTgwMC1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1zY2FsZS04MDAtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctc2NhbGUtODAwLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctZGlzcGxheS1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy1kaXNwbGF5LW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLWRpc3BsYXktY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTEtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctMS1maXhlZC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy0xLWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy0yLWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTItZml4ZWQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctMi1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctMy1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy0zLWZpeGVkLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTMtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTQtZml4ZWQtbWFyZ2luLXRvcDogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi10b3ApO1xuICAtLWdsLWhlYWRpbmctNC1maXhlZC1tYXJnaW4tYm90dG9tOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLWJvdHRvbSk7XG4gIC0tZ2wtaGVhZGluZy00LWZpeGVkLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1mb250LXdlaWdodDogdmFyKC0tZ2wtZm9udC13ZWlnaHQtaGVhZGluZyk7XG4gIC0tZ2wtaGVhZGluZy01LWZpeGVkLW1hcmdpbi10b3A6IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tdG9wKTtcbiAgLS1nbC1oZWFkaW5nLTUtZml4ZWQtbWFyZ2luLWJvdHRvbTogdmFyKC0tZ2wtaGVhZGluZy1kZWZhdWx0LW1hcmdpbi1ib3R0b20pO1xuICAtLWdsLWhlYWRpbmctNS1maXhlZC1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1oZWFkaW5nKTtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtZm9udC13ZWlnaHQ6IHZhcigtLWdsLWZvbnQtd2VpZ2h0LWhlYWRpbmcpO1xuICAtLWdsLWhlYWRpbmctNi1maXhlZC1tYXJnaW4tdG9wOiB2YXIoLS1nbC1oZWFkaW5nLWRlZmF1bHQtbWFyZ2luLXRvcCk7XG4gIC0tZ2wtaGVhZGluZy02LWZpeGVkLW1hcmdpbi1ib3R0b206IHZhcigtLWdsLWhlYWRpbmctZGVmYXVsdC1tYXJnaW4tYm90dG9tKTtcbiAgLS1nbC1oZWFkaW5nLTYtZml4ZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItaGVhZGluZyk7XG4gIC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQ6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7IC8qKiBCb3JkZXIgcmFkaXVzIGZvciBzcXVhcmUgYXZhdGFycyBhdCBzbWFsbGVyIHNpemVzICgxNnB4LCAyNHB4LCAzMnB4KS4gKi9cbiAgLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1tdXRlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbXV0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgbmV1dHJhbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtaW5mby1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYW4gaW5mb3JtYXRpb25hbCBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBzdWNjZXNzIGJhZGdlIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1iYWRnZS13YXJuaW5nLWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIHdhcm5pbmcgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRhbmdlciBiYWRnZSBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYmFkZ2UtdGllci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1iYWRnZS10aWVyLWJhY2tncm91bmQtY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSB0aWVyIHJlbGF0ZWQgYmFkZ2UgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIGJyb2FkY2FzdCBiYW5uZXIgYm9yZGVyIHJhZGl1cy4gKi9cbiAgLS1nbC1idXR0b24tYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXMpOyAvKiogVXNlZCBmb3IgYnV0dG9uIGJvcmRlciByYWRpdXMuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBvZiBhIGRlZmF1bHQgYm9yZGVybGVzcywgdGVydGlhcnkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBkZWZhdWx0IGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgZGVmYXVsdCBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGNvbmZpcm0gKHBvc2l0aXZlKSBwcmltYXJ5IGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLWNvbmZpcm0tZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBjb25maXJtIChwb3NpdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgY29uZmlybSAocG9zaXRpdmUpIGJ1dHRvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tY29uZmlybS1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1jb25maXJtLWJvcmRlci1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGNvbmZpcm0gKHBvc2l0aXZlKSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIGJvcmRlcmxlc3MsIHRlcnRpYXJ5IGRhbmdlciAoZGVzdHJ1Y3RpdmUpIGJ1dHRvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBib3JkZXJsZXNzLCB0ZXJ0aWFyeSBkYW5nZXIgKGRlc3RydWN0aXZlKSBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJvcmRlci1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgYm9yZGVybGVzcywgdGVydGlhcnkgZGFuZ2VyIChkZXN0cnVjdGl2ZSkgYnV0dG9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGxpbmsgYnV0dG9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1kZWZhdWx0KTsgLyoqIFVzZWQgZm9yIHRoZSB0ZXh0IG9mIGEgbGluayBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1jaGFydC1heGlzLXBvaW50ZXItY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgY29sb3Igb2YgdGhlIHJlZmVyZW5jZSBsaW5lIGFuZCBheGlzIHZhbHVlIHVuZGVyIG1vdXNlIHBvaW50ZXIuICovXG4gIC0tZ2wtY2hhcnQtem9vbS1oYW5kbGUtY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTsgLyoqIFVzZWQgaW4gY2hhcnRzIGZvciB0aGUgaGFuZGxlIGNvbG9yIHdoZW4gem9vbWluZyBpbiBvbiBhIHNwZWNpZmljIGFyZWEgb2YgZGF0YS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgdGV4dCBvZiBhIGRyb3Bkb3duIG9wdGlvbiBpbiB0aGUgaG92ZXIgc3RhdGUuICovXG4gIC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIHRleHQgb2YgYSBkcm9wZG93biBvcHRpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24taW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkLWZvY3VzOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtYWN0aXZlOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGRyb3Bkb3duIHNlbGVjdGVkIG9wdGlvbiBpbmRpY2F0b3IgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGFuIHVuc2VsZWN0ZWQgZHJvcGRvd24gb3B0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1ib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hY3Rpb24tYm9yZGVyLXJhZGl1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIHJhZGl1cyBvZiBhIG5hdmlnYXRpb24gaXRlbSAqL1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgZGVmYXVsdCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIG9mIGEgc2VsZWN0ZWQgbmF2aWdhdGlvbiBpdGVtIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBzZWxlY3RlZCBpbmRpY2F0b3Igb2YgYSB0YWIuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gVGhlIHRyYWNrIGlzIGRlbGliZXJhdGVseSB1bmNoYW5nZWQgZnJvbSB0aGUgZGVmYXVsdCBzdGF0ZTsgaG92ZXIgaXMgY2FycmllZCBieSB0aGUgdHJhY2sgYm9yZGVyIGFuZCB0aGUgdGh1bWIgc2l6ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci11bmNoZWNrZWQtaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kZWZhdWx0OiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGJvcmRlciBjb2xvciBvZiBhIGNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZGVmYXVsdCBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWhvdmVyOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWFjdGl2ZSk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kaXNhYmxlZDogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci1jaGVja2VkLWRpc2FibGVkKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBkaXNhYmxlZCBjaGVja2VkIHRvZ2dsZSBzd2l0Y2gsIHdoaWNoIG1hdGNoZXMgdGhlIHRyYWNrIGNvbG9yLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWxvYWRpbmc6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItbG9hZGluZyk7IC8qKiBVc2VkIGZvciB0aGUgdHJhY2sgYm9yZGVyIGNvbG9yIG9mIGEgbG9hZGluZyB0b2dnbGUgc3dpdGNoLCB3aGljaCBtYXRjaGVzIHRoZSB0cmFjayBjb2xvciBzbyB0aGUgdHJhY2sgcmVhZHMgYXMgYSBzaW5nbGUgZmxhdCBmaWxsLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZm9jdXM6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci11bmNoZWNrZWQtYWN0aXZlOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWJhY2tncm91bmQtY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpOyAvKiogVXNlZCBmb3IgdGhlIGJhY2tncm91bmQgY29sb3Igb2YgdGhlIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGhvdmVyIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZDogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCk7IC8qKiBVc2UgdG9nZ2xlLnN3aXRjaC5iYWNrZ3JvdW5kLmNvbG9yLnVuY2hlY2tlZC5kaXNhYmxlZCBpbnN0ZWFkLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtaG92ZXI6IHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBob3ZlciBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItY2hlY2tlZC1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGljb24gY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRva2VuLWJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7IC8qKiBVc2VkIGZvciB0b2tlbiBib3JkZXIgcmFkaXVzLiAqL1xuICAtLWdsLWFjdGlvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1czogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBmb3JlZ3JvdW5kIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWhvdmVyKTsgLyoqIFVzZWQgZm9yIHRoZSBib3JkZXIgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXM6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZm9jdXM6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1cyk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBib3JkZXIgb24gZm9jdXMuICovXG4gIC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGlzYWJsZWQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZCk7IC8qKiBVc2VkIGZvciBjaGVja2VkIGFuZCBpbmRldGVybWluYXRlIChzZWxlY3RlZCkgZm9ybSBjb250cm9sIChjaGVja2JveCwgcmFkaW8gYnV0dG9uKSBib3JkZXIgd2hlbiBkaXNhYmxlZC4gKi9cbiAgLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBjb25maXJtIChwb3NpdGl2ZSkgcHJpbWFyeSBidXR0b24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzZWxlY3RlZCBuYXZpZ2F0aW9uIGl0ZW0gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1mb2N1czogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtaG92ZXIpOyAvKiogVXNlZCBmb3IgdGhlIHRyYWNrIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBmb2N1cyBzdGF0ZS4gVGhlIHRyYWNrIGlzIGRlbGliZXJhdGVseSB1bmNoYW5nZWQgZnJvbSB0aGUgZGVmYXVsdCBzdGF0ZTsgZm9jdXMgaXMgY2FycmllZCBieSB0aGUgZm9jdXMgcmluZywgdGhlIHRyYWNrIGJvcmRlciBhbmQgdGhlIHRodW1iIHNpemUuICovXG4gIC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYW4gdW5jaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWZvY3VzKTsgLyoqIFVzZWQgZm9yIHRoZSB0cmFjayBib3JkZXIgY29sb3Igb2YgYSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggaW4gdGhlIGZvY3VzIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgY2hlY2tlZCB0b2dnbGUgc3dpdGNoIHRodW1iIGluIHRoZSBmb2N1cyBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWZvY3VzOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgaWNvbiBjb2xvciBvZiBhbiB1bmNoZWNrZWQgdG9nZ2xlIHN3aXRjaCBpbiB0aGUgZm9jdXMgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgZm9yZWdyb3VuZCBvZiBhIHNlbGVjdGVkIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLWFjdGlvbi1zdHJvbmctY29uZmlybS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWZvcmVncm91bmQtY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGZvcmVncm91bmQgb2YgYSBzdHJvbmcgY29uZmlybSBhY3Rpb24gaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC1hY3Rpb24tc3Ryb25nLWNvbmZpcm0tYm9yZGVyLWNvbG9yLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXN0cm9uZy1jb25maXJtLWJvcmRlci1jb2xvci1mb2N1cyk7IC8qKiBVc2VkIGZvciB0aGUgYm9yZGVyIG9mIGEgc3Ryb25nIGNvbmZpcm0gYWN0aW9uIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG4gIC0tZ2wtYWN0aW9uLXN0cm9uZy1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmU6IHZhcigtLWdsLWFjdGlvbi1zdHJvbmctbmV1dHJhbC1ib3JkZXItY29sb3ItZm9jdXMpOyAvKiogVXNlZCBmb3IgdGhlIGJvcmRlciBvZiBhIHN0cm9uZyBuZXV0cmFsIGFjdGlvbiBpbiB0aGUgYWN0aXZlIHN0YXRlLiAqL1xuICAtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjaGVja2VkIHRvZ2dsZSBzd2l0Y2ggdGh1bWIgaW4gdGhlIGFjdGl2ZSBzdGF0ZS4gKi9cbiAgLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWFjdGl2ZTogdmFyKC0tZ2wtYWN0aW9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTsgLyoqIFVzZWQgZm9yIHRoZSBpY29uIGNvbG9yIG9mIGFuIHVuY2hlY2tlZCB0b2dnbGUgc3dpdGNoIGluIHRoZSBhY3RpdmUgc3RhdGUuICovXG59XG4iLCJib2R5IHtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG4iLCJoMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG4uaDEsXG4uaDIsXG4uaDMsXG4uaDQsXG4uaDUsXG4uaDYge1xuICBAYXBwbHkgZ2wtdGV4dC1oZWFkaW5nO1xufVxuXG5hIHtcbiAgQGFwcGx5IGdsLXRleHQtbGluayBnbC1uby11bmRlcmxpbmUgaG92ZXI6Z2wtdGV4dC1saW5rIGhvdmVyOmdsLXVuZGVybGluZTtcbn1cblxuLy8gQ29waWVkIGZyb20gaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXVpLy0vYmxvYi81ZGIxZTExMTUwMWM5ZTI1MmEzODhhNzgwZTI3ODlkY2UxMWRlZGY0L3NyYy92ZW5kb3IvYm9vdHN0cmFwL3Njc3MvX3JlYm9vdC5zY3NzI0wxOTQuXG4vLyBBbmQgdW5kbyB0aGVzZSBzdHlsZXMgZm9yIHBsYWNlaG9sZGVyIGxpbmtzL25hbWVkIGFuY2hvcnMgKHdpdGhvdXQgaHJlZikuXG4vLyBJdCB3b3VsZCBiZSBtb3JlIHN0cmFpZ2h0Zm9yd2FyZCB0byBqdXN0IHVzZSBhW2hyZWZdIGluIHByZXZpb3VzIGJsb2NrLCBidXQgdGhhdFxuLy8gY2F1c2VzIHNwZWNpZmljaXR5IGlzc3VlcyBpbiBtYW55IG90aGVyIHN0eWxlcyB0aGF0IGFyZSB0b28gY29tcGxleCB0byBmaXguXG4vLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xOTQwMlxuYTpub3QoW2hyZWZdKTpub3QoW2NsYXNzXSkge1xuICBAYXBwbHkgZ2wtdGV4dC1pbmhlcml0IGdsLW5vLXVuZGVybGluZSBob3ZlcjpnbC10ZXh0LWluaGVyaXQgaG92ZXI6Z2wtbm8tdW5kZXJsaW5lO1xufVxuXG5jYXB0aW9uIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuXG5wcmUge1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG59XG5cbmtiZCB7XG4gIEBhcHBseSBnbC1ib3JkZXIgZ2wtaW5saW5lLWJsb2NrIGdsLWJvcmRlci1iLXN0cm9uZyBnbC1iZy1zdWJ0bGUgZ2wtbGVhZGluZy0xIGdsLXRleHQtZGVmYXVsdDtcbiAgZm9udC1zaXplOiA4Ny41JTtcbiAgcGFkZGluZzogM3B4IDVweDtcbiAgdmVydGljYWwtYWxpZ246IHVuc2V0O1xuICBib3JkZXItaW1hZ2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLXN0cm9uZyk7XG59XG5cbi50YWJsZSB7XG4gIEBhcHBseSBnbC1tYi0zIGdsLXctZnVsbCBnbC1iZy10cmFuc3BhcmVudCBnbC10ZXh0LWRlZmF1bHQ7XG5cbiAgdGgsXG4gIHRkIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQgZ2wtcC00IGdsLWFsaWduLXRvcDtcbiAgfVxuXG4gIHRoZWFkIHRoIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWIgZ2wtYm9yZGVyLWItMiBnbC1hbGlnbi1ib3R0b207XG4gIH1cblxuICB0Ym9keSArIHRib2R5IHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQgZ2wtYm9yZGVyLXQtMjtcbiAgfVxufVxuIiwiLmdsLWRpc2Nsb3N1cmUtZHJvcGRvd24ge1xuICAmLmdsLW5ldy1kcm9wZG93biB7XG4gICAgLmdsLW5ldy1kcm9wZG93bi1pbm5lciB7XG4gICAgICBtYXgtaGVpZ2h0OiBub25lO1xuICAgIH1cblxuICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICAgICY6ZGlzYWJsZWQsXG4gICAgICAmW2Rpc2FibGVkXSxcbiAgICAgICYuZGlzYWJsZWQge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZGlzYWJsZWQpO1xuICAgICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuZ2wta2V5c2V0LXBhZ2luYXRpb24uYnRuLWdyb3VwIHtcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi11aS8tL21lcmdlX3JlcXVlc3RzLzE0ODdcbiAgLy8gZm9yIHRoZSByZWFzb25pbmcgYmVoaW5kIHRoZSBkb3VibGUgLmdsLWJ1dHRvbi5nbC1idXR0b25cbiAgLmdsLWJ1dHRvbi5nbC1idXR0b24ge1xuICAgIEBhcHBseSBnbC1weC0zO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWFjdGlvbi1ib3JkZXItcmFkaXVzKTtcbiAgfVxufVxuIiwiLy8gVGhpcyBpcyBvdmVycmlkZGVuIGluIHRoZSBgZ2l0bGFiLW9yZy9naXRsYWJgIGNvZGViYXNlIHNvIHdlIG5lZWQgdG8gaW5jcmVhc2Ugc3BlY2lmaWNpdHkgdXNpbmcgYGdsLXRva2VuLXNlbGVjdG9yYFxuLmdsLXRva2VuLXNlbGVjdG9yIHtcbiAgJi5nbC10b2tlbi1zZWxlY3Rvci1mb2N1cy1nbG93IHtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cygkY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWZvY3VzKSwgJGltcG9ydGFudDogdHJ1ZSk7XG5cbiAgICAmLmlzLWludmFsaWQge1xuICAgICAgQGluY2x1ZGUgZ2wtZm9jdXMoJGNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1lcnJvciksICRpbXBvcnRhbnQ6IHRydWUpO1xuICAgIH1cbiAgfVxuXG4gICYuZ2wtdG9rZW4tc2VsZWN0b3Itdmlldy1vbmx5IHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItcmVhZG9ubHkpICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5nbC10b2tlbi1zZWxlY3Rvci10b2tlbi1jb250YWluZXI6Zm9jdXMtdmlzaWJsZSAuZ2wtdG9rZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2tlbi1zZWxlY3Rvci10b2tlbi1jb250YWluZXItdG9rZW4tYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cblxuLmdsLXRva2VuLXNlbGVjdG9yLWlucHV0IHtcbiAgcGFkZGluZy10b3A6ICRpbnB1dC1wYWRkaW5nLXk7XG4gIHBhZGRpbmctYm90dG9tOiAkaW5wdXQtcGFkZGluZy15O1xuICBwYWRkaW5nLWxlZnQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIHBhZGRpbmctcmlnaHQ6ICRpbnB1dC1wYWRkaW5nLXgtc207XG59XG4iLCIuZ2wtY2FyZCB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIEBhcHBseSBnbC1ib3JkZXItMTtcbiAgQGFwcGx5IGdsLWJvcmRlci1zb2xpZDtcbiAgQGFwcGx5IGdsLWJvcmRlci10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGNvbnRyYXN0LW1vcmU6Z2wtYm9yZGVyLXN0cm9uZztcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgQGFwcGx5IGdsLWJyZWFrLXdvcmRzO1xuICBAYXBwbHkgZ2wtcmVsYXRpdmU7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1wLTI7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWNhcmQtYm9yZGVyLXJhZGl1cyk7XG59XG5cbi5nbC1jYXJkLWhlYWRlcixcbi5nbC1jYXJkLWJvZHkge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuXG4uZ2wtY2FyZC1oZWFkZXIge1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgQGFwcGx5IGdsLXB0LTI7XG4gIEBhcHBseSBnbC1wYi0zO1xuICBAYXBwbHkgZ2wtbXktMTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogY2FsYyh2YXIoLS1nbC1jYXJkLWJvcmRlci1yYWRpdXMpIC0gJGdsLWJvcmRlci1zaXplLTEpO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogY2FsYyh2YXIoLS1nbC1jYXJkLWJvcmRlci1yYWRpdXMpIC0gJGdsLWJvcmRlci1zaXplLTEpO1xuXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNiB7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtdGV4dC1oZWFkaW5nO1xuICAgIEBhcHBseSBnbC1tLTA7XG4gIH1cbn1cblxuLmdsLWNhcmQtYm9keSB7XG4gIEBhcHBseSBnbC1ncm93O1xuICBAYXBwbHkgZ2wtcC0zO1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGNvbnRyYXN0LW1vcmU6Z2wtYm9yZGVyO1xuICBAYXBwbHkgZm9yY2VkLWNvbG9yczpnbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tZ2wtY2FyZC1ib3JkZXItcmFkaXVzKSAtICRnbC1zcGFjaW5nLXNjYWxlLTIpO1xufVxuXG4uZ2wtY2FyZC1mb290ZXIge1xuICBAYXBwbHkgZ2wtcHgtMztcbiAgQGFwcGx5IGdsLXB0LTM7XG4gIEBhcHBseSBnbC1wYi0yO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKHZhcigtLWdsLWNhcmQtYm9yZGVyLXJhZGl1cykgLSAkZ2wtYm9yZGVyLXNpemUtMSk7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKHZhcigtLWdsLWNhcmQtYm9yZGVyLXJhZGl1cykgLSAkZ2wtYm9yZGVyLXNpemUtMSk7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cbiIsIi5nbC1jbGVhci1pY29uLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gIH1cbn1cbiIsIi5nbC1hY2NvcmRpb24taXRlbSB7XG4gIEBhcHBseSBnbC1tYi01O1xuXG4gIC5nbC1hY2NvcmRpb24taXRlbS1oZWFkZXIge1xuICAgIEBhcHBseSBnbC1tLTA7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBAYXBwbHkgZ2wtbWItMDtcbiAgfVxuXG4gIC5jb2xsYXBzZSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTUgKyAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICB9XG59XG4iLCIvKlxuICogLS1nbC1hbGVydC1wYWRkaW5nLXhcbiAqXG4gKiBXYXkgdG8gaG9vayBpbnRvIHNwYWNpbmcgb2YgZ2wtYWxlcnQuXG4gKiBUaGlzIGlzIHVzZWQgZS5nLiBmb3IgcGFnZSB3aWRlIGNvbnRhaW5lcnNcbiAqIGluIEdpdExhYi5cbiAqL1xuLy8gc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuJGdsLWFsZXJ0LXBhZGRpbmcteDogdmFyKC0tZ2wtYWxlcnQtcGFkZGluZy14LCAwcHgpO1xuXG5AbWl4aW4gZ2wtYWxlcnQtdmFyaWFudCgkdmFyaWFudCwgJGJhY2tncm91bmQtY29sb3IsICR0aXRsZS1jb2xvciwgJGJvcmRlci1jb2xvciwgJGljb24tY29sb3IpIHtcbiAgLmdsLWFsZXJ0LSN7JHZhcmlhbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG5cbiAgICAuZ2wtYWxlcnQtdGl0bGUge1xuICAgICAgY29sb3I6ICR0aXRsZS1jb2xvcjtcbiAgICB9XG5cbiAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IG5vbmUpIHtcbiAgICAgIC5nbC1hbGVydC1pY29uIHtcbiAgICAgICAgY29sb3I6ICRpY29uLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZ2wtYWxlcnQge1xuICBAYXBwbHkgZ2wtcHktMztcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWxlcnQtYm9yZGVyLXJhZGl1cyk7XG4gIHBhZGRpbmctaW5saW5lOiBjYWxjKCN7JGdsLXNwYWNpbmctc2NhbGUtN30gKyAjeyRnbC1hbGVydC1wYWRkaW5nLXh9KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDFweCBzb2xpZDtcblxuICAmLW5vdC1kaXNtaXNzaWJsZSB7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygjeyRnbC1zcGFjaW5nLXNjYWxlLTR9ICsgI3skZ2wtYWxlcnQtcGFkZGluZy14fSk7XG4gIH1cblxuICAuZ2wtbGluazpub3QoLmdsLWxhYmVsLWxpbmspIHtcbiAgICBAYXBwbHkgZ2wtdW5kZXJsaW5lO1xuICB9XG5cbiAgJi5nbC1hbGVydC1oYXMtYWN0aW9ucyB7XG4gICAgQGFwcGx5IGdsLXBiLTQ7XG4gIH1cbn1cblxuLmdsLWFsZXJ0LXN0aWNreSB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogMDtcbn1cblxuLmdsLWFsZXJ0LXRpdGxlIHtcbiAgQGFwcGx5IGdsLWhlYWRpbmctc2NhbGUtMzAwO1xuICBAYXBwbHkgZ2wtbWItMjtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG59XG5cbi5nbC1hbGVydC1pY29uLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLXRvcC0zO1xuICBsZWZ0OiBjYWxjKCN7JGdsLXNwYWNpbmctc2NhbGUtM30gKyAjeyRnbC1hbGVydC1wYWRkaW5nLXh9KTtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIC8vIE1hdGNoIGxpbmUtaGVpZ2h0IG9uIGZpcnN0IGxpbmUgb2YgdGl0bGUgb3Igc2xvdCB0ZXh0IGNvbnRlbnRcbiAgaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtMjA7XG59XG5cbi5nbC1hbGVydC1ib2R5IHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5nbC1hbGVydC1hY3Rpb25zIHtcbiAgQGFwcGx5IGdsLWZsZXggZ2wtZmxleC1jb2wgZ2wtZmxleC13cmFwIGdsLWdhcC15LTM7XG4gIEBhcHBseSBnbC1tdC0zO1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICBAYXBwbHkgZ2wtZmxleC1yb3c7XG4gIH1cbn1cblxuLmdsLWFsZXJ0LWFjdGlvbiB7XG4gIEBhcHBseSBnbC1tci0wIGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICBAYXBwbHkgZ2wtbXItMyBnbC13LWF1dG87XG4gIH1cbn1cblxuLy8gVGhpcyBpcyB0aGUgcmVwbGFjZW1lbnQgZm9yIC5nbC1hbGVydC1kaXNtaXNzXG4uZ2wtZGlzbWlzcy1idG4ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIC8vIFB1bGwgdGhlIGJ1dHRvbiB1cCBieSBoYWxmIGl0cyBvdmVyaGFuZyBzbyBpdCBhbGlnbnMgd2l0aCBmaXJzdCBsaW5lIHRpdGxlIG9yIHNsb3QgdGV4dCBjb250ZW50XG4gIHRvcDogY2FsYygjeyRnbC1zcGFjaW5nLXNjYWxlLTN9IC0gKCN7JGdsLWJ1dHRvbi1zbWFsbC1zaXplfSAtICN7JGdsLWxpbmUtaGVpZ2h0LTIwfSkgLyAyKTtcbiAgcmlnaHQ6IGNhbGMoI3skZ2wtc3BhY2luZy1zY2FsZS0yfSArICN7JGdsLWFsZXJ0LXBhZGRpbmcteH0pO1xufVxuXG4vKiBWYXJpYW50cyAqL1xuXG5AaW5jbHVkZSBnbC1hbGVydC12YXJpYW50KFxuICAkdmFyaWFudDogZGFuZ2VyLFxuICAkYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtZGFuZ2VyLWJhY2tncm91bmQtY29sb3IpLFxuICAkdGl0bGUtY29sb3I6IHZhcigtLWdsLWFsZXJ0LWRhbmdlci10aXRsZS1jb2xvciksXG4gICRib3JkZXItY29sb3I6IHZhcigtLWdsLWFsZXJ0LWRhbmdlci1ib3JkZXItY29sb3IpLFxuICAkaWNvbi1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWljb24tY29sb3IpXG4pO1xuXG5AaW5jbHVkZSBnbC1hbGVydC12YXJpYW50KFxuICAkdmFyaWFudDogd2FybmluZyxcbiAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZC1jb2xvciksXG4gICR0aXRsZS1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtd2FybmluZy10aXRsZS1jb2xvciksXG4gICRib3JkZXItY29sb3I6IHZhcigtLWdsLWFsZXJ0LXdhcm5pbmctYm9yZGVyLWNvbG9yKSxcbiAgJGljb24tY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXdhcm5pbmctaWNvbi1jb2xvcilcbik7XG5cbkBpbmNsdWRlIGdsLWFsZXJ0LXZhcmlhbnQoXG4gICR2YXJpYW50OiB0aXAsXG4gICRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hbGVydC1uZXV0cmFsLWJhY2tncm91bmQtY29sb3IpLFxuICAkdGl0bGUtY29sb3I6IHZhcigtLWdsLWFsZXJ0LW5ldXRyYWwtdGl0bGUtY29sb3IpLFxuICAkYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1hbGVydC1uZXV0cmFsLWJvcmRlci1jb2xvciksXG4gICRpY29uLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1uZXV0cmFsLWljb24tY29sb3IpXG4pO1xuXG5AaW5jbHVkZSBnbC1hbGVydC12YXJpYW50KFxuICAkdmFyaWFudDogaW5mbyxcbiAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFsZXJ0LWluZm8tYmFja2dyb3VuZC1jb2xvciksXG4gICR0aXRsZS1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtaW5mby10aXRsZS1jb2xvciksXG4gICRib3JkZXItY29sb3I6IHZhcigtLWdsLWFsZXJ0LWluZm8tYm9yZGVyLWNvbG9yKSxcbiAgJGljb24tY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8taWNvbi1jb2xvcilcbik7XG5cbkBpbmNsdWRlIGdsLWFsZXJ0LXZhcmlhbnQoXG4gICR2YXJpYW50OiBzdWNjZXNzLFxuICAkYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yKSxcbiAgJHRpdGxlLWNvbG9yOiB2YXIoLS1nbC1hbGVydC1zdWNjZXNzLXRpdGxlLWNvbG9yKSxcbiAgJGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYWxlcnQtc3VjY2Vzcy1ib3JkZXItY29sb3IpLFxuICAkaWNvbi1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stc3VjY2Vzcy1pY29uLWNvbG9yKVxuKTtcbiIsIi5nbC1hdHRyaWJ1dGUtbGlzdCB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLTE2O1xuICBAYXBwbHkgZ2wtZ3JpZDtcbiAgQGFwcGx5IGdsLWdhcC14LTc7XG59XG5cbi5nbC1hdHRyaWJ1dGUtbGlzdC1ob3Jpem9udGFsLWl0ZW1zIHtcbiAgQGNvbnRhaW5lciAobWluLXdpZHRoOiAyNXJlbSkge1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogZml0LWNvbnRlbnQoMTVyZW0pIDFmcjtcblxuICAgIC5nbC1hdHRyaWJ1dGUtbGlzdC1pdGVtIHtcbiAgICAgIEBhcHBseSBnbC1jb2wtc3Bhbi0yO1xuICAgIH1cbiAgfVxuXG4gIEBjb250YWluZXIgKG1pbi13aWR0aDogNTRyZW0pIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgyLCBmaXQtY29udGVudCgxNXJlbSkgMWZyKTtcbiAgICBAYXBwbHkgZ2wtZ3JpZC1mbG93LWNvbDtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCh2YXIoLS1hdHRyaWJ1dGUtbGlzdC1yb3ctY291bnQpLCBhdXRvKTtcbiAgfVxufVxuXG4uZ2wtYXR0cmlidXRlLWxpc3QtdmVydGljYWwtaXRlbXMge1xuICBAY29udGFpbmVyIChtaW4td2lkdGg6IDQwcmVtKSB7XG4gICAgQGFwcGx5IGdsLWdyaWQtY29scy0yO1xuICAgIEBhcHBseSBnbC1ncmlkLWZsb3ctY29sO1xuICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KHZhcigtLWF0dHJpYnV0ZS1saXN0LXJvdy1jb3VudCksIGF1dG8pO1xuICB9XG59XG5cbi5nbC1hdHRyaWJ1dGUtbGlzdC1pdGVtIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICBAYXBwbHkgZ2wtcHktNTtcbiAgQGFwcGx5IGdsLWdhcC00O1xuICBAYXBwbHkgZ2wtZ3JpZDtcbiAgQGFwcGx5IGdsLWdyaWQtY29scy1zdWJncmlkO1xufVxuXG4uZ2wtYXR0cmlidXRlLWxpc3QtaXRlbS1sYWJlbCB7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1nYXAtMztcbn1cblxuLmdsLWF0dHJpYnV0ZS1saXN0LWl0ZW0tbGFiZWwtaWNvbiB7XG4gIEBhcHBseSBnbC1mbGV4LW5vbmU7XG59XG5cbi5nbC1hdHRyaWJ1dGUtbGlzdC1pdGVtLWRlc2NyaXB0aW9uIHtcbiAgQGFwcGx5IGdsLW1iLTA7XG4gIEBhcHBseSBnbC1taW4tdy0wO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5AdXNlIFwic2FzczpsaXN0XCI7XG5cbi8vIEF2YWlsYWJsZSBiYWNrZ3JvdW5kIGNvbG9ycyBmb3IgdGhlIGlkZW50aWNvbiBmYWxsYmFjayBmb3IgYXZhdGFyc1xuLy9cbi8vIFB1cnBsZSBpcyBkdXBsaWNhdGVkIG9uIHB1cnBvc2UuIFdlIGhhdmUgcmVwbGFjZWQgaW5kaWdvIHdpdGggaXQuXG4vLyBJZiB3ZSBoYWQgc2ltcGx5IHJlbW92ZWQgaXQsIHRoZSB0b3RhbCBudW1iZXIgb2YgY29sb3JzIHdvdWxkIGhhdmVcbi8vIGNoYW5nZWQsIHJlc3VsdGluZyBpbiBjaGFuZ2luZyB0aGUgY29sb3Igb2YgYWxsIGlkZW50aWNvbnMsIGJlY2F1c2Vcbi8vIHdlIGRvIGEgbW9kdWxvIGRpdmlzaW9uIHdpdGggdGhlIHRvdGFsIG51bWJlciBvZiBjb2xvcnMgb24gdGhlXG4vLyBvYmplY3QncyBpZCB0byBhbHdheXMgZ2l2ZSBpdCB0aGUgc2FtZSBcInJhbmRvbVwiIGNvbG9yLlxuJGdsLWF2YXRhci1pZGVudGljb24tYmdzOlxuICB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1yZWQpLCB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1wdXJwbGUpLFxuICB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1wdXJwbGUpLFxuICB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1ibHVlKSwgdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItZ3JlZW4pLFxuICB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1vcmFuZ2UpLFxuICB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stYmFja2dyb3VuZC1jb2xvci1uZXV0cmFsKTtcblxuJGdsLWF2YXRhci1pZGVudGljb24tdGV4dHM6XG4gIHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXJlZCksIHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXB1cnBsZSksXG4gIHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLXB1cnBsZSksIHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLWJsdWUpLFxuICB2YXIoLS1nbC1hdmF0YXItZmFsbGJhY2stdGV4dC1jb2xvci1ncmVlbiksIHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLW9yYW5nZSksXG4gIHZhcigtLWdsLWF2YXRhci1mYWxsYmFjay10ZXh0LWNvbG9yLW5ldXRyYWwpO1xuXG5AbWl4aW4gZ2wtYXZhdGFyIHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG4gIEBhcHBseSBnbC1sZWFkaW5nLTE7XG4gIEBhcHBseSBnbC1vYmplY3QtY29udGFpbjtcbiAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWdsLWF2YXRhci1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMXB4O1xufVxuXG5AbWl4aW4gZ2wtYXZhdGFyLXMxNiB7XG4gIEBhcHBseSBnbC13LTU7XG4gIEBhcHBseSBnbC1oLTU7XG4gIGZvbnQtc2l6ZTogbWFwLmdldCgkZ2wtZm9udC1zaXplcywgMTAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQpO1xufVxuXG5AbWl4aW4gZ2wtYXZhdGFyLXMyNCB7XG4gIEBhcHBseSBnbC13LTY7XG4gIEBhcHBseSBnbC1oLTY7XG4gIGZvbnQtc2l6ZTogbWFwLmdldCgkZ2wtZm9udC1zaXplcywgNDAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQpO1xufVxuXG5AbWl4aW4gZ2wtYXZhdGFyLXMzMiB7XG4gIEBhcHBseSBnbC13LTc7XG4gIEBhcHBseSBnbC1oLTc7XG4gIGZvbnQtc2l6ZTogbWFwLmdldCgkZ2wtZm9udC1zaXplcywgNTAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWRlZmF1bHQpO1xufVxuXG5AbWl4aW4gZ2wtYXZhdGFyLXM0OCB7XG4gIEBhcHBseSBnbC13LTk7XG4gIEBhcHBseSBnbC1oLTk7XG4gIGZvbnQtc2l6ZTogbWFwLmdldCgkZ2wtZm9udC1zaXplcywgNjAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuQG1peGluIGdsLWF2YXRhci1zNjQge1xuICBAYXBwbHkgZ2wtdy0xMTtcbiAgQGFwcGx5IGdsLWgtMTE7XG4gIGZvbnQtc2l6ZTogbWFwLmdldCgkZ2wtZm9udC1zaXplcywgNzAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuQG1peGluIGdsLWF2YXRhci1zOTYge1xuICBAYXBwbHkgZ2wtdy0xMztcbiAgQGFwcGx5IGdsLWgtMTM7XG4gIGZvbnQtc2l6ZTogbWFwLmdldCgkZ2wtZm9udC1zaXplcywgODAwKTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYXZhdGFyLXNxdWFyZS1ib3JkZXItcmFkaXVzLWxnKTtcbn1cblxuLmdsLWF2YXRhciB7XG4gIEBpbmNsdWRlIGdsLWF2YXRhcjtcbn1cblxuLmdsLWF2YXRhci1zMTYge1xuICBAaW5jbHVkZSBnbC1hdmF0YXItczE2O1xufVxuXG4uZ2wtYXZhdGFyLXMyNCB7XG4gIEBpbmNsdWRlIGdsLWF2YXRhci1zMjQ7XG59XG5cbi5nbC1hdmF0YXItczMyIHtcbiAgQGluY2x1ZGUgZ2wtYXZhdGFyLXMzMjtcbn1cblxuLmdsLWF2YXRhci1zNDgge1xuICBAaW5jbHVkZSBnbC1hdmF0YXItczQ4O1xufVxuXG4uZ2wtYXZhdGFyLXM2NCB7XG4gIEBpbmNsdWRlIGdsLWF2YXRhci1zNjQ7XG59XG5cbi5nbC1hdmF0YXItczk2IHtcbiAgQGluY2x1ZGUgZ2wtYXZhdGFyLXM5Njtcbn1cblxuLmdsLXNtLWF2YXRhci1zMTYge1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICBAaW5jbHVkZSBnbC1hdmF0YXItczE2O1xuICB9XG59XG5cbi5nbC1tZC1hdmF0YXItczE2IHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kKSB7XG4gICAgQGluY2x1ZGUgZ2wtYXZhdGFyLXMxNjtcbiAgfVxufVxuXG4uZ2wtbGctYXZhdGFyLXMxNiB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZykge1xuICAgIEBpbmNsdWRlIGdsLWF2YXRhci1zMTY7XG4gIH1cbn1cblxuLmdsLXNtLWF2YXRhci1zMjQge1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICBAaW5jbHVkZSBnbC1hdmF0YXItczI0O1xuICB9XG59XG5cbi5nbC1tZC1hdmF0YXItczI0IHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kKSB7XG4gICAgQGluY2x1ZGUgZ2wtYXZhdGFyLXMyNDtcbiAgfVxufVxuXG4uZ2wtbGctYXZhdGFyLXMyNCB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZykge1xuICAgIEBpbmNsdWRlIGdsLWF2YXRhci1zMjQ7XG4gIH1cbn1cblxuLmdsLXNtLWF2YXRhci1zMzIge1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICBAaW5jbHVkZSBnbC1hdmF0YXItczMyO1xuICB9XG59XG5cbi5nbC1tZC1hdmF0YXItczMyIHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kKSB7XG4gICAgQGluY2x1ZGUgZ2wtYXZhdGFyLXMzMjtcbiAgfVxufVxuXG4uZ2wtbGctYXZhdGFyLXMzMiB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZykge1xuICAgIEBpbmNsdWRlIGdsLWF2YXRhci1zMzI7XG4gIH1cbn1cblxuLmdsLXNtLWF2YXRhci1zNDgge1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICBAaW5jbHVkZSBnbC1hdmF0YXItczQ4O1xuICB9XG59XG5cbi5nbC1tZC1hdmF0YXItczQ4IHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kKSB7XG4gICAgQGluY2x1ZGUgZ2wtYXZhdGFyLXM0ODtcbiAgfVxufVxuXG4uZ2wtbGctYXZhdGFyLXM0OCB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZykge1xuICAgIEBpbmNsdWRlIGdsLWF2YXRhci1zNDg7XG4gIH1cbn1cblxuLmdsLXNtLWF2YXRhci1zNjQge1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICBAaW5jbHVkZSBnbC1hdmF0YXItczY0O1xuICB9XG59XG5cbi5nbC1tZC1hdmF0YXItczY0IHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kKSB7XG4gICAgQGluY2x1ZGUgZ2wtYXZhdGFyLXM2NDtcbiAgfVxufVxuXG4uZ2wtbGctYXZhdGFyLXM2NCB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZykge1xuICAgIEBpbmNsdWRlIGdsLWF2YXRhci1zNjQ7XG4gIH1cbn1cblxuLmdsLXNtLWF2YXRhci1zOTYge1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICBAaW5jbHVkZSBnbC1hdmF0YXItczk2O1xuICB9XG59XG5cbi5nbC1tZC1hdmF0YXItczk2IHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kKSB7XG4gICAgQGluY2x1ZGUgZ2wtYXZhdGFyLXM5NjtcbiAgfVxufVxuXG4uZ2wtbGctYXZhdGFyLXM5NiB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZykge1xuICAgIEBpbmNsdWRlIGdsLWF2YXRhci1zOTY7XG4gIH1cbn1cblxuLmdsLWF2YXRhci1jaXJjbGUge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1hdmF0YXItY2lyY2xlLWJvcmRlci1yYWRpdXMtZGVmYXVsdCk7XG59XG5cbi5nbC1hdmF0YXItaWRlbnRpY29uIHtcbiAgQGFwcGx5IGdsLXRleHQtY2VudGVyO1xuICBAYXBwbHkgZ2wtYWxpZ24tdG9wO1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbn1cblxuLy8gQmFja2dyb3VuZCBjb2xvcnNcbkBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGlzdC5sZW5ndGgoJGdsLWF2YXRhci1pZGVudGljb24tYmdzKSB7XG4gIC5nbC1hdmF0YXItaWRlbnRpY29uLWJnI3skaX0ge1xuICAgIGNvbG9yOiBsaXN0Lm50aCgkZ2wtYXZhdGFyLWlkZW50aWNvbi10ZXh0cywgJGkpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGxpc3QubnRoKCRnbC1hdmF0YXItaWRlbnRpY29uLWJncywgJGkpO1xuICB9XG59XG4iLCIuZ2wtYXZhdGFyLWxhYmVsZWQge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG5cbiAgJi1sYWJlbHMge1xuICAgIEBhcHBseSBnbC1tbC0zO1xuICAgIEBhcHBseSBnbC1mbGV4O1xuICAgIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gICAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xuICB9XG5cbiAgJi1sYWJlbHMuaW5saW5lLWxhYmVscyB7XG4gICAgQGFwcGx5IGdsLWZsZXgtcm93O1xuICAgIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gICAgQGFwcGx5IGdsLWdhcC0yO1xuICB9XG5cbiAgJi1sYWJlbCB7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICBAYXBwbHkgZ2wtcC0xO1xuICAgIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgfVxuXG4gICYtc3VibGFiZWwge1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgfVxufVxuIiwiLmdsLWF2YXRhci1saW5rIHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuXG4gIC5nbC1hdmF0YXIge1xuICAgIEBhcHBseSBnbC10cmFuc2l0aW9uLWJvcmRlci1jb2xvcjtcbiAgICBAYXBwbHkgZ2wtZHVyYXRpb24tc2xvdztcbiAgICBAYXBwbHkgZ2wtZWFzZS1lYXNlO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcblxuICAgIC5nbC1hdmF0YXIge1xuICAgICAgb3V0bGluZTogMXB4IHNvbGlkIHZhcigtLWdsLWF2YXRhci1ib3JkZXItY29sb3ItaG92ZXIpO1xuICAgIH1cblxuICAgIC5nbC1hdmF0YXItbGFiZWxlZCB7XG4gICAgICAmLWxhYmVsIHtcbiAgICAgICAgQGFwcGx5IGdsLXVuZGVybGluZTtcbiAgICAgIH1cblxuICAgICAgJi1zdWJsYWJlbCB7XG4gICAgICAgIEBhcHBseSBnbC11bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgLy8gYWxsb3cgdGhlIGZvY3VzIHJpbmcgdG8gYmUgcGxhY2VkIG9uIHRoZSBhdmF0YXIgaW1hZ2UgaW5zdGVhZCBvZiBwYXJlbnQgYW5jaG9yIHNvIHRoYXQgdGhlIGZvY3VzIHJpbmcgdGFrZXMgdGhlIHJvdW5kZWQgc2hhcGVzIG9mIHRoZSBhdmF0YXJzXG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIC5nbC1hdmF0YXIge1xuICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgIH1cbiAgfVxufVxuIiwiLmdsLWF2YXRhcnMtaW5saW5lIHtcbiAgLy8gU2V0IGEgZGVmYXVsdCBhbmQgZ2V0IHRoZSByYWRpdXNcbiAgLS1hdmF0YXItc2l6ZTogMjRweDtcbiAgLS1hdmF0YXItcmFkaXVzOiBjYWxjKHZhcigtLWF2YXRhci1zaXplKSAqIDAuNSk7XG4gIC8vIFBvc2l0aW9uIHRoZSBtYXNrXG4gIC0tbWFzay1vZmZzZXQ6IGNhbGModmFyKC0tYXZhdGFyLXNpemUpICogLTAuMjUpO1xuICAvLyBNYXNrIHNpemUgcGx1cyBib3JkZXIgY3V0b3V0IGVmZmVjdFxuICAtLW1hc2stY3V0b3V0OiBjYWxjKHZhcigtLWF2YXRhci1yYWRpdXMpICsgMS41cHgpO1xuXG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLXNtIHtcbiAgLS1hdmF0YXItc2l6ZTogMTZweDtcbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLW1kIHtcbiAgLS1hdmF0YXItc2l6ZTogMjRweDtcbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLWxnIHtcbiAgLS1hdmF0YXItc2l6ZTogMzJweDtcbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLWNoaWxkIHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuXG4gIC8vIERvbid0IGluY2x1ZGUgdGhlIGJhZGdlXG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiB2YXIoLS1tYXNrLW9mZnNldCk7XG4gICAgbWFzazogcmFkaWFsLWdyYWRpZW50KFxuICAgICAgY2lyY2xlIGF0IGNhbGModmFyKC0tYXZhdGFyLXNpemUpICogMS4yNSkgY2VudGVyLFxuICAgICAgdHJhbnNwYXJlbnQgdmFyKC0tbWFzay1jdXRvdXQpLFxuICAgICAgd2hpdGUgMFxuICAgICk7XG5cbiAgICAmOmhvdmVyICsgLmdsLWF2YXRhcnMtaW5saW5lLWNoaWxkID4gLmdsLWF2YXRhci1saW5rLFxuICAgICY6aG92ZXIgKyAuZ2wtYXZhdGFycy1pbmxpbmUtY2hpbGQgPiAuZ2wtYXZhdGFycy1pbmxpbmUtYmFkZ2Uge1xuICAgICAgbWFzazogcmFkaWFsLWdyYWRpZW50KFxuICAgICAgICBjaXJjbGUgYXQgdmFyKC0tbWFzay1vZmZzZXQpIGNlbnRlcixcbiAgICAgICAgdHJhbnNwYXJlbnQgdmFyKC0tbWFzay1jdXRvdXQpLFxuICAgICAgICB3aGl0ZSAwXG4gICAgICApO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlbW92ZSBtYXNrIG9uIGhvdmVyZWQgb3IgZm9jdXNlZCBhdmF0YXIgYW5kIGJyaW5nIGl0IGZvcndhcmRcbiAgJjpub3QoOmxhc3QtY2hpbGQpOmhvdmVyLFxuICAmOm5vdCg6bGFzdC1jaGlsZCk6Zm9jdXMtd2l0aGluIHtcbiAgICBAYXBwbHkgZ2wtei0xO1xuICAgIG1hc2s6IG5vbmU7XG4gIH1cbn1cblxuLmdsLWF2YXRhcnMtaW5saW5lLWJhZGdlIHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBAYXBwbHkgZ2wtcHgtMjtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1waWxsO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1zdGF0dXMtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWdsLXN0YXR1cy1uZXV0cmFsLXRleHQtY29sb3IpO1xuICBoZWlnaHQ6IHZhcigtLWF2YXRhci1zaXplKTtcbiAgbWluLXdpZHRoOiB2YXIoLS1hdmF0YXItc2l6ZSk7XG5cbiAgJi5sZyB7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC0zeGw7XG4gIH1cbn1cbiIsIi5nbC1hbmltYXRlZC1pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmlsbDogbm9uZSAhaW1wb3J0YW50O1xuICBzdHJva2U6IGN1cnJlbnRDb2xvciAhaW1wb3J0YW50O1xuXG4gICoge1xuICAgIHRyYW5zaXRpb246IGFsbCAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWM7XG4gICAgLy8gJ2FsbCcgd2lsbCBhbHNvIGFuaW1hdGUgdGhlIHZpc2liaWxpdHkgcHJvcGVydHksIHdoaWNoIG1ha2VzIHRoZSBpY29uIGRpc2FwcGVhciBsYXRlciB0aGFuIGl0IHNob3VsZFxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6XG4gICAgICBjb2xvciwgZmlsbCwgb3BhY2l0eSwgdHJhbnNmb3JtLCByb3RhdGUsIHRyYW5zbGF0ZSwgc2NhbGUsIHN0cm9rZS1kYXNoYXJyYXksIHN0cm9rZS1kYXNob2Zmc2V0O1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tc2xvdztcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkZ2wtZWFzaW5nLW91dC1jdWJpYztcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgIEBpbmNsdWRlIGdsLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tdHJhbnNpdGlvbjtcbiAgICBAaW5jbHVkZSBnbC1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLWFuaW1hdGlvbjtcbiAgfVxufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBDb2xvciB2YXJpYW50cy5cbiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXG5cbi5nbC1hbmltYXRlZC1pY29uLWRlZmF1bHQge1xuICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1kZWZhdWx0KTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tc3VidGxlIHtcbiAgY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tc3Ryb25nIHtcbiAgY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3Ryb25nKTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tZGlzYWJsZWQge1xuICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1kaXNhYmxlZCk7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLWxpbmsge1xuICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1saW5rKTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24taW5mbyB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLWluZm8pO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi13YXJuaW5nIHtcbiAgY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itd2FybmluZyk7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLWRhbmdlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLWRhbmdlcik7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLXN1Y2Nlc3Mge1xuICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1zdWNjZXNzKTtcbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfY2hldnJvbl9sZ19yaWdodF9kb3duX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuXG4uZ2wtYW5pbWF0ZWQtY2hldnJvbi1sZy1yaWdodC1kb3duLWFycm93IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbn1cblxuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIHtcbiAgLmdsLWFuaW1hdGVkLWNoZXZyb24tbGctcmlnaHQtZG93bi1hcnJvdyB7XG4gICAgcm90YXRlOiA5MGRlZztcbiAgfVxufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiB7XG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLXJpZ2h0LWRvd24tYXJyb3cge1xuICAgIHJvdGF0ZTogMGRlZztcbiAgfVxufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF9jaGV2cm9uX3JpZ2h0X2Rvd25faWNvbi52dWVcbiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXG5cbi5nbC1hbmltYXRlZC1jaGV2cm9uLXJpZ2h0LWRvd24tYXJyb3cge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4vKiBvbiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24ge1xuICAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1yaWdodC1kb3duLWFycm93IHtcbiAgICByb3RhdGU6IDkwZGVnO1xuICB9XG59XG5cbi8qIG9mZiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb2ZmIHtcbiAgLmdsLWFuaW1hdGVkLWNoZXZyb24tcmlnaHQtZG93bi1hcnJvdyB7XG4gICAgcm90YXRlOiAwZGVnO1xuICB9XG59XG5cbi8qICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICpcbiAqIGFuaW1hdGVkX2NoZXZyb25fbGdfZG93bl91cF9pY29uLnZ1ZVxuICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi9cblxuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIHtcbiAgLmdsLWFuaW1hdGVkLWNoZXZyb24tbGctZG93bi11cC1hcnJvdy1sZWZ0LWxpbmUsXG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLWRvd24tdXAtYXJyb3ctcmlnaHQtbGluZSB7XG4gICAgdHJhbnNsYXRlOiA1MCUgMzEuMiU7XG4gICAgc2NhbGU6IDEgMS4wMTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgYWxsICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICAgIHNjYWxlICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSBsaW5lYXIoMSAwJSwgLTI5IDE2JSwgMSAxMDAlKTtcbiAgfVxuXG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lIHtcbiAgICByb3RhdGU6IDQ1ZGVnO1xuICB9XG5cbiAgLmdsLWFuaW1hdGVkLWNoZXZyb24tbGctZG93bi11cC1hcnJvdy1yaWdodC1saW5lIHtcbiAgICByb3RhdGU6IC00NWRlZztcbiAgfVxufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiB7XG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lLFxuICAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1sZy1kb3duLXVwLWFycm93LXJpZ2h0LWxpbmUge1xuICAgIHRyYW5zbGF0ZTogNTAlIDY4LjglO1xuICAgIHNjYWxlOiAxIDE7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIGFsbCAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWMsXG4gICAgICBzY2FsZSAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gbGluZWFyKDEgMCUsIDI5IDE2JSwgMSAxMDAlKTtcbiAgfVxuXG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lIHtcbiAgICByb3RhdGU6IDEzNWRlZztcbiAgfVxuXG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWxnLWRvd24tdXAtYXJyb3ctcmlnaHQtbGluZSB7XG4gICAgcm90YXRlOiAtMTM1ZGVnO1xuICB9XG59XG5cbi8qICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICpcbiAqIGFuaW1hdGVkX2NoZXZyb25fZG93bl91cF9pY29uLnZ1ZVxuICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi9cblxuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIHtcbiAgLmdsLWFuaW1hdGVkLWNoZXZyb24tZG93bi11cC1hcnJvdy1sZWZ0LWxpbmUsXG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWRvd24tdXAtYXJyb3ctcmlnaHQtbGluZSB7XG4gICAgdHJhbnNsYXRlOiA1MCUgMzcuNiU7XG4gICAgc2NhbGU6IDEgMS4wMTtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgYWxsICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICAgIHNjYWxlICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSBsaW5lYXIoMSAwJSwgLTI3IDE2JSwgMSAxMDAlKTtcbiAgfVxuXG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lIHtcbiAgICByb3RhdGU6IDQ1ZGVnO1xuICB9XG5cbiAgLmdsLWFuaW1hdGVkLWNoZXZyb24tZG93bi11cC1hcnJvdy1yaWdodC1saW5lIHtcbiAgICByb3RhdGU6IC00NWRlZztcbiAgfVxufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiB7XG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lLFxuICAuZ2wtYW5pbWF0ZWQtY2hldnJvbi1kb3duLXVwLWFycm93LXJpZ2h0LWxpbmUge1xuICAgIHRyYW5zbGF0ZTogNTAlIDYyLjYlO1xuICAgIHNjYWxlOiAxIDE7XG4gICAgdHJhbnNpdGlvbjpcbiAgICAgIGFsbCAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWMsXG4gICAgICBzY2FsZSAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gbGluZWFyKDEgMCUsIDI3IDE2JSwgMSAxMDAlKTtcbiAgfVxuXG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWRvd24tdXAtYXJyb3ctbGVmdC1saW5lIHtcbiAgICByb3RhdGU6IDEzNWRlZztcbiAgfVxuXG4gIC5nbC1hbmltYXRlZC1jaGV2cm9uLWRvd24tdXAtYXJyb3ctcmlnaHQtbGluZSB7XG4gICAgcm90YXRlOiAtMTM1ZGVnO1xuICB9XG59XG5cbi8qICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICpcbiAqIGFuaW1hdGVkX2R1b19jaGF0X2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuXG4uZ2wtYW5pbWF0ZWQtZHVvLWNoYXQtc21hbGwtc3BhcmtsZSxcbi5nbC1hbmltYXRlZC1kdW8tY2hhdC1iaWctc3BhcmtsZSB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG59XG5cbi8qIG9uIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtZHVvLWNoYXQtc21hbGwtc3BhcmtsZSxcbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1kdW8tY2hhdC1iaWctc3BhcmtsZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBnbC1hbmltYXRlZC1kdW8tY2hhdC1zcGFya2xlO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWR1by1jaGF0LXNtYWxsLXNwYXJrbGUge1xuICBhbmltYXRpb24tZGVsYXk6IC0wLjVzO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtZHVvLWNoYXQtYmlnLXNwYXJrbGUge1xuICBhbmltYXRpb24tZGVsYXk6IC0xLjVzO1xufVxuXG5Aa2V5ZnJhbWVzIGdsLWFuaW1hdGVkLWR1by1jaGF0LXNwYXJrbGUge1xuICAwJSB7XG4gICAgdHJhbnNsYXRlOiAtNDUlIC00NSU7XG4gICAgc2NhbGU6IDA7XG4gIH1cblxuICAyMCUsXG4gIDQ1JSB7XG4gICAgdHJhbnNsYXRlOiAtMzElIC0zMSU7XG4gICAgc2NhbGU6IDE7XG4gIH1cblxuICA1MCUsXG4gIDgwJSB7XG4gICAgdHJhbnNsYXRlOiAwIC02JTtcbiAgICBzY2FsZTogMC44O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNsYXRlOiAwIC02JTtcbiAgICBzY2FsZTogMDtcbiAgfVxufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1kdW8tY2hhdC1zbWFsbC1zcGFya2xlIHtcbiAgdHJhbnNsYXRlOiAwIC02JTtcbiAgc2NhbGU6IDAuODtcbn1cblxuLmdsLWFuaW1hdGVkLWR1by1jaGF0LWJpZy1zcGFya2xlIHtcbiAgdHJhbnNsYXRlOiAtMzElIC0zMSU7XG4gIHNjYWxlOiAxO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb24pIHtcbiAgLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWR1by1jaGF0LXNtYWxsLXNwYXJrbGUsXG4gIC5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1kdW8tY2hhdC1iaWctc3BhcmtsZSB7XG4gICAgYW5pbWF0aW9uLW5hbWU6IG5vbmU7XG4gIH1cbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfbG9hZGVyX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLWxvYWRlci1zaGFwZSB7XG4gIGFuaW1hdGlvbjogZ2wtYW5pbWF0ZWQtbG9hZGVyLW9uIDEuOHMgJGdsLWVhc2luZy1kZWZhdWx0IGluZmluaXRlO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtbG9hZGVyLXNoYXBlLTEge1xuICBhbmltYXRpb24tZGVsYXk6IDAuMTVzO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtbG9hZGVyLXNoYXBlLTIge1xuICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG59XG5cbkBrZXlmcmFtZXMgZ2wtYW5pbWF0ZWQtbG9hZGVyLW9uIHtcbiAgMzAlIHtcbiAgICB0cmFuc2xhdGU6IDAgLTMwJTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNsYXRlOiAwIDIlO1xuICB9XG5cbiAgNjUlIHtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgfVxufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF9ub3RpZmljYXRpb25zX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuXG4vKiBvbiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLW5vdGlmaWNhdGlvbnMtYm90dG9tLXBhcnQge1xuICBzdHJva2UtZGFzaGFycmF5OiA4MCUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC00MyU7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1ub3RpZmljYXRpb25zLXRvcC1wYXJ0IHtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1ub3RpZmljYXRpb25zLWxpbmUge1xuICBzdHJva2UtZGFzaGFycmF5OiAxMTUlIDEyMCU7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtbm90aWZpY2F0aW9ucy1ib3R0b20tcGFydCB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDE0NSUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtbm90aWZpY2F0aW9ucy10b3AtcGFydCB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDEwMCUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IDA7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtbm90aWZpY2F0aW9ucy1saW5lIHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMTE1JSAxMjAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogLTExMSU7XG59XG5cbi8qICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICpcbiAqIGFuaW1hdGVkX3NpZGViYXJfaWNvbi52dWVcbiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXG5cbi8qIG9uIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc2lkZWJhci1saW5lIHtcbiAgdHJhbnNsYXRlOiAxJSAwO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyKDAgMCUsIDUgNjAlLCAxIDEwMCUpO1xufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc2lkZWJhci1saW5lIHtcbiAgdHJhbnNsYXRlOiAtMSUgMDtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcigwIDAlLCA1IDYwJSwgMSAxMDAlKTtcbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfc21pbGVfaWNvbi52dWVcbiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICovXG5cbi5nbC1hbmltYXRlZC1zbWlsZS1iaWctc21pbGUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNzAlO1xufVxuXG4uZ2wtYW5pbWF0ZWQtc21pbGUtZXllcyBjaXJjbGUge1xuICBmaWxsOiBjdXJyZW50Q29sb3IgIWltcG9ydGFudDtcbn1cblxuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zbWlsZS1leWVzIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcigwIDAlLCAtMSAyMCUsIDEgMTAwJSk7XG4gIHRyYW5zbGF0ZTogMCAtNiU7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zbWlsZS1iaWctc21pbGUge1xuICBzY2FsZTogMTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xcztcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXNtaWxlLXNsaWdodC1zbWlsZSB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDEwJSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogLTglO1xufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc21pbGUtZXllcyB7XG4gIHRyYW5zbGF0ZTogMCAwO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNtaWxlLWJpZy1zbWlsZSB7XG4gIHNjYWxlOiAwLjE7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc21pbGUtc2xpZ2h0LXNtaWxlIHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMzAlIDEwMCU7XG4gIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF9zb3J0X2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuXG4uZ2wtYW5pbWF0ZWQtc29ydC1pY29uIHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbi8qIG9mZiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBnbC1hbmltYXRlZC1zdGFyLW9mZjtcbn1cblxuLmdsLWFuaW1hdGVkLXNvcnQtYXJyb3ctbGVmdCxcbi5nbC1hbmltYXRlZC1zb3J0LWFycm93LXJpZ2h0IHtcbiAgdHJhbnNmb3JtLW9yaWdpbjogMTguNyUgNi43JTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1zb3J0LWFycm93LWxlZnQsXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNvcnQtYXJyb3ctcmlnaHQge1xuICByb3RhdGU6IDBkZWc7XG4gIHRyYW5zbGF0ZTogMCAxMCU7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc29ydC1sb25nLWxpbmUtb2ZmLFxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1zb3J0LW1lZGl1bS1saW5lLW9mZixcbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc29ydC1zaG9ydC1saW5lLW9mZiB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tZGVsYXk6IC0xcztcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC1zb3J0LWxvbmctbGluZS1vbiB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMDVzO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNvcnQtbWVkaXVtLWxpbmUtb24ge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAwLjFzO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNvcnQtc2hvcnQtbGluZS1vbiB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMTVzO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXNvcnQtbGluZSB7XG4gIHRyYW5zbGF0ZTogMCAtNyU7XG59XG5cbi8qIG9uIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc29ydC1hcnJvdy1sZWZ0IHtcbiAgcm90YXRlOiA5MGRlZztcbiAgdHJhbnNsYXRlOiAwIDc3JTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXNvcnQtYXJyb3ctcmlnaHQge1xuICByb3RhdGU6IC05MGRlZztcbiAgdHJhbnNsYXRlOiAwIDc3JTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXNvcnQtbG9uZy1saW5lLW9uLFxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXNvcnQtbWVkaXVtLWxpbmUtb24sXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc29ydC1zaG9ydC1saW5lLW9uIHtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1kZWxheTogLTFzO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtc29ydC1sb25nLWxpbmUtb2ZmIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4xNXM7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zb3J0LW1lZGl1bS1saW5lLW9mZiB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDAuMXM7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zb3J0LXNob3J0LWxpbmUtb2ZmIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMC4wNXM7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC1zb3J0LWxpbmUge1xuICB0cmFuc2xhdGU6IDAgMDtcbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfc3Rhcl9pY29uLnZ1ZVxuICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKi9cblxuLmdsLWFuaW1hdGVkLXN0YXItc2hhcGUge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xufVxuXG4vKiBvbiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXN0YXItc2hhcGUge1xuICBhbmltYXRpb24tbmFtZTogZ2wtYW5pbWF0ZWQtc3Rhci1vbjtcbn1cblxuQGtleWZyYW1lcyBnbC1hbmltYXRlZC1zdGFyLW9uIHtcbiAgMCUsXG4gIDI1JSB7XG4gICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICA1MCUge1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgfVxuXG4gIDEwMCUge1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgfVxuXG4gIDAlLFxuICAxMDAlIHtcbiAgICBzY2FsZTogMTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgc2NhbGU6IDAuNztcbiAgfVxuXG4gIDUwJSB7XG4gICAgc2NhbGU6IDEuMTtcbiAgfVxufVxuXG4vKiBvZmYgc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtc3Rhci1zaGFwZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBnbC1hbmltYXRlZC1zdGFyLW9mZjtcbn1cblxuQGtleWZyYW1lcyBnbC1hbmltYXRlZC1zdGFyLW9mZiB7XG4gIDAlLFxuICAyNSUge1xuICAgIGZpbGw6IGN1cnJlbnRDb2xvcjtcbiAgfVxuXG4gIDUwJSB7XG4gICAgZmlsbDogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAxMDAlIHtcbiAgICBmaWxsOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIDAlLFxuICAxMDAlIHtcbiAgICBzY2FsZTogMTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgc2NhbGU6IDAuNztcbiAgfVxuXG4gIDUwJSB7XG4gICAgc2NhbGU6IDEuMTtcbiAgfVxufVxuXG4vKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqXG4gKiBhbmltYXRlZF90b2RvX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuXG4vKiBvbiBzdGF0ZSAqL1xuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXRvZG8tYm94IHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMjQwJSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogLTE5JTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb24gLmdsLWFuaW1hdGVkLXRvZG8tcGx1cy1saW5lIHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMCUgMTAwJTtcbiAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0xNCU7XG4gIHRyYW5zbGF0ZTogMTQlIDclO1xufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtdG9kby1jaGVjayB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDc2JSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbn1cblxuLyogb2ZmIHN0YXRlICovXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vZmYgLmdsLWFuaW1hdGVkLXRvZG8tYm94IHtcbiAgc3Ryb2tlLWRhc2hhcnJheTogMjE1JSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogLTEyJTtcbn1cblxuLmdsLWFuaW1hdGVkLWljb24tb2ZmIC5nbC1hbmltYXRlZC10b2RvLXBsdXMtbGluZSB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDMwJSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgdHJhbnNsYXRlOiAwIDA7XG59XG5cbi5nbC1hbmltYXRlZC1pY29uLW9mZiAuZ2wtYW5pbWF0ZWQtdG9kby1jaGVjayB7XG4gIHN0cm9rZS1kYXNoYXJyYXk6IDc2JSAxMDAlO1xuICBzdHJva2UtZGFzaG9mZnNldDogLTc2JTtcbn1cblxuLyogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKlxuICogYW5pbWF0ZWRfdXBsb2FkX2ljb24udnVlXG4gKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqL1xuXG4uZ2wtYW5pbWF0ZWQtdXBsb2FkLWxpbmUge1xuICBzdHJva2UtZGFzaGFycmF5OiA3MCUgMTAwJTtcbn1cblxuLyogb24gc3RhdGUgKi9cbi5nbC1hbmltYXRlZC1pY29uLW9uIC5nbC1hbmltYXRlZC11cGxvYWQtbGluZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBnbC1hbmltYXRlZC11cGxvYWQtbGluZTtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgZ2wtYW5pbWF0ZWQtdXBsb2FkLWxpbmUge1xuICAwJSxcbiAgNjAlLFxuICAxMDAlIHtcbiAgICB0cmFuc2xhdGU6IDAgMDtcbiAgICBzdHJva2UtZGFzaG9mZnNldDogMDtcbiAgfVxuXG4gIDEwJSB7XG4gICAgdHJhbnNsYXRlOiAwJSAyMCU7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC0yMCU7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zbGF0ZTogMCAtMTAlO1xuICAgIHN0cm9rZS1kYXNob2Zmc2V0OiAwO1xuICB9XG5cbiAgNTUlIHtcbiAgICB0cmFuc2xhdGU6IDAgNSU7XG4gICAgc3Ryb2tlLWRhc2hvZmZzZXQ6IC01JTtcbiAgfVxufVxuXG4uZ2wtYW5pbWF0ZWQtaWNvbi1vbiAuZ2wtYW5pbWF0ZWQtdXBsb2FkLWFycm93IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGdsLWFuaW1hdGVkLXVwbG9hZC1hcnJvdztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgZ2wtYW5pbWF0ZWQtdXBsb2FkLWFycm93IHtcbiAgMCUsXG4gIDYwJSxcbiAgMTAwJSB7XG4gICAgdHJhbnNsYXRlOiAwIDA7XG4gIH1cblxuICAxMCUge1xuICAgIHRyYW5zbGF0ZTogMCAyMCU7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zbGF0ZTogMCAtOCU7XG4gIH1cblxuICA1NSUge1xuICAgIHRyYW5zbGF0ZTogMCA4JTtcbiAgfVxufVxuIiwiJGJhZGdlLXBhZGRpbmctaG9yaXpvbnRhbDogMC43NSAqICRncmlkLXNpemU7XG4kYmFkZ2UtbWluLXdpZHRoOiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuXG5AbWl4aW4gZ2wtYmFkZ2UtdmFyaWFudChcbiAgJHZhcmlhbnQsXG4gICRjb2xvcixcbiAgJGljb24tY29sb3IsXG4gICRiYWNrZ3JvdW5kLWNvbG9yLFxuICAkaG92ZXItY29sb3IsXG4gICRob3Zlci1pY29uLWNvbG9yLFxuICAkaG92ZXItYmFja2dyb3VuZC1jb2xvcixcbiAgJGhvdmVyLWJvcmRlci1jb2xvcixcbiAgJGZvY3VzLWNvbG9yLFxuICAkZm9jdXMtaWNvbi1jb2xvcixcbiAgJGZvY3VzLWJhY2tncm91bmQtY29sb3IsXG4gICRhY3RpdmUtY29sb3IsXG4gICRhY3RpdmUtaWNvbi1jb2xvcixcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yXG4pIHtcbiAgLmdsLWJhZGdlLmJhZGdlLSN7JHZhcmlhbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmdsLWJhZGdlLWljb24ge1xuICAgICAgY29sb3I6ICRpY29uLWNvbG9yO1xuICAgICAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICBhLmdsLWJhZGdlLmJhZGdlLSN7JHZhcmlhbnR9Om5vdCguZGlzYWJsZWQpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XG4gICAgICAvLyBOZWVkZWQgdG8gb3ZlcnJpZGUgYm9vdHN0cmFwJ3MgYmFkZ2UgdmFyaWFudCBiYWNrZ3JvdW5kXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xICRob3Zlci1ib3JkZXItY29sb3I7XG4gICAgICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xuXG4gICAgICAuZ2wtYmFkZ2UtaWNvbiB7XG4gICAgICAgIGNvbG9yOiAkaG92ZXItaWNvbi1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgY29sb3I6ICRmb2N1cy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb2N1cy1iYWNrZ3JvdW5kLWNvbG9yO1xuXG4gICAgICAuZ2wtYmFkZ2UtaWNvbiB7XG4gICAgICAgIGNvbG9yOiAkZm9jdXMtaWNvbi1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSxcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogJGFjdGl2ZS1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtYmFja2dyb3VuZC1jb2xvcjtcblxuICAgICAgLmdsLWJhZGdlLWljb24ge1xuICAgICAgICBjb2xvcjogJGFjdGl2ZS1pY29uLWNvbG9yO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAmOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICAgIEBhcHBseSBnbC1mb2N1cztcbiAgICB9XG4gIH1cbn1cblxuLyogQmFzaWMgYmFkZ2Ugc3R5bGVzICovXG5cbi5nbC1iYWRnZSB7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBAYXBwbHkgZ2wtZm9udC1ub3JtYWw7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcblxuICAvKlxuICAgIENTUyBHcmlkIGlzIHVzZWQgaGVyZSB0byBkZWFsIHdpdGggMyBjYXNlczpcbiAgICAgICogQmFkZ2Ugc2hvdWxkbid0IHNocmluayBpbnNpZGUgZmxleCBjb250YWluZXJzIGJ5IGRlZmF1bHRcbiAgICAgICogQ29udGVudCBpbnNpZGUgdGhlIGJhZGdlIHNob3VsZCBzaHJpbmsgd2hlbiBnbC10ZXh0LXRydW5jYXRlIGNsYXNzIGlzIHVzZWQgb24gdGhlIGNvbnRlbnRzXG4gICAgICAqIEJhZGdlIHNob3VsZCBoYXZlIGEgbWluaW1hbCB3aWR0aCBvZiAyMCBwaXhlbHMgKGZvciBleGFtcGxlIHdoZW4gYDFgIGlzIHBhc3NlZCBpbnNpZGUgdGhlIHNsb3QpXG4gICAqL1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGdhcDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgcGFkZGluZzogJGdsLXNwYWNpbmctc2NhbGUtMSAkYmFkZ2UtcGFkZGluZy1ob3Jpem9udGFsO1xuICB0cmFuc2l0aW9uOlxuICAgIGNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICBib3JkZXItY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJveC1zaGFkb3cgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICBAaW5jbHVkZSBnbC1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLXRyYW5zaXRpb247XG5cbiAgJjpoYXMoLmdsLXRydW5jYXRlLCAuZ2wtdGV4dC10cnVuY2F0ZSkge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gIH1cblxuICAuZ2wtYmFkZ2UtaWNvbiB7XG4gICAgQGFwcGx5IGdsLWgtNTtcbiAgICBAYXBwbHkgZ2wtdy01O1xuICAgIEBhcHBseSBnbC1zaHJpbmstMDtcbiAgICB0b3A6IGF1dG87XG4gIH1cblxuICAuZ2wtYmFkZ2UtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtaW4td2lkdGg6ICRiYWRnZS1taW4td2lkdGg7XG4gIH1cbn1cblxuYS5nbC1iYWRnZS5kaXNhYmxlZCB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8qIFZhcmlhbnRzICovXG5cbkBpbmNsdWRlIGdsLWJhZGdlLXZhcmlhbnQoXG4gICR2YXJpYW50OiBuZXV0cmFsLFxuICAkY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1kZWZhdWx0KSxcbiAgJGljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1kZWZhdWx0KSxcbiAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgJGhvdmVyLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItaG92ZXIpLFxuICAkaG92ZXItaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWhvdmVyKSxcbiAgJGhvdmVyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1ob3ZlciksXG4gICRob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWhvdmVyKSxcbiAgJGZvY3VzLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1uZXV0cmFsLXRleHQtY29sb3ItZm9jdXMpLFxuICAkZm9jdXMtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1pY29uLWNvbG9yLWZvY3VzKSxcbiAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1cyksXG4gICRhY3RpdmUtY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1hY3RpdmUpLFxuICAkYWN0aXZlLWljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtaWNvbi1jb2xvci1hY3RpdmUpLFxuICAkYWN0aXZlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpXG4pO1xuXG5AaW5jbHVkZSBnbC1iYWRnZS12YXJpYW50KFxuICAkdmFyaWFudDogaW5mbyxcbiAgJGNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItZGVmYXVsdCksXG4gICRpY29uLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItZGVmYXVsdCksXG4gICRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCksXG4gICRob3Zlci1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWhvdmVyKSxcbiAgJGhvdmVyLWljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1ob3ZlciksXG4gICRob3Zlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItaG92ZXIpLFxuICAkaG92ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJvcmRlci1jb2xvci1ob3ZlciksXG4gICRmb2N1cy1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtaW5mby10ZXh0LWNvbG9yLWZvY3VzKSxcbiAgJGZvY3VzLWljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLWluZm8taWNvbi1jb2xvci1mb2N1cyksXG4gICRmb2N1cy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItZm9jdXMpLFxuICAkYWN0aXZlLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLXRleHQtY29sb3ItYWN0aXZlKSxcbiAgJGFjdGl2ZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWljb24tY29sb3ItYWN0aXZlKSxcbiAgJGFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1pbmZvLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKVxuKTtcblxuQGluY2x1ZGUgZ2wtYmFkZ2UtdmFyaWFudChcbiAgJHZhcmlhbnQ6IHN1Y2Nlc3MsXG4gICRjb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWRlZmF1bHQpLFxuICAkaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWRlZmF1bHQpLFxuICAkYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLFxuICAkaG92ZXItY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1ob3ZlciksXG4gICRob3Zlci1pY29uLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItaG92ZXIpLFxuICAkaG92ZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgJGhvdmVyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1ib3JkZXItY29sb3ItaG92ZXIpLFxuICAkZm9jdXMtY29sb3I6IHZhcigtLWdsLWJhZGdlLXN1Y2Nlc3MtdGV4dC1jb2xvci1mb2N1cyksXG4gICRmb2N1cy1pY29uLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1zdWNjZXNzLWljb24tY29sb3ItZm9jdXMpLFxuICAkZm9jdXMtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKSxcbiAgJGFjdGl2ZS1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy10ZXh0LWNvbG9yLWFjdGl2ZSksXG4gICRhY3RpdmUtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1pY29uLWNvbG9yLWFjdGl2ZSksXG4gICRhY3RpdmUtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utc3VjY2Vzcy1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSlcbik7XG5cbkBpbmNsdWRlIGdsLWJhZGdlLXZhcmlhbnQoXG4gICR2YXJpYW50OiB3YXJuaW5nLFxuICAkY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1kZWZhdWx0KSxcbiAgJGljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1kZWZhdWx0KSxcbiAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgJGhvdmVyLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItaG92ZXIpLFxuICAkaG92ZXItaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWhvdmVyKSxcbiAgJGhvdmVyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1ob3ZlciksXG4gICRob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYm9yZGVyLWNvbG9yLWhvdmVyKSxcbiAgJGZvY3VzLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS13YXJuaW5nLXRleHQtY29sb3ItZm9jdXMpLFxuICAkZm9jdXMtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2Utd2FybmluZy1pY29uLWNvbG9yLWZvY3VzKSxcbiAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1mb2N1cyksXG4gICRhY3RpdmUtY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctdGV4dC1jb2xvci1hY3RpdmUpLFxuICAkYWN0aXZlLWljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctaWNvbi1jb2xvci1hY3RpdmUpLFxuICAkYWN0aXZlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpXG4pO1xuXG5AaW5jbHVkZSBnbC1iYWRnZS12YXJpYW50KFxuICAkdmFyaWFudDogZGFuZ2VyLFxuICAkY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWRlZmF1bHQpLFxuICAkaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtZGFuZ2VyLWljb24tY29sb3ItZGVmYXVsdCksXG4gICRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgJGhvdmVyLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItdGV4dC1jb2xvci1ob3ZlciksXG4gICRob3Zlci1pY29uLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1ob3ZlciksXG4gICRob3Zlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItYmFja2dyb3VuZC1jb2xvci1ob3ZlciksXG4gICRob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1ib3JkZXItY29sb3ItaG92ZXIpLFxuICAkZm9jdXMtY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci10ZXh0LWNvbG9yLWZvY3VzKSxcbiAgJGZvY3VzLWljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1pY29uLWNvbG9yLWZvY3VzKSxcbiAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKSxcbiAgJGFjdGl2ZS1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtZGFuZ2VyLXRleHQtY29sb3ItYWN0aXZlKSxcbiAgJGFjdGl2ZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS1kYW5nZXItaWNvbi1jb2xvci1hY3RpdmUpLFxuICAkYWN0aXZlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSlcbik7XG5cbkBpbmNsdWRlIGdsLWJhZGdlLXZhcmlhbnQoXG4gICR2YXJpYW50OiB0aWVyLFxuICAkY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItdGV4dC1jb2xvci1kZWZhdWx0KSxcbiAgJGljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItaWNvbi1jb2xvci1kZWZhdWx0KSxcbiAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgJGhvdmVyLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItaG92ZXIpLFxuICAkaG92ZXItaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWhvdmVyKSxcbiAgJGhvdmVyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1ob3ZlciksXG4gICRob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItYm9yZGVyLWNvbG9yLWhvdmVyKSxcbiAgJGZvY3VzLWNvbG9yOiB2YXIoLS1nbC1iYWRnZS10aWVyLXRleHQtY29sb3ItZm9jdXMpLFxuICAkZm9jdXMtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtdGllci1pY29uLWNvbG9yLWZvY3VzKSxcbiAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1mb2N1cyksXG4gICRhY3RpdmUtY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItdGV4dC1jb2xvci1hY3RpdmUpLFxuICAkYWN0aXZlLWljb24tY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItaWNvbi1jb2xvci1hY3RpdmUpLFxuICAkYWN0aXZlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhZGdlLXRpZXItYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpXG4pO1xuXG4vLyBvdmVycmlkaW5nIEJvb3RzdGFwJ3MgYC5idG4gLmJhZGdlIHt0b3A6IC0xcHh9YCBhcyB0aGUgYmFkZ2UgaXMgbm90IHZlcnRpY2FsbHkgY2VudGVyZWQgb3RoZXJ3aXNlXG4uZ2wtYnV0dG9uIC5nbC1iYWRnZSB7XG4gIHRvcDogMDtcbiAgQGFwcGx5IGdsLXB5LTA7XG4gIEBhcHBseSBnbC1weC0yO1xufVxuXG4uZ2wtbmV3LWRyb3Bkb3duLWNvbnRlbnRzIC5nbC1iYWRnZSxcbi5nbC10YWItbmF2LWl0ZW0gLmdsLWJhZGdlIHtcbiAgQGFwcGx5IC1nbC1teS0xO1xufVxuIiwiLy8gQnJlYWRjcnVtYiBtYXggd2lkdGggMTI4cHhcbiRicmVhZGNydW1iLW1heC13aWR0aDogJGdyaWQtc2l6ZSAqIDE2O1xuXG4uZ2wtYnJlYWRjcnVtYnMge1xuICBAYXBwbHkgZ2wtZmxleDtcbn1cblxuLmdsLWJyZWFkY3J1bWItbGlzdCB7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLXAtMDtcbiAgQGFwcGx5IGdsLWl0ZW1zLXN0YXJ0O1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1tLTA7XG4gIEBhcHBseSBnbC1mbGV4LW5vd3JhcDtcbiAgQGFwcGx5IGdsLW1heC13LWZ1bGw7XG59XG5cbi8vIGJvb3RzdHJhcCBvdmVycmlkZXNcbi5nbC1icmVhZGNydW1iLWl0ZW0ge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuXG4gICY6bm90KDpsYXN0LWNoaWxkLCA6aGFzKCsgLmdsLWJyZWFkY3J1bWItY2xpcGJvYXJkLWJ1dHRvbikpOjphZnRlciB7XG4gICAgY29sb3I6IHZhcigtLWdsLWJyZWFkY3J1bWItc2VwYXJhdG9yLWNvbG9yKTtcbiAgICBAYXBwbHkgZ2wtcHgtMztcbiAgICBjb250ZW50OiBcIi9cIjtcbiAgfVxuXG4gID4gYSB7XG4gICAgQGFwcGx5IGdsLWlubGluZS1ibG9jaztcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMSk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIEBhcHBseSBnbC11bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd24taWNvbi1vbmx5LmdsLWJ1dHRvbi5idG4taWNvbiB7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuXG4uZ2wtYnJlYWRjcnVtYi1pdGVtOmxhc3QtY2hpbGQgPiBhLFxuLmdsLWJyZWFkY3J1bWItaXRlbTpoYXMoKyAuZ2wtYnJlYWRjcnVtYi1jbGlwYm9hcmQtYnV0dG9uKSA+IGEge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xufVxuXG4uZ2wtYnJlYWRjcnVtYi1pdGVtLXNtIHtcbiAgQGFwcGx5IGdsLXRleHQtc207XG4gIEBhcHBseSBnbC1oLTY7XG59XG5cbi5nbC1icmVhZGNydW1iLWl0ZW0tbWQge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtaC03O1xufVxuXG4uZ2wtYnJlYWRjcnVtYi1pdGVtIHtcbiAgLyoqXG4gICAqIElmIHRoZSBsYXN0L29ubHkgaXRlbSwgd2hpY2ggaXMgYWx3YXlzIHZpc2libGUsIGhhcyBhIHZlcnkgbG9uZyB0aXRsZSxcbiAgICogaXQgY291bGQgb3ZlcmZsb3cgdGhlIGJyZWFkY3J1bWIgY29tcG9uZW50LiBUaGlzIENTUyBtYWtlcyBzdXJlIGl0XG4gICAqIHNob3dzIGFuIGVsbGlwc2lzIGluc3RlYWQuXG4gICAqIEJ1dCB0aGlzIENTUyBjYW5ub3QgYmUgYWN0aXZlIHdoaWxlIHdlIGRvIHRoZSBzaXplIGNhbGN1bGF0aW9uLCBhcyB0aGF0XG4gICAqIHdvdWxkIHRoZW4gbm90IHRha2UgdGhlIHJlYWwgdW5zaHJ1bmsgd2lkdGggb2YgdGhhdCBpdGVtIGludG8gYWNjb3VudC5cbiAgICovXG4gICYuZ2wtYnJlYWRjcnVtYi1vbmx5LWl0ZW0ge1xuICAgIEBhcHBseSBnbC1zaHJpbms7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1nbC1icmVhZGNydW1iLXRydW5jYXRlZC1pdGVtLW1heC13aWR0aCwgMTAwJSk7XG5cbiAgICBhIHtcbiAgICAgIEBhcHBseSBnbC1tYXgtdy1mdWxsIGdsLW92ZXJmbG93LWhpZGRlbiBnbC10ZXh0LWVsbGlwc2lzIGdsLXRleHQtbm93cmFwO1xuICAgIH1cbiAgfVxufVxuXG4uZ2wtYnJlYWRjcnVtYi1jbGlwYm9hcmQtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG59XG4iLCIuZ2wtYmFubmVyIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZmVlZGJhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhbm5lci1wcm9tby1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1iYW5uZXItcHJvbW8tYm9yZGVyLWNvbG9yKTtcbn1cblxuLmdsLWJhbm5lci1pbGx1c3RyYXRpb24ge1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG4gIEBhcHBseSBnbC1tci02O1xuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAkZ3JpZC1zaXplICogMTU7XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihtZCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmdsLWJhbm5lci10aXRsZSB7XG4gIEBhcHBseSBnbC1oZWFkaW5nLXNjYWxlLTUwMDtcbiAgQGFwcGx5IGdsLW1iLTM7XG59XG5cbi5nbC1iYW5uZXItY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgcmlnaHQ6ICRnbC1zcGFjaW5nLXNjYWxlLTM7XG59XG5cbi8vIEludHJvZHVjdGlvbiB2YXJpYW50XG4uZ2wtYmFubmVyLWludHJvZHVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8tYmFja2dyb3VuZC1jb2xvcik7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYmFubmVyLWludHJvLWJvcmRlci1jb2xvcik7XG59XG4iLCIvKlxuICogLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1wYWRkaW5nLXhcbiAqXG4gKiBXYXkgdG8gaG9vayBpbnRvIHNwYWNpbmcgb2YgZ2wtYWxlcnQuXG4gKiBUaGlzIGlzIHVzZWQgZS5nLiBmb3IgcGFnZSB3aWRlIGNvbnRhaW5lcnNcbiAqIGluIEdpdExhYi5cbiAqL1xuLy8gc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuJGdsLWJyb2FkY2FzdC1tZXNzYWdlLXBhZGRpbmcteDogdmFyKC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtcGFkZGluZy14LCAwcHgpO1xuXG4uZ2wtYnJvYWRjYXN0LW1lc3NhZ2Uge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWp1c3RpZnktYmV0d2VlbjtcbiAgQGFwcGx5IGdsLWl0ZW1zLXN0YXJ0O1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKCN7JGdsLXNwYWNpbmctc2NhbGUtNX0gKyAjeyRnbC1icm9hZGNhc3QtbWVzc2FnZS1wYWRkaW5nLXh9KTtcbiAgcGFkZGluZy1yaWdodDogY2FsYygjeyRnbC1zcGFjaW5nLXNjYWxlLTR9ICsgI3skZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtcGFkZGluZy14fSk7XG4gIEBhcHBseSBnbC1weS01O1xuXG4gICYuaW5kaWdvIHtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJnLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItaW5kaWdvKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItaW5kaWdvKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1pbmRpZ28pO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWluZGlnbyk7XG4gIH1cblxuICAmLmxpZ2h0LWluZGlnbyB7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1iZy1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0aW5kaWdvKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHRpbmRpZ28pO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtdGV4dC1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0aW5kaWdvKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24tY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGluZGlnbyk7XG4gIH1cblxuICAmLmJsdWUge1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYmctY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1ibHVlKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItYmx1ZSk7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS10ZXh0LWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItYmx1ZSk7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItYmx1ZSk7XG4gIH1cblxuICAmLmxpZ2h0LWJsdWUge1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYmctY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1saWdodGJsdWUpO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodGJsdWUpO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtdGV4dC1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0Ymx1ZSk7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItbGlnaHRibHVlKTtcbiAgfVxuXG4gICYuZ3JlZW4ge1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYmctY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1ncmVlbik7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYm9yZGVyLWNvbG9yLWdyZWVuKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1ncmVlbik7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZ3JlZW4pO1xuICB9XG5cbiAgJi5saWdodC1ncmVlbiB7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1iZy1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0Z3JlZW4pO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodGdyZWVuKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1saWdodGdyZWVuKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24tY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodGdyZWVuKTtcbiAgfVxuXG4gICYucmVkIHtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJnLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItcmVkKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItcmVkKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItdGV4dC1jb2xvci1yZWQpO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLXJlZCk7XG4gIH1cblxuICAmLmxpZ2h0LXJlZCB7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1iZy1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1iYWNrZ3JvdW5kLWNvbG9yLWxpZ2h0cmVkKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItbGlnaHRyZWQpO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtdGV4dC1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci10ZXh0LWNvbG9yLWxpZ2h0cmVkKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24tY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItaWNvbi1jb2xvci1saWdodHJlZCk7XG4gIH1cblxuICAmLmRhcmsge1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYmctY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1iYW5uZXItYmFja2dyb3VuZC1jb2xvci1kYXJrKTtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1ib3JkZXItY29sb3ItZGFyayk7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS10ZXh0LWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItZGFyayk7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1pY29uLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWljb24tY29sb3ItZGFyayk7XG4gIH1cblxuICAmLmxpZ2h0IHtcbiAgICAtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJnLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJhY2tncm91bmQtY29sb3ItbGlnaHQpO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1jb2xvci1saWdodCk7XG4gICAgLS1nbC1icm9hZGNhc3QtbWVzc2FnZS10ZXh0LWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLXRleHQtY29sb3ItbGlnaHQpO1xuICAgIC0tZ2wtYnJvYWRjYXN0LW1lc3NhZ2UtaWNvbi1jb2xvcjogdmFyKC0tZ2wtYnJvYWRjYXN0LWJhbm5lci1pY29uLWNvbG9yLWxpZ2h0KTtcbiAgfVxuXG4gICYuYmFubmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1icm9hZGNhc3QtbWVzc2FnZS1iZy1jb2xvcik7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAtI3skZ2wtYm9yZGVyLXNpemUtMX0gMCAwIHZhcigtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWJvcmRlci1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLXRleHQtY29sb3IpO1xuXG4gICAgLmdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWdsLWJyb2FkY2FzdC1tZXNzYWdlLWljb24tY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gICYubm90aWZpY2F0aW9uIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyO1xuICAgIEBhcHBseSBnbC1zaGFkb3ctbWQ7XG4gICAgQGFwcGx5IGdsLWJnLW92ZXJsYXA7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1icm9hZGNhc3QtYmFubmVyLWJvcmRlci1yYWRpdXMpO1xuICAgIG1heC13aWR0aDogJGdsLWJyb2FkY2FzdC1tZXNzYWdlLW5vdGlmaWNhdGlvbi1tYXgtd2lkdGg7XG4gIH1cblxuICAmLWNvbnRlbnQge1xuICAgIEBhcHBseSBnbC1mbGV4O1xuICAgIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcblxuICAgIGEge1xuICAgICAgQGFwcGx5IGdsLXRleHQtaW5oZXJpdDtcbiAgICAgIEBhcHBseSBnbC11bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgQGFwcGx5IGdsLW1iLTA7XG4gICAgfVxuICB9XG5cbiAgJi1pY29uIHtcbiAgICBAYXBwbHkgZ2wtbXItNTtcbiAgICBsaW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LTE2O1xuXG4gICAgPiBzdmcge1xuICAgICAgQGFwcGx5IGdsLWFsaWduLWJvdHRvbTtcbiAgICB9XG4gIH1cblxuICAmLXRleHQge1xuICAgIG1hcmdpbi10b3A6IC0kZ2wtc3BhY2luZy1zY2FsZS0xO1xuICAgIG1hcmdpbi1ib3R0b206IC0kZ2wtc3BhY2luZy1zY2FsZS0xO1xuICAgIEBhcHBseSBnbC1oeXBoZW5zLWF1dG8gZ2wtYnJlYWstYW55d2hlcmU7XG4gIH1cblxuICAmLWRpc21pc3Mge1xuICAgIEBhcHBseSAtZ2wtbXktMjtcbiAgICBAYXBwbHkgZ2wtbWwtNTtcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvKiFcbiAqIFBpa2FkYXlcbiAqIENvcHlyaWdodCDCqSAyMDE0IERhdmlkIEJ1c2hlbGwgfCBCU0QgJiBNSVQgbGljZW5zZSB8IGh0dHBzOi8vZGJ1c2hlbGwuY29tL1xuICovXG5cbi8vIFZhcmlhYmxlc1xuLy8gRGVjbGFyZSBhbnkgb2YgdGhlc2UgdmFyaWFibGVzIGJlZm9yZSBpbXBvcnRpbmcgdGhpcyBTQ1NTIGZpbGUgdG8gZWFzaWx5IG92ZXJyaWRlIGRlZmF1bHRzXG4vLyBWYXJpYWJsZXMgYXJlIG5hbWVzcGFjZWQgd2l0aCB0aGUgcGQgKHBpa2FkYXkpIHByZWZpeFxuXG4vLyBDb2xvdXJzXG4kcGQtdGV4dC1jb2xvcjogIzMzMyAhZGVmYXVsdDtcbiRwZC10aXRsZS1jb2xvcjogIzMzMyAhZGVmYXVsdDtcbiRwZC10aXRsZS1iZzogI2ZmZiAhZGVmYXVsdDtcbiRwZC1waWNrZXItYmc6ICNmZmYgIWRlZmF1bHQ7XG4kcGQtcGlja2VyLWJvcmRlcjogI2NjYyAhZGVmYXVsdDtcbiRwZC1waWNrZXItYm9yZGVyLWJvdHRvbTogI2JiYiAhZGVmYXVsdDtcbiRwZC1waWNrZXItc2hhZG93OiByZ2JhKDAsMCwwLC41KSAhZGVmYXVsdDtcbiRwZC10aC1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRwZC1kYXktY29sb3I6ICM2NjYgIWRlZmF1bHQ7XG4kcGQtZGF5LWJnOiAjZjVmNWY1ICFkZWZhdWx0O1xuJHBkLWRheS1ob3Zlci1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRwZC1kYXktaG92ZXItYmc6ICNmZjgwMDAgIWRlZmF1bHQ7XG4kcGQtZGF5LXRvZGF5LWNvbG9yOiAjMzNhYWZmICFkZWZhdWx0O1xuJHBkLWRheS1zZWxlY3RlZC1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRwZC1kYXktc2VsZWN0ZWQtYmc6ICMzM2FhZmYgIWRlZmF1bHQ7XG4kcGQtZGF5LXNlbGVjdGVkLXNoYWRvdzogIzE3OGZlNSAhZGVmYXVsdDtcbiRwZC1kYXktZGlzYWJsZWQtY29sb3I6ICM5OTkgIWRlZmF1bHQ7XG4kcGQtd2Vlay1jb2xvcjogIzk5OSAhZGVmYXVsdDtcblxuLy8gRm9udFxuJHBkLWZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cblxuLnBpa2Etc2luZ2xlIHtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjb2xvcjogJHBkLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZDogJHBkLXBpY2tlci1iZztcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkcGQtcGlja2VyLWJvcmRlcjtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcGQtcGlja2VyLWJvcmRlci1ib3R0b207XG4gICAgZm9udC1mYW1pbHk6ICRwZC1mb250LWZhbWlseTtcblxuICAgICYuaXMtaGlkZGVuIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmlzLWJvdW5kIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDVweCAxNXB4IC01cHggJHBkLXBpY2tlci1zaGFkb3c7XG4gICAgfVxufVxuXG4vLyBjbGVhciBjaGlsZCBmbG9hdCAocGlrYS1sZW5kYXIpLCB1c2luZyB0aGUgZmFtb3VzIG1pY3JvIGNsZWFyZml4IGhhY2tcbi8vIGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuLnBpa2Etc2luZ2xlIHtcbiAgICAqem9vbTogMTtcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIiBcIjtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgfVxuXG4gICAgJjphZnRlciB7IGNsZWFyOiBib3RoIH1cbn1cblxuLnBpa2EtbGVuZGFyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjQwcHg7XG4gICAgbWFyZ2luOiA4cHg7XG59XG5cbi5waWthLXRpdGxlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgc2VsZWN0IHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDk5OTg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG59XG5cbi5waWthLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgKmRpc3BsYXk6IGlubGluZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogOTk5OTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiA1cHggM3B4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogJHBkLXRpdGxlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwZC10aXRsZS1iZztcbn1cblxuLnBpa2EtcHJldixcbi5waWthLW5leHQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgdGV4dC1pbmRlbnQ6IDIwcHg7IC8vIGhpZGUgdGV4dCB1c2luZyB0ZXh0LWluZGVudCB0cmljaywgdXNpbmcgd2lkdGggdmFsdWUgKGl0J3MgZW5vdWdoKVxuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA3NSUgNzUlO1xuICAgIG9wYWNpdHk6IC41O1xuICAgICpwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgKnRvcDogMDtcblxuICAgICY6aG92ZXIge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgICYuaXMtZGlzYWJsZWQge1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIG9wYWNpdHk6IC4yO1xuICAgIH1cbn1cblxuLnBpa2EtcHJldixcbi5pcy1ydGwgLnBpa2EtbmV4dCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVWtsRVFWUjQydTNWTVFvQUlCQURRZjhQZ2orT0Q5aEcyQ3RPTkpCMnltUWtLZTBIYndBUDB4dWNEaVFXQVJJVElERUJFbk1nTVE4UzgrQXFCSWw2a0tnSGlYcVFxQWVKZXBCby96MzhKL1UwdUFIbGFCa0JsOUk0R3dBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICAqbGVmdDogMDtcbn1cblxuLnBpa2EtbmV4dCxcbi5pcy1ydGwgLnBpa2EtcHJldiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFCUUFBQUFlQ0FZQUFBQXNFajVyQUFBQVUwbEVRVlI0MnUzVk93b0FNQWdFMGR3ZkFuTmpVMjZiWWtCQ0ZHd2ZpTDlWVldvTytCSjRHZjNndHNFS0tvRkJOVENvQ0FZVndhQWlHTlFHTVVITWtqR2JnamsybUlPTnVYbzBuQzhYbkNmMUpYZ0FyVklaQVFoNVRLWUFBQUFBU1VWT1JLNUNZSUk9Jyk7XG4gICAgKnJpZ2h0OiAwO1xufVxuXG4ucGlrYS1zZWxlY3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAqZGlzcGxheTogaW5saW5lO1xufVxuXG4ucGlrYS10YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBib3JkZXI6IDA7XG5cbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICAgIHdpZHRoOiAxNC4yODU3MTQyODU3MTQyODYlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIHRoIHtcbiAgICAgICAgY29sb3I6ICRwZC10aC1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICBhYmJyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBoZWxwO1xuICAgIH1cbn1cblxuLnBpa2EtYnV0dG9uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBjb2xvcjogJHBkLWRheS1jb2xvcjtcbiAgICBmb250LXNpemU6IDEycHg7XG4gICAgbGluZS1oZWlnaHQ6IDE1cHg7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgYmFja2dyb3VuZDogJHBkLWRheS1iZztcblxuICAgIC5pcy10b2RheSAmIHtcbiAgICAgICAgY29sb3I6ICRwZC1kYXktdG9kYXktY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC5pcy1zZWxlY3RlZCAmIHtcbiAgICAgICAgY29sb3I6ICRwZC1kYXktc2VsZWN0ZWQtY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcGQtZGF5LXNlbGVjdGVkLWJnO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggJHBkLWRheS1zZWxlY3RlZC1zaGFkb3c7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB9XG5cbiAgICAuaXMtZGlzYWJsZWQgJixcbiAgICAuaXMtb3V0c2lkZS1jdXJyZW50LW1vbnRoICYge1xuICAgICAgICBjb2xvcjogJHBkLWRheS1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgfVxuXG4gICAgLmlzLWRpc2FibGVkICYge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHBkLWRheS1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDogJHBkLWRheS1ob3Zlci1iZztcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIH1cblxuICAgIC5pcy1zZWxlY3Rpb24tZGlzYWJsZWQge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbn1cblxuLnBpa2Etd2VlayB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAkcGQtd2Vlay1jb2xvcjtcbn1cblxuLmlzLWlucmFuZ2UgLnBpa2EtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjRDVFOUY3O1xufVxuXG4uaXMtc3RhcnRyYW5nZSAucGlrYS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICM2Q0IzMUQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5pcy1lbmRyYW5nZSAucGlrYS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICMzM2FhZmY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4iLCIvLyBwaWthZGF5IGNvbG9ycyBvdmVycmlkZVxuJHBkLXRleHQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGVmYXVsdCk7XG4kcGQtdGl0bGUtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4kcGQtdGl0bGUtYmc6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4kcGQtcGlja2VyLWJnOiB2YXIoLS1nbC1kYXRlcGlja2VyLWJhY2tncm91bmQtY29sb3IpO1xuJHBkLXBpY2tlci1ib3JkZXI6IHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiRwZC1waWNrZXItYm9yZGVyLWJvdHRvbTogdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuJHBkLXRoLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXN1YnRsZSk7XG4kcGQtZGF5LWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuJHBkLWRheS1iZzogdHJhbnNwYXJlbnQ7XG4kcGQtZGF5LWhvdmVyLWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuJHBkLWRheS1ob3Zlci1iZzogdHJhbnNwYXJlbnQ7XG4kcGQtZGF5LXRvZGF5LWNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuJHBkLWRheS1zZWxlY3RlZC1jb2xvcjogdmFyKC0tZ2wtZGF0ZXBpY2tlci1kYXRlLXRleHQtY29sb3Itc2VsZWN0ZWQpO1xuJHBkLWRheS1zZWxlY3RlZC1iZzogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpO1xuJHBkLWRheS1zZWxlY3RlZC1zaGFkb3c6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbiRwZC1kYXktZGlzYWJsZWQtY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpO1xuJHBkLXdlZWstY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTtcblxuQGltcG9ydCBcInBpa2FkYXkvc2Nzcy9waWthZGF5XCI7XG5cbi5nbC1kYXRlcGlja2VyLWFjdGlvbnMge1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtanVzdGlmeS1jZW50ZXI7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1wb2ludGVyLWV2ZW50cy1ub25lO1xuICBAYXBwbHkgZ2wtcHgtMjtcblxuICAuZ2wtYnV0dG9uLmdsLWJ1dHRvbiB7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtbWQ7XG4gIH1cbn1cblxuLmdsLWRhdGVwaWNrZXItdGhlbWUge1xuICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG4gIEBhcHBseSBnbC1tdC0zO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1kcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZGF0ZXBpY2tlci1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAmLmlzLWJvdW5kIHtcbiAgICBAYXBwbHkgZ2wtc2hhZG93LW1kO1xuXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIH1cbiAgfVxuXG4gIC5waWthLWxlbmRhciB7XG4gICAgQGFwcGx5IGdsLW0tMDtcbiAgICBAYXBwbHkgZ2wtcHQtNTtcbiAgICBAYXBwbHkgZ2wtcHgtMztcbiAgICBAYXBwbHkgZ2wtcGItMztcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xuICB9XG5cbiAgLnBpa2EtdGl0bGUge1xuICAgIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgICBAYXBwbHkgZ2wtbWItNTtcbiAgICBAYXBwbHkgZ2wtaC01O1xuICB9XG5cbiAgLnBpa2EtbmV4dCxcbiAgLnBpa2EtcHJldiB7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtc21hbGw7XG4gICAgQGFwcGx5IGdsLXctNTtcbiAgICBAYXBwbHkgZ2wtaC01O1xuXG4gICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICBAYXBwbHkgZ2wtY3Vyc29yLW5vdC1hbGxvd2VkO1xuICAgIH1cblxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogbm9uZSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICBvcGFjaXR5OiAxMDAlO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICAvKiBBcHBseSBhIHNsaWdodGx5IGxhcmdlciBib3JkZXItcmFkaXVzIHRvIHRoZSA6OmJlZm9yZSBwc2V1ZG8tZWxlbWVudFxuICAgICAgICB0byBwcmV2ZW50IGJhY2tncm91bmQgY29sb3Igc2hpbW1lciBpc3N1ZSBpbiBTYWZhcmkuXG4gICAgICAgIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2UgdGhlIHBhcmVudCBlbGVtZW50ICh3aGljaCBhbHJlYWR5IGhhcyBhIGJvcmRlci1yYWRpdXMpXG4gICAgICAgIHJlcXVpcmVzIHRoZSA6OmJlZm9yZSBlbGVtZW50IHRvIGV4dGVuZCBiZXlvbmQgaXRzIGVkZ2VzIHRvIGVuc3VyZSBwcm9wZXIgY292ZXJhZ2UuICovXG4gICAgICAgIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLmlzLWRpc2FibGVkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpub3QoLmlzLWRpc2FibGVkKTpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOm5vdCguaXMtZGlzYWJsZWQpOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmlzLWRpc2FibGVkOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tZGlzYWJsZWQtZm9yZWdyb3VuZC1jb2xvcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIH1cbiAgfVxuXG4gIC5waWthLW5leHQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBtYXNrLWltYWdlOiB1cmwoXCIjeyRnbC1pY29uLWNoZXZyb24tcmlnaHR9XCIpO1xuICAgIH1cblxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIjeyRnbC1pY29uLWNoZXZyb24tcmlnaHR9XCIpO1xuICAgIH1cbiAgfVxuXG4gIC5waWthLXByZXYge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBtYXNrLWltYWdlOiB1cmwoXCIjeyRnbC1pY29uLWNoZXZyb24tbGVmdH1cIik7XG4gICAgfVxuXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIiN7JGdsLWljb24tY2hldnJvbi1sZWZ0fVwiKTtcbiAgICB9XG4gIH1cblxuICAucGlrYS1sYWJlbCB7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtc21hbGw7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtcHktMDtcblxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTEgdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICAgIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1ob3Zlcik7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgfVxuXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIH1cbiAgfVxuXG4gIC5waWthLXNlbGVjdCB7XG4gICAgdG9wOiAwO1xuICAgIEBhcHBseSBnbC1oLTU7XG4gIH1cblxuICB0aCB7XG4gICAgQGFwcGx5IGdsLXBiLTM7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIH1cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgICBAYXBwbHkgZ2wtY3Vyc29yLWRlZmF1bHQ7XG4gIH1cblxuICAucGlrYS1idXR0b24ge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWFjdGlvbi1ib3JkZXItcmFkaXVzKTtcbiAgICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG4gICAgQGFwcGx5IGdsLXB5LTI7XG4gICAgQGFwcGx5IGdsLXRleHQtY2VudGVyO1xuICAgIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgICBAYXBwbHkgZ2wtdy03O1xuICAgIEBhcHBseSBnbC1oLTc7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLTE7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1zb2xpZDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXRyYW5zcGFyZW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMSB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1ob3Zlcik7XG4gICAgfVxuXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICAgIH1cbiAgfVxuXG4gIC5pcy10b2RheSA+IC5waWthLWJ1dHRvbiB7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXN0cm9uZztcbiAgfVxuXG4gIC5pcy1zZWxlY3RlZCA+IC5waWthLWJ1dHRvbiB7XG4gICAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xuICAgICAgY29sb3I6IHZhcigtLWdsLWRhdGVwaWNrZXItZGF0ZS10ZXh0LWNvbG9yLXNlbGVjdGVkKTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmlzLXNlbGVjdGVkLmlzLXRvZGF5ID4gLnBpa2EtYnV0dG9uIHtcbiAgICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICAgIEBhcHBseSBnbC1ib3JkZXItdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuaXMtZGlzYWJsZWQge1xuICAgIEBhcHBseSBnbC1jdXJzb3Itbm90LWFsbG93ZWQ7XG4gIH1cbn1cbiIsIi5nbC1kYXRlcmFuZ2UtcGlja2VyIHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuXG4gIGxhYmVsIHtcbiAgICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICAgIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgfVxuXG4gIC5nbC1kYXRlcmFuZ2UtcGlja2VyLWluZGljYXRvciB7XG4gICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgQGFwcGx5IGdsLWZsZXgtcm93O1xuICAgIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gICAgQGFwcGx5IGdsLXNlbGYtZW5kO1xuICAgIEBhcHBseSBnbC1nYXAtMztcbiAgICBAYXBwbHkgZ2wtaC03O1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgfVxufVxuIiwiJGdsLWRyYXdlci13aWR0aDogNDAwcHg7XG4kZ2wtc2lkZWJhci13aWR0aDogMjkwcHg7XG4kZ2wtZHJhd2VyLXNjcmltLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQoXG4gIHRvIGJvdHRvbSxcbiAgdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCksXG4gIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcClcbik7XG5cbi5nbC1kcmF3ZXIge1xuICBAYXBwbHkgZ2wtYmctb3ZlcmxhcDtcbiAgcmlnaHQ6IDA7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLWFsbDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3cteS1hdXRvO1xuICBAYXBwbHkgZ2wtc2hhZG93LWxnO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWdsLWRyYXdlci1ib3JkZXItcmFkaXVzKTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tZ2wtZHJhd2VyLWJvcmRlci1yYWRpdXMpO1xuXG4gIC5nbC1kcmF3ZXItaGVhZGVyLXN0aWNreSB7XG4gICAgQGFwcGx5IGdsLWJnLW92ZXJsYXA7XG4gICAgdG9wOiAwO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gIH1cbn1cblxuLmdsLWRyYXdlci1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kKSB7XG4gICAgd2lkdGg6ICRnbC1kcmF3ZXItd2lkdGg7XG4gIH1cblxuICAuZ2wtZHJhd2VyLWhlYWRlcixcbiAgLmdsLWRyYXdlci1ib2R5ID4gKiB7XG4gICAgQGFwcGx5IGdsLXAtNTtcbiAgfVxufVxuXG4uZ2wtZHJhd2VyLXNpZGViYXIge1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQpIHtcbiAgICB3aWR0aDogJGdsLXNpZGViYXItd2lkdGg7XG4gIH1cblxuICAuZ2wtZHJhd2VyLWhlYWRlcixcbiAgLmdsLWRyYXdlci1ib2R5ID4gKiB7XG4gICAgQGFwcGx5IGdsLXB5LTU7XG4gIH1cblxuICAuZ2wtZHJhd2VyLWJvZHkgPiAqIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gICAgQGFwcGx5IGdsLW14LTU7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuICAgIH1cbiAgfVxuXG4gIC5nbC1kcmF3ZXItaGVhZGVyIHtcbiAgICBAYXBwbHkgZ2wtcHgtNTtcbiAgfVxufVxuXG4uZ2wtZHJhd2VyLWZvb3RlciB7XG4gIEBhcHBseSBnbC1iZy1vdmVybGFwO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gIEBhcHBseSBnbC1wLTU7XG59XG5cbi5nbC1kcmF3ZXItYm9keS1zY3JpbS1vbi1mb290ZXIge1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6ICRnbC1kcmF3ZXItc2NyaW0tZ3JhZGllbnQ7XG4gICAgdG9wOiAtJGdsLWJvcmRlci1zaXplLTE7XG4gICAgQGFwcGx5IC1nbC10cmFuc2xhdGUteS1mdWxsO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLW5vbmU7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICBAYXBwbHkgZ2wtaC03O1xuICB9XG59XG5cbi5nbC1kcmF3ZXItZm9vdGVyLXN0aWNreSB7XG4gIGJvdHRvbTogMDtcbiAgcG9zaXRpb246IHN0aWNreTtcbn1cblxuLmdsLWRyYXdlci1oZWFkZXIge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG59XG5cbi5nbC1kcmF3ZXItdGl0bGUge1xuICBAYXBwbHkgZ2wtdGV4dC1oZWFkaW5nO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWp1c3RpZnktYmV0d2VlbjtcblxuICBzdmcge1xuICAgIEBhcHBseSBnbC13LTU7XG4gICAgQGFwcGx5IGdsLWgtNTtcbiAgICBAYXBwbHkgZ2wtYWxpZ24tbWlkZGxlO1xuICB9XG59XG5cbi5nbC1kcmF3ZXItY2xvc2UtYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXNlbGYtc3RhcnQ7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xufVxuXG4uZ2wtZHJhd2VyLWJvZHkge1xuICBAYXBwbHkgZ2wtZ3JvdztcbiAgLy8gcHJldmVudCBzYWZhcmkgYnVnIHdoZXJlIGJveCBzaGFkb3cgaXMgdmlzaWJsZVxuICAvLyBhYm92ZSB0aGUgZHJhd2VyIHdoZW4gaG92ZXJpbmcgaW50ZXJhY3RpdmUgZWxlbWVudHNcbiAgLy8gc2VlIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL2lzc3Vlcy8zNjY1NThcbiAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbn1cblxuLmdsLWRyYXdlci1ib2R5LXNocmluayB7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5nbC1kcmF3ZXItYm9keS1zY3JpbSB7XG4gICY6OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZ2wtZHJhd2VyLXNjcmltLWdyYWRpZW50O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm90dG9tOiAwO1xuICAgIEBhcHBseSBnbC1wb2ludGVyLWV2ZW50cy1ub25lO1xuICAgIEBhcHBseSBnbC13LWZ1bGw7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIEBhcHBseSBnbC1oLTc7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tZ2wtZHJhd2VyLWJvcmRlci1yYWRpdXMpO1xuICB9XG59XG5cbi5nbC1kcmF3ZXItZW50ZXItdG8ge1xuICBAYXBwbHkgZ2wtdHJhbnNsYXRlLXgtMDtcbn1cblxuLmdsLWRyYXdlci1lbnRlcixcbi5nbC1kcmF3ZXItbGVhdmUtdG8ge1xuICBAYXBwbHkgZ2wtdHJhbnNsYXRlLXgtZnVsbDtcbn1cblxuLmdsLWRyYXdlci1lbnRlci1hY3RpdmUsXG4uZ2wtZHJhd2VyLWxlYXZlLWFjdGl2ZSB7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLWFsbDtcbn1cbiIsIi5nbC1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLTEgZ2wtYm9yZGVyLWRyb3Bkb3duO1xuICAgIEBhcHBseSBnbC1iZy1kcm9wZG93bjtcbiAgICBAYXBwbHkgZ2wtbXQtMjtcbiAgICBAYXBwbHkgZ2wtbWItMjtcbiAgICBAYXBwbHkgZ2wtcC0wO1xuICAgIEBhcHBseSBnbC1zaGFkb3cteDAteTItYjQtczA7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG4gICAgd2lkdGg6ICRnbC1kcm9wZG93bi13aWR0aDtcblxuICAgIC5nbC1zZWFyY2gtYm94LWJ5LXR5cGUge1xuICAgICAgQGFwcGx5IGdsLW0tMztcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tbWVudSBsaSB7XG4gICAgQGFwcGx5IGdsLXAtMDtcbiAgfVxuXG4gIC5nbC1kcm9wZG93bi1pbm5lciB7XG4gICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICAgIG1heC1oZWlnaHQ6ICRnbC1tYXgtZHJvcGRvd24tbWF4LWhlaWdodDtcblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgIEBhcHBseSBnbC1wdC0zO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgQGFwcGx5IGdsLXBiLTM7XG4gICAgfVxuICB9XG5cbiAgLmdsLWRyb3Bkb3duLWNvbnRlbnRzIHtcbiAgICBAYXBwbHkgZ2wtZ3JvdztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgLmdsLWRyb3Bkb3duLWhlYWRlci10b3Age1xuICAgIEBhcHBseSBnbC1ib3JkZXItMSBnbC1ib3JkZXItZHJvcGRvd24tZGl2aWRlciBnbC1ib3JkZXItYi1zb2xpZDtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICAgIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICAgIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gICAgQGFwcGx5IGdsLW0tMDtcbiAgICBAYXBwbHkgZ2wtbWItMztcbiAgICBAYXBwbHkgZ2wtcGItMztcbiAgICBAYXBwbHkgZ2wtcHgtNTtcbiAgfVxuXG4gIC5nbC1kcm9wZG93bi1oZWFkZXIge1xuICAgIEBhcHBseSBnbC1ib3JkZXItYi0xIGdsLWJvcmRlci1iLWRyb3Bkb3duLWRpdmlkZXIgZ2wtYm9yZGVyLWItc29saWQ7XG4gIH1cblxuICAuZ2wtZHJvcGRvd24tZm9vdGVyIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQtMSBnbC1ib3JkZXItdC1kcm9wZG93bi1kaXZpZGVyIGdsLWJvcmRlci10LXNvbGlkO1xuICAgIEBhcHBseSBnbC1weS0zO1xuICB9XG5cbiAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgLy8gUmVtb3ZlIGJvb3RzdHJhcCdzIGRyb3Bkb3duIGNhcmV0XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGFwcGx5IGdsLWhpZGRlbjtcbiAgICB9XG5cbiAgICAmLmdsLWJ1dHRvbixcbiAgICAmLmdsLWJ1dHRvbi5idG4tYmxvY2sge1xuICAgICAgQGFwcGx5IGdsLXByLTM7XG5cbiAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgQGFwcGx5IGdsLXByLTI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQsXG4gICAgJi5kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQuYnRuLXNtIHtcbiAgICAgIEBhcHBseSBnbC1wLTM7XG5cbiAgICAgIC5kcm9wZG93bi1jaGV2cm9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgICAmOjphZnRlciB7XG4gICAgICBAYXBwbHkgZ2wtYm9yZGVyLTA7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGFwcGx5IGdsLWJsb2NrO1xuICAgICAgQGFwcGx5IGdsLXctNTtcbiAgICAgIEBhcHBseSBnbC1oLTU7XG4gICAgICBAYXBwbHkgZ2wtYmctY3VycmVudDtcbiAgICAgIEBpbmNsdWRlIG1hc2stY2hldnJvbi1kb3duO1xuICAgIH1cblxuICAgICYuZ2wtYnV0dG9uIHtcbiAgICAgIEBhcHBseSBnbC1weC0wO1xuXG4gICAgICAmLmJ0bi1zbSB7XG4gICAgICAgIEBhcHBseSBnbC1weC0wO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nbC1kcm9wZG93bi10b2dnbGUge1xuICAgICYuYnRuLWJsb2NrIHtcbiAgICAgIEBhcHBseSBnbC1qdXN0aWZ5LWJldHdlZW47XG4gICAgfVxuXG4gICAgLmdsLWJ1dHRvbi10ZXh0IHtcbiAgICAgIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgICB9XG4gIH1cblxuICAuZ2wtZHJvcGRvd24tYnV0dG9uLXRleHQge1xuICAgIEBhcHBseSBnbC1tci1hdXRvO1xuICAgIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gICAgQGFwcGx5IGdsLXRleHQtZWxsaXBzaXM7XG4gIH1cblxuICAvLyBGaXggcm91bmRlZCBzcGxpdCBkcm9wZG93biBidXR0b246IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi11aS9pc3N1ZXMvNjI2XG4gICYuZHJvcGRvd24uc2hvdyAuZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC10bC1ub25lO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWJsLW5vbmU7XG4gIH1cblxuICAvLyBUaGUgYCYuZHJvcGRvd25gIGlzIG5lY2Vzc2FyeSB0byBzdHJlbmd0aGVuIHRoZSBzcGVjaWZpY2l0eSBvZiB0aGVzZSBzZWxlY3RvcnNcbiAgJi5kcm9wZG93biB7XG4gICAgJi5idG4tc20gLmdsLWljb24ge1xuICAgICAgQGFwcGx5IGdsLW10LTA7XG4gICAgICBAYXBwbHkgZ2wtbWItMDtcblxuICAgICAgJi5kcm9wZG93bi1jaGV2cm9uIHtcbiAgICAgICAgQGFwcGx5IGdsLWgtNTtcbiAgICAgICAgQGFwcGx5IGdsLXctNTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2wtYnV0dG9uIC5kcm9wZG93bi1jaGV2cm9uLFxuICAgIC5nbC1idXR0b24uYnRuLWJsb2NrIC5kcm9wZG93bi1jaGV2cm9uLFxuICAgIC5kcm9wZG93bi1jaGV2cm9uIHtcbiAgICAgIEBhcHBseSBnbC1tbC0yO1xuICAgICAgQGFwcGx5IGdsLW1yLTA7XG4gICAgfVxuICB9XG5cbiAgLmRyb3Bkb3duLWljb24ge1xuICAgIEBhcHBseSBnbC1tci0yO1xuICB9XG5cbiAgLmRyb3Bkb3duLWljb24tdGV4dCxcbiAgLmRyb3Bkb3duLWljb24tb25seSB7XG4gICAgQGFwcGx5IGdsLXBsLTM7XG4gIH1cblxuICAuZHJvcGRvd24taWNvbi1vbmx5IHtcbiAgICAmLmRyb3Bkb3duLXRvZ2dsZS1uby1jYXJldCB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLWljb24sXG4gICAgLmdsLWJ1dHRvbi1pY29uLmdsLWJ1dHRvbi1pY29uIHtcbiAgICAgIEBhcHBseSBnbC1tci0wO1xuICAgIH1cblxuICAgICYuYnRuLXNtIC5kcm9wZG93bi1jaGV2cm9uIHtcbiAgICAgIEBhcHBseSBnbC1teC0wO1xuICAgIH1cbiAgfVxuXG4gIC5zcGxpdC1jb250ZW50LWJ1dHRvbiB7XG4gICAgQGFwcGx5IGdsLXB4LTQ7XG4gIH1cblxuICAuaWNvbi1zcGxpdC1jb250ZW50LWJ1dHRvbiB7XG4gICAgQGFwcGx5IGdsLXBsLTM7XG5cbiAgICAuZHJvcGRvd24taWNvbiB7XG4gICAgICBAYXBwbHkgZ2wtbXItMDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBnbC10bXAtZHJvcGRvd24tZGl2aWRlci1zdHlsZSB7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC1oLTA7XG4gIEBhcHBseSBnbC1teS0yO1xuICBAYXBwbHkgZ2wtbXgtMDtcbiAgQGFwcGx5IGdsLXAtMDtcbiAgQGFwcGx5IGdsLWJvcmRlci10LTEgZ2wtYm9yZGVyLXQtZHJvcGRvd24tZGl2aWRlciBnbC1ib3JkZXItdC1zb2xpZDtcbn1cblxuLyogU3R5bGluZyB3aGVuIHRoZSBjb21wb25lbnQgaXMgdXNlZCBvbiBpdHMgb3duICovXG4uZ2wtZHJvcGRvd24tZGl2aWRlciB7XG4gIEBpbmNsdWRlIGdsLXRtcC1kcm9wZG93bi1kaXZpZGVyLXN0eWxlO1xufVxuXG4vKiBTdHlsaW5nIHRvIG92ZXJyaWRlIHRoZSB2dWUtYm9vdHN0cmFwIENTUyBpbmNsdWRlZCBpbiBHaXRMYWIgQ1NTICovXG4uZ2wtZHJvcGRvd24ge1xuICAuZ2wtZHJvcGRvd24tZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgZ2wtdG1wLWRyb3Bkb3duLWRpdmlkZXItc3R5bGU7XG4gIH1cbn1cbiIsIkBtaXhpbiBnbC10bXAtZHJvcGRvd24tc2VjdGlvbi1oZWFkZXItc3R5bGUge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1weC00O1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3JtYWw7XG59XG5cbi8qIFN0eWxpbmcgd2hlbiB0aGUgY29tcG9uZW50IGlzIHVzZWQgb24gaXRzIG93biAqL1xuLmdsLWRyb3Bkb3duLXNlY3Rpb24taGVhZGVyIC5kcm9wZG93bi1oZWFkZXIge1xuICBAaW5jbHVkZSBnbC10bXAtZHJvcGRvd24tc2VjdGlvbi1oZWFkZXItc3R5bGU7XG59XG5cbi8qIFN0eWxpbmcgdG8gb3ZlcnJpZGUgdGhlIHZ1ZS1ib290c3RyYXAgQ1NTIGluY2x1ZGVkIGluIEdpdExhYiBDU1MgKi9cbi5nbC1kcm9wZG93biB7XG4gIC5nbC1kcm9wZG93bi1zZWN0aW9uLWhlYWRlciAuZHJvcGRvd24taGVhZGVyIHtcbiAgICBAaW5jbHVkZSBnbC10bXAtZHJvcGRvd24tc2VjdGlvbi1oZWFkZXItc3R5bGU7XG4gIH1cbn1cbiIsIkBtaXhpbiBnbC10bXAtZHJvcGRvd24taXRlbS1zdHlsZSB7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1weC01O1xuICBAYXBwbHkgZ2wtcHktMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1ub25lO1xuICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG4gIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLXdoaXRlc3BhY2Utbm9ybWFsO1xufVxuXG4uZ2wtZHJvcGRvd24taXRlbSB7XG4gIC5kcm9wZG93bi1pdGVtIHtcbiAgICBAaW5jbHVkZSBnbC10bXAtZHJvcGRvd24taXRlbS1zdHlsZTtcbiAgICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG5cbiAgICAuZ2wtYXZhdGFyIHtcbiAgICAgIEBhcHBseSBnbC1zaHJpbmstMDtcbiAgICAgIEBhcHBseSBnbC1tci0zO1xuICAgIH1cblxuICAgIC5nbC1kcm9wZG93bi1pdGVtLWNoZWNrLWljb24ge1xuICAgICAgQGFwcGx5IGdsLXNocmluay0wO1xuICAgICAgQGFwcGx5IGdsLW1yLTM7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbiAgICB9XG5cbiAgICAuZ2wtZHJvcGRvd24taXRlbS1pY29uIHtcbiAgICAgIEBhcHBseSBnbC1zaHJpbmstMDtcbiAgICAgIEBhcHBseSBnbC1tci0zO1xuICAgIH1cblxuICAgIC5nbC1kcm9wZG93bi1pdGVtLXRleHQtcHJpbWFyeSB7XG4gICAgICBAYXBwbHkgZ2wtbS0wO1xuICAgIH1cblxuICAgIC5nbC1kcm9wZG93bi1pdGVtLXRleHQtc2Vjb25kYXJ5IHtcbiAgICAgIEBhcHBseSBnbC1tLTA7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgfVxuXG4gICAgLmdsLWRyb3Bkb3duLWl0ZW0tdGV4dC13cmFwcGVyIHtcbiAgICAgIEBhcHBseSBnbC1taW4tdy0wO1xuICAgICAgQGFwcGx5IGdsLWdyb3c7XG4gICAgICBAYXBwbHkgZ2wtbXItMztcbiAgICAgIEBhcHBseSBnbC1weS0zO1xuICAgIH1cblxuICAgIC8vIG1ha2Ugc3VyZSB0aGUgdGV4dCBjb2xvciBpcyBub3Qgb3ZlcnJpZGRlblxuICAgICYudGV4dC1kYW5nZXIge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGFuZ2VyO1xuICAgIH1cblxuICAgICYuZGlzYWJsZS1ob3ZlciB7XG4gICAgICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xuICAgIH1cblxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG5cbiAgICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1jaGVjay1pY29uIHtcbiAgICAgICAgQGFwcGx5IGdsLXRleHQtaW5oZXJpdDtcbiAgICAgIH1cblxuICAgICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLXRleHQtc2Vjb25kYXJ5IHtcbiAgICAgICAgQGFwcGx5IGdsLXRleHQtaW5oZXJpdDtcbiAgICAgIH1cblxuICAgICAgLmdsLWF2YXRhciB7XG4gICAgICAgIEBhcHBseSBnbC1vcGFjaXR5LTc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLmRpc2FibGUtaG92ZXIpOmhvdmVyLFxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAmLmlzLWZvY3VzZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1ob3Zlcik7XG4gICAgICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xuICAgICAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuXG4gICAgICAvLyBtYWtlIHN1cmUgdGhlIHRleHQgY29sb3IgaXMgbm90IG92ZXJyaWRkZW5cbiAgICAgICYudGV4dC1kYW5nZXIge1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1kYW5nZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ2wtZm9jdXMoJGluc2V0OiB0cnVlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5nbC1kcm9wZG93bi10ZXh0IHtcbiAgLmItZHJvcGRvd24tdGV4dCB7XG4gICAgQGluY2x1ZGUgZ2wtdG1wLWRyb3Bkb3duLWl0ZW0tc3R5bGU7XG4gICAgQGFwcGx5IGdsLXB5LTM7XG4gIH1cbn1cbiIsIi5nbC1maWx0ZXJlZC1zZWFyY2gtc2Nyb2xsYWJsZS1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWdyb3c7XG4gIEBhcHBseSBnbC1iYXNpcy0wO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtcHktMjtcbiAgQGFwcGx5IGdsLXBsLTQ7XG4gIEBhcHBseSBnbC1wci03O1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWNvbnRyb2w7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG5cbiAgLmlucHV0LWdyb3VwLXByZXBlbmQgKyAmIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1sLW5vbmU7XG4gIH1cbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC1zY3JvbGxhYmxlLWNvbnRhaW5lci13aXRoLXNlYXJjaC1idXR0b24ge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1yLW5vbmU7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtc2Nyb2xsYWJsZSB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3cteS1hdXRvO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLWl0ZW0ge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLXB4LTE7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLXBsLTA7XG4gIH1cbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC1sYXN0LWl0ZW0ge1xuICAuZ2wtZmlsdGVyZWQtc2VhcmNoLXRlcm0tdmFsdWUge1xuICAgIEBhcHBseSBnbC1oLWZ1bGw7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICB9XG5cbiAgQGFwcGx5IGdsLWdyb3c7XG4gIEBhcHBseSBnbC1wLTA7XG4gIEBhcHBseSBnbC1wbC0xO1xuICBAYXBwbHkgZ2wtaC02O1xuICBtaW4td2lkdGg6ICRnbC1zcGFjaW5nLXNjYWxlLTEyO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXZpZXctb25seSB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRpc2FibGVkKTtcbn1cbiIsIi5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gIEBhcHBseSBnbC1wLTA7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbi1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtb3V0bGluZS1ub25lO1xuICBAaW5jbHVkZSBnbC1mb2N1cygkaW5zZXQ6IHRydWUpO1xufVxuIiwiLy8gVGhpcyBzZWxlY3RvciBpcyB1c2VkIHRvIG92ZXJyaWRlIGJvb3N0cmFwIHN0eWxlcyB3aGVuIHVzaW5nIHRoZSBjb21wb25lbnQgaW5cbi8vIEdpdExhYlxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXN1Z2dlc3Rpb24tbGlzdC5kcm9wZG93bi1tZW51IHtcbiAgQGFwcGx5IGdsLWJsb2NrO1xuICB3aWR0aDogJGdsLWRyb3Bkb3duLXdpZHRoO1xuICBAYXBwbHkgZ2wtcC0yO1xuICBAYXBwbHkgZ2wtYmctZHJvcGRvd247XG4gIEBhcHBseSBnbC1ib3JkZXItZHJvcGRvd247XG4gIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xuICBAYXBwbHkgZ2wtc2hhZG93LW1kO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXN1Z2dlc3Rpb24tbGlzdCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LXktYXV0bztcbiAgbWF4LWhlaWdodDogJGdsLW1heC1kcm9wZG93bi1tYXgtaGVpZ2h0O1xuXG4gIC5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbixcbiAgLmdsLWZpbHRlcmVkLXNlYXJjaC1zdWdnZXN0aW9uID4gYSxcbiAgLmdsLWZpbHRlcmVkLXNlYXJjaC1zdWdnZXN0aW9uID4gYnV0dG9uIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0ICN7IWltcG9ydGFudH07XG4gIH1cblxuICAuZ2wtZHJvcGRvd24tZGl2aWRlciB7XG4gICAgQGFwcGx5IC1nbC1teC0yO1xuICB9XG5cbiAgLmdsLXNwaW5uZXItY29udGFpbmVyIHtcbiAgICBAYXBwbHkgZ2wtbXktMjtcbiAgfVxuXG4gIC5nbC1maWx0ZXJlZC1zZWFyY2gtc3VnZ2VzdGlvbiB7XG4gICAgQGFwcGx5IGdsLXAtMDtcbiAgfVxufVxuIiwiLmdsLWZpbHRlcmVkLXNlYXJjaC10ZXJtIHtcbiAgLmdsLWZpbHRlcmVkLXNlYXJjaC10ZXJtLXRva2VuIHtcbiAgICBAYXBwbHkgZ2wtY3Vyc29yLXRleHQ7XG4gIH1cbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC10ZXJtLWlucHV0IHtcbiAgQGFwcGx5IGdsLXAtMDtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG4gIEBhcHBseSBnbC1vdXRsaW5lLW5vbmU7XG4gIEBhcHBseSBnbC1oLTY7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIG1pbi13aWR0aDogJGdsLWRyb3Bkb3duLXdpZHRoO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRlcm0taWNvbiB7XG4gIEBhcHBseSBnbC1tci0yO1xufVxuIiwiLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbiB7XG4gICYuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWFjdGl2ZSB7XG4gICAgQGFwcGx5IGdsLWN1cnNvci1kZWZhdWx0O1xuICB9XG5cbiAgQGFwcGx5IGdsLWgtNjtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3dyYXA7XG4gIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcblxuICAmLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1ob3ZlciB7XG4gICAgJjpob3ZlciB7XG4gICAgICAuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICAgIH1cblxuICAgICAgLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1kYXRhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgICB9XG5cbiAgICAgIC5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tb3BlcmF0b3Ige1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tb3BlcmF0b3ItYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5nbC10b2tlbiB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLW5vbmU7XG5cbiAgJi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZSB7XG4gICAgQGFwcGx5IGdsLWgtNjtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC10ci1ub25lO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWJyLW5vbmU7XG4gICAgQGFwcGx5IGdsLXB5LTI7XG4gICAgQGFwcGx5IGdsLXB4LTM7XG4gICAgQGFwcGx5IGdsLW1yLTE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgfVxuXG4gICYuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yIHtcbiAgICBAYXBwbHkgZ2wtaC02O1xuICAgIEBhcHBseSBnbC1tci0xO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLW5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIH1cblxuICAmLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1kYXRhIHtcbiAgICBAYXBwbHkgZ2wtaC02O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1kYXRhLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWdsLXRva2VuLWJvcmRlci1yYWRpdXMpO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiB2YXIoLS1nbC10b2tlbi1ib3JkZXItcmFkaXVzKTtcblxuICAgIC5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tZGF0YS1jb250ZW50IHtcbiAgICAgIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgICB9XG4gIH1cbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1vcGVyYXRvci1kZXNjcmlwdGlvbiB7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgQGFwcGx5IGdsLW1sLWF1dG87XG59XG4iLCIuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXNlZ21lbnQge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1oLTY7XG4gIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vd3JhcDtcbiAgQGFwcGx5IGdsLWN1cnNvci1wb2ludGVyO1xuXG4gICYuZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXNlZ21lbnQtYWN0aXZlIHtcbiAgICBAYXBwbHkgZ2wtY3Vyc29yLWRlZmF1bHQ7XG4gIH1cbn1cblxuLmdsLWZpbHRlcmVkLXNlYXJjaC10b2tlbi1zZWdtZW50LWlucHV0IHtcbiAgQGFwcGx5IGdsLXAtMDtcbiAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG4gIEBhcHBseSBnbC1vdXRsaW5lLW5vbmU7XG4gIG1pbi13aWR0aDogJGdsLWRyb3Bkb3duLXdpZHRoO1xufVxuXG4uZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXNlZ21lbnQtaW5wdXQuZ2wtZm9ybS1kYXRlIGlucHV0Om5vdCguZm9ybS1jb250cm9sLXBsYWludGV4dCkge1xuICBAYXBwbHkgZ2wtcm91bmRlZC1ub25lO1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1zaGFkb3ctbm9uZTtcbiAgd2lkdGg6IGF1dG87XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xuICB9XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tc2VnbWVudC1pbnB1dC1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG59XG5cbi5nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tc2VnbWVudC1pY29uIHtcbiAgQGFwcGx5IGdsLW1yLTI7XG59XG4iLCIuZ2wtZm9ybS1kYXRlIHtcbiAgaW5wdXQ6Oi13ZWJraXQtZGF0ZXRpbWUtZWRpdCB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICB9XG59XG4iLCJAdXNlIFwic2Fzczpjb2xvclwiO1xuXG4vLyBCb290c3RyYXAgdjQueCBkb2VzIG5vdCBoYXZlIHNwZWNpYWwgc3R5bGluZyBmb3IgY29sb3IgaW5wdXRcbi8vIFNvIHdlIGRlZmluZSBzb21lIGJhc2ljIHN0eWxlcyB0byBjb21wZW5zYXRlXG5pbnB1dFt0eXBlPVwiY29sb3JcIl0uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAvLyBXZSB1c2UgdGhlIHNtYWxsZXIgcGFkZGluZyB0byBtYWtlIHRoZSBjb2xvciBibG9jayBsYXJnZXJcbiAgcGFkZGluZzogKCRpbnB1dC1wYWRkaW5nLXktc20gKiAwLjUpICgkaW5wdXQtcGFkZGluZy14LXNtICogMC41KTtcbn1cblxuaW5wdXRbdHlwZT1cImNvbG9yXCJdLmZvcm0tY29udHJvbC5mb3JtLWNvbnRyb2wtc20sXG4uaW5wdXQtZ3JvdXAtc20gaW5wdXRbdHlwZT1cImNvbG9yXCJdLmZvcm0tY29udHJvbCB7XG4gIGhlaWdodDogJGlucHV0LWhlaWdodC1zbTtcbiAgLy8gV2UgdXNlIHRoZSBzbWFsbGVyIHBhZGRpbmcgdG8gbWFrZSB0aGUgY29sb3IgYmxvY2sgbGFyZ2VyXG4gIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15LXNtICogMC41KSAoJGlucHV0LXBhZGRpbmcteC1zbSAqIDAuNSk7XG59XG5cbmlucHV0W3R5cGU9XCJjb2xvclwiXS5mb3JtLWNvbnRyb2wuZm9ybS1jb250cm9sLWxnLFxuLmlucHV0LWdyb3VwLWxnIGlucHV0W3R5cGU9XCJjb2xvclwiXS5mb3JtLWNvbnRyb2wge1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtbGc7XG4gIHBhZGRpbmc6ICgkaW5wdXQtcGFkZGluZy15LXNtICogMC41KSAoJGlucHV0LXBhZGRpbmcteC1zbSAqIDAuNSk7XG59XG5cbmlucHV0W3R5cGU9XCJjb2xvclwiXS5mb3JtLWNvbnRyb2w6ZGlzYWJsZWQge1xuICAvLyBEaXNhYmxlZCBzdHlsaW5nIG5lZWRzIHRvIGJlIGEgYml0IGRpZmZlcmVudCB0aGFuIHJlZ3VsYXIgaW5wdXRzXG4gIGJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTUwMDtcbiAgb3BhY2l0eTogJGJ0bi1kaXNhYmxlZC1vcGFjaXR5O1xufVxuXG4vLyAtLS0gQmFzZSBgLmlucHV0LWdyb3VwID4gLmN1c3RvbS1yYW5nZWAgc3R5bGluZyAobm8gUFIgeWV0IG9uIEJvb3RzdHJhcCB2NCkgLS0tXG4uaW5wdXQtZ3JvdXAge1xuICA+IC5jdXN0b20tcmFuZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgICB3aWR0aDogMSU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICsgLmZvcm0tY29udHJvbCxcbiAgICArIC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0LFxuICAgICsgLmN1c3RvbS1zZWxlY3QsXG4gICAgKyAuY3VzdG9tLXJhbmdlLFxuICAgICsgLmN1c3RvbS1maWxlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICB9XG4gIH1cblxuICA+IC5mb3JtLWNvbnRyb2wsXG4gID4gLmZvcm0tY29udHJvbC1wbGFpbnRleHQsXG4gID4gLmN1c3RvbS1zZWxlY3QsXG4gID4gLmN1c3RvbS1yYW5nZSxcbiAgPiAuY3VzdG9tLWZpbGUge1xuICAgICsgLmN1c3RvbS1yYW5nZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRpbnB1dC1ib3JkZXItd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgPiAuY3VzdG9tLXJhbmdlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAzO1xuICB9XG5cbiAgPiAuY3VzdG9tLXJhbmdlIHtcbiAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygwKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbiAgICB9XG4gIH1cblxuICA+IC5jdXN0b20tcmFuZ2Uge1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXBhZGRpbmcteDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmc7XG4gICAgYmFja2dyb3VuZC1jbGlwOiBwYWRkaW5nLWJveDtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItd2lkdGggc29saWQgJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG5cbiAgICBAaWYgJGVuYWJsZS1yb3VuZGVkIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzO1xuICAgIH0gQGVsc2Uge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRpbnB1dC1ib3gtc2hhZG93KTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKCRpbnB1dC10cmFuc2l0aW9uKTtcbiAgICAvLyBCb290c3RyYXAgdjQuMy4yIGhhcyBkZXByZWNhdGVkIHRoaXMgbWl4aW5cbiAgICAvLyBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoKTtcbiAgICAvLyBTbyB3ZSBtYW51YWxseSBhZGQgaXRzIGNvbnRlbnQgaGVyZVxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRpbnB1dC1mb2N1cy1jb2xvcjsgLy8gb25seSBuZWVkZWQgZm9yIGZhbGxiYWNrIHRvIHRleHQgaW5wdXRcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1mb2N1cy1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBAaWYgJGVuYWJsZS1zaGFkb3dzIHtcbiAgICAgICAgYm94LXNoYWRvdzogJGlucHV0LWJveC1zaGFkb3csICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIGJveC1zaGFkb3c6ICRpbnB1dC1mb2N1cy1ib3gtc2hhZG93O1xuICAgICAgfVxuICAgIH1cblxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIH1cbiAgfVxufVxuXG4uaW5wdXQtZ3JvdXAtbGcgPiAuY3VzdG9tLXJhbmdlIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxnO1xuICBwYWRkaW5nOiAwICRpbnB1dC1wYWRkaW5nLXgtbGc7XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtbGcpO1xufVxuXG4uaW5wdXQtZ3JvdXAtc20gPiAuY3VzdG9tLXJhbmdlIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtO1xuICBwYWRkaW5nOiAwICRpbnB1dC1wYWRkaW5nLXgtc207XG4gIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGlucHV0LWJvcmRlci1yYWRpdXMtc20pO1xufVxuXG4vLyA8Z2wtZm9ybS1pbnB1dD4gY3VzdG9tLXJhbmdlIHZhbGlkYXRpb24gc3R5bGluZ1xuLy8gTWl4aW4gZm9yIGdlbmVyYXRpbmcgYC5pbnB1dC1ncm91cCAuY3VzdG9tLXJhbmdlYCB2YWxpZGF0aW9uIHN0eWxpbmdcbkBtaXhpbiBjdXN0b20tcmFuZ2UtdmFsaWRhdGlvbi1zdGF0ZSgkc3RhdGUsICRjb2xvcikge1xuICAuaW5wdXQtZ3JvdXAgLmN1c3RvbS1yYW5nZSB7XG4gICAgLndhcy12YWxpZGF0ZWQgJjojeyRzdGF0ZX0sXG4gICAgJi5pcy0jeyRzdGF0ZX0ge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgJGlucHV0LWZvY3VzLXdpZHRoIHJnYmEoJGNvbG9yLCAwLjI1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLXJhbmdlIHtcbiAgICAud2FzLXZhbGlkYXRlZCAmOiN7JHN0YXRlfSxcbiAgICAmLmlzLSN7JHN0YXRlfSB7XG4gICAgICAvLyBQc2V1ZG8tZWxlbWVudHMgbXVzdCBiZSBzcGxpdCBhY3Jvc3MgbXVsdGlwbGUgcnVsZXNldHMgdG8gaGF2ZSBhbiBhZmZlY3RcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICAmOjotd2Via2l0LXNsaWRlci10aHVtYiB7XG4gICAgICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgICAgIDAgMCAwIDFweCAkYm9keS1iZyxcbiAgICAgICAgICAgIDAgMCAwICRpbnB1dC1idG4tZm9jdXMtd2lkdGggY29sb3IuYWRqdXN0KCRjb2xvciwgJGxpZ2h0bmVzczogMzUlKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Oi1tb3otcmFuZ2UtdGh1bWIge1xuICAgICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsXG4gICAgICAgICAgICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoIGNvbG9yLmFkanVzdCgkY29sb3IsICRsaWdodG5lc3M6IDM1JSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOjotbXMtdGh1bWIge1xuICAgICAgICAgIGJveC1zaGFkb3c6XG4gICAgICAgICAgICAwIDAgMCAxcHggJGJvZHktYmcsXG4gICAgICAgICAgICAwIDAgMCAkaW5wdXQtYnRuLWZvY3VzLXdpZHRoIGNvbG9yLmFkanVzdCgkY29sb3IsICRsaWdodG5lc3M6IDM1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6LXdlYmtpdC1zbGlkZXItdGh1bWIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cbiAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGNvbG9yLmFkanVzdCgkY29sb3IsICRsaWdodG5lc3M6IDM1JSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOjotd2Via2l0LXNsaWRlci1ydW5uYWJsZS10cmFjayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAwLjM1KTtcbiAgICAgIH1cblxuICAgICAgJjo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IuYWRqdXN0KCRjb2xvciwgJGxpZ2h0bmVzczogMzUlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Oi1tb3otcmFuZ2UtdHJhY2sge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRjb2xvciwgMC4zNSk7XG4gICAgICB9XG5cbiAgICAgIH4gLiN7JHN0YXRlfS1mZWVkYmFjayxcbiAgICAgIH4gLiN7JHN0YXRlfS10b29sdGlwIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG5cbiAgICAgICY6Oi1tcy10aHVtYiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblxuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogY29sb3IuYWRqdXN0KCRjb2xvciwgJGxpZ2h0bmVzczogMzUlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Oi1tcy10cmFjay1sb3dlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAwLjM1KTtcbiAgICAgIH1cblxuICAgICAgJjo6LW1zLXRyYWNrLXVwcGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkY29sb3IsIDAuMzUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBjdXN0b20tcmFuZ2UtdmFsaWRhdGlvbi1zdGF0ZShcInZhbGlkXCIsICRmb3JtLWZlZWRiYWNrLXZhbGlkLWNvbG9yKTtcbkBpbmNsdWRlIGN1c3RvbS1yYW5nZS12YWxpZGF0aW9uLXN0YXRlKFwiaW52YWxpZFwiLCAkZm9ybS1mZWVkYmFjay1pbnZhbGlkLWNvbG9yKTtcblxuLmdsLWZvcm0taW5wdXQsXG4uZ2wtZm9ybS1pbnB1dC5mb3JtLWNvbnRyb2wge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMSB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1jb250cm9sO1xuICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1weS0zO1xuICBAYXBwbHkgZ2wtcHgtNDtcbiAgQGFwcGx5IGdsLWgtYXV0bztcbiAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXMoJGlnbm9yZS13YXJuaW5nOiB0cnVlKTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcblxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTEgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItaG92ZXIpO1xuICB9XG5cbiAgJjpub3QoLmdsLWZvcm0taW5wdXQtbm90LXJlYWRvbmx5KTpub3QoOmRpc2FibGVkKTpub3QoLmZvcm0tY29udHJvbC1wbGFpbnRleHQpOm5vdChcbiAgICAgIFt0eXBlPVwiY29sb3JcIl1cbiAgICApOnJlYWQtb25seSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXJlYWRvbmx5KTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG5cbiAgJjpkaXNhYmxlZCB7XG4gICAgQGFwcGx5IGdsLWN1cnNvci1ub3QtYWxsb3dlZDtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGlzYWJsZWQpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRpc2FibGVkKTtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgfVxuXG4gICY6bm90KC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0KTpmb2N1cy12aXNpYmxlIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cygkY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWZvY3VzKSk7XG4gIH1cblxuICAmLmlzLWludmFsaWQge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWVycm9yKTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBAaW5jbHVkZSBnbC1mb2N1cygkY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWVycm9yKSk7XG4gICAgfVxuICB9XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yKTtcbiAgfVxuXG4gICYuZm9ybS1jb250cm9sLXBsYWludGV4dCB7XG4gICAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xuICB9XG59XG5cbkBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZ2wtZm9ybS1pbnB1dC1zaXplcyB7XG4gIC5nbC1mb3JtLWlucHV0LSN7JG5hbWV9IHtcbiAgICBtYXgtd2lkdGg6ICRzaXplO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnROYW1lLCAkYnJlYWtwb2ludFNpemUgaW4gJGdsLWZvcm0taW5wdXQtc2l6ZXMge1xuICAgIEBpZiAkYnJlYWtwb2ludE5hbWUgIT0geHMge1xuICAgICAgLmdsLSN7JGJyZWFrcG9pbnROYW1lfS1mb3JtLWlucHV0LSN7JG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKCRicmVha3BvaW50TmFtZSkge1xuICAgICAgICAgIG1heC13aWR0aDogJHNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5pbnB1dC1ncm91cCB7XG4gID4gLmlucHV0LWdyb3VwLXByZXBlbmQgPiAuYnRuLWdyb3VwLFxuICA+IC5pbnB1dC1ncm91cC1hcHBlbmQ6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4tZ3JvdXAsXG4gID4gLmlucHV0LWdyb3VwLWFwcGVuZDpsYXN0LWNoaWxkID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gICAgPiAuYnRuIHtcbiAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG5cbiAgPiAuaW5wdXQtZ3JvdXAtYXBwZW5kID4gLmJ0bi1ncm91cCxcbiAgPiAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKSA+IC5idG4tZ3JvdXAsXG4gID4gLmlucHV0LWdyb3VwLXByZXBlbmQ6Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICA+IC5idG4ge1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG59XG4iLCIuZ2wtZm9ybS1wYXNzd29yZC1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLXctZnVsbDtcblxuICAvLyBIaWRlIEVkZ2UncyBuYXRpdmUgcGFzc3dvcmQtcmV2ZWFsIGNvbnRyb2wgc28gb25seSB0aGlzIGNvbXBvbmVudCdzIHRvZ2dsZVxuICAvLyBidXR0b24gaXMgc2hvd247IG90aGVyd2lzZSBFZGdlIHJlbmRlcnMgYSBzZWNvbmQgcmV2ZWFsIGljb24gZm9yIHR5cGVkXG4gIC8vIHBhc3N3b3JkcywgcHJvZHVjaW5nIHR3byBvdmVybGFwcGluZyBjb250cm9scy5cbiAgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdOjotbXMtcmV2ZWFsIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIFJlc2VydmUgcm9vbSBmb3IgdGhlIHRvZ2dsZSBidXR0b24uIEJvdGggY2xhc3NlcyBhcmUgbmVlZGVkOiB0aGUgYmFzZSBwYWRkaW5nXG4vLyBsYW5kcyBhdCB0d28tY2xhc3Mgc3BlY2lmaWNpdHkgdmlhIGAuZ2wtZm9ybS1pbnB1dC5mb3JtLWNvbnRyb2xgLlxuLmdsLWZvcm0tcGFzc3dvcmQtaW5wdXQtZmllbGQuZ2wtZm9ybS1pbnB1dCB7XG4gIEBhcHBseSBnbC1wZS03O1xufVxuXG4uZ2wtZm9ybS1wYXNzd29yZC1pbnB1dC10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBAYXBwbHkgZ2wtZW5kLTI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbiIsIkBtaXhpbiBnbC10bXAtZm9ybS1jaGVja2JveC1pbmxpbmUtc3R5bGVzIHtcbiAgQGFwcGx5IGdsLW10LTE7XG4gIEBhcHBseSBnbC1tbC0wO1xuICBAYXBwbHkgZ2wtc2VsZi1zdGFydDtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgQGFwcGx5IGdsLWgtYXV0bztcbiAgQGFwcGx5IGdsLW1yLTA7XG59XG5cbi5nbC1mb3JtLWNoZWNrYm94LWdyb3VwIHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xufVxuXG4uZ2wtZm9ybS1jaGVja2JveCxcbi5nbC1mb3JtLXJhZGlvIHtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuXG4gICYuZm9ybS1jaGVjayB7XG4gICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgQGFwcGx5IGdsLXBsLTA7XG4gIH1cblxuICAmLmZvcm0tY2hlY2staW5saW5lIHtcbiAgICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gICAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWlucHV0IHtcbiAgICBAaW5jbHVkZSBnbC10bXAtZm9ybS1jaGVja2JveC1pbmxpbmUtc3R5bGVzO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWNoZWNrLWxhYmVsIHtcbiAgICBAYXBwbHkgZ2wtcGwtMztcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIH1cblxuICAuZm9ybS1jaGVjay1pbnB1dDpkaXNhYmxlZCxcbiAgLmZvcm0tY2hlY2staW5wdXQ6ZGlzYWJsZWQgfiAuZm9ybS1jaGVjay1sYWJlbCxcbiAgLmN1c3RvbS1jb250cm9sLWlucHV0OmRpc2FibGVkLFxuICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6ZGlzYWJsZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsXG4gIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCA+IC5oZWxwLXRleHQge1xuICAgIEBhcHBseSBnbC1jdXJzb3Itbm90LWFsbG93ZWQ7XG4gICAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG4gIH1cblxuICAmLmN1c3RvbS1jb250cm9sIHtcbiAgICBAYXBwbHkgZ2wtcGwtNTtcblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG4gICAgICBAYXBwbHkgZ2wtcGwtMztcbiAgICAgIEBhcHBseSBnbC1tYi0zO1xuXG4gICAgICAmOjpiZWZvcmUsXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogLSRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6aG92ZXIgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmJlZm9yZSB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWhvdmVyKTtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgIEBhcHBseSBnbC1mb2N1cztcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZm9jdXMpO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcblxuICAgICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogTGlua1RleHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2NhbGUtdW5saW1pdGVkL2RlY2xhcmF0aW9uLXN0cmljdC12YWx1ZVxuICAgICAgICBib3JkZXItY29sb3I6IExpbmtUZXh0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjYWxlLXVubGltaXRlZC9kZWNsYXJhdGlvbi1zdHJpY3QtdmFsdWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwsXG4gICAgLmN1c3RvbS1jb250cm9sLWlucHV0W3R5cGU9XCJjaGVja2JveFwiXTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLFxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IDUwJSA1MCUgbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1zZWxlY3RlZCk7XG4gICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sLWlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1zZWxlY3RlZCk7XG4gICAgICBtYXNrLWltYWdlOiB1cmwoXCIjeyRnbC1pY29uLWNoZWNrfVwiKTtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmluZGV0ZXJtaW5hdGUgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWw6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkKTtcbiAgICAgIG1hc2staW1hZ2U6IHVybChcIiN7JGdsLWljb24taW5kZXRlcm1pbmF0ZX1cIik7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1jb250cm9sLWlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1zZWxlY3RlZCk7XG4gICAgICBtYXNrLWltYWdlOiB1cmwoXCIjeyRnbC1pY29uLXJhZGlvfVwiKTtcbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbDpob3ZlcixcbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6aG92ZXI6Y2hlY2tlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZm9jdXMpO1xuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmhvdmVyLFxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpob3ZlcjpjaGVja2VkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLFxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTpmb2N1cy12aXNpYmxlOmNoZWNrZWQgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBMaW5rVGV4dDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY2FsZS11bmxpbWl0ZWQvZGVjbGFyYXRpb24tc3RyaWN0LXZhbHVlXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBMaW5rVGV4dDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY2FsZS11bmxpbWl0ZWQvZGVjbGFyYXRpb24tc3RyaWN0LXZhbHVlXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCkgfiAuY3VzdG9tLWNvbnRyb2wtbGFiZWwge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICB9XG5cbiAgICAmLmN1c3RvbS1jaGVja2JveCB7XG4gICAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6aW5kZXRlcm1pbmF0ZSB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpO1xuXG4gICAgICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogTGlua1RleHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2NhbGUtdW5saW1pdGVkL2RlY2xhcmF0aW9uLXN0cmljdC12YWx1ZVxuICAgICAgICAgIGJvcmRlci1jb2xvcjogTGlua1RleHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2NhbGUtdW5saW1pdGVkL2RlY2xhcmF0aW9uLXN0cmljdC12YWx1ZVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmhvdmVyOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTtcbiAgICAgIH1cblxuICAgICAgLmN1c3RvbS1jb250cm9sLWlucHV0Om5vdCg6ZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6aW5kZXRlcm1pbmF0ZVxuICAgICAgICB+IC5jdXN0b20tY29udHJvbC1sYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1mb2N1cyk7XG4gICAgICB9XG5cbiAgICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpub3QoOmRpc2FibGVkKTppbmRldGVybWluYXRlIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOmhvdmVyOjpiZWZvcmUsXG4gICAgICAuY3VzdG9tLWNvbnRyb2wtaW5wdXQ6bm90KDpkaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZTppbmRldGVybWluYXRlXG4gICAgICAgIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsOjpiZWZvcmUge1xuICAgICAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IExpbmtUZXh0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjYWxlLXVubGltaXRlZC9kZWNsYXJhdGlvbi1zdHJpY3QtdmFsdWVcbiAgICAgICAgICBib3JkZXItY29sb3I6IExpbmtUZXh0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjYWxlLXVubGltaXRlZC9kZWNsYXJhdGlvbi1zdHJpY3QtdmFsdWVcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICBAYXBwbHkgZ2wtY3Vyc29yLW5vdC1hbGxvd2VkO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBAYXBwbHkgZ2wtcG9pbnRlci1ldmVudHMtYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRpc2FibGVkKTtcblxuICAgICAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dDpjaGVja2VkOmRpc2FibGVkIH4gLmN1c3RvbS1jb250cm9sLWxhYmVsLFxuICAgIC5jdXN0b20tY29udHJvbC1pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06aW5kZXRlcm1pbmF0ZTpkaXNhYmxlZCB+IC5jdXN0b20tY29udHJvbC1sYWJlbCB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGlzYWJsZWQpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1kaXNhYmxlZCk7XG5cbiAgICAgICAgLyogRW5zdXJlIHN0YXRlIGluZGljYXRvcnMgKGxpa2UgdGhlIGNoZWNrbWFyayBmb3IgY2hlY2tlZCBvclxuICAgICAgICAgIHRoZSBkYXNoIGZvciBpbmRldGVybWluYXRlKSBhcmUgdmlzaWJsZSBpbiBXaW5kb3dzIEhpZ2hcbiAgICAgICAgICBDb250cmFzdCBNb2RlLlxuICAgICAgICAqL1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICAgICAgZm9yY2VkLWNvbG9yLWFkanVzdDogbm9uZTtcbiAgICAgICAgICAvKiBzeXN0ZW0gY29sb3IgcmVmZXJlbmNlIGZvciBkaXNhYmxlZCB0ZXh0IGFwcGxpZWQgdG9cbiAgICAgICAgICAgIGJhY2tncm91bmQgaGVyZS5cbiAgICAgICAgICAqL1xuICAgICAgICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZVxuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEdyYXlUZXh0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmhlbHAtdGV4dCB7XG4gICAgQGFwcGx5IGdsLW10LTI7XG4gICAgQGFwcGx5IGdsLW1iLTA7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICB9XG59XG4iLCIuZ2wtZm9ybS1ncm91cCB7XG4gIEBhcHBseSBnbC1tYi01O1xuXG4gIC5jb2wtZm9ybS1sYWJlbCB7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICAgIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgICBAYXBwbHkgZ2wtcHQtMDtcbiAgICBAYXBwbHkgZ2wtcGItMztcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG5cbiAgICA+IC5sYWJlbC1kZXNjcmlwdGlvbiB7XG4gICAgICBAYXBwbHkgZ2wtbXQtMjtcbiAgICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgICB9XG4gIH1cblxuICAub3B0aW9uYWwtbGFiZWwsXG4gIC5sYWJlbC1kZXNjcmlwdGlvbiB7XG4gICAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuICB9XG5cbiAgLmludmFsaWQtZmVlZGJhY2sge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1jb250cm9sLXRleHQtY29sb3ItZXJyb3IpO1xuICB9XG5cbiAgLnZhbGlkLWZlZWRiYWNrIHtcbiAgICBjb2xvcjogdmFyKC0tZ2wtY29udHJvbC10ZXh0LWNvbG9yLXZhbGlkKTtcbiAgfVxuXG4gIC5pbnZhbGlkLWZlZWRiYWNrLFxuICAudmFsaWQtZmVlZGJhY2ssXG4gIC50ZXh0LW11dGVkLFxuICAuZ2wtdGV4dC1zZWNvbmRhcnkge1xuICAgIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICB9XG5cbiAgLnRleHQtbXV0ZWQge1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZSAjeyFpbXBvcnRhbnR9O1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgKyAuaW52YWxpZC1mZWVkYmFjayxcbiAgICArIC52YWxpZC1mZWVkYmFjayxcbiAgICArIC5nbC10ZXh0LXNlY29uZGFyeSxcbiAgICArIC50ZXh0LW11dGVkLFxuICAgICYuaXMtdmFsaWQgKyAuaW52YWxpZC1mZWVkYmFjayArIC50ZXh0LW11dGVkLFxuICAgICYuaXMtdmFsaWQgKyAuaW52YWxpZC1mZWVkYmFjayArIC5nbC10ZXh0LXNlY29uZGFyeSB7XG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXVpLy0vbWVyZ2VfcmVxdWVzdHMvMjgwNlxuICAgICAgLy8gZm9yIHRoZSByZWFzb25pbmcgYmVoaW5kIHRoZSBcInZhbGlkK2ludmFsaWRcIiBzZWxlY3RvciBhYm92ZVxuICAgICAgQGFwcGx5IGdsLW10LTM7XG4gICAgfVxuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG59XG4iLCIuZ2wtZm9ybS1yYWRpby1ncm91cCB7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbn1cbiIsIi8qXG5UaGlzIGlzIGEgdGVtcG9yYXJ5IG1lYXN1cmUgdG8gZW5zdXJlIGN1c3RvbSBzZWxlY3Qgc3R5bGVzIGFyZSBub3QgYWZmZWN0ZWQgYnkgb3VyXG5sYWNrIG9mIGFuIGF1dG9wcmVmaXhlciB0b29sIGZvciBjb21waWxpbmcgYm9vdHN0cmFwLlxuXG5UT0RPOiBSZW1vdmUgb25jZSBib290c3RyYXAgaXMgaW5jbHVkZWQgaW4gR2l0TGFiIFVJIG9yIHdlIGluY2x1ZGUgYW4gYXV0b3ByZWZpeGVyXG5vbiBnaXRsYWJcblNlZTogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiL2lzc3Vlcy8zMDA1NVxuKi9cblxuLyogc3R5bGVsaW50LWRpc2FibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuLmdsLWZvcm0tc2VsZWN0IHtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWZvbnQtcmVndWxhcjtcbiAgQGFwcGx5IGdsLW9wYWNpdHktMTA7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1wbC00O1xuICBAYXBwbHkgZ2wtaC1hdXRvO1xuICBAYXBwbHkgZ2wtdHJ1bmNhdGU7XG4gIEBhcHBseSBnbC1iZy1uby1yZXBlYXQ7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtY29udHJvbDtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMSB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMiArICRnbC1zcGFjaW5nLXNjYWxlLTY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMSB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUsXG4gICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgIEBpbmNsdWRlIGdsLWZvY3VzKCRjb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZm9jdXMpLCAkaW1wb3J0YW50OiB0cnVlKTtcbiAgfVxuXG4gICY6ZGlzYWJsZWQge1xuICAgIEBhcHBseSBnbC1jdXJzb3Itbm90LWFsbG93ZWQ7XG4gICAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRpc2FibGVkKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMSB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kaXNhYmxlZCk7XG4gIH1cblxuICAmLmlzLWludmFsaWQ6bm90KDpkaXNhYmxlZCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWVycm9yKTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTEgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZXJyb3IpO1xuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBAaW5jbHVkZSBnbC1mb2N1cygkY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWVycm9yKSwgJGltcG9ydGFudDogdHJ1ZSk7XG4gICAgfVxuICB9XG59XG5cbi8vIENoZXZyb24gZHJvcGRvd24gaWNvblxuLy8gUmVmZXJlbmNlcyB3cmFwcGluZyBkaXYgYmVjYXVzZSBzZWxlY3QgY2FuJ3QgaGF2ZSBwc2V1ZG8gZWxlbWVudHMgcmVsaWFibHlcbi5nbC1mb3JtLXNlbGVjdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWljb24tY29sb3ItZGVmYXVsdCk7XG4gICAgbWFzay1pbWFnZTogdXJsKFwiI3skZ2wtaWNvbi1zZWxlY3QtY2hldnJvbi1kb3dufVwiKTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS00O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICB3aWR0aDogOHB4O1xuXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IENhbnZhc1RleHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2NhbGUtdW5saW1pdGVkL2RlY2xhcmF0aW9uLXN0cmljdC12YWx1ZVxuICAgIH1cbiAgfVxuXG4gICY6aGFzKD4gLmdsLWZvcm0tc2VsZWN0OmRpc2FibGVkKSB7XG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1kaXNhYmxlZCk7XG5cbiAgICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEdyYXlUZXh0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjYWxlLXVubGltaXRlZC9kZWNsYXJhdGlvbi1zdHJpY3QtdmFsdWVcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGVhY2ggJG5hbWUsICRzaXplIGluICRnbC1mb3JtLWlucHV0LXNpemVzIHtcbiAgLmdsLWZvcm0tc2VsZWN0LSN7JG5hbWV9IHtcbiAgICBtYXgtd2lkdGg6ICRzaXplO1xuICB9XG5cbiAgQGVhY2ggJGJyZWFrcG9pbnROYW1lLCAkYnJlYWtwb2ludFNpemUgaW4gJGdsLWZvcm0taW5wdXQtc2l6ZXMge1xuICAgIEBpZiAkYnJlYWtwb2ludE5hbWUgIT0geHMge1xuICAgICAgLmdsLSN7JGJyZWFrcG9pbnROYW1lfS1mb3JtLXNlbGVjdC0jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cCgkYnJlYWtwb2ludE5hbWUpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6ICRzaXplO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIHN0eWxlbGludC1lbmFibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuIiwiLmdsLWZvcm0tY29tYm9ib3gge1xuICAuZ2wtZm9ybS1jb21ib2JveC1pbm5lciB7XG4gICAgbWF4LWhlaWdodDogJGdsLW1heC1kcm9wZG93bi1tYXgtaGVpZ2h0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAYXBwbHkgZ2wtZ3JvdztcbiAgICBAYXBwbHkgZ2wtb3ZlcmZsb3cteS1hdXRvO1xuICAgIEBhcHBseSBnbC1wbC0wO1xuICAgIEBhcHBseSBnbC1tYi0wO1xuICAgIEBhcHBseSBnbC1weS0yO1xuICAgIEBhcHBseSBnbC1saXN0LW5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtZHJvcGRvd24tYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIEBhcHBseSBnbC1saXN0LW5vbmU7XG4gICAgfVxuXG4gICAgLy8gVXBkYXRlIGRyb3Bkb3duIGl0ZW1zIHRvIG1hdGNoIG5ldyBsaXN0Ym94IHN0eWxpbmcgZXhhY3RseVxuICAgIC5nbC1kcm9wZG93bi1pdGVtIHtcbiAgICAgIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbiAgICAgIEBhcHBseSBnbC1weC0yO1xuICAgICAgQGFwcGx5IGdsLW15LTE7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBAYXBwbHkgZ2wtbXQtMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgQGFwcGx5IGdsLW1iLTA7XG4gICAgICB9XG5cbiAgICAgIC8vIFRhcmdldCB0aGUgYWN0dWFsIEJvb3RzdHJhcCBkcm9wZG93biBpdGVtIGVsZW1lbnRcbiAgICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgICAgdHJhbnNpdGlvbjpcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLWZhc3QgJGdsLWVhc2luZy1vdXQtY3ViaWMsXG4gICAgICAgICAgYm94LXNoYWRvdyAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWM7XG4gICAgICAgIEBhcHBseSBnbC1yb3VuZGVkLWRlZmF1bHQ7XG4gICAgICAgIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgICAgICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1kZWZhdWx0KTtcbiAgICAgICAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgICAgICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgICAgIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gICAgICAgIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbiAgICAgICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgICAgICBAYXBwbHkgZ2wtcHgtMztcbiAgICAgICAgQGFwcGx5IGdsLXB5LTA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICAgICAgICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3JtYWw7XG4gICAgICAgIEBpbmNsdWRlIGdsLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tdHJhbnNpdGlvbjtcblxuICAgICAgICAuZ2wtZHJvcGRvd24taXRlbS10ZXh0LXdyYXBwZXIge1xuICAgICAgICAgIEBhcHBseSBnbC1taW4tdy0wO1xuICAgICAgICAgIEBhcHBseSBnbC1ncm93O1xuICAgICAgICAgIEBhcHBseSBnbC1weS0zO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSG92ZXIgc3RhdGVcbiAgICAgICAgJjpub3QoLmRpc2FibGUtaG92ZXIpOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItaG92ZXIpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtaG92ZXIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gRm9jdXMgc3RhdGUgKHdoZW4gaXRlbSByZWNlaXZlcyBhY3R1YWwgZm9jdXMpXG4gICAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWZvY3VzKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWZvY3VzKTtcbiAgICAgICAgICBAaW5jbHVkZSBnbC1mb2N1cygkaW5zZXQ6IHRydWUpO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBY3RpdmUgc3RhdGUgKHdoZW4gaXRlbSBpcyBjbGlja2VkKVxuICAgICAgICAmOmFjdGl2ZSxcbiAgICAgICAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWFjdGl2ZSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1hY3RpdmUpO1xuICAgICAgICAgIEBpbmNsdWRlIGdsLWZvY3VzKCRpbnNldDogdHJ1ZSk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBLZXlib2FyZCBuYXZpZ2F0aW9uIGhpZ2hsaWdodCAoQm9vdHN0cmFwIGFjdGl2ZSBjbGFzcyB3aGVuIDphY3RpdmUgcHJvcCBpcyB0cnVlKVxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWZvY3VzKSAhaW1wb3J0YW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtZm9jdXMpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgQGluY2x1ZGUgZ2wtZm9jdXMoJGluc2V0OiB0cnVlKTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWxzbyBoYW5kbGUgdGhlIGlzLWZvY3VzZWQgY2xhc3MgZm9yIGNvbXBhdGliaWxpdHlcbiAgICAgICAgJi5pcy1mb2N1c2VkIHtcbiAgICAgICAgICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXMpICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3ItdW5zZWxlY3RlZC1mb2N1cykgIWltcG9ydGFudDtcbiAgICAgICAgICBAaW5jbHVkZSBnbC1mb2N1cygkaW5zZXQ6IHRydWUpO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gU2VsZWN0ZWQgc3RhdGUgKGlmIG5lZWRlZCBmb3IgbXVsdGktc2VsZWN0IHNjZW5hcmlvcylcbiAgICAgICZbYXJpYS1zZWxlY3RlZD1cInRydWVcIl0gLmRyb3Bkb3duLWl0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3Zlcik7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6YWN0aXZlLFxuICAgICAgICAmOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1hY3RpdmUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1jb25jYXRlbmF0aW9uKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1jb250cm9sO1xufVxuIiwiLmdsLWljb24ge1xuICBAZWFjaCAkc2l6ZSBpbiAkZ2wtaWNvbi1zaXplcyB7XG4gICAgJi5zI3skc2l6ZX0ge1xuICAgICAgd2lkdGg6ICN7JHNpemV9cHg7XG4gICAgICBoZWlnaHQ6ICN7JHNpemV9cHg7XG4gICAgfVxuICB9XG59XG4iLCIuZ2wtaW5maW5pdGUtc2Nyb2xsLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy14LWhpZGRlbjtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LXktYXV0bztcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbn1cblxuLmdsLWluZmluaXRlLXNjcm9sbC1sZWdlbmQge1xuICBAYXBwbHkgZ2wtdGV4dC1jZW50ZXI7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIEBhcHBseSBnbC1tdC0zO1xufVxuIiwiJGxhYmVsLW1heC13aWR0aDogMTAwJTtcbiRsYWJlbC1jbG9zZS1idXR0b246IFwiLmdsLWxhYmVsLWNsb3NlLmdsLWJ1dHRvblwiO1xuJGxhYmVsLXBhZGRpbmctaG9yaXpvbnRhbDogMC43NSAqICRncmlkLXNpemU7XG4kbGFiZWwtcGFkZGluZy1ob3Jpem9udGFsLWhhbGY6IDAuMzc1ICogJGdyaWQtc2l6ZTtcblxuLmdsLWxhYmVsIHtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtcGlsbDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtbWF4LXctZnVsbDtcbiAgQGFwcGx5IGdsLXRleHQtc207XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgYm94LXNoYWRvdzogdmFyKC0tbGFiZWwtaW5zZXQtYm9yZGVyKSAhaW1wb3J0YW50O1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZGVjbGFyYXRpb24tcHJvcGVydHktdmFsdWUtZGlzYWxsb3dlZC1saXN0XG4gIH1cblxuICAmOm5vdCguZ2wtbGFiZWwtc2NvcGVkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tbGFiZWwtYmFja2dyb3VuZC1jb2xvcik7XG4gIH1cblxuICAmOmhhcygqOmZpcnN0LWNoaWxkOmZvY3VzLXZpc2libGUpIHtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cyhcbiAgICAgICRjb2xvcjogdmFyKC0tbGFiZWwtYmFja2dyb3VuZC1jb2xvciwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSksXG4gICAgICAkaW1wb3J0YW50OiB0cnVlXG4gICAgKTtcbiAgfVxuXG4gIC5nbC1sYWJlbC1saW5rIHtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICBAYXBwbHkgZ2wtZm9udC1ub3JtYWw7XG4gICAgQGFwcGx5IGdsLW92ZXJmbG93LWhpZGRlbjtcbiAgICBAYXBwbHkgZ2wtdGV4dC1pbmhlcml0O1xuICAgIEBhcHBseSBnbC1tYXgtdy1mdWxsO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1pbmhlcml0O1xuICAgICAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xuICAgICAgQGFwcGx5IGdsLW91dGxpbmUtbm9uZTtcbiAgICB9XG4gIH1cblxuICAuZ2wtbGFiZWwtbGluay11bmRlcmxpbmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgICAgLmdsLWxhYmVsLXRleHQsXG4gICAgICAuZ2wtbGFiZWwtdGV4dC1zY29wZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZ2wtbGFiZWwtdGV4dCxcbiAgLmdsLWxhYmVsLXRleHQtc2NvcGVkIHtcbiAgICBAYXBwbHkgZ2wtYmxvY2s7XG4gICAgcGFkZGluZzogJGdsLXNwYWNpbmctc2NhbGUtMSAkbGFiZWwtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIEBpbmNsdWRlIHN0ci10cnVuY2F0ZWQoJGxhYmVsLW1heC13aWR0aCk7XG4gIH1cblxuICA+ICN7JGxhYmVsLWNsb3NlLWJ1dHRvbn0ge1xuICAgIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICB3aWR0aDogcHgtdG8tcmVtKDE0cHgpO1xuICAgIGhlaWdodDogcHgtdG8tcmVtKDE0cHgpO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICBtYXJnaW4tbGVmdDogLSRsYWJlbC1wYWRkaW5nLWhvcml6b250YWwtaGFsZjtcbiAgICBtYXJnaW4tcmlnaHQ6ICRsYWJlbC1wYWRkaW5nLWhvcml6b250YWwtaGFsZjtcbiAgICBAYXBwbHkgZ2wtcC0wO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWZ1bGw7XG4gICAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBhcHBseSBnbC1mb2N1cztcbiAgICB9XG5cbiAgICAuZ2wtaWNvbiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogLTFweDtcbiAgICB9XG4gIH1cbn1cblxuLy8gc3R5bGVzIGZvciB0aGUgdGhlIGxpZ2h0IGxhYmVsIHZhcmlhbnQgKHdoaWNoIHVzZXMgZGFyayB0ZXh0KVxuLmdsLWxhYmVsLXRleHQtZGFyayB7XG4gIGNvbG9yOiB2YXIoLS1nbC1sYWJlbC1saWdodC10ZXh0LWNvbG9yKTtcblxuICAjeyRsYWJlbC1jbG9zZS1idXR0b259IHtcbiAgICBjb2xvcjogdmFyKC0tZ2wtbGFiZWwtbGlnaHQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbGFiZWwtbGlnaHQtYnV0dG9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG5cbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tbGFiZWwtYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1sYWJlbC1saWdodC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgfVxuICB9XG59XG5cbi8vIHN0eWxlcyBmb3IgdGhlIHRoZSBkYXJrIGxhYmVsIHZhcmlhbnQgKHdoaWNoIHVzZXMgbGlnaHQgdGV4dClcbi5nbC1sYWJlbC10ZXh0LWxpZ2h0IHtcbiAgY29sb3I6IHZhcigtLWdsLWxhYmVsLWRhcmstdGV4dC1jb2xvcik7XG5cbiAgI3skbGFiZWwtY2xvc2UtYnV0dG9ufSB7XG4gICAgY29sb3I6IHZhcigtLWdsLWxhYmVsLWRhcmstYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbGFiZWwtZGFyay1idXR0b24tYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1sYWJlbC1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWxhYmVsLWRhcmstYnV0dG9uLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICAgIH1cbiAgfVxufVxuXG4uZ2wtbGFiZWwtc2NvcGVkIHtcbiAgI3skbGFiZWwtY2xvc2UtYnV0dG9ufSB7XG4gICAgbWFyZ2luLWxlZnQ6ICN7LSRsYWJlbC1wYWRkaW5nLWhvcml6b250YWx9O1xuICAgIGNvbG9yOiB2YXIoLS1nbC1sYWJlbC1zY29wZWQtYnV0dG9uLWljb24tY29sb3ItZGVmYXVsdCk7XG5cbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtbGFiZWwtc2NvcGVkLWJ1dHRvbi1pY29uLWNvbG9yLWhvdmVyKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWxhYmVsLXNjb3BlZC1idXR0b24tYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgfVxuICB9XG5cbiAgLmdsLWxhYmVsLXRleHQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWxhYmVsLWJhY2tncm91bmQtY29sb3IpO1xuXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkO1xuICAgIH1cbiAgfVxuXG4gIC5nbC1sYWJlbC10ZXh0LXNjb3BlZCB7XG4gICAgY29sb3I6IHZhcigtLWdsLWxhYmVsLXNjb3BlZC10ZXh0LWNvbG9yKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gICAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgfVxufVxuXG4uZ2wtbGFiZWwtdG9vbHRpcC10aXRsZSB7XG4gIEBhcHBseSBnbC1ibG9jaztcbiAgQGFwcGx5IGdsLXRleHQtZmVlZGJhY2stc3Ryb25nO1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xufVxuIiwiLmdsLWxpbmsge1xuICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMSk7XG5cbiAgJjpob3ZlciB7XG4gICAgQGFwcGx5IGdsLWN1cnNvci1wb2ludGVyO1xuICB9XG5cbiAgJixcbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgQGFwcGx5IGdsLXRleHQtbGluaztcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzLXZpc2libGUsXG4gICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgIEBhcHBseSBnbC11bmRlcmxpbmU7XG4gICAgQGluY2x1ZGUgZ2wtZm9jdXMoJG91dGxpbmU6IHRydWUsICRvdXRsaW5lLW9mZnNldDogJG91dGxpbmUtd2lkdGgpO1xuICB9XG59XG5cbi5nbC1saW5rLWlubGluZSB7XG4gIEBhcHBseSBnbC11bmRlcmxpbmU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGFwcGx5IGdsLXVuZGVybGluZTtcbiAgfVxufVxuXG4uZ2wtbGluay1leHRlcm5hbDo6YWZ0ZXIge1xuICBjb250ZW50OiBcIiDihpdcIiAvIGF0dHIoZGF0YS1hbHQpO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuLmdsLWxpbmstbWV0YSB7XG4gIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG5cbiAgJjpob3ZlciB7XG4gICAgQGFwcGx5IGdsLXVuZGVybGluZTtcbiAgfVxuXG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJjpmb2N1cy12aXNpYmxlOmhvdmVyIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1pbmhlcml0O1xuICB9XG59XG5cbi5nbC1saW5rLW1lbnRpb24sXG4uZ2wtbGluay1tZW50aW9uLWN1cnJlbnQge1xuICBAYXBwbHkgZ2wtcHgtMTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcblxuICAmOmhvdmVyIHtcbiAgICBAYXBwbHkgZ2wtdW5kZXJsaW5lO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgQGFwcGx5IGdsLW5vLXVuZGVybGluZTtcbiAgfVxufVxuXG4uZ2wtbGluay1tZW50aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbGluay1tZW50aW9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG5cbiAgJixcbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgY29sb3I6IHZhcigtLWdsLWxpbmstbWVudGlvbi10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICB9XG59XG5cbi5nbC1saW5rLW1lbnRpb24tY3VycmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWxpbmstbWVudGlvbi1iYWNrZ3JvdW5kLWNvbG9yLWN1cnJlbnQpO1xuXG4gICYsXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzLXZpc2libGUsXG4gICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1saW5rLW1lbnRpb24tdGV4dC1jb2xvci1jdXJyZW50KTtcbiAgfVxufVxuIiwiJGdsLWxvYWRlci1kb3RzLXNpemUtc206IDAuMzc1cmVtO1xuJGdsLWxvYWRlci1kb3RzLXNpemUtbWQ6IDAuNXJlbTtcbiRnbC1sb2FkZXItZG90cy1zaXplLWxnOiAwLjc1cmVtO1xuJGdsLWxvYWRlci1kb3RzLXNpemUteGw6IDFyZW07XG5cbkBtaXhpbiBnbC10bXAtc3Bpbm5lci1zaXplKCRzaXplLCAkYm9yZGVyLXdpZHRoKSB7XG4gIHdpZHRoOiAkc2l6ZTtcbiAgaGVpZ2h0OiAkc2l6ZTtcbiAgYm9yZGVyLXdpZHRoOiAkYm9yZGVyLXdpZHRoO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlIGNhbGMoKCN7JHNpemV9IC8gMikgKyAjeyRib3JkZXItd2lkdGh9KTtcbn1cblxuQG1peGluIGdsLXRtcC1kb3RzLWNvbG9yKCRjb2xvcikge1xuICAmOjpiZWZvcmUsXG4gID4gc3BhbixcbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG5AbWl4aW4gZ2wtdG1wLWRvdHMtc2l6ZSgkc2l6ZSkge1xuICAmOjpiZWZvcmUsXG4gID4gc3BhbixcbiAgJjo6YWZ0ZXIge1xuICAgIHdpZHRoOiAkc2l6ZTtcbiAgICBoZWlnaHQ6ICRzaXplO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYygjeyRzaXplfSAvIDIpO1xuICB9XG59XG5cbi5nbC1zcGlubmVyLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1sZWFkaW5nLTA7XG4gIEBhcHBseSBnbC10ZXh0LWNlbnRlcjtcbn1cblxuLmdsLXNwaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZnVsbDtcbiAgQGFwcGx5IGdsLWJvcmRlci1zb2xpZDtcbiAgQGFwcGx5IGdsLW14LWF1dG87XG4gIEBhcHBseSBnbC1teS0wO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtYW5pbWF0ZS1zcGluO1xuXG4gIC8vIGRlZmF1bHQgc2l6ZVxuICBAaW5jbHVkZSBnbC10bXAtc3Bpbm5lci1zaXplKCRnbC1zcGFjaW5nLXNjYWxlLTUsICRnbC1ib3JkZXItc2l6ZS0yKTtcblxuICAmLmdsLXNwaW5uZXItbWQge1xuICAgIEBpbmNsdWRlIGdsLXRtcC1zcGlubmVyLXNpemUoJGdsLXNwYWNpbmctc2NhbGUtNiwgJGdsLWJvcmRlci1zaXplLTMpO1xuICB9XG5cbiAgJi5nbC1zcGlubmVyLWxnIHtcbiAgICBAaW5jbHVkZSBnbC10bXAtc3Bpbm5lci1zaXplKCRnbC1zcGFjaW5nLXNjYWxlLTcsICRnbC1ib3JkZXItc2l6ZS0zKTtcbiAgfVxuXG4gICYuZ2wtc3Bpbm5lci14bCB7XG4gICAgQGluY2x1ZGUgZ2wtdG1wLXNwaW5uZXItc2l6ZSgkZ2wtc3BhY2luZy1zY2FsZS0xMSwgJGdsLWJvcmRlci1zaXplLTQpO1xuICB9XG5cbiAgJi5nbC1zcGlubmVyLWRhcmsge1xuICAgIC8vIFRoaXMgaXMgdGhlIGRlZmF1bHQgdmFyaWFudCB3ZSB1c2Ugb24gbm9ybWFsIChsaWdodCkgYmFja2dyb3VuZHMuXG4gICAgLy8gVGhpcyB2YXJpYW50IGNoYW5nZXMgaXRzIGNvbG9ycyBhdXRvbWF0aWNhbGx5IGZvciBkYXJrIG1vZGUuXG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1zcGlubmVyLXRyYWNrLWNvbG9yLWRlZmF1bHQpO1xuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1kZWZhdWx0KTtcbiAgfVxuXG4gICYuZ2wtc3Bpbm5lci1saWdodCB7XG4gICAgLy8gVGhpcyBpcyB0aGUgdmFyaWFudCB3ZSB1c2Ugb24gYmFja2dyb3VuZHMgdGhhdCBhcmUgZGFyayBldmVuIGluIGxpZ2h0IG1vZGUuXG4gICAgLy8gVGhpcyB2YXJpYW50IGRvZXNuJ3QgY2hhbmdlIGl0cyBjb2xvcnMgZm9yIGRhcmsgbW9kZS5cbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLXNwaW5uZXItdHJhY2stY29sb3ItbGlnaHQpO1xuICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLXNwaW5uZXItc2VnbWVudC1jb2xvci1saWdodCk7XG4gIH1cbn1cblxuLmdsLWRvdHMtbG9hZGVyIHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMDtcbiAgQGFwcGx5IGdsLXRleHQtY2VudGVyO1xufVxuXG4uZ2wtZG90cy1sb2FkZXIge1xuICAmOjpiZWZvcmUsXG4gID4gc3BhbixcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICBhbmltYXRpb246IGdsLWRvdHMtbG9hZGVyLWFuaW1hdGlvbiAxNDAwbXMgZWFzZS1pbi1vdXQgaW5maW5pdGU7XG4gICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMC4zcztcbiAgfVxuXG4gID4gc3BhbiB7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAtMC4xNXM7XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBkZWZhdWx0IHNpemVcbiAgQGluY2x1ZGUgZ2wtdG1wLWRvdHMtc2l6ZSgkZ2wtbG9hZGVyLWRvdHMtc2l6ZS1zbSk7XG5cbiAgJi5nbC1kb3RzLWxvYWRlciB7XG4gICAgQGluY2x1ZGUgZ2wtdG1wLWRvdHMtY29sb3IodmFyKC0tZ2wtaWNvbi1jb2xvci1zdWJ0bGUpKTtcbiAgfVxuXG4gICYuZ2wtZG90cy1sb2FkZXItbWQge1xuICAgIEBpbmNsdWRlIGdsLXRtcC1kb3RzLXNpemUoJGdsLWxvYWRlci1kb3RzLXNpemUtbWQpO1xuICB9XG5cbiAgJi5nbC1kb3RzLWxvYWRlci1sZyB7XG4gICAgQGluY2x1ZGUgZ2wtdG1wLWRvdHMtc2l6ZSgkZ2wtbG9hZGVyLWRvdHMtc2l6ZS1sZyk7XG4gIH1cblxuICAmLmdsLWRvdHMtbG9hZGVyLXhsIHtcbiAgICBAaW5jbHVkZSBnbC10bXAtZG90cy1zaXplKCRnbC1sb2FkZXItZG90cy1zaXplLXhsKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGdsLWRvdHMtbG9hZGVyLWFuaW1hdGlvbiB7XG4gIDAlLFxuICA4MCUsXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbiIsIi5nbC1tYXJrZG93biB7XG4gIEBhcHBseSBnbC10ZXh0LWxnO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0yNDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWZvbnQtcmVndWxhcjtcbiAgQGFwcGx5IGdsLWZvbnQtbm9ybWFsO1xuXG4gIDpmaXJzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLW10LTA7XG4gIH1cblxuICBoMSxcbiAgLmdsLWgxIHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy0xO1xuICAgIEBhcHBseSBnbC1tdC03O1xuICB9XG5cbiAgaDIsXG4gIC5nbC1oMiB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctMjtcbiAgICBAYXBwbHkgZ2wtbXQtNjtcbiAgfVxuXG4gIGgzLFxuICAuZ2wtaDMge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTM7XG4gICAgQGFwcGx5IGdsLW10LTY7XG4gIH1cblxuICBoNCxcbiAgLmdsLWg0IHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy00O1xuICAgIEBhcHBseSBnbC1tdC01O1xuICB9XG5cbiAgaDUsXG4gIC5nbC1oNSB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctNTtcbiAgICBAYXBwbHkgZ2wtbXQtNTtcbiAgfVxuXG4gIGg2LFxuICAuZ2wtaDYge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTY7XG4gICAgQGFwcGx5IGdsLW10LTU7XG4gIH1cblxuICBwLFxuICAuZ2wtcGFyYWdyYXBoIHtcbiAgICBAYXBwbHkgZ2wtbXQtMDtcbiAgICBAYXBwbHkgZ2wtbWItMDtcblxuICAgICsgcCxcbiAgICArIC5nbC1wYXJhZ3JhcGgge1xuICAgICAgQGFwcGx5IGdsLW10LTU7XG4gICAgfVxuXG4gICAgJi5zbSB7XG4gICAgICBmb250LXNpemU6ICRnbC1mb250LXNpemUtbWFya2Rvd24tc207XG4gICAgICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbiAgICB9XG4gIH1cblxuICAuc20ge1xuICAgIGZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS1tYXJrZG93bi1zbTtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy0yMDtcbiAgfVxuXG4gIC5tb25vc3BhY2UsXG4gIGNvZGUge1xuICAgIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbiAgfVxuXG4gIGJsb2NrcXVvdGUge1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgICBAYXBwbHkgZ2wtcHktMztcbiAgICBAYXBwbHkgZ2wtcGwtNjtcbiAgICBAYXBwbHkgZ2wtbXktMztcbiAgICBAYXBwbHkgZ2wtbXgtMDtcbiAgICBib3gtc2hhZG93OiBpbnNldCAkZ2wtYm9yZGVyLXNpemUtNCAwIDAgMCB2YXIoLS1nbC1ib3JkZXItY29sb3Itc3Ryb25nKTtcbiAgfVxuXG4gIC5pZGlmZiB7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtZGVmYXVsdDtcbiAgICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gICAgQGFwcGx5IGdsLXB4LTI7XG4gIH1cblxuICAuZGVsZXRpb24ge1xuICAgIEBhcHBseSBnbC1iZy1zdGF0dXMtZGFuZ2VyO1xuICB9XG5cbiAgLmFkZGl0aW9uIHtcbiAgICBAYXBwbHkgZ2wtYmctc3RhdHVzLXN1Y2Nlc3M7XG4gIH1cblxuICBjb2RlIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xuICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xuICAgIEBhcHBseSBnbC1weC0yO1xuICAgIEBhcHBseSBnbC1weS0xO1xuICB9XG5cbiAgcHJlIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xuICAgIEBhcHBseSBnbC1weS0zO1xuICAgIEBhcHBseSBnbC1weC00O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgICBAYXBwbHkgZ2wtbXktNztcbiAgICBAYXBwbHkgZ2wtb3ZlcmZsb3ctYXV0bztcblxuICAgIGNvZGUge1xuICAgICAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gICAgICBAYXBwbHkgZ2wtcm91bmRlZC1ub25lO1xuICAgICAgQGFwcGx5IGdsLXRleHQtc3Ryb25nO1xuICAgICAgQGFwcGx5IGdsLXAtMDtcbiAgICB9XG4gIH1cblxuICAuYXVkaW8tY29udGFpbmVyIHtcbiAgICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gICAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICAgIEBhcHBseSBnbC13LWZ1bGw7XG5cbiAgICBhdWRpbyB7XG4gICAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgQGFwcGx5IGdsLW10LTM7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIEBhcHBseSBnbC1tci0yO1xuICAgICAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIGNvbnRlbnQ6IFwi8J+TjlwiO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRhYmxlIHtcbiAgICBAYXBwbHkgZ2wtbXktNztcblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIEBhcHBseSBnbC1weC0zO1xuICAgICAgQGFwcGx5IGdsLXB5LTQ7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIC0jeyRnbC1ib3JkZXItc2l6ZS0xfSAwIDAgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgQGFwcGx5IGdsLWFsaWduLXRvcDtcbiAgICB9XG5cbiAgICB0aCB7XG4gICAgICBib3gtc2hhZG93OlxuICAgICAgICBpbnNldCAwICN7JGdsLWJvcmRlci1zaXplLTF9IDAgMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCksXG4gICAgICAgIGluc2V0IDAgLSN7JGdsLWJvcmRlci1zaXplLTF9IDAgMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICAgIH1cblxuICAgIHRoZWFkIHtcbiAgICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgfVxuXG4gICAgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gICAgfVxuICB9XG59XG5cbi5nbC1jb21wYWN0LW1hcmtkb3duIHtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG5cbiAgaDEsXG4gIC5nbC1oMSB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctMS1maXhlZDtcbiAgICBAYXBwbHkgZ2wtbXQtNztcbiAgfVxuXG4gIGgyLFxuICAuZ2wtaDIge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTItZml4ZWQ7XG4gICAgQGFwcGx5IGdsLW10LTY7XG4gIH1cblxuICBoMyxcbiAgLmdsLWgzIHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy0zLWZpeGVkO1xuICAgIEBhcHBseSBnbC1tdC02O1xuICB9XG5cbiAgaDQsXG4gIC5nbC1oNCB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctNC1maXhlZDtcbiAgICBAYXBwbHkgZ2wtbXQtNTtcbiAgfVxuXG4gIGg1LFxuICAuZ2wtaDUge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTUtZml4ZWQ7XG4gICAgQGFwcGx5IGdsLW10LTU7XG4gIH1cblxuICBoNixcbiAgLmdsLWg2IHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy02LWZpeGVkO1xuICAgIEBhcHBseSBnbC1tdC01O1xuICB9XG5cbiAgLnNtIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgfVxuXG4gIC5tb25vc3BhY2UsXG4gIGNvZGUge1xuICAgIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBAYXBwbHkgZ2wtcHktMztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHZhcmlhYmxlc1xuJG1vZGFsLWJvZHktaGVpZ2h0OiA4MHB4O1xuJG1vZGFsLWJvZHktbGluZS1oZWlnaHQ6IDEuNTtcblxuLy8gbWl4aW5zXG5AbWl4aW4gZ2wtdG1wLW1vZGFsLWJ0bi1ncm91cC1tbCB7XG4gIG1hcmdpbi1sZWZ0OiAtMXB4O1xufVxuXG5ib2R5Lm1vZGFsLW9wZW4ge1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xufVxuXG4uZ2wtbW9kYWwge1xuICBAYXBwbHkgZ2wtQGNvbnRhaW5lci9nbC1tb2RhbDtcblxuICAubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwJSAtICN7JGdsLXNwYWNpbmctc2NhbGUtMTEgKiAyfSk7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLXNtIHtcbiAgICBtYXgtd2lkdGg6ICRnbC1tb2RhbC1zbWFsbC13aWR0aDtcbiAgfVxuXG4gIC5tb2RhbC1tZCB7XG4gICAgbWF4LXdpZHRoOiAkZ2wtbW9kYWwtbWVkaXVtLXdpZHRoO1xuICB9XG5cbiAgLm1vZGFsLWxnIHtcbiAgICBtYXgtd2lkdGg6ICRnbC1tb2RhbC1sYXJnZS13aWR0aDtcbiAgfVxuXG4gIC5tb2RhbC14bCB7XG4gICAgbWF4LXdpZHRoOiA5OCU7XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICAgIEBhcHBseSBnbC1zaGFkb3ctbGc7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICBAYXBwbHkgZ2wtYmctb3ZlcmxhcDtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1tb2RhbC1ib3JkZXItcmFkaXVzKTtcblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IHZhcigtLWdsLW1vZGFsLWJvcmRlci1yYWRpdXMpO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IHZhcigtLWdsLW1vZGFsLWJvcmRlci1yYWRpdXMpO1xuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogdmFyKC0tZ2wtbW9kYWwtYm9yZGVyLXJhZGl1cyk7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogdmFyKC0tZ2wtbW9kYWwtYm9yZGVyLXJhZGl1cyk7XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWhlYWRlciB7XG4gICAgQGFwcGx5IGdsLXBiLTM7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuXG4gICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgIEBhcHBseSBnbC1oZWFkaW5nLXNjYWxlLTUwMDtcbiAgICB9XG4gIH1cblxuICAubW9kYWwtYm9keSB7XG4gICAgbWluLWhlaWdodDogJG1vZGFsLWJvZHktaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkbW9kYWwtYm9keS1saW5lLWhlaWdodDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGFwcGx5IGdsLXAtNTtcbiAgICBAYXBwbHkgZ2wtcHktMztcbiAgICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICAgIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vcm1hbDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICAgIEBhcHBseSBnbC1sZWFkaW5nLTIwO1xuICB9XG5cbiAgLm1vZGFsLWZvb3RlciB7XG4gICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgQGFwcGx5IGdsLWZsZXgtcm93O1xuICAgIEBhcHBseSBnbC1wLTU7XG4gICAgQGFwcGx5IGdsLXB0LTM7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuXG4gICAgLmJ0biB7XG4gICAgICBAYXBwbHkgZ2wtbS0wO1xuICAgIH1cblxuICAgIC5idG4gKyAuYnRuOm5vdCguZHJvcGRvd24tdG9nZ2xlLXNwbGl0KSxcbiAgICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgICAuYnRuLWdyb3VwICsgLmJ0biB7XG4gICAgICBAYXBwbHkgZ2wtbWwtMztcbiAgICB9XG5cbiAgICAuYnRuLWdyb3VwIC5idG4gKyAuYnRuIHtcbiAgICAgIEBpbmNsdWRlIGdsLXRtcC1tb2RhbC1idG4tZ3JvdXAtbWw7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC1kb3duKHhzKSB7XG4gICAgICBAYXBwbHkgZ2wtZmxleC1jb2w7XG5cbiAgICAgIC5idG4gKyAuYnRuOm5vdCguZHJvcGRvd24tdG9nZ2xlLXNwbGl0KSxcbiAgICAgIC5idG4gKyAuYnRuLWdyb3VwLFxuICAgICAgLmJ0bi1ncm91cCArIC5idG4ge1xuICAgICAgICBAYXBwbHkgZ2wtbWwtMDtcbiAgICAgICAgQGFwcGx5IGdsLW10LTM7XG4gICAgICB9XG5cbiAgICAgIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgICAgICBAaW5jbHVkZSBnbC10bXAtbW9kYWwtYnRuLWdyb3VwLW1sO1xuICAgICAgICBAYXBwbHkgZ2wtbXQtMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB+IC5tb2RhbC1iYWNrZHJvcCB7XG4gICAgQGFwcGx5IGdsLWJnLW92ZXJsYXk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgIEBhcHBseSBnbC1teC1hdXRvO1xuICAgICAgQGFwcGx5IGdsLW15LTA7XG4gICAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICAgIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMCUgLSAxcmVtKTtcbiAgICB9XG4gIH1cbn1cbiIsIi5nbC1uYXYtaXRlbSB7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1nYXAtMztcbiAgQGFwcGx5IGdsLXB5LTE7XG4gIEBhcHBseSBnbC1weC0zO1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xuICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG4gIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbiAgQGFwcGx5IGdsLWFwcGVhcmFuY2Utbm9uZTtcbiAgQGFwcGx5IGZvY3VzLXZpc2libGU6Z2wtZm9jdXMtaW5zZXQ7XG4gIG1pbi1oZWlnaHQ6IDEuNzVyZW07XG4gIG1pbi13aWR0aDogMS43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtbmF2LWl0ZW0tYm9yZGVyLXJhZGl1cyk7XG4gIGZvbnQtc2l6ZTogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9udC1zaXplKTtcbiAgZm9udC13ZWlnaHQ6IHZhcigtLWdsLW5hdi1pdGVtLWZvbnQtd2VpZ2h0KTtcbiAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG5cbiAgJi5nbC1uYXYtaXRlbS1oYXMtc3RhcnQtc2xvdCB7XG4gICAgQGFwcGx5IGdsLXBsLTI7XG4gIH1cblxuICAmLmdsLW5hdi1pdGVtLWhhcy1lbmQtc2xvdCB7XG4gICAgQGFwcGx5IGdsLXByLTI7XG4gIH1cblxuICAmLmdsLW5hdi1pdGVtLWlzLWljb24tb25seSB7XG4gICAgQGFwcGx5IGdsLXB4LTE7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xuICAgIGNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICB9XG5cbiAgJi5zZWxlY3RlZCB7XG4gICAgZm9udC13ZWlnaHQ6IHZhcigtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvbnQtd2VpZ2h0KTtcbiAgICBjb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgY29sb3I6IHZhcigtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICAgIH1cbiAgfVxufVxuXG4uZ2wtbmF2LWl0ZW0uc2VsZWN0ZWQ6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yKTtcbn1cblxuLmdsLW5hdi1pdGVtLWluZGljYXRvci1sZWZ0LnNlbGVjdGVkOjpiZWZvcmUge1xuICBAYXBwbHkgLWdsLWxlZnQtMztcbiAgQGFwcGx5IGdsLXRvcC0yO1xuICBAYXBwbHkgZ2wtYm90dG9tLTI7XG4gIEBhcHBseSBnbC13LTE7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXItZGVmYXVsdDtcbn1cblxuLmdsLW5hdi1pdGVtLWluZGljYXRvci1yaWdodC5zZWxlY3RlZDo6YmVmb3JlIHtcbiAgQGFwcGx5IC1nbC1yaWdodC0zO1xuICBAYXBwbHkgZ2wtdG9wLTI7XG4gIEBhcHBseSBnbC1ib3R0b20tMjtcbiAgQGFwcGx5IGdsLXctMTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbC1kZWZhdWx0O1xufVxuXG4uZ2wtbmF2LWl0ZW0taW5kaWNhdG9yLWJvdHRvbS5zZWxlY3RlZDo6YmVmb3JlIHtcbiAgQGFwcGx5IC1nbC1ib3R0b20tMztcbiAgQGFwcGx5IGdsLWxlZnQtMjtcbiAgQGFwcGx5IGdsLXJpZ2h0LTI7XG4gIEBhcHBseSBnbC1oLTE7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXQtZGVmYXVsdDtcbn1cblxuLmdsLW5hdi1pdGVtLXNsb3Qge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWp1c3RpZnktY2VudGVyO1xuICBAYXBwbHkgZ2wtaC02O1xuICBAYXBwbHkgZ2wtdy02O1xuICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG59XG5cbi5nbC1uYXYtaXRlbS1sYWJlbCB7XG4gIEBhcHBseSBnbC1ncm93O1xufVxuXG4uZ2wtbmF2LWl0ZW0tY2hldnJvbiB7XG4gIEBhcHBseSBnbC1tLWF1dG87XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cbiIsIi8qXG4gKiBCdXR0b24tc3BlY2lmaWMgdXRpbGl0aWVzXG4gKi9cbkBtaXhpbiBnbC1idXR0b24tdGhlbWUoXG4gICRjb2xvcjogbnVsbCxcbiAgJGJhY2tncm91bmQtY29sb3I6IG51bGwsXG4gICRib3JkZXItY29sb3I6IG51bGwsXG4gICRob3Zlci1jb2xvcjogbnVsbCxcbiAgJGhvdmVyLWJhY2tncm91bmQtY29sb3I6IG51bGwsXG4gICRob3Zlci1ib3JkZXItY29sb3I6IG51bGwsXG4gICRmb2N1cy1jb2xvcjogbnVsbCxcbiAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IG51bGwsXG4gICRmb2N1cy1ib3JkZXItY29sb3I6IG51bGwsXG4gICRhY3RpdmUtY29sb3I6IG51bGwsXG4gICRhY3RpdmUtYmFja2dyb3VuZC1jb2xvcjogbnVsbCxcbiAgJGFjdGl2ZS1ib3JkZXItY29sb3I6IG51bGxcbikge1xuICBjb2xvcjogJGNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWMsXG4gICAgICBib3JkZXItY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRob3Zlci1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXItYmFja2dyb3VuZC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRob3Zlci1ib3JkZXItY29sb3I7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiAkZm9jdXMtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGZvY3VzLWJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBjb2xvcjogJGFjdGl2ZS1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWN0aXZlLWJhY2tncm91bmQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYWN0aXZlLWJvcmRlci1jb2xvcjtcblxuICAgIDpmb2N1cy12aXNpYmxlLFxuICAgICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgIH1cbiAgfVxufVxuXG4vLyBsb3cgc3BlY2lmaWNpdHkgc28gdGhhdCBkaXNwbGF5IGNhbiBiZSBvdmVycmlkZGVuIHRvIGhpZGUgYnV0dG9uc1xuLmdsLWJ1dHRvbiB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbn1cblxuLmdsLWJ1dHRvbjpub3QoLmJ0bi1saW5rKSB7XG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gIH1cbn1cblxuLmdsLWJ1dHRvbi5nbC1idXR0b24ge1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1idXR0b24tYm9yZGVyLXJhZGl1cyk7XG4gIEBhcHBseSBnbC1weC00O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgQGFwcGx5IGdsLWZpbGwtY3VycmVudDtcbiAgQGFwcGx5IGdsLWp1c3RpZnktY2VudGVyO1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuXG4gIEBhcHBseSBnbC1weS0wO1xuICBib3JkZXI6ICRnbC1ib3JkZXItc2l6ZS0xIHNvbGlkIHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICBtaW4taGVpZ2h0OiAkZ2wtYnV0dG9uLW1lZGl1bS1zaXplO1xuICBtaW4td2lkdGg6ICRnbC1idXR0b24tbWVkaXVtLXNpemU7XG4gIHRyYW5zaXRpb246XG4gICAgY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJhY2tncm91bmQtY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJvcmRlci1jb2xvciAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWMsXG4gICAgYm94LXNoYWRvdyAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWMsXG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYztcbiAgQGluY2x1ZGUgZ2wtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi10cmFuc2l0aW9uO1xuXG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgQGFwcGx5IGdsLWZvY3VzO1xuICB9XG5cbiAgLmdsLWJ1dHRvbi10ZXh0IHtcbiAgICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICAgIEBhcHBseSBnbC10ZXh0LWVsbGlwc2lzO1xuICAgIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vd3JhcDtcbiAgICAvLyBBZGRlZCB0byBhZGRyZXNzIGEgRkYgYnVnIHdoaWNoIGNhdXNlcyBjdXQgb2ZmIHRleHQ6IGh0dHBzOi8vYnVnemlsbGEubW96aWxsYS5vcmcvc2hvd19idWcuY2dpP2lkPTE0MDY1NTJcbiAgICBwYWRkaW5nLXRvcDogMXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcHg7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICB9XG5cbiAgLmdsLWJ1dHRvbi1pY29uIHtcbiAgICBAYXBwbHkgZ2wtaC01O1xuICAgIEBhcHBseSBnbC13LTU7XG4gICAgQGFwcGx5IGdsLXNocmluay0wO1xuICAgIEBhcHBseSBnbC1tci0yO1xuICAgIHRvcDogYXV0bztcbiAgfVxuXG4gIC5nbC1idXR0b24tY291bnQge1xuICAgIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICAgIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgICBAYXBwbHkgZ2wtZm9udC1ub3JtYWw7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgIEBhcHBseSBnbC1tbC0yO1xuICAgIEBhcHBseSBnbC1weC0yO1xuICAgIEBhcHBseSBnbC1weS0wO1xuICAgIEBhcHBseSBnbC1zaHJpbmstMDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLTE7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1zb2xpZDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXRyYW5zcGFyZW50O1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWZ1bGw7XG4gICAgQGFwcGx5IGdsLW1pbi13LTM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvdW50LWJhY2tncm91bmQtY29sb3IpO1xuICB9XG5cbiAgZ2wtZW1vamkge1xuICAgIEBhcHBseSBnbC1tci0yO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAYXBwbHkgZ2wtdGV4dC1sZztcbiAgfVxuXG4gICYuYnRuLWRlZmF1bHQsXG4gICYuYnRuLWRlZmF1bHQtc2Vjb25kYXJ5IHtcbiAgICBAaW5jbHVkZSBnbC1idXR0b24tdGhlbWUoXG4gICAgICAkY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgICAgICRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCksXG4gICAgICAkYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KSxcbiAgICAgICRob3Zlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAgICRob3Zlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpLFxuICAgICAgJGhvdmVyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXIpLFxuICAgICAgJGZvY3VzLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyksXG4gICAgICAkZm9jdXMtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1cyksXG4gICAgICAkYWN0aXZlLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKSxcbiAgICAgICRhY3RpdmUtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSksXG4gICAgICAkYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItYWN0aXZlKVxuICAgICk7XG5cbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogJGdsLWJvcmRlci1zaXplLTIgIWltcG9ydGFudDtcbiAgICAgIH1cblxuICAgICAgJjo6YmVmb3JlLFxuICAgICAgKyAuZ2wtYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgfVxuXG4gICAgICBib3JkZXItd2lkdGg6ICRnbC1ib3JkZXItc2l6ZS0xO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTEgdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyKTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTEgdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1ob3Zlcik7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXI6OmJlZm9yZSxcbiAgICAgICY6aG92ZXIgKyAuZ2wtYnV0dG9uOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tc2VsZWN0ZWQtYm9yZGVyLWNvbG9yLWhvdmVyKTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItZm9jdXMpO1xuICAgICAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1cyk7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlLFxuICAgICAgJjpmb2N1cy12aXNpYmxlICsgLmdsLWJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1mb2N1cyk7XG4gICAgICB9XG5cbiAgICAgICY6YWN0aXZlLFxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTEgdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1hY3RpdmUpO1xuICAgICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItYWN0aXZlKTtcbiAgICAgIH1cblxuICAgICAgJjphY3RpdmU6OmJlZm9yZSxcbiAgICAgICYuYWN0aXZlOjpiZWZvcmUsXG4gICAgICAmOmFjdGl2ZSArIC5nbC1idXR0b246OmJlZm9yZSxcbiAgICAgICYuYWN0aXZlICsgLmdsLWJ1dHRvbjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLXNlbGVjdGVkLWJvcmRlci1jb2xvci1hY3RpdmUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYnRuLXJlc2V0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgfVxuICB9XG5cbiAgJi5idG4tZGVmYXVsdC10ZXJ0aWFyeSB7XG4gICAgQGluY2x1ZGUgZ2wtYnV0dG9uLXRoZW1lKFxuICAgICAgJGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLFxuICAgICAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCksXG4gICAgICAkYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCksXG4gICAgICAkaG92ZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpLFxuICAgICAgJGhvdmVyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpLFxuICAgICAgJGhvdmVyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWhvdmVyKSxcbiAgICAgICRmb2N1cy1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1cyksXG4gICAgICAkZm9jdXMtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyksXG4gICAgICAkZm9jdXMtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1ib3JkZXItY29sb3ItZm9jdXMpLFxuICAgICAgJGFjdGl2ZS1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpLFxuICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSksXG4gICAgICAkYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtdGVydGlhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSlcbiAgICApO1xuICB9XG5cbiAgJi5idG4tY29uZmlybSB7XG4gICAgQGluY2x1ZGUgZ2wtYnV0dG9uLXRoZW1lKFxuICAgICAgJGNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCksXG4gICAgICAkYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLFxuICAgICAgJGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCksXG4gICAgICAkaG92ZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlciksXG4gICAgICAkaG92ZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAgICRob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyKSxcbiAgICAgICRmb2N1cy1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKSxcbiAgICAgICRmb2N1cy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICAgJGZvY3VzLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXMpLFxuICAgICAgJGFjdGl2ZS1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSksXG4gICAgICAkYWN0aXZlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpLFxuICAgICAgJGFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSlcbiAgICApO1xuICB9XG5cbiAgJi5idG4tY29uZmlybS1zZWNvbmRhcnkge1xuICAgIEBpbmNsdWRlIGdsLWJ1dHRvbi10aGVtZShcbiAgICAgICRjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCksXG4gICAgICAkYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCksXG4gICAgICAkYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpLFxuICAgICAgJGhvdmVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1ob3ZlciksXG4gICAgICAkaG92ZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpLFxuICAgICAgJGhvdmVyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1ob3ZlciksXG4gICAgICAkZm9jdXMtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKSxcbiAgICAgICRmb2N1cy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyksXG4gICAgICAkZm9jdXMtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWZvY3VzKSxcbiAgICAgICRhY3RpdmUtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWFjdGl2ZSksXG4gICAgICAkYWN0aXZlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSksXG4gICAgICAkYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1hY3RpdmUpXG4gICAgKTtcbiAgfVxuXG4gICYuYnRuLWNvbmZpcm0tdGVydGlhcnkge1xuICAgIEBpbmNsdWRlIGdsLWJ1dHRvbi10aGVtZShcbiAgICAgICRjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgICAgICRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLFxuICAgICAgJGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpLFxuICAgICAgJGhvdmVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAgICRob3Zlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tY29uZmlybS10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAgICRob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1ob3ZlciksXG4gICAgICAkZm9jdXMtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICAgJGZvY3VzLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYm9yZGVyLWNvbG9yLWZvY3VzKSxcbiAgICAgICRhY3RpdmUtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKSxcbiAgICAgICRhY3RpdmUtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWNvbmZpcm0tdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpLFxuICAgICAgJGFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1hY3RpdmUpXG4gICAgKTtcbiAgfVxuXG4gICYuYnRuLWRhbmdlciB7XG4gICAgQGluY2x1ZGUgZ2wtYnV0dG9uLXRoZW1lKFxuICAgICAgJGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgICAgICRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgICAgICRib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCksXG4gICAgICAkaG92ZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAgICRob3Zlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3ZlciksXG4gICAgICAkaG92ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWhvdmVyKSxcbiAgICAgICRmb2N1cy1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKSxcbiAgICAgICRmb2N1cy1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItZm9jdXMpLFxuICAgICAgJGFjdGl2ZS1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKSxcbiAgICAgICRhY3RpdmUtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlKSxcbiAgICAgICRhY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSlcbiAgICApO1xuICB9XG5cbiAgJi5idG4tZGFuZ2VyLXNlY29uZGFyeSB7XG4gICAgQGluY2x1ZGUgZ2wtYnV0dG9uLXRoZW1lKFxuICAgICAgJGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLFxuICAgICAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCksXG4gICAgICAkYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCksXG4gICAgICAkaG92ZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpLFxuICAgICAgJGhvdmVyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpLFxuICAgICAgJGhvdmVyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWhvdmVyKSxcbiAgICAgICRmb2N1cy1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1cyksXG4gICAgICAkZm9jdXMtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyksXG4gICAgICAkZm9jdXMtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZm9jdXMpLFxuICAgICAgJGFjdGl2ZS1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpLFxuICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXNlY29uZGFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSksXG4gICAgICAkYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1zZWNvbmRhcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSlcbiAgICApO1xuICB9XG5cbiAgJi5idG4tZGFuZ2VyLXRlcnRpYXJ5IHtcbiAgICBAaW5jbHVkZSBnbC1idXR0b24tdGhlbWUoXG4gICAgICAkY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgICAgICRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCksXG4gICAgICAkYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KSxcbiAgICAgICRob3Zlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAgICRob3Zlci1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItaG92ZXIpLFxuICAgICAgJGhvdmVyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItaG92ZXIpLFxuICAgICAgJGZvY3VzLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICAgJGZvY3VzLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItdGVydGlhcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyksXG4gICAgICAkZm9jdXMtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWJvcmRlci1jb2xvci1mb2N1cyksXG4gICAgICAkYWN0aXZlLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXRlcnRpYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKSxcbiAgICAgICRhY3RpdmUtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWFjdGl2ZSksXG4gICAgICAkYWN0aXZlLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci10ZXJ0aWFyeS1ib3JkZXItY29sb3ItYWN0aXZlKVxuICAgICk7XG4gIH1cblxuICAmLmJ0bi1kZWZhdWx0LXNlY29uZGFyeSxcbiAgJi5idG4tY29uZmlybS1zZWNvbmRhcnksXG4gICYuYnRuLWRhbmdlci1zZWNvbmRhcnksXG4gICYuYnRuLXJlc2V0LXNlY29uZGFyeSxcbiAgJi5idG4tcmVzZXQtdGVydGlhcnkge1xuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICBjb2xvcjogTGlua1RleHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2NhbGUtdW5saW1pdGVkL2RlY2xhcmF0aW9uLXN0cmljdC12YWx1ZVxuICAgICAgYm9yZGVyOiAxcHggc29saWQgTGlua1RleHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2NhbGUtdW5saW1pdGVkL2RlY2xhcmF0aW9uLXN0cmljdC12YWx1ZVxuICAgIH1cbiAgfVxuXG4gICYuYnRuLWRlZmF1bHQtdGVydGlhcnksXG4gICYuYnRuLWNvbmZpcm0tdGVydGlhcnksXG4gICYuYnRuLWRhbmdlci10ZXJ0aWFyeSB7XG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGNvbG9yOiBMaW5rVGV4dDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY2FsZS11bmxpbWl0ZWQvZGVjbGFyYXRpb24tc3RyaWN0LXZhbHVlXG4gICAgICBtaXgtYmxlbmQtbW9kZTogaW5pdGlhbDtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAmLmJ0bi1zbSB7XG4gICAgQGFwcGx5IGdsLXB4LTM7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gICAgbWluLWhlaWdodDogJGdsLWJ1dHRvbi1zbWFsbC1zaXplO1xuICAgIG1pbi13aWR0aDogJGdsLWJ1dHRvbi1zbWFsbC1zaXplO1xuXG4gICAgZ2wtZW1vamkge1xuICAgICAgQGFwcGx5IGdsLXRleHQtc207XG4gICAgfVxuICB9XG5cbiAgJi5idG4taWNvbiB7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgIEBhcHBseSBnbC1wLTA7XG5cbiAgICAuZ2wtYnV0dG9uLWljb24ge1xuICAgICAgQGFwcGx5IGdsLW1yLTA7XG4gICAgfVxuICB9XG5cbiAgJi5idXR0b24tZWxsaXBzaXMtaG9yaXpvbnRhbCxcbiAgJi5idXR0b24tZWxsaXBzaXMtaG9yaXpvbnRhbC5idG4tc20ge1xuICAgIEBhcHBseSBnbC1weC0yO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuXG4gICAgc3ZnIHtcbiAgICAgIEBhcHBseSBnbC1oLTU7XG4gICAgICBAYXBwbHkgZ2wtdy01O1xuICAgICAgQGFwcGx5IGdsLW0tMDtcbiAgICB9XG4gIH1cblxuICAmLmJ0bi1sYWJlbCxcbiAgJi5idG4tbGFiZWw6aG92ZXIsXG4gICYuYnRuLWxhYmVsOmZvY3VzLXZpc2libGUsXG4gICYuYnRuLWxhYmVsOmFjdGl2ZSB7XG4gICAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgICBAYXBwbHkgZ2wtY3Vyc29yLWRlZmF1bHQ7XG4gICAgdXNlci1zZWxlY3Q6IHRleHQ7XG4gIH1cblxuICAmLmJ0bi1saW5rIHtcbiAgICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gICAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICAgIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgIEBhcHBseSBnbC1weC0wO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJ1dHRvbi1saW5rLWJvcmRlci1yYWRpdXMpO1xuICAgIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWRlZmF1bHQpO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgbWluLXdpZHRoOiBhdXRvO1xuICAgIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3M6IGF1dG87XG4gICAgdGV4dC1kZWNvcmF0aW9uLXN0eWxlOiBzb2xpZDtcbiAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWxpbmstdGV4dC1jb2xvci1ob3Zlcik7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItaG92ZXIpO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tbGluay10ZXh0LWNvbG9yLWFjdGl2ZSk7XG4gICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1saW5rLXRleHQtY29sb3ItYWN0aXZlKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgIGNvbG9yOiBMaW5rVGV4dDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY2FsZS11bmxpbWl0ZWQvZGVjbGFyYXRpb24tc3RyaWN0LXZhbHVlXG4gICAgfVxuICB9XG5cbiAgJi5idG4tYmxvY2sge1xuICAgIEBhcHBseSBnbC13LWZ1bGw7XG5cbiAgICAvLyBWZXJ0aWNhbGx5IHNwYWNlIG91dCBtdWx0aXBsZSBibG9jayBidXR0b25zXG4gICAgKyAuYnRuLWJsb2NrIHtcbiAgICAgIEBhcHBseSBnbC1tdC0yO1xuICAgIH1cbiAgfVxuXG4gICYuZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQ6aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMtdmlzaWJsZSxcbiAgJi5kaXNhYmxlZDphY3RpdmUsXG4gICYuZGlzYWJsZWQuc2VsZWN0ZWQsXG4gICZbZGlzYWJsZWRdLFxuICAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJltkaXNhYmxlZF06Zm9jdXMtdmlzaWJsZSxcbiAgJltkaXNhYmxlZF06YWN0aXZlLFxuICAmW2Rpc2FibGVkXS5zZWxlY3RlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGlzYWJsZWQtZm9yZWdyb3VuZC1jb2xvcik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQgIWltcG9ydGFudDtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAvLyBBZnRlciB0aGUgZGlzYWJsZWQgcnVsZSBhYm92ZSBzbyBpdCBhbHNvIHdpbnMgb24gZm9jdXMsIGFjdGl2ZSBhbmQgc2VsZWN0ZWRcbiAgJi5kaXNhYmxlZFtjbGFzcyo9XCItdGVydGlhcnlcIl0sXG4gICZbZGlzYWJsZWRdW2NsYXNzKj1cIi10ZXJ0aWFyeVwiXSxcbiAgJi5idG4tbGluay5kaXNhYmxlZCxcbiAgJi5idG4tbGlua1tkaXNhYmxlZF0ge1xuICAgIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcblxuICAgIC8vIEZvY3VzYWJsZSBkaXNhYmxlZCBidXR0b25zIChgYWNjZXNzaWJsZURpc2FibGVkYCwgbG9hZGluZykga2VlcCB0aGUgZm9jdXMgcmluZ1xuICAgICY6bm90KDpmb2N1cy12aXNpYmxlKSB7XG4gICAgICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG4gICAgfVxuICB9XG59XG5cbi8vIGZpeGVzIHNyLW9ubHkgZWxlbWVudHMgcG9zaXRpb25pbmcgaXNzdWVcbi8vIHdoZW4gcG9zaXRpb25lZCBpbnNpZGUgYSBkcmF3ZXIgdGhlIHZpc3VhbGx5IGhpZGRlbiBlbGVtZW50IG1pZ2h0IHN0aWNrIHRvIHRoZSB2ZXJ5IGJvdHRvbSBvZiB0aGUgZHJhd2VyXG4vLyBleHRlbmRpbmcgdGhlIGRyYXdlciBzaXplIGFuZCBpbnRyb2R1Y2luZyBzY3JvbGxpbmdcbi8vIGNvbnRleHQ6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi1zZXJ2aWNlcy9kZXNpZ24uZ2l0bGFiLmNvbS8tL21lcmdlX3JlcXVlc3RzLzQ4NjZcbi5nbC1idXR0b24tdGV4dDpoYXMoLmdsLXNyLW9ubHkpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuIiwiJGdsLWJ1dHRvbi1ncm91cC1mb2N1cy16LWluZGV4OiAzO1xuJGdsLWJ1dHRvbi1ncm91cC1ib3JkZXItei1pbmRleDogJGdsLWJ1dHRvbi1ncm91cC1mb2N1cy16LWluZGV4ICsgMTtcblxuLmdsLWJ1dHRvbi1ncm91cDpub3QoLmdsLWtleXNldC1wYWdpbmF0aW9uKSxcbi5idG4tZ3JvdXA6bm90KC5nbC1rZXlzZXQtcGFnaW5hdGlvbiksXG4uZ2wtZHJvcGRvd24uYnRuLWdyb3VwIHtcbiAgQGFwcGx5IGdsLXJlbGF0aXZlO1xuXG4gIC8vIFJlc2V0IGJvcmRlcnNcbiAgPiAuZ2wtYnV0dG9uOm5vdCg6Zmlyc3QtY2hpbGQpLFxuICA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuICA+IC5nbC1uZXctZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1sLW5vbmUgZ2wtYm9yZGVyLWwtMDtcbiAgfVxuXG4gID4gLmdsLWJ1dHRvbjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6bGFzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uLFxuICA+IC5nbC1uZXctZHJvcGRvd246bm90KDpsYXN0LWNoaWxkKSA+IC5nbC1idXR0b24ge1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLXItbm9uZSBnbC1ib3JkZXItci0wO1xuICB9XG5cbiAgLy8gUHNldWRvIGVsZW1lbnQgdG8gbW9jayBib3JkZXIgYmV0d2VlbiBidXR0b25zXG4gID4gLmdsLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbiAgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbiB7XG4gICAgQGFwcGx5IGdsLXJlbGF0aXZlIGdsLWlzb2xhdGUgZ2wtbWwtWzFweF07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBhcHBseSBnbC1hYnNvbHV0ZSBnbC1ib3R0b20tWy0xcHhdIGdsLWxlZnQtWy0xcHhdIGdsLXRvcC1bLTFweF0gZ2wtYmxvY2sgZ2wtdy1bMXB4XTtcbiAgICAgIHotaW5kZXg6ICRnbC1idXR0b24tZ3JvdXAtYm9yZGVyLXotaW5kZXg7XG4gICAgfVxuICB9XG5cbiAgLy8gQnJpbmcgZm9jdXMgdG8gZnJvbnRcbiAgPiAuZ2wtYnV0dG9uIHtcbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogJGdsLWJ1dHRvbi1ncm91cC1mb2N1cy16LWluZGV4O1xuICAgIH1cbiAgfVxuXG4gIC8vIEdsQnV0dG9uIGNvbmZpcm0gYW5kIGRhbmdlciB2YXJpYW50cyBoYXZlIHRyYW5zcGFyZW50IGdhcCBiZXR3ZWVuIGl0ZW1zXG4gIC5idG4tY29uZmlybSxcbiAgLmJ0bi1kYW5nZXIge1xuICAgICY6bm90KC5kaXNhYmxlZCk6bm90KFtkaXNhYmxlZF0pOjpiZWZvcmUge1xuICAgICAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIE1vdmUgaWNvbiBieSAxcHggYXMgd2UgYWRkIGEgcHNldWRvIGRpdmlkZXJcbiAgLmdsLWJ1dHRvbi5idG4taWNvbiAuZ2wtYnV0dG9uLXRleHQgLmdsLWJ1dHRvbi1pY29uIHtcbiAgICBAYXBwbHkgZ2wtbXItWy0xcHhdO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGlzYWJsZWQtYm9yZGVyLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAuYnRuLWNvbmZpcm0tc2Vjb25kYXJ5IHtcbiAgICAmOm5vdCguZGlzYWJsZWQpOm5vdChbZGlzYWJsZWRdKTo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1jb25maXJtLXNlY29uZGFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1kYW5nZXItc2Vjb25kYXJ5IHtcbiAgICAmOm5vdCguZGlzYWJsZWQpOm5vdChbZGlzYWJsZWRdKTo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItc2Vjb25kYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgICB9XG4gIH1cbn1cblxuLmdsLWJ1dHRvbi1ncm91cC12ZXJ0aWNhbCxcbi5idG4tZ3JvdXAtdmVydGljYWwge1xuICBAYXBwbHkgZ2wtZmxleC1jb2wgZ2wtaXRlbXMtc3RhcnQgZ2wtanVzdGlmeS1jZW50ZXI7XG5cbiAgPiAuZ2wtYnV0dG9uLFxuICA+IC5idG4tZ3JvdXAge1xuICAgIEBhcHBseSBnbC1yZWxhdGl2ZSBnbC13LWZ1bGw7XG4gIH1cblxuICAvLyBSZXNldCBib3JkZXJzXG4gID4gLmdsLWJ1dHRvbjpub3QoOmZpcnN0LWNoaWxkKSxcbiAgPiAuYnRuLWdyb3VwOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbiAgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6Zmlyc3QtY2hpbGQpID4gLmdsLWJ1dHRvbiB7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtdC1ub25lIGdsLWJvcmRlci10LTA7XG4gIH1cblxuICA+IC5nbC1idXR0b246bm90KDpsYXN0LWNoaWxkKTpub3QoLmRyb3Bkb3duLXRvZ2dsZSksXG4gID4gLmJ0bi1ncm91cDpub3QoOmxhc3QtY2hpbGQpID4gLmdsLWJ1dHRvbixcbiAgPiAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6bGFzdC1jaGlsZCkgPiAuZ2wtYnV0dG9uIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1iLW5vbmUgZ2wtYm9yZGVyLWItMDtcbiAgfVxuXG4gIC8vIFBzZXVkbyBlbGVtZW50IHRvIG1vY2sgYm9yZGVyIGJldHdlZW4gYnV0dG9uc1xuICA+IC5nbC1idXR0b246bm90KDpmaXJzdC1jaGlsZCksXG4gID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b24sXG4gID4gLmdsLW5ldy1kcm9wZG93bjpub3QoOmZpcnN0LWNoaWxkKSA+IC5nbC1idXR0b24ge1xuICAgIEBhcHBseSBnbC1yZWxhdGl2ZSBnbC1tdC1bMXB4XTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGFwcGx5IGdsLWFic29sdXRlIGdsLWxlZnQtWy0xcHhdIGdsLXJpZ2h0LVstMXB4XSBnbC10b3AtWy0xcHhdIGdsLWJsb2NrIGdsLWgtWzFweF07XG4gICAgICB6LWluZGV4OiAkZ2wtYnV0dG9uLWdyb3VwLWJvcmRlci16LWluZGV4O1xuICAgIH1cbiAgfVxuXG4gIC8vIEdsQnV0dG9uIGNvbmZpcm0gYW5kIGRhbmdlciB2YXJpYW50cyBoYXZlIHRyYW5zcGFyZW50IGdhcCBiZXR3ZWVuIGl0ZW1zXG4gIC5idG4tY29uZmlybSxcbiAgLmJ0bi1kYW5nZXIge1xuICAgICY6bm90KC5kaXNhYmxlZCk6bm90KFtkaXNhYmxlZF0pOjpiZWZvcmUge1xuICAgICAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuIiwiLmdsLXBhZ2luYXRpb24ge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtdGV4dC1ub3dyYXA7XG5cbiAgdWwge1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWFjdGlvbi1ib3JkZXItcmFkaXVzKTtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICBAYXBwbHkgZ2wtbS0wO1xuICAgIEBhcHBseSBnbC1wbC0wO1xuICAgIEBhcHBseSBnbC1saXN0LW5vbmU7XG4gIH1cblxuICBhIHtcbiAgICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgfVxufVxuXG4uZ2wtcGFnaW5hdGlvbi1pdGVtIHtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYWN0aW9uLWJvcmRlci1yYWRpdXMpO1xuICB0cmFuc2l0aW9uOlxuICAgIGNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICBib3JkZXItY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJveC1zaGFkb3cgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWp1c3RpZnktY2VudGVyO1xuICBAYXBwbHkgZ2wtcC0zO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gIEBhcHBseSBnbC1taW4tdy03O1xuICBAYXBwbHkgZ2wtdGV4dC1jZW50ZXI7XG4gIEBhcHBseSBnbC1ib3JkZXItMTtcbiAgQGFwcGx5IGdsLWJvcmRlci1zb2xpZDtcbiAgQGFwcGx5IGdsLWFjdGlvbi1uZXV0cmFsLWNvbG9ycztcbiAgQGluY2x1ZGUgZ2wtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi10cmFuc2l0aW9uO1xuXG4gICY6aG92ZXIge1xuICAgIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUsXG4gICY6YWN0aXZlOmZvY3VzLXZpc2libGUge1xuICAgIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gICAgQGFwcGx5IGdsLWZvY3VzO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gIH1cblxuICAmOm5vdCguZGlzYWJsZWQpLmFjdGl2ZSB7XG4gICAgQGluY2x1ZGUgZ2wtYWN0aW9uLXNlbGVjdGVkLWNvbG9ycztcbiAgfVxufVxuXG4uZ2wtcGFnaW5hdGlvbiAuZGlzYWJsZWQgLmdsLXBhZ2luYXRpb24taXRlbSB7XG4gIEBhcHBseSBnbC1ib3JkZXItdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1kaXNhYmxlZC1mb3JlZ3JvdW5kLWNvbG9yKTtcbn1cbiIsIi8vIFZhcmlhYmxlc1xuJHBhdGgtY2hldnJvbi16LWluZGV4OiAtMTtcbiRwYXRoLWNoZXZyb24tdG9wOiBweC10by1yZW0oNHB4KTtcbiRwYXRoLWNoZXZyb24tcmlnaHQ6IHB4LXRvLXJlbSgtMTJweCk7XG4kcGF0aC1jaGV2cm9uLWRpbWVuc2lvbjogcHgtdG8tcmVtKDI0cHgpO1xuJHBhdGgtY2hldnJvbi1ib3JkZXItcmFkaXVzOiBweC10by1yZW0oMTBweCk7XG4kcGF0aC1jaGV2cm9uLXRpcC1ib3JkZXItcmFkaXVzOiBweC10by1yZW0oMnB4KTtcbiRwYXRoLWJ1dHRvbi1yaWdodC1wYWRkaW5nOiAxLjI1ICogJGdyaWQtc2l6ZTtcbiRwYXRoLWNoZXZyb24tdHJhbnNmb3JtYXRpb246IHJvdGF0ZSg0NWRlZykgc2tldygxNGRlZywgMTRkZWcpO1xuJHBhdGgtY2hldnJvbi1yaWdodC1tYXJnaW46IHB4LXRvLXJlbSgxNHB4KTtcblxuLy8gTWl4aW5zXG5AbWl4aW4gZ2wtcGF0aC1jaGV2cm9uIHtcbiAgQGFwcGx5IGdsLWJnLWluaGVyaXQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAkcGF0aC1jaGV2cm9uLXRvcDtcbiAgcmlnaHQ6ICRwYXRoLWNoZXZyb24tcmlnaHQ7XG4gIHdpZHRoOiAkcGF0aC1jaGV2cm9uLWRpbWVuc2lvbjtcbiAgei1pbmRleDogJHBhdGgtY2hldnJvbi16LWluZGV4O1xuICBoZWlnaHQ6ICRwYXRoLWNoZXZyb24tZGltZW5zaW9uO1xuICB0cmFuc2Zvcm06ICRwYXRoLWNoZXZyb24tdHJhbnNmb3JtYXRpb247XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRwYXRoLWNoZXZyb24tYm9yZGVyLXJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRwYXRoLWNoZXZyb24tYm9yZGVyLXJhZGl1cztcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRwYXRoLWNoZXZyb24tdGlwLWJvcmRlci1yYWRpdXM7XG4gIGNsaXAtcGF0aDogcG9seWdvbigxMDAlIDAsIDAgMCwgMTAwJSAxMDAlKTtcbn1cblxuLmdsLXBhdGgtbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAYXBwbHkgZ2wtZmxleDtcblxuICAuZ2wtcGF0aC1uYXYtbGlzdCB7XG4gICAgQGFwcGx5IGdsLXAtMTtcbiAgICBAYXBwbHkgZ2wtbS0wO1xuICAgIEBhcHBseSBnbC1saXN0LW5vbmU7XG4gICAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICAgIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmdsLXBhdGgtbmF2LWxpc3QtaXRlbSB7XG4gICAgQGFwcGx5IGdsLW1pbi13LWZpdDtcbiAgICBwYWRkaW5nLXRvcDogMXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxcHg7XG5cbiAgICAvLyBGaXggZm9yIGN1c3RvbSBmb2N1c1xuICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFweDtcbiAgICB9XG4gIH1cblxuICAuZ2wtcGF0aC1idXR0b24ge1xuICAgIEBhcHBseSBnbC1wbC01O1xuICAgIEBhcHBseSBnbC1weS0zO1xuICAgIEBhcHBseSBnbC1mbGV4O1xuICAgIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gICAgQGFwcGx5IGdsLXotMDtcbiAgICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICAgIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC10bC1kZWZhdWx0O1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWJsLWRlZmF1bHQ7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAkcGF0aC1jaGV2cm9uLXJpZ2h0LW1hcmdpbjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkcGF0aC1idXR0b24tcmlnaHQtcGFkZGluZztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgZ2wtcGF0aC1jaGV2cm9uO1xuICAgIH1cblxuICAgIC8vIFBzZXVkbyBmb2N1cyBlbGVtZW50XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLWFscGhhLTApO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICByaWdodDogY2FsYygtMC43NXJlbSArIDFweCk7XG4gICAgICBib3gtc2hhZG93OlxuICAgICAgICAwIDAgMCAxcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1pbm5lci1jb2xvciksXG4gICAgICAgIDAuNXB4IC0wLjVweCAwIDIuNXB4IHZhcigtLWdsLWZvY3VzLXJpbmctb3V0ZXItY29sb3IpO1xuICAgICAgY2xpcC1wYXRoOiBwb2x5Z29uKDAlIDAlLCAwJSAtMzAlLCAxNjAlIDAlLCA3NSUgMTMwJSwgMTAwJSAxMDAlKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKSBza2V3KDE0ZGVnLCAxNGRlZykgc2NhbGUoMC45OSk7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tbmV1dHJhbC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtZm9yZWdyb3VuZC1jb2xvci1mb2N1cyk7XG4gICAgfVxuXG4gICAgJjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpO1xuICAgICAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgICAvLyBDdXN0b20gZm9jdXMgdG8gYWNjb3VudCBmb3IgcGF0aCBzaGFwZVxuICAgICAgYm94LXNoYWRvdzpcbiAgICAgICAgNXB4IC0zcHggMCAtMnB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLFxuICAgICAgICA1cHggM3B4IDAgLTJweCB2YXIoLS1nbC1mb2N1cy1yaW5nLWlubmVyLWNvbG9yKSxcbiAgICAgICAgMCAwIDAgMXB4IHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpLFxuICAgICAgICAwIDAgMCAzcHggdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcik7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDFweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxcHg7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZ2wtcGF0aC1hY3RpdmUtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tc2VsZWN0ZWQtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIEBhcHBseSBnbC1jdXJzb3Itbm90LWFsbG93ZWQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKTtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3IpO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nbC1wYXRoLWZhZGUge1xuICAgIEBhcHBseSBnbC13LTg7XG4gICAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgICBAYXBwbHkgZ2wtei0yO1xuICAgIGJvdHRvbTogMDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgJi1sZWZ0IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBAaW5jbHVkZSBnbC1iZy1ncmFkaWVudC1ibHVyKGxlZnQsIHZhcigtLXBhdGgtYmctY29sb3IpKTtcbiAgICB9XG5cbiAgICAmLXJpZ2h0IHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgQGFwcGx5IGdsLXRleHQtcmlnaHQ7XG4gICAgICBAaW5jbHVkZSBnbC1iZy1ncmFkaWVudC1ibHVyKHJpZ2h0LCB2YXIoLS1wYXRoLWJnLWNvbG9yKSk7XG4gICAgfVxuICB9XG5cbiAgLmdsLWNsZWFyLWljb24tYnV0dG9uIHtcbiAgICBAYXBwbHkgZ2wtcC0wO1xuICAgIEBhcHBseSBnbC1oLWZ1bGw7XG4gICAgY29sb3I6IHZhcigtLWdsLWljb24tY29sb3Itc3VidGxlKTtcblxuICAgIC5nbC1pY29uIHtcbiAgICAgIEBhcHBseSBnbC1hbGlnbi1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyB2YXJpYWJsZXNcbi8vIFBvcG92ZXIgbWF4IHdpZHRoIDI4MHB4XG4kZ2wtcG9wb3Zlci1tYXgtd2lkdGg6ICRncmlkLXNpemUgKiAzNTtcblxuLmdsLXBvcG92ZXIge1xuICBtYXgtd2lkdGg6ICRnbC1wb3BvdmVyLW1heC13aWR0aDtcbiAgQGFwcGx5IGdsLWJnLW92ZXJsYXA7XG4gIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgQGFwcGx5IGdsLWRyb3Atc2hhZG93LW1kO1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtZmVlZGJhY2s7XG5cbiAgLnBvcG92ZXItYm9keSB7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgfVxuXG4gICYuYnMtcG9wb3Zlci10b3Age1xuICAgIC8qIFdoZW4gcG9wb3ZlciBwb3NpdGlvbiBpcyB0b3AsIHRoZSBhcnJvdyBpcyB0cmFuc2xhdGVkIDEgcGl4ZWxcbiAgICAqICBkdWUgdG8gdGhlIGJveC1zaGFkb3cgaW5jbHVkZSBpbiBvdXIgY3VzdG9tIHN0eWxlcy5cbiAgICAqL1xuICAgID4gLmFycm93OjpiZWZvcmUge1xuICAgICAgYm90dG9tOiAxcHg7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApO1xuICAgIH1cblxuICAgID4gLmFycm93OjphZnRlciB7XG4gICAgICBib3R0b206IDJweDtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcCk7XG4gICAgfVxuICB9XG5cbiAgJi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gICAgPiAuYXJyb3c6OmJlZm9yZSB7XG4gICAgICB0b3A6IDFweDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcCk7XG4gICAgfVxuXG4gICAgPiAuYXJyb3c6OmFmdGVyIHtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTtcbiAgICB9XG5cbiAgICA+IC5wb3BvdmVyLWhlYWRlcjo6YmVmb3JlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1vdmVybGFwKTtcbiAgICB9XG4gIH1cblxuICAmLmJzLXBvcG92ZXItcmlnaHQge1xuICAgID4gLmFycm93OjpiZWZvcmUge1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApO1xuICAgIH1cblxuICAgID4gLmFycm93OjphZnRlciB7XG4gICAgICBsZWZ0OiAycHg7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcCk7XG4gICAgfVxuICB9XG5cbiAgJi5icy1wb3BvdmVyLWxlZnQge1xuICAgID4gLmFycm93OjpiZWZvcmUge1xuICAgICAgcmlnaHQ6IDFweDtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXApO1xuICAgIH1cblxuICAgID4gLmFycm93OjphZnRlciB7XG4gICAgICByaWdodDogMnB4O1xuICAgICAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcCk7XG4gICAgfVxuICB9XG5cbiAgLnBvcG92ZXItaGVhZGVyIHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy1zY2FsZS0yMDA7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iLTA7XG4gICAgQGFwcGx5IGdsLXBiLTA7XG4gIH1cblxuICAmLmhhcy10aXRsZSAucG9wb3Zlci1oZWFkZXIge1xuICAgIEBhcHBseSBnbC1oeXBoZW5zLWF1dG8gZ2wtYnJlYWstYW55d2hlcmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cblxuICAmLmhhcy1jbG9zZS1idXR0b246bm90KC5oYXMtdGl0bGUpIC5wb3BvdmVyLWhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gIH1cblxuICAucG9wb3Zlci1ib2R5IHtcbiAgICBAYXBwbHkgZ2wtcHktMztcbiAgICBAYXBwbHkgZ2wtcHgtNDtcblxuICAgID4gLnBvcG92ZXItaHIge1xuICAgICAgQGFwcGx5IGdsLW15LTU7XG4gICAgICBAYXBwbHkgZ2wtbXgtMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5nbC1wcm9ncmVzcy1iYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1wcm9ncmVzcy1iYXItdHJhY2stY29sb3IpO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1mdWxsO1xufVxuXG4uZ2wtcHJvZ3Jlc3Mge1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWhpZGRlbjtcbiAgQGFwcGx5IGdsLXRleHQtY2VudGVyO1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3dyYXA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjZzICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xufVxuXG4uZ2wtcHJvZ3Jlc3MtYmFyLXByaW1hcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQpO1xufVxuXG4uZ2wtcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLXN1Y2Nlc3MpO1xufVxuXG4uZ2wtcHJvZ3Jlc3MtYmFyLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1wcm9ncmVzcy1iYXItaW5kaWNhdG9yLWNvbG9yLXdhcm5pbmcpO1xufVxuXG4uZ2wtcHJvZ3Jlc3MtYmFyLWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXByb2dyZXNzLWJhci1pbmRpY2F0b3ItY29sb3ItZGFuZ2VyKTtcbn1cbiIsIiRnbC1zZWFyY2gtYm94LWJ5LXR5cGUtc2VhcmNoLWljb24tc2l6ZTogMTZweDtcbiRnbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQtcGFkZGluZzogMy41ICogJGdyaWQtc2l6ZTtcblxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1zZWFyY2gtaWNvbiB7XG4gIEBhcHBseSBnbC13LTU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgdG9wOiBjYWxjKDUwJSAtICN7JGdsLXNlYXJjaC1ib3gtYnktdHlwZS1zZWFyY2gtaWNvbi1zaXplfSAvIDIpO1xufVxuXG4uZ2wtc2VhcmNoLWJveC1ieS10eXBlIHtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1sb2FkaW5nLWljb24ge1xuICBAYXBwbHkgZ2wtZmlsbC1pY29uLXN1YnRsZTtcbiAgQGFwcGx5IGdsLXctNTtcbiAgQGFwcGx5IGdsLW1yLTI7XG59XG5cbi5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtY2xlYXIge1xuICBAYXBwbHkgZ2wtei0zO1xufVxuXG4uZ2wtc2VhcmNoLWJveC1ieS10eXBlLWlucHV0LFxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1pbnB1dC5nbC1mb3JtLWlucHV0IHtcbiAgQGFwcGx5IGdsLWgtNztcbiAgQGFwcGx5IGdsLXByLTc7XG4gIHBhZGRpbmctbGVmdDogJGdsLXNlYXJjaC1ib3gtYnktdHlwZS1pbnB1dC1wYWRkaW5nO1xuXG4gICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgIEBhcHBseSBnbC1oaWRkZW47XG4gIH1cbn1cblxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1pbnB1dC1ib3JkZXJsZXNzLFxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1pbnB1dC1ib3JkZXJsZXNzLmdsLWZvcm0taW5wdXQge1xuICBAYXBwbHkgZ2wtYm9yZGVyLW5vbmU7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1oLWF1dG87XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLXBsLTc7XG4gIEBhcHBseSBnbC1weS00O1xuICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IGNhbGMoI3skZ2wtc3BhY2luZy1zY2FsZS02fSArICN7JGdsLXNwYWNpbmctc2NhbGUtMn0pO1xuXG4gICY6bm90KC5mb3JtLWNvbnRyb2wtcGxhaW50ZXh0KTpmb2N1cy12aXNpYmxlIHtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cygkaW5zZXQ6IHRydWUpO1xuICB9XG5cbiAgJjo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yKTtcbiAgfVxuXG4gICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgIEBhcHBseSBnbC1oaWRkZW47XG4gIH1cbn1cblxuLmdsLXNlYXJjaC1ib3gtYnktdHlwZS1yaWdodC1pY29ucyB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtbGVhZGluZy0wO1xuICByaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xufVxuIiwiLmdsLXNlYXJjaC1ib3gtYnktY2xpY2sge1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuXG4gIC5nbC1zZWFyY2gtYm94LWJ5LWNsaWNrLWhpc3RvcnkgPiAuZ2wtYnV0dG9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTQgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS0zICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIH1cblxuICAuZ2wtc2VhcmNoLWJveC1ieS1jbGljay1oaXN0b3J5ID4gLmdsLWJ1dHRvbixcbiAgLmdsLXNlYXJjaC1ib3gtYnktY2xpY2stc2VhcmNoLWJ1dHRvbi5nbC1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpICFpbXBvcnRhbnQ7XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRpc2FibGVkKSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5nbC1zZWFyY2gtYm94LWJ5LWNsaWNrLWlucHV0IHtcbiAgICAmOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICAgIEBhcHBseSBnbC1oaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLmdsLXNlYXJjaC1ib3gtYnktY2xpY2stY2xlYXItYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICAgIHJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICAgIEBhcHBseSBnbC1tci0yO1xuICAgIEBhcHBseSBnbC16LTM7XG4gIH1cbn1cblxuLmdsLXNlYXJjaC1ib3gtYnktY2xpY2std2l0aC1zZWFyY2gtYnV0dG9uIHtcbiAgLmdsLXNlYXJjaC1ib3gtYnktY2xpY2staW5wdXQge1xuICAgIEBhcHBseSBnbC1wci03O1xuICB9XG5cbiAgLmdsLXNlYXJjaC1ib3gtYnktY2xpY2stY2xlYXItYnV0dG9uIHtcbiAgICByaWdodDogJGdsLXNwYWNpbmctc2NhbGUtNztcbiAgfVxufVxuIiwiLmdsLXNrZWxldG9uLWxvYWRlci1kZWZhdWx0LWNvbnRhaW5lciB7XG4gIHdpZHRoOiAyMzVweDtcbn1cblxuLmdsLXNrZWxldG9uLWxvYWRlci1maWxsLWJhY2tncm91bmQtY29sb3Ige1xuICBmaWxsOiB2YXIoLS1nbC1za2VsZXRvbi1sb2FkZXItYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi5nbC1za2VsZXRvbi1sb2FkZXIge1xuICBzdG9wIHtcbiAgICBAYXBwbHkgZ2wtb3BhY2l0eS0xMDtcbiAgfVxuXG4gIC5iYWNrZ3JvdW5kLXN0b3Age1xuICAgIHN0b3AtY29sb3I6IHZhcigtLWdsLXNrZWxldG9uLWxvYWRlci1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgfVxuXG4gIC5zaGltbWVyLXN0b3Age1xuICAgIHN0b3AtY29sb3I6IHZhcigtLWdsLXNrZWxldG9uLWxvYWRlci1zaGltbWVyLWNvbG9yKTtcbiAgfVxufVxuIiwiLmdsLXRhYnMtd3JhcHBlciB7XG4gIEBhcHBseSBnbC1ib3JkZXItYiBnbC1yZWxhdGl2ZSBnbC1mbGV4IGdsLWZsZXgtd3JhcDtcbn1cblxuLmdsLXRhYnMtbmF2IHtcbiAgQGFwcGx5IGdsLWdyb3c7XG59XG5cbi5nbC10YWItbmF2LWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBhcHBseSBnbC1weC00O1xuICBAYXBwbHkgZ2wtcHktNTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWp1c3RpZnktY2VudGVyO1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xuICBAYXBwbHkgZ2wtYWN0aW9uLW5ldXRyYWwtY29sb3JzO1xuICB0cmFuc2l0aW9uOlxuICAgIGJveC1zaGFkb3cgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJhY2tncm91bmQtY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJvcmRlci1yYWRpdXMgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tZmFzdCAkZ2wtZWFzaW5nLW91dC1jdWJpYztcblxuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1ib3R0b206ICRnbC1ib3JkZXItc2l6ZS0yIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIHRyYW5zbGF0ZTogMCAkZ2wtYm9yZGVyLXNpemUtMjtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgYm9yZGVyLWJvdHRvbSAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWMsXG4gICAgICB0cmFuc2xhdGUgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICAgIC8vb2Zmc2V0cyB0aGUgYm90dG9tIGJvcmRlciBmcm9tIHRoZSBwYXJlbnQgYm9yZGVyXG4gICAgYm90dG9tOiAtJGdsLWJvcmRlci1zaXplLTE7XG4gICAgbGVmdDogLSRnbC1ib3JkZXItc2l6ZS0xO1xuICAgIHJpZ2h0OiAtJGdsLWJvcmRlci1zaXplLTE7XG4gIH1cblxuICBAbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAgICYsXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMDFtcztcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyOm5vdCguZ2wtdGFiLW5hdi1pdGVtLWFjdGl2ZSk6OmJlZm9yZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLXN0cm9uZyk7XG4gICAgdHJhbnNsYXRlOiAwO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xuICB9XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLWF1dG87XG4gICAgQGFwcGx5IGdsLWN1cnNvci1ub3QtYWxsb3dlZDtcbiAgICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRpc2FibGVkLWZvcmVncm91bmQtY29sb3IpO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBAYXBwbHkgZ2wtc2hhZG93LW5vbmU7XG4gICAgfVxuICB9XG5cbiAgPiAuZ2wtdGFiLWNvdW50ZXItYmFkZ2Uge1xuICAgIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICAgIEBhcHBseSBnbC1tbC0yO1xuICB9XG59XG5cbi5nbC10YWItY29udGVudCB7XG4gIEBhcHBseSBnbC1weS0zO1xuICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5nbC10YWItbmF2LWl0ZW0tYWN0aXZlIHtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgei1pbmRleDogMTtcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cy12aXNpYmxlLFxuICAmOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cygkY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJvcmRlci1jb2xvci1hY3RpdmUpKTtcblxuICAgIC5nbC1zY3JvbGxhYmxlLXRhYnMtbmF2ICYge1xuICAgICAgQGluY2x1ZGUgZ2wtZm9jdXMoJGluc2V0OiB0cnVlKTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMCAwICRnbC1ib3JkZXItc2l6ZS0xICRnbC1ib3JkZXItc2l6ZS0xO1xuICAgICAgICBsZWZ0OiAkZ2wtYm9yZGVyLXNpemUtMztcbiAgICAgICAgcmlnaHQ6ICRnbC1ib3JkZXItc2l6ZS0zO1xuICAgICAgICBib3R0b206ICRnbC1ib3JkZXItc2l6ZS0zO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsLWJvcmRlci1zaXplLTIgJGdsLWJvcmRlci1zaXplLTI7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB2YXIoLS1nbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQpO1xuICAgIHRyYW5zbGF0ZTogMDtcbiAgfVxufVxuXG4uZ2wtYWN0aW9ucy10YWJzLXN0YXJ0IHtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgQGFwcGx5IGdsLWdyb3ctMDtcbiAgQGFwcGx5IGdsLW10LTM7XG4gIEBhcHBseSBAbWQ6Z2wtaGlkZGVuO1xufVxuXG4uZ2wtYWN0aW9ucy10YWJzLWVuZCB7XG4gIEBhcHBseSBnbC1oaWRkZW47XG4gIEBhcHBseSBnbC1ncm93LTA7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWVuZDtcbiAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgQGFwcGx5IGdsLWZsZXgtcm93O1xuICBAYXBwbHkgZ2wtbXQtMDtcbiAgQGFwcGx5IEBtZDpnbC1mbGV4O1xufVxuXG4uZ2wtYWN0aW9ucy10YWJzLXN0YXJ0LFxuLmdsLWFjdGlvbnMtdGFicy1lbmQge1xuICBidXR0b24ge1xuICAgIEBhcHBseSBnbC1tYi0zO1xuICAgIEBhcHBseSBAbWQ6Z2wtbXItMztcbiAgICBAYXBwbHkgQG1kOmdsLW1iLTA7XG4gIH1cblxuICBidXR0b246bGFzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLW0tMDtcbiAgfVxufVxuXG4uZ2wtdGFicy1mYWRlIHtcbiAgQGFwcGx5IGdsLWFic29sdXRlIGdsLWJvdHRvbS0wIGdsLXRvcC0wIGdsLXotMjtcbiAgQGFwcGx5IGdsLXctODtcbiAgQGFwcGx5IGdsLXAtMjtcbiAgQGFwcGx5IGdsLWZsZXg7XG59XG5cbi5nbC10YWJzLWZhZGUtbGVmdCB7XG4gIEBhcHBseSBnbC1sZWZ0LTA7XG4gIEBpbmNsdWRlIGdsLWJnLWdyYWRpZW50LWJsdXIobGVmdCwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSk7XG59XG5cbi5nbC10YWJzLWZhZGUtcmlnaHQge1xuICBAYXBwbHkgZ2wtcmlnaHQtMCBnbC1qdXN0aWZ5LWVuZDtcbiAgQGluY2x1ZGUgZ2wtYmctZ3JhZGllbnQtYmx1cihyaWdodCwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSk7XG59XG5cbi5nbC10YWJzLWZhZGUtaWNvbi1idXR0b24ge1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBAYXBwbHkgZ2wtYWN0aW9uLW5ldXRyYWwtY29sb3JzO1xuICBAYXBwbHkgZ2wtcC0wO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xufVxuXG4uZ2wtc2Nyb2xsYWJsZS10YWJzLW5hdiB7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLWZsZXgtbm93cmFwO1xufVxuIiwiLypcbiAqIFRoZXNlIHN0eWxlcyBhcmUgc3BlY2lmaWMgdG8gdGhlIGdsLXRvYXN0IGNvbXBvbmVudC5cbiAqIERvY3VtZW50YXRpb246IGh0dHBzOi8vZGVzaWduLmdpdGxhYi5jb20vY29tcG9uZW50cy90b2FzdFxuICovXG4uYi10b2FzdGVyIHtcbiAgei1pbmRleDogMTEwMDtcblxuICAmLmItdG9hc3Rlci1ib3R0b20tbGVmdCB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIC5iLXRvYXN0ZXItc2xvdCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGFwcGx5IGdsLXctYXV0bztcbiAgICAgIEBhcHBseSBnbC1mbGV4O1xuICAgICAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICAgICAgQGFwcGx5IGdsLWdhcC00O1xuICAgICAgYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS02O1xuICAgICAgbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtNjtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgdmlldy10cmFuc2l0aW9uLW5hbWU6IGdsLXRvYXN0O1xuXG4gICAgICAvLyBGYWxsYmFjayBmb3IgRmlyZWZveFxuICAgICAgLy8gRml4ZXMgYSBidWcgd2hlcmUgdGhlIHZpZXcgdHJhbnNpdGlvblxuICAgICAgLy8gZG9lc24ndCB3b3JrIHByb3Blcmx5XG4gICAgICBAc3VwcG9ydHMgKC1tb3otYXBwZWFyYW5jZTogbm9uZSkge1xuICAgICAgICB2aWV3LXRyYW5zaXRpb24tbmFtZTogdW5zZXQ7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtZG93bih4cykge1xuICAgICAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuICAgICAgICBAYXBwbHkgZ2wtcHgtMztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmItdG9hc3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtd2lkdGg6ICR0b2FzdC1tYXgtd2lkdGg7XG5cbiAgICAvLyBGYWxsYmFjayBmb3IgRmlyZWZveFxuICAgIC8vIEZpeGVzIGEgYnVnIHdoZXJlIHRoZSB2aWV3IHRyYW5zaXRpb25cbiAgICAvLyBkb2Vzbid0IHdvcmsgcHJvcGVybHlcbiAgICBAc3VwcG9ydHMgKC1tb3otYXBwZWFyYW5jZTogbm9uZSkge1xuICAgICAgdHJhbnNpdGlvbjogYWxsICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYztcbiAgICB9XG4gIH1cblxuICAuZ2wtdG9hc3Qge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtcHktNTtcbiAgICBAYXBwbHkgZ2wtcHgtNjtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgICBAYXBwbHkgZ2wtanVzdGlmeS1iZXR3ZWVuO1xuICAgIEBhcHBseSBnbC1zaGFkb3ctbWQ7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtZmVlZGJhY2s7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3IpO1xuICAgIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1zdHJvbmctdGV4dC1jb2xvcik7XG5cbiAgICAmLmZhZGU6bm90KC5zaG93KSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gIC50b2FzdC1ib2R5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBAYXBwbHkgZ2wtZm9udC0zMDA7XG4gICAgQGFwcGx5IGdsLXByLTM7XG4gICAgb3JkZXI6IDE7XG4gIH1cblxuICAudG9hc3QtaGVhZGVyIHtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICBvcmRlcjogMjtcbiAgfVxuXG4gIC5nbC10b2FzdC1hY3Rpb24ge1xuICAgIEBhcHBseSBnbC1wLTM7XG4gICAgQGFwcGx5IGdsLW0tMDtcbiAgICBAYXBwbHkgZ2wtbWwtNTtcbiAgICBAYXBwbHkgZ2wtbm9ybWFsLWNhc2U7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3dyYXA7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG4gICAgY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy1saW5rLWNvbG9yKTtcbiAgfVxuXG4gIC5nbC10b2FzdC1jbG9zZS1idXR0b24ge1xuICAgIEBhcHBseSBnbC1tbC01O1xuICAgIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuOjp2aWV3LXRyYW5zaXRpb24tZ3JvdXAoZ2wtdG9hc3QpIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW07XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRnbC1lYXNpbmctb3V0LWN1YmljO1xufVxuIiwiQHVzZSBcInNhc3M6bWFwXCI7XG5cbnRhYmxlLmdsLXRhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCk7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG5cbiAgdHIge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIEBhcHBseSBnbC1ib3JkZXItYi0xIGdsLWJnLXRyYW5zcGFyZW50IGdsLXAtNSBnbC1ib3JkZXItYi1zb2xpZDtcbiAgICAgIEBhcHBseSBnbC1ib3JkZXItZGVmYXVsdDtcbiAgICAgIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgICAgIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gICAgICBAYXBwbHkgZ2wtYWxpZ24tdG9wO1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICAgIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cblxuICAmLnRhYmxlLWJvcmRlcmxlc3Mge1xuICAgIHRyIHtcbiAgICAgIHRkIHtcbiAgICAgICAgQGFwcGx5IGdsLWJvcmRlci1iLTA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGhlYWQgdHIgdGgge1xuICAgIEBhcHBseSBnbC1mb250LWJvbGQgZ2wtdGV4dC1oZWFkaW5nO1xuXG4gICAgLmdsLXRhYmxlLXRoLXNvcnQtaWNvbi13cmFwcGVyIHtcbiAgICAgIEBhcHBseSBnbC1tbC0yO1xuICAgIH1cblxuICAgICYuZ2wtdGFibGUtdGgtYWxpZ24tcmlnaHQgPiBkaXYge1xuICAgICAgQGFwcGx5IGdsLWZsZXgtcm93LXJldmVyc2U7XG5cbiAgICAgIC5nbC10YWJsZS10aC1zb3J0LWljb24td3JhcHBlciB7XG4gICAgICAgIEBhcHBseSBnbC1tbC0wIGdsLW1yLTI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgW25hbWU9XCJzb3J0LWljb25cIl0ge1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtdGFibGUtc29ydGluZy1pY29uLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgaGVhZGVyXG4gICYtLXN0aWNreS1oZWFkZXIgdGhlYWQgdHIge1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiAtMXB4O1xuICAgIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCAwIHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgfVxuXG4gIC50YWJsZS1wcmltYXJ5LFxuICAudGFibGUtcHJpbWFyeTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgID4gdGQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICBjYXB0aW9uIHtcbiAgICBAYXBwbHkgZ2wtcHQtMjtcbiAgfVxuXG4gIEBtaXhpbiBnbC10bXAtc3RhY2tlZC1vdmVycmlkZSB7XG4gICAgdGJvZHkgPiB0ciB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIEBhcHBseSBnbC1oLTY7XG4gICAgICAgIEBhcHBseSBnbC13LWZ1bGw7XG4gICAgICAgIEBhcHBseSBnbC1ibG9jaztcbiAgICAgIH1cblxuICAgICAgPiB0ZFtkYXRhLWxhYmVsXSxcbiAgICAgID4gdGhbZGF0YS1sYWJlbF0ge1xuICAgICAgICBAYXBwbHkgZ2wtYm9yZGVyLWwtMSBnbC1ib3JkZXItci0xIGdsLWJvcmRlci1sLXNvbGlkIGdsLWJvcmRlci1yLXNvbGlkO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIEBhcHBseSBnbC1ib3JkZXItdC0xIGdsLWJvcmRlci10LXNvbGlkO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgICAgQGFwcGx5IGdsLWJvcmRlci10LTA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZGl2IHtcbiAgICAgICAgQGFwcGx5IGdsLXRleHQtcmlnaHQ7XG4gICAgICAgIEBhcHBseSBnbC1icmVhay13b3JkcztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmItdGFibGUge1xuICAgICYuYi10YWJsZS1zdGFja2VkIHtcbiAgICAgIEBpbmNsdWRlIGdsLXRtcC1zdGFja2VkLW92ZXJyaWRlKCk7XG4gICAgfVxuXG4gICAgQGVhY2ggJGJyZWFrcG9pbnQgaW4gbWFwLmtleXMoJGdyaWQtYnJlYWtwb2ludHMpIHtcbiAgICAgICRuZXh0OiBicmVha3BvaW50LW5leHQoJGJyZWFrcG9pbnQsICRncmlkLWJyZWFrcG9pbnRzKTtcbiAgICAgIEBpZiAoJG5leHQgIT0gbnVsbCkge1xuICAgICAgICAmLmItdGFibGUtc3RhY2tlZC0jeyRuZXh0fSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oI3skbmV4dH0pIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdsLXRtcC1zdGFja2VkLW92ZXJyaWRlKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi50YWJsZS1ob3ZlciB0Ym9keSB0cjpob3ZlcixcbiAgJi50YWJsZS1ob3ZlciB0ZC50YWJsZS1zZWNvbmRhcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRhYmxlLXJvdy1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIHRoZWFkIHRoOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXG4gICAgW25hbWU9XCJzb3J0LWljb25cIl0ge1xuICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbi50YWJsZS5iLXRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udGFibGUuYi10YWJsZSA+IHRoZWFkID4gdHIgPiBbYXJpYS1zb3J0XTpub3QoLmItdGFibGUtc29ydC1pY29uLWxlZnQpLFxuLnRhYmxlLmItdGFibGUgPiB0Zm9vdCA+IHRyID4gW2FyaWEtc29ydF06bm90KC5iLXRhYmxlLXNvcnQtaWNvbi1sZWZ0KSB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG4iLCIvKipcbiogVG9nZ2xlIGJ1dHRvblxuKlxuKiBAdXNhZ2VcbiogICMjIyBBY3RpdmUgYW5kIEluYWN0aXZlIHRleHQgc2hvdWxkIGJlIHByb3ZpZGVkIGFzIGRhdGEgYXR0cmlidXRlczpcbiogIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwicHJvamVjdC1mZWF0dXJlLXRvZ2dsZVwiIGRhdGEtZW5hYmxlZC10ZXh0PVwiRW5hYmxlZFwiIGRhdGEtZGlzYWJsZWQtdGV4dD1cIkRpc2FibGVkXCI+XG4qICA8aSBjbGFzcz1cImZhIGZhLXNwaW5uZXIgZmEtc3BpbiBsb2FkaW5nLWljb24gaGlkZGVuXCI+PC9pPlxuKiAgPC9idXR0b24+XG5cbiogICMjIyBDaGVja2VkIHNob3VsZCBoYXZlIGBpcy1jaGVja2VkYCBjbGFzc1xuKiAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJwcm9qZWN0LWZlYXR1cmUtdG9nZ2xlIGlzLWNoZWNrZWRcIiBkYXRhLWVuYWJsZWQtdGV4dD1cIkVuYWJsZWRcIiBkYXRhLWRpc2FibGVkLXRleHQ9XCJEaXNhYmxlZFwiPlxuKiAgPGkgY2xhc3M9XCJmYSBmYS1zcGlubmVyIGZhLXNwaW4gbG9hZGluZy1pY29uIGhpZGRlblwiPjwvaT5cbiogIDwvYnV0dG9uPlxuXG4qICAjIyMgRGlzYWJsZWQgc2hvdWxkIGhhdmUgYGlzLWRpc2FibGVkYCBjbGFzc1xuKiAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJwcm9qZWN0LWZlYXR1cmUtdG9nZ2xlIGlzLWRpc2FibGVkXCIgZGF0YS1lbmFibGVkLXRleHQ9XCJFbmFibGVkXCIgZGF0YS1kaXNhYmxlZC10ZXh0PVwiRGlzYWJsZWRcIiBkaXNhYmxlZD1cInRydWVcIj5cbiogIDxpIGNsYXNzPVwiZmEgZmEtc3Bpbm5lciBmYS1zcGluIGxvYWRpbmctaWNvbiBoaWRkZW5cIj48L2k+XG4qICA8L2J1dHRvbj5cbiovXG5cbiR0b2dnbGUtd2lkdGg6IDQuNSAqICRncmlkLXNpemU7XG4kdG9nZ2xlLXRyYW5zbGF0ZS13aWR0aDogMiAqICRncmlkLXNpemU7XG4kdG9nZ2xlLWhlaWdodDogMi41ICogJGdyaWQtc2l6ZTtcblxuLmdsLXRvZ2dsZS13cmFwcGVyIHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICBAYXBwbHkgZ2wtZm9udC1ub3JtYWw7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbn1cblxuLmdsLWRlc2NyaXB0aW9uLWxhYmVsIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuXG4uZ2wtaGVscC1sYWJlbCB7XG4gIEBhcHBseSBnbC1tdC0zO1xuICBAYXBwbHkgZ2wtZm9udC1ub3JtYWw7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbn1cblxuLmdsLXRvZ2dsZS1sYWJlbC1pbmxpbmUge1xuICBAYXBwbHkgZ2wtZmxleC1yb3c7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG5cbiAgLmdsLXRvZ2dsZS1sYWJlbCB7XG4gICAgQGFwcGx5IGdsLXdoaXRlc3BhY2Utbm93cmFwO1xuICAgIEBhcHBseSBnbC1tYi0wO1xuICAgIEBhcHBseSBnbC1tci0zO1xuICB9XG5cbiAgLmdsLWhlbHAtbGFiZWwge1xuICAgIEBhcHBseSBnbC1tdC0wO1xuICAgIEBhcHBseSBnbC1tbC0zO1xuICB9XG59XG5cbi5nbC10b2dnbGUtbGFiZWwge1xuICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG59XG5cbi5nbC10b2dnbGUge1xuICBAYXBwbHkgZ2wtaW5saW5lLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICBAYXBwbHkgZ2wtY3Vyc29yLXBvaW50ZXI7XG4gIGNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1kZWZhdWx0KTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogJHRvZ2dsZS13aWR0aDtcbiAgaGVpZ2h0OiAkdG9nZ2xlLWhlaWdodDtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xXG4gICAgdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1waWxsO1xuICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIHRyYW5zaXRpb246XG4gICAgY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJhY2tncm91bmQtY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJveC1zaGFkb3cgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICBAaW5jbHVkZSBnbC1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLXRyYW5zaXRpb247XG5cbiAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgQ2FudmFzVGV4dCAhaW1wb3J0YW50OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjYWxlLXVubGltaXRlZC9kZWNsYXJhdGlvbi1zdHJpY3QtdmFsdWVcbiAgICBvdXRsaW5lLW9mZnNldDogLTFweDtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgJjo6c2VsZWN0aW9uLFxuICAmOjpiZWZvcmU6OnNlbGVjdGlvbixcbiAgJjo6YWZ0ZXI6OnNlbGVjdGlvbiB7XG4gICAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtaG92ZXIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWhvdmVyKTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMVxuICAgICAgdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWhvdmVyKTtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci11bmNoZWNrZWQtZm9jdXMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItdW5jaGVja2VkLWZvY3VzKTtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cyhcbiAgICAgICRjb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWZvY3VzKSxcbiAgICAgICRpbXBvcnRhbnQ6IHRydWVcbiAgICApO1xuICB9XG5cbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLWljb24tY29sb3ItdW5jaGVja2VkLWFjdGl2ZSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1jb2xvci11bmNoZWNrZWQtYWN0aXZlKTtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cyhcbiAgICAgICRjb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItdW5jaGVja2VkLWFjdGl2ZSksXG4gICAgICAkaW1wb3J0YW50OiB0cnVlXG4gICAgKTtcbiAgfVxuXG4gIC8vIFRoZSB0aHVtYiBncm93cyBvbiBob3ZlciBhbmQgZm9jdXMgc28gdGhlIGludGVyYWN0aW9uIHJlYWRzIG9uIHRoZSB0aHVtYiBhc1xuICAvLyB3ZWxsIGFzIG9uIHRoZSB0cmFjay5cbiAgJjpob3ZlciAudG9nZ2xlLWljb246OmJlZm9yZSxcbiAgJjpmb2N1cy12aXNpYmxlIC50b2dnbGUtaWNvbjo6YmVmb3JlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuODc1KTtcbiAgfVxuXG4gIC50b2dnbGUtbG9hZGluZyB7XG4gICAgQGFwcGx5IGdsLWgtNTtcbiAgfVxuXG4gIC50b2dnbGUtaWNvbiB7XG4gICAgQGFwcGx5IGdsLWFic29sdXRlO1xuICAgIEBhcHBseSBnbC13LTU7XG4gICAgQGFwcGx5IGdsLWgtNTtcbiAgICBAYXBwbHkgZ2wtbGVmdC0xO1xuICAgIEBhcHBseSBnbC10b3AtMTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICAgIEBpbmNsdWRlIGdsLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tdHJhbnNpdGlvbjtcblxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgQGFwcGx5IGdsLWFic29sdXRlO1xuICAgICAgQGFwcGx5IGdsLWluc2V0LTA7XG4gICAgICBAYXBwbHkgZ2wtcm91bmRlZC1mdWxsO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kZWZhdWx0KTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gICAgICB0cmFuc2l0aW9uOlxuICAgICAgICB0cmFuc2Zvcm0gJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYztcbiAgICAgIEBpbmNsdWRlIGdsLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tdHJhbnNpdGlvbjtcblxuICAgICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQ2FudmFzVGV4dDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY2FsZS11bmxpbWl0ZWQvZGVjbGFyYXRpb24tc3RyaWN0LXZhbHVlXG4gICAgICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBzdmcge1xuICAgICAgQGFwcGx5IGdsLWFic29sdXRlO1xuICAgICAgQGFwcGx5IGdsLXctNDtcbiAgICAgIEBhcHBseSBnbC1oLTQ7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgLy8gQ2hlY2svY2xvc2UgaWNvbnMgYXJlIG9ubHkgcmVuZGVyZWQgaW4gV2luZG93cyBoaWdoIGNvbnRyYXN0XG4gICAgICAvLyAoZm9yY2VkLWNvbG9ycykgbW9kZSBzbyB0aGUgdG9nZ2xlIHN0YXRlIHJlbWFpbnMgZGlzdGluZ3Vpc2hhYmxlXG4gICAgICAvLyB3aGVuIGJhY2tncm91bmQgY29sb3JzIGFyZSBvdmVycmlkZGVuIGJ5IHRoZSB1c2VyIGFnZW50LlxuICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgY29sb3I6IENhbnZhczsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY2FsZS11bmxpbWl0ZWQvZGVjbGFyYXRpb24tc3RyaWN0LXZhbHVlXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuaXMtY2hlY2tlZCB7XG4gICAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWRlZmF1bHQpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1kZWZhdWx0KTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMVxuICAgICAgdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1kZWZhdWx0KTtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWhvdmVyKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1ob3Zlcik7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMVxuICAgICAgICB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWhvdmVyKTtcbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1jaGVja2VkLWZvY3VzKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1mb2N1cyk7XG4gICAgICBAaW5jbHVkZSBnbC1mb2N1cyhcbiAgICAgICAgJGNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWZvY3VzKSxcbiAgICAgICAgJGltcG9ydGFudDogdHJ1ZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSB7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1pY29uLWNvbG9yLWNoZWNrZWQtYWN0aXZlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stY29sb3ItY2hlY2tlZC1hY3RpdmUpO1xuICAgICAgQGluY2x1ZGUgZ2wtZm9jdXMoXG4gICAgICAgICRjb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItY2hlY2tlZC1hY3RpdmUpLFxuICAgICAgICAkaW1wb3J0YW50OiB0cnVlXG4gICAgICApO1xuICAgIH1cblxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBDYW52YXNUZXh0ICFpbXBvcnRhbnQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2NhbGUtdW5saW1pdGVkL2RlY2xhcmF0aW9uLXN0cmljdC12YWx1ZVxuXG4gICAgICBzdmcge1xuICAgICAgICBjb2xvcjogQ2FudmFzVGV4dDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY2FsZS11bmxpbWl0ZWQvZGVjbGFyYXRpb24tc3RyaWN0LXZhbHVlXG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvZ2dsZS1pY29uIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkdG9nZ2xlLXRyYW5zbGF0ZS13aWR0aCk7XG4gICAgfVxuXG4gICAgLnRvZ2dsZS1pY29uOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLWNoZWNrZWQtZGVmYXVsdCk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEJvdGggZGlzYWJsZWQgYmxvY2tzIG11c3Qgc3RheSBsYXN0LiBgLmdsLXRvZ2dsZS5pcy1jaGVja2VkYCBhbmRcbiAgLy8gYC5nbC10b2dnbGUuaXMtZGlzYWJsZWRgIGNhcnJ5IGVxdWFsIHNwZWNpZmljaXR5LCBzbyBzb3VyY2Ugb3JkZXIgaXMgd2hhdFxuICAvLyBsZXRzIHRoZSBkaXNhYmxlZCBzdHlsZXMgd2luIG92ZXIgdGhlIGNoZWNrZWQgb25lcy5cbiAgJi5pcy1kaXNhYmxlZCB7XG4gICAgQGFwcGx5IGdsLWN1cnNvci1ub3QtYWxsb3dlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCk7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTFcbiAgICAgIHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCk7XG5cbiAgICAudG9nZ2xlLWljb24ge1xuICAgICAgY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtaWNvbi1jb2xvci1kaXNhYmxlZCk7XG4gICAgfVxuXG4gICAgLnRvZ2dsZS1pY29uOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC1iYWNrZ3JvdW5kLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCk7XG5cbiAgICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEdyYXlUZXh0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjYWxlLXVubGltaXRlZC9kZWNsYXJhdGlvbi1zdHJpY3QtdmFsdWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyIC50b2dnbGUtaWNvbjo6YmVmb3JlLFxuICAgICY6Zm9jdXMtdmlzaWJsZSAudG9nZ2xlLWljb246OmJlZm9yZSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICAgIH1cblxuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAmOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGdsLWZvY3VzKFxuICAgICAgICAkY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLXVuY2hlY2tlZC1kaXNhYmxlZCksXG4gICAgICAgICRpbXBvcnRhbnQ6IHRydWVcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgJi5pcy1jaGVja2VkLmlzLWRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWNoZWNrZWQtZGlzYWJsZWQpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xXG4gICAgICB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWRpc2FibGVkKTtcblxuICAgIC50b2dnbGUtaWNvbjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtYmFja2dyb3VuZC1jb2xvci1jaGVja2VkLWRpc2FibGVkKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuXG4gICAgJjpob3ZlciAudG9nZ2xlLWljb246OmJlZm9yZSxcbiAgICAmOmZvY3VzLXZpc2libGUgLnRvZ2dsZS1pY29uOjpiZWZvcmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgICBAaW5jbHVkZSBnbC1mb2N1cyhcbiAgICAgICAgJGNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWJvcmRlci1jb2xvci1jaGVja2VkLWRpc2FibGVkKSxcbiAgICAgICAgJGltcG9ydGFudDogdHJ1ZVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKGZvcmNlZC1jb2xvcnM6IGFjdGl2ZSkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogR3JheVRleHQgIWltcG9ydGFudDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBzY2FsZS11bmxpbWl0ZWQvZGVjbGFyYXRpb24tc3RyaWN0LXZhbHVlXG4gICAgfVxuICB9XG5cbiAgLy8gQSBsb2FkaW5nIHRvZ2dsZSByZW5kZXJzIGEgc3Bpbm5lciBpbiBwbGFjZSBvZiB0aGUgdGh1bWIsIHNvIHRoZSB0cmFjayBpc1xuICAvLyB0aGUgb25seSB0aGluZyBsZWZ0IHRvIGxvb2sgYXQgYW5kIGl0cyB2YWx1ZSBpcyBzdGlsbCBpbiBmbGlnaHQuIEl0IGdldHMgYVxuICAvLyBmbGF0IGZpbGwgdGhhdCBpZ25vcmVzIHRoZSBjaGVja2VkIHN0YXRlLCB3aGljaCBhbHNvIGtlZXBzIHRoZSBzcGlubmVyXG4gIC8vIGxlZ2libGUgaW4gYm90aCBjb2xvciBtb2Rlcy5cbiAgLy9cbiAgLy8gYC5pcy1sb2FkaW5nYCBpcyBhbHdheXMgYWNjb21wYW5pZWQgYnkgYC5pcy1kaXNhYmxlZGAsIHNvIHRoaXMgYmxvY2sgaGFzIHRvXG4gIC8vIHN0YXkgYWZ0ZXIgYm90aCBkaXNhYmxlZCBibG9ja3M6IHRoZSBjaGVja2VkIHBhaXJzIHRpZSBvbiBzcGVjaWZpY2l0eSBhbmRcbiAgLy8gc291cmNlIG9yZGVyIGlzIHdoYXQgc2V0dGxlcyB0aGVtLlxuICAmLmlzLWxvYWRpbmcsXG4gICYuaXMtY2hlY2tlZC5pcy1sb2FkaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC10b2dnbGUtc3dpdGNoLXRyYWNrLWNvbG9yLWxvYWRpbmcpO1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwICRnbC1ib3JkZXItc2l6ZS0xIHZhcigtLWdsLXRvZ2dsZS1zd2l0Y2gtdHJhY2stYm9yZGVyLWNvbG9yLWxvYWRpbmcpO1xuXG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6Zm9jdXMtdmlzaWJsZTphY3RpdmUge1xuICAgICAgQGluY2x1ZGUgZ2wtZm9jdXMoXG4gICAgICAgICRjb2xvcjogdmFyKC0tZ2wtdG9nZ2xlLXN3aXRjaC10cmFjay1ib3JkZXItY29sb3ItbG9hZGluZyksXG4gICAgICAgICRpbXBvcnRhbnQ6IHRydWVcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iLCIuZ2wtdG9rZW4ge1xuICBjb2xvcjogdmFyKC0tZ2wtdG9rZW4tZm9yZWdyb3VuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXRva2VuLWJhY2tncm91bmQtY29sb3IpO1xuICBAYXBwbHkgZ2wtcGwtMztcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtdG9rZW4tYm9yZGVyLXJhZGl1cyk7XG5cbiAgJi5nbC10b2tlbi12aWV3LW9ubHkge1xuICAgIEBhcHBseSBnbC1weS0yO1xuICAgIEBhcHBseSBnbC1wci0zO1xuICB9XG59XG5cbi5nbC10b2tlbi1zZWFyY2gtdHlwZS12YXJpYW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtdG9rZW4tYmFja2dyb3VuZC1jb2xvcik7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXRyLW5vbmU7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJyLW5vbmU7XG59XG5cbi5nbC10b2tlbi1zZWFyY2gtdmFsdWUtdmFyaWFudCB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXRsLW5vbmU7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJsLW5vbmU7XG59XG5cbi5nbC10b2tlbi1jb250ZW50IHtcbiAgQGFwcGx5IGdsLXRleHQtc207XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC10ZXh0LWluaGVyaXQ7XG5cbiAgPiAuZ2wtYXZhdGFyOmZpcnN0LWNoaWxkLFxuICA+IC5nbC1zcGlubmVyLWNvbnRhaW5lcjpmaXJzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLW1yLTI7XG4gIH1cbn1cblxuLmdsLXRva2VuLWNsb3NlIHtcbiAgQGFwcGx5IGdsLW1sLTI7XG4gIGNvbG9yOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG59XG4iLCIuZ2wtdG9vbHRpcCB7XG4gIEBhcHBseSBnbC10ZXh0LXNtO1xuICBAYXBwbHkgZ2wtcC0yO1xuXG4gIC50b29sdGlwLWlubmVyIHtcbiAgICBAYXBwbHkgZ2wtZHJvcC1zaGFkb3ctbWQ7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgIEBhcHBseSBnbC1mb250LW5vcm1hbDtcbiAgICBAYXBwbHkgZ2wtcHktMztcbiAgICBAYXBwbHkgZ2wtcHgtNDtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1mZWVkYmFjaztcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1mZWVkYmFjay1zdHJvbmctYmFja2dyb3VuZC1jb2xvcik7XG4gICAgY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy10ZXh0LWNvbG9yKTtcbiAgICAtLWdsLXRleHQtY29sb3Itc3VidGxlOiB2YXIoLS1nbC10b29sdGlwLXRleHQtY29sb3Itc3VidGxlKTtcbiAgfVxuXG4gIC5hcnJvdyB7XG4gICAgQGFwcGx5IGdsLWgtMztcbiAgICBAYXBwbHkgZ2wtdy0yO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBhcHBseSBnbC1ib3JkZXItNDtcbiAgICB9XG4gIH1cbn1cblxuLmdsLXRvb2x0aXAuYnMtdG9vbHRpcC10b3AsXG4uZ2wtdG9vbHRpcC5icy10b29sdGlwLWJvdHRvbSB7XG4gIC5hcnJvdyB7XG4gICAgQGFwcGx5IGdsLXctMztcbiAgICBAYXBwbHkgZ2wtaC0yO1xuICB9XG59XG5cbi5nbC10b29sdGlwLmJzLXRvb2x0aXAtdG9wIC5hcnJvdzo6YmVmb3JlIHtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLTA7XG4gIGJvcmRlci10b3AtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cblxuLmdsLXRvb2x0aXAuYnMtdG9vbHRpcC1yaWdodCAuYXJyb3c6OmJlZm9yZSB7XG4gIEBhcHBseSBnbC1ib3JkZXItbC0wO1xuICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cblxuLmdsLXRvb2x0aXAuYnMtdG9vbHRpcC1ib3R0b20gLmFycm93OjpiZWZvcmUge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQtMDtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stc3Ryb25nLWJhY2tncm91bmQtY29sb3IpO1xufVxuXG4uZ2wtdG9vbHRpcC5icy10b29sdGlwLWxlZnQgLmFycm93OjpiZWZvcmUge1xuICBAYXBwbHkgZ2wtYm9yZGVyLXItMDtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXN0cm9uZy1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cbiIsIi5nbC1oZWF0bWFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5nbC1sZWdlbmQtaW5saW5lLXNlcmllcyB7XG4gICAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLW5vbmU7XG4gIH1cbn1cbiIsIi8vIHNob3J0ZXIgaGVpZ2h0IGJ5IGhhbGYgYSBsaW5lLCBzbyB0YWJsZSBib2R5IGlzIGN1dCBvZmYsXG4vLyBzdWdnZXN0aW5nIHRoZXJlJ3MgbW9yZSB0byBzY3JvbGxcbiRsZWdlbmQtYm9keS1oOiAkZ2wtc3BhY2luZy1zY2FsZS0xMyAtICRnbC1zcGFjaW5nLXNjYWxlLTQ7XG5cbi5nbC1sZWdlbmQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vIHNlcmllcyByb3dzIGFyZSBuYXRpdmUgYnV0dG9ucywgc28gcmVzZXQgdGhlIGJyb3dzZXIncyBkZWZhdWx0IGJ1dHRvbiBzdHlsZXNcbi5nbC1sZWdlbmQtaW5saW5lLXNlcmllcyxcbi5nbC1sZWdlbmQtdGFidWxhci1yb3cge1xuICBmb250OiBpbmhlcml0O1xuICBAYXBwbHkgZ2wtYm9yZGVyLTA7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGdsLXAtMDtcbiAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbn1cblxuLmdsLWNoYXJ0LWgtYXV0byB7XG4gIC5nbC1sZWdlbmQtaW5saW5lIHtcbiAgICAvLyBtYXRjaCB0aGUgaGVpZ2h0IG9mIGdsLWxlZ2VuZC10YWJ1bGFyIChoZWFkZXIgKyBib2R5KVxuICAgIG1heC1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC0yNCArICRsZWdlbmQtYm9keS1oO1xuICAgIEBhcHBseSBnbC1vdmVyZmxvdy1hdXRvO1xuICB9XG59XG5cbi5nbC1sZWdlbmQtdGFidWxhci5nbC1sZWdlbmQtYi1mYWRlLFxuLmdsLWNoYXJ0LWgtYXV0byAuZ2wtbGVnZW5kLWlubGluZS5nbC1sZWdlbmQtYi1mYWRlIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudChcbiAgICAgIHRvIGJvdHRvbSxcbiAgICAgICR0cmFuc3BhcmVudC1yZ2JhLFxuICAgICAgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KVxuICAgICk7XG4gICAgYm90dG9tOiAwO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgQGFwcGx5IGdsLWJsb2NrO1xuICAgIEBhcHBseSBnbC1oLTQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIEBhcHBseSBnbC13LWZ1bGw7XG4gIH1cbn1cblxuLmdsLWxlZ2VuZC1pbmxpbmUge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWZsZXgtd3JhcDtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuXG4gIC5nbC1sZWdlbmQtaW5saW5lLXNlcmllcyB7XG4gICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgQGFwcGx5IGdsLXNocmluay0wO1xuICAgIEBhcHBseSBnbC1qdXN0aWZ5LWJldHdlZW47XG4gICAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgICBAYXBwbHkgZ2wtcHItNTtcblxuICAgIEBhcHBseSBnbC1yb3VuZGVkLWRlZmF1bHQ7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbiAgICAgIEBhcHBseSBnbC11bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIEBpbmNsdWRlIGdsLWZvY3VzKCRpbnNldDogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLmdsLWxlZ2VuZC1pbmxpbmUtc2VyaWVzLWxhYmVsIHtcbiAgICAgIEBhcHBseSBnbC1tci0zO1xuICAgIH1cbiAgfVxufVxuXG4uZ2wtbGVnZW5kLXRhYnVsYXIge1xuICAuZ2wtbGVnZW5kLXRhYnVsYXItaGVhZGVyIHtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICBAYXBwbHkgZ2wtanVzdGlmeS1lbmQ7XG4gIH1cblxuICAuZ2wtbGVnZW5kLXRhYnVsYXItaGVhZGVyLWNlbGwsXG4gIC5nbC1sZWdlbmQtdGFidWxhci1kZXRhaWxzLWNlbGwge1xuICAgIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vd3JhcDtcbiAgICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICAgIEBhcHBseSBnbC10ZXh0LWVsbGlwc2lzO1xuICAgIEBhcHBseSBnbC10ZXh0LXJpZ2h0O1xuICAgIEBhcHBseSBnbC13LTEvODtcbiAgfVxuXG4gIC5nbC1sZWdlbmQtdGFidWxhci1oZWFkZXItY2VsbCB7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy0yNDtcbiAgICBAYXBwbHkgZ2wtcHgtMztcbiAgfVxuXG4gIC5nbC1sZWdlbmQtdGFidWxhci1ib2R5IHtcbiAgICBoZWlnaHQ6ICRsZWdlbmQtYm9keS1oO1xuICAgIEBhcHBseSBnbC1vdmVyZmxvdy15LWF1dG87XG4gIH1cblxuICAuZ2wtbGVnZW5kLXRhYnVsYXItcm93IHtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuXG4gICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICAgIH1cblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBAaW5jbHVkZSBnbC1mb2N1cygkaW5zZXQ6IHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIC5nbC1sZWdlbmQtdGFidWxhci10aXRsZS1jZWxsLFxuICAuZ2wtbGVnZW5kLXRhYnVsYXItZGV0YWlscy1jZWxsIHtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy0yNDtcbiAgICBAYXBwbHkgZ2wtcHgtMztcbiAgfVxuXG4gIC5nbC1sZWdlbmQtdGFidWxhci10aXRsZS1jZWxsIHtcbiAgICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICAgIEBhcHBseSBnbC13LTEvMjtcbiAgfVxufVxuIiwiLmdsLXNlcmllcy1sYWJlbC1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWhpZGRlbjtcbiAgQGFwcGx5IGdsLWJyZWFrLXdvcmRzO1xufVxuXG4uZ2wtc2VyaWVzLWxhYmVsLWNvbG9yIHtcbiAgQGFwcGx5IGdsLXNocmluay0wO1xuICBAYXBwbHkgZ2wtbXItMztcblxuICBzdmcge1xuICAgIEBhcHBseSBnbC1ibG9jaztcbiAgfVxufVxuXG4uZ2wtc2VyaWVzLWxhYmVsLXRleHQge1xuICAvLyBJbiBjYXNlIHRoZXJlIGFyZSBubyBzcGFjZXMgaW4gdGhlIHNlcmllcyBsYWJlbCAtXG4gIC8vIGFzIHRoZXJlIGFyZSBxdWl0ZSBhIGZldyBwb3NzaWJsZSBjYXNlcyB3aGVyZVxuICAvLyBQcm9tZXRoZXVzIHF1ZXJpZXMgcmV0dXJuIGxvbmcgbGFiZWxzIHdpdGggbm8gc3BhY2VzLlxuICBAYXBwbHkgZ2wtb3ZlcmZsb3ctaGlkZGVuO1xuICBAYXBwbHkgZ2wtYnJlYWstd29yZHM7XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcblxuLmdsLXNpbmdsZS1zdGF0IHtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMTtcblxuICAmOmhvdmVyW3RhYmluZGV4PVwiMFwiXSB7XG4gICAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1kZWZhdWx0O1xuICB9XG5cbiAgLmdsLXNpbmdsZS1zdGF0LW51bWJlciB7XG4gICAgZm9udC1zaXplOiBtYXAuZ2V0KCRnbC1mb250LXNpemVzLCA3MDApO1xuICB9XG5cbiAgLmdsLXNpbmdsZS1zdGF0LWNvbnRlbnQgLmdsLWJhZGdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMC4xMjVlbTtcbiAgfVxufVxuIiwiLmdsLWNoYXJ0LXRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgLnBvcG92ZXIge1xuICAgIEBhcHBseSBnbC1taW4tdy0wO1xuICAgIEBhcHBseSBnbC13LW1heDtcbiAgICBtYXgtd2lkdGg6ICRjaGFydC10b29sdGlwLW1heC13aWR0aDtcbiAgfVxufVxuIiwiLmdsLWNoYXJ0cy10b29sdGlwLWRlZmF1bHQtZm9ybWF0LXNlcmllcyB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtanVzdGlmeS1iZXR3ZWVuO1xuXG4gICYtbGFiZWwsXG4gICYtdmFsdWUge1xuICAgIEBhcHBseSBnbC10ZXh0LXNtO1xuICB9XG5cbiAgJi1sYWJlbCB7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgIEBhcHBseSBnbC1tci03O1xuICB9XG5cbiAgJi12YWx1ZSB7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgfVxufVxuIiwiLyoqXG4gKiBncmlkc3RhY2sgU0FTUyBzdHlsZXMgMTIuNi4wXG4gKiBDb3B5cmlnaHQgKGMpIDIwMjEtMjAyNSBBbGFpbiBEdW1lc255IC0gc2VlIEdyaWRTdGFjayByb290IGxpY2Vuc2VcbiAqL1xuLmdyaWQtc3RhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5ncmlkLXN0YWNrLXJ0bCB7XG4gIGRpcmVjdGlvbjogbHRyO1xufVxuLmdyaWQtc3RhY2stcnRsID4gLmdyaWQtc3RhY2staXRlbSB7XG4gIGRpcmVjdGlvbjogcnRsO1xufVxuXG4uZ3JpZC1zdGFjay1wbGFjZWhvbGRlciA+IC5wbGFjZWhvbGRlci1jb250ZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEpO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIHotaW5kZXg6IDAgIWltcG9ydGFudDtcbn1cblxuLmdyaWQtc3RhY2sgPiAuZ3JpZC1zdGFjay1pdGVtIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBwYWRkaW5nOiAwO1xuICB0b3A6IDA7XG4gIHdpZHRoOiB2YXIoLS1ncy1jb2x1bW4td2lkdGgpO1xuICBoZWlnaHQ6IHZhcigtLWdzLWNlbGwtaGVpZ2h0KTtcbn1cbi5ncmlkLXN0YWNrID4gLmdyaWQtc3RhY2staXRlbSA+IC5ncmlkLXN0YWNrLWl0ZW0tY29udGVudCB7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xufVxuLmdyaWQtc3RhY2sgPiAuZ3JpZC1zdGFjay1pdGVtLnNpemUtdG8tY29udGVudDpub3QoLnNpemUtdG8tY29udGVudC1tYXgpID4gLmdyaWQtc3RhY2staXRlbS1jb250ZW50IHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4uZ3JpZC1zdGFjazpub3QoLmdyaWQtc3RhY2stcnRsKSA+IC5ncmlkLXN0YWNrLWl0ZW0ge1xuICBsZWZ0OiAwO1xufVxuXG4uZ3JpZC1zdGFjay5ncmlkLXN0YWNrLXJ0bCA+IC5ncmlkLXN0YWNrLWl0ZW0ge1xuICByaWdodDogMDtcbn1cblxuLmdyaWQtc3RhY2sgPiAuZ3JpZC1zdGFjay1pdGVtID4gLmdyaWQtc3RhY2staXRlbS1jb250ZW50LFxuLmdyaWQtc3RhY2sgPiAuZ3JpZC1zdGFjay1wbGFjZWhvbGRlciA+IC5wbGFjZWhvbGRlci1jb250ZW50IHtcbiAgdG9wOiB2YXIoLS1ncy1pdGVtLW1hcmdpbi10b3ApO1xuICByaWdodDogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tcmlnaHQpO1xuICBib3R0b206IHZhcigtLWdzLWl0ZW0tbWFyZ2luLWJvdHRvbSk7XG4gIGxlZnQ6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLWxlZnQpO1xufVxuXG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1oYW5kbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGZvbnQtc2l6ZTogMC4xcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtbXMtdG91Y2gtYWN0aW9uOiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG4uZ3JpZC1zdGFjay1pdGVtLnVpLXJlc2l6YWJsZS1kaXNhYmxlZCA+IC51aS1yZXNpemFibGUtaGFuZGxlLCAuZ3JpZC1zdGFjay1pdGVtLnVpLXJlc2l6YWJsZS1hdXRvaGlkZSA+IC51aS1yZXNpemFibGUtaGFuZGxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLW5lLFxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtbncsXG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1zZSxcbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLXN3IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsPVwibm9uZVwiIHN0cm9rZT1cIiUyMzY2NlwiIHN0cm9rZS1saW5lY2FwPVwicm91bmRcIiBzdHJva2UtbGluZWpvaW49XCJyb3VuZFwiIHN0cm9rZS13aWR0aD1cIjJcIiB2aWV3Qm94PVwiMCAwIDIwIDIwXCI+PHBhdGggZD1cIm0xMCAzIDIgMkg4bDItMnYxNGwtMi0yaDRsLTIgMlwiLz48L3N2Zz4nKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtbmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1zdyB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbn1cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLW53IHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLXNlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbn1cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLW53IHtcbiAgY3Vyc29yOiBudy1yZXNpemU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHRvcDogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tdG9wKTtcbiAgbGVmdDogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tbGVmdCk7XG59XG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1uIHtcbiAgY3Vyc29yOiBuLXJlc2l6ZTtcbiAgaGVpZ2h0OiAxMHB4O1xuICB0b3A6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLXRvcCk7XG4gIGxlZnQ6IDI1cHg7XG4gIHJpZ2h0OiAyNXB4O1xufVxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtbmUge1xuICBjdXJzb3I6IG5lLXJlc2l6ZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgdG9wOiB2YXIoLS1ncy1pdGVtLW1hcmdpbi10b3ApO1xuICByaWdodDogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tcmlnaHQpO1xufVxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtZSB7XG4gIGN1cnNvcjogZS1yZXNpemU7XG4gIHdpZHRoOiAxMHB4O1xuICB0b3A6IDE1cHg7XG4gIGJvdHRvbTogMTVweDtcbiAgcmlnaHQ6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLXJpZ2h0KTtcbn1cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLXNlIHtcbiAgY3Vyc29yOiBzZS1yZXNpemU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJvdHRvbTogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tYm90dG9tKTtcbiAgcmlnaHQ6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLXJpZ2h0KTtcbn1cbi5ncmlkLXN0YWNrLWl0ZW0gPiAudWktcmVzaXphYmxlLXMge1xuICBjdXJzb3I6IHMtcmVzaXplO1xuICBoZWlnaHQ6IDEwcHg7XG4gIGxlZnQ6IDI1cHg7XG4gIGJvdHRvbTogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tYm90dG9tKTtcbiAgcmlnaHQ6IDI1cHg7XG59XG4uZ3JpZC1zdGFjay1pdGVtID4gLnVpLXJlc2l6YWJsZS1zdyB7XG4gIGN1cnNvcjogc3ctcmVzaXplO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAyMHB4O1xuICBib3R0b206IHZhcigtLWdzLWl0ZW0tbWFyZ2luLWJvdHRvbSk7XG4gIGxlZnQ6IHZhcigtLWdzLWl0ZW0tbWFyZ2luLWxlZnQpO1xufVxuLmdyaWQtc3RhY2staXRlbSA+IC51aS1yZXNpemFibGUtdyB7XG4gIGN1cnNvcjogdy1yZXNpemU7XG4gIHdpZHRoOiAxMHB4O1xuICB0b3A6IDE1cHg7XG4gIGJvdHRvbTogMTVweDtcbiAgbGVmdDogdmFyKC0tZ3MtaXRlbS1tYXJnaW4tbGVmdCk7XG59XG4uZ3JpZC1zdGFjay1pdGVtLnVpLWRyYWdnYWJsZS1kcmFnZ2luZyA+IC51aS1yZXNpemFibGUtaGFuZGxlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLmdyaWQtc3RhY2staXRlbS51aS1kcmFnZ2FibGUtZHJhZ2dpbmcge1xuICB3aWxsLWNoYW5nZTogbGVmdCwgcmlnaHQsIHRvcDtcbn1cbi5ncmlkLXN0YWNrLWl0ZW0udWktcmVzaXphYmxlLXJlc2l6aW5nIHtcbiAgd2lsbC1jaGFuZ2U6IHdpZHRoLCBoZWlnaHQ7XG59XG5cbi51aS1kcmFnZ2FibGUtZHJhZ2dpbmcsXG4udWktcmVzaXphYmxlLXJlc2l6aW5nIHtcbiAgei1pbmRleDogMTAwMDA7XG59XG4udWktZHJhZ2dhYmxlLWRyYWdnaW5nID4gLmdyaWQtc3RhY2staXRlbS1jb250ZW50LFxuLnVpLXJlc2l6YWJsZS1yZXNpemluZyA+IC5ncmlkLXN0YWNrLWl0ZW0tY29udGVudCB7XG4gIGJveC1zaGFkb3c6IDFweCA0cHggNnB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgb3BhY2l0eTogMC44O1xufVxuXG4uZ3JpZC1zdGFjay1hbmltYXRlLFxuLmdyaWQtc3RhY2stYW5pbWF0ZSAuZ3JpZC1zdGFjay1pdGVtIHtcbiAgdHJhbnNpdGlvbjogbGVmdCAwLjNzLCByaWdodCAwLjNzLCB0b3AgMC4zcywgaGVpZ2h0IDAuM3MsIHdpZHRoIDAuM3M7XG59XG5cbi5ncmlkLXN0YWNrLWFuaW1hdGUgLmdyaWQtc3RhY2staXRlbS51aS1kcmFnZ2FibGUtZHJhZ2dpbmcsXG4uZ3JpZC1zdGFjay1hbmltYXRlIC5ncmlkLXN0YWNrLWl0ZW0udWktcmVzaXphYmxlLXJlc2l6aW5nLFxuLmdyaWQtc3RhY2stYW5pbWF0ZSAuZ3JpZC1zdGFjay1pdGVtLmdyaWQtc3RhY2stcGxhY2Vob2xkZXIge1xuICB0cmFuc2l0aW9uOiBsZWZ0IDBzLCByaWdodCAwcywgdG9wIDBzLCBoZWlnaHQgMHMsIHdpZHRoIDBzO1xufVxuXG4uZ3JpZC1zdGFjayA+IC5ncmlkLXN0YWNrLWl0ZW1bZ3MteT1cIjBcIl0ge1xuICB0b3A6IDBweDtcbn1cblxuLmdyaWQtc3RhY2s6bm90KC5ncmlkLXN0YWNrLXJ0bCkgPiAuZ3JpZC1zdGFjay1pdGVtW2dzLXg9XCIwXCJdIHtcbiAgbGVmdDogMCU7XG59XG5cbi5ncmlkLXN0YWNrLmdyaWQtc3RhY2stcnRsID4gLmdyaWQtc3RhY2staXRlbVtncy14PVwiMFwiXSB7XG4gIHJpZ2h0OiAwJTtcbn0iLCIuZ2wtdHJ1bmNhdGUtY29tcG9uZW50IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLmdsLXRydW5jYXRlLXN0YXJ0LFxuLmdsLXRydW5jYXRlLWVuZCB7XG4gIGZsZXg6IDAgMSBhdXRvO1xuICBtaW4td2lkdGg6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93LXg6IGNsaXA7XG4gIG92ZXJmbG93LXk6IHZpc2libGU7XG59XG5cbi5nbC10cnVuY2F0ZS1zdGFydCB7XG4gIGRpcmVjdGlvbjogcnRsO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB0ZXh0LW92ZXJmbG93OiBcIlwiO1xufVxuXG4uZ2wtdHJ1bmNhdGUtZW5kIHtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG4iLCIvKipcbiAgTm90ZTogYWx0aG91Z2ggdmVuZG9yLXByZWZpeGVzIGFyZSB1c2VkIGhlcmUsIHRoZXNlIHByb3BlcnRpZXMgYXJlIHN1cHBvcnRlZCBieSBhbGwgYnJvd3NlcnMuXG4gIFNlZSBodHRwczovL2Nhbml1c2UuY29tL2Nzcy1saW5lLWNsYW1wXG4qKi9cbi5nbC10cnVuY2F0ZS10ZXh0IHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHZhbHVlLW5vLXZlbmRvci1wcmVmaXhcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gIC13ZWJraXQtbGluZS1jbGFtcDogdmFyKC0tbW9iaWxlLWxpbmVzKTtcbiAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20pIHtcbiAgICAtd2Via2l0LWxpbmUtY2xhbXA6IHZhcigtLWxpbmVzKTtcbiAgfVxufVxuIiwiLmdsLW5ldy1kcm9wZG93biB7XG4gIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgQGFwcGx5IGdsLWFsaWduLW1pZGRsZTtcblxuICAuZ2wtbmV3LWRyb3Bkb3duLWN1c3RvbS10b2dnbGUge1xuICAgID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICAmOm5vdCg6ZGlzYWJsZWQpIHtcbiAgICAgICAgQGFwcGx5IGdsLWN1cnNvci1wb2ludGVyO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdsLW5ldy1kcm9wZG93bi10b2dnbGUge1xuICAgIC8vIG9wdGljYWxseSBhbGlnbiB0aGUgY2FyZXRcbiAgICAmLmdsLWJ1dHRvbjpub3QoLmdsLW5ldy1kcm9wZG93bi10b2dnbGUtbm8tY2FyZXQsIC5idG4taWNvbikge1xuICAgICAgQGFwcGx5IGdsLXByLTM7XG5cbiAgICAgICYuYnRuLXNtIHtcbiAgICAgICAgQGFwcGx5IGdsLXByLTI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5nbC1uZXctZHJvcGRvd24tdG9nZ2xlLW5vLWNhcmV0IC5nbC1uZXctZHJvcGRvd24tY2hldnJvbiB7XG4gICAgICBAYXBwbHkgZ2wtaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAuZ2wtYnV0dG9uLXRleHQge1xuICAgICAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuXG4gICAgICAmOmhhcyguZ2wtc3Itb25seSkge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmlzLWludmFsaWQge1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1jb250cm9sLWVycm9yO1xuXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgQGFwcGx5IGdsLWJvcmRlci1jb250cm9sLWVycm9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd24tYnV0dG9uLXRleHQge1xuICAgIEBhcHBseSBnbC1tci1hdXRvO1xuICAgIEBhcHBseSBnbC1vdmVyZmxvdy1oaWRkZW47XG4gICAgQGFwcGx5IGdsLXRleHQtZWxsaXBzaXM7XG4gIH1cblxuICAmLmJ0bi1zbSAuZ2wtaWNvbiB7XG4gICAgQGFwcGx5IGdsLW15LTA7XG5cbiAgICAmLmdsLW5ldy1kcm9wZG93bi1jaGV2cm9uIHtcbiAgICAgIEBhcHBseSBnbC1oLTU7XG4gICAgICBAYXBwbHkgZ2wtdy01O1xuICAgIH1cbiAgfVxuXG4gIC5nbC1idXR0b246bm90KC5nbC1uZXctZHJvcGRvd24tY2FyZXQtb25seSkgLmdsLWJ1dHRvbi1pY29uLmdsLW5ldy1kcm9wZG93bi1jaGV2cm9uIHtcbiAgICBAYXBwbHkgZ2wtbWwtMjtcbiAgICBAYXBwbHkgZ2wtbXItMDtcbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd24taWNvbi1vbmx5IHtcbiAgICAvLyBvcHRpY2FsbHkgYWxpZ24gdGhlIGNhcmV0XG4gICAgJi5nbC1idXR0b246bm90KC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlLW5vLWNhcmV0KSB7XG4gICAgICBAYXBwbHkgZ2wtcHItMjtcbiAgICAgIEBhcHBseSBnbC1wbC0zO1xuXG4gICAgICAmLmJ0bi1zbSB7XG4gICAgICAgIEBhcHBseSBnbC1wci0wO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nbC1idXR0b24taWNvbi5nbC1idXR0b24taWNvbiB7XG4gICAgICBAYXBwbHkgZ2wtbXItMDtcblxuICAgICAgJi5nbC1idXR0b24tbG9hZGluZy1pbmRpY2F0b3Ige1xuICAgICAgICBAYXBwbHkgZ2wtbXItMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi1zbSAuZ2wtbmV3LWRyb3Bkb3duLWNoZXZyb24ge1xuICAgICAgQGFwcGx5IGdsLW14LTA7XG4gICAgfVxuICB9XG5cbiAgLmdsLW5ldy1kcm9wZG93bi1jYXJldC1vbmx5IHtcbiAgICAvLyBvcHRpY2FsbHkgY2VudGVyIHRoZSBjYXJldFxuICAgIEBhcHBseSBnbC1wbC0yO1xuXG4gICAgJi5idG4tc20ge1xuICAgICAgQGFwcGx5IGdsLXBsLTA7XG4gICAgfVxuICB9XG59XG5cbi5nbC1uZXctZHJvcGRvd24tY29udGFpbmVyIHtcbiAgLmdsLW5ldy1kcm9wZG93bi1hcnJvdyB7XG4gICAgd2lkdGg6IDhweDtcbiAgICBoZWlnaHQ6IDhweDtcblxuICAgIC8vIGJsZW5kIGluIHdpdGggdGhlIGRyb3Bkb3duIGJhY2tncm91bmRcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1kcm9wZG93bi1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAvLyB0aGVzZSBjcmVhdGUgdGhlIDQ1ZGVnIGN1dG9mZiBhbmdsZSBhdCB0aGUgYmFzZSBvZiB0aGUgY2FyZXRcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcik7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcik7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsIHtcbiAgICBAYXBwbHkgZ2wtaGlkZGVuO1xuICAgIEBhcHBseSBnbC1iZy1kcm9wZG93bjtcbiAgICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1kcm9wZG93bi1ib3JkZXItcmFkaXVzKTtcbiAgICBAYXBwbHkgZ2wtZHJvcC1zaGFkb3ctbWQ7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTAwMDtcbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd24tcGFuZWwtZmx1aWQtd2lkdGgge1xuICAgIG1pbi13aWR0aDogJGdsLW5ldy1kcm9wZG93bi1taW4td2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkZ2wtbmV3LWRyb3Bkb3duLW1heC13aWR0aDtcbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd24taW5uZXIge1xuICAgIEBhcHBseSBnbC1mbGV4O1xuICAgIEBhcHBseSBnbC1mbGV4LWNvbDtcbiAgICBtYXgtaGVpZ2h0OiAkZ2wtbWF4LWRyb3Bkb3duLW1heC1oZWlnaHQ7XG4gIH1cblxuICAuZ2wtbmV3LWRyb3Bkb3duLWNvbnRlbnRzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGFwcGx5IGdsLWdyb3c7XG4gICAgQGFwcGx5IGdsLW92ZXJmbG93LXktYXV0bztcbiAgICBAYXBwbHkgZ2wtcGwtMDtcbiAgICBAYXBwbHkgZ2wtbWItMDtcbiAgICBAYXBwbHkgZ2wtcHktMjtcbiAgICBAYXBwbHkgZ2wtbGlzdC1ub25lO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIEBhcHBseSBnbC1mb2N1cztcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBAYXBwbHkgZ2wtbGlzdC1ub25lO1xuICAgIH1cbiAgfVxuXG4gICRkcm9wZG93bi1jb250ZW50LXBhZGRpbmc6IDAuMjVyZW07XG5cbiAgLy8gU2NyaW0gb3ZlcmxheSByZWxhdGVkIHN0eWxlcyAodGhlIHNoYWRvdyB0aGF0IGFwcGVhcnMgYWJvdmUgYW5kIGJlbG93IHRoZSBjb250ZW50KSBpbmRpY2F0aW5nIHRoYXQgdGhlIGNvbnRlbnQgaXMgc2Nyb2xsYWJsZVxuICAuZ2wtbmV3LWRyb3Bkb3duLWNvbnRlbnRzLXdpdGgtc2NyaW0tb3ZlcmxheSB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd24tY29udGVudHMge1xuICAgIC50b3Atc2NyaW0td3JhcHBlcixcbiAgICAuYm90dG9tLXNjcmltLXdyYXBwZXIge1xuICAgICAgaGVpZ2h0OiAkZHJvcGRvd24tY29udGVudC1wYWRkaW5nO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIGxlZnQ6IDFweDtcbiAgICAgIHJpZ2h0OiAxcHg7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcztcbiAgICB9XG5cbiAgICAudG9wLXNjcmltLXdyYXBwZXIge1xuICAgICAgdG9wOiAwO1xuXG4gICAgICAudG9wLXNjcmltIHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgJi50b3Atc2NyaW0tbGlnaHQge1xuICAgICAgICAgIGhlaWdodDogMi4yNXJlbTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjM3NXJlbSAwLjM3NXJlbSAwIDA7XG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgMTgwZGVnLFxuICAgICAgICAgICAgdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcikgMCUsXG4gICAgICAgICAgICB2YXIoLS1nbC1jb2xvci1hbHBoYS0wKVxuICAgICAgICAgICk7XG4gICAgICAgIH1cblxuICAgICAgICAmLnRvcC1zY3JpbS1kYXJrIHtcbiAgICAgICAgICBoZWlnaHQ6IDAuMjVyZW07XG4gICAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgMTgwZGVnLFxuICAgICAgICAgICAgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpIDAlLFxuICAgICAgICAgICAgdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCkgMTAwJVxuICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYm90dG9tLXNjcmltLXdyYXBwZXIge1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAkZHJvcGRvd24tY29udGVudC1wYWRkaW5nO1xuXG4gICAgICAuYm90dG9tLXNjcmltIHtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogY2FsYygtMi4yNXJlbSArICN7JGRyb3Bkb3duLWNvbnRlbnQtcGFkZGluZ30pO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwIDAgMC4zNzVyZW0gMC4zNzVyZW07XG4gICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAxODBkZWcsXG4gICAgICAgICAgdmFyKC0tZ2wtY29sb3ItYWxwaGEtMCkgMCUsXG4gICAgICAgICAgdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcilcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnRvcC1zY3JpbS12aXNpYmxlIC50b3Atc2NyaW0td3JhcHBlcixcbiAgICAmLmJvdHRvbS1zY3JpbS12aXNpYmxlIC5ib3R0b20tc2NyaW0td3JhcHBlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgICYuYm90dG9tLXNjcmltLXZpc2libGUgLmJvdHRvbS1zY3JpbSB7XG4gICAgICBoZWlnaHQ6IDIuMjVyZW07XG4gICAgfVxuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAuZ2wtbmV3LWRyb3Bkb3duOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIEBhcHBseSBnbC1yb3VuZGVkLXRyLW5vbmU7XG4gICAgICBAYXBwbHkgZ2wtcm91bmRlZC1ici1ub25lO1xuICAgIH1cbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd246bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIEBhcHBseSBnbC1yb3VuZGVkLXRsLW5vbmU7XG4gICAgICBAYXBwbHkgZ2wtcm91bmRlZC1ibC1ub25lO1xuICAgIH1cbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd246aG92ZXIge1xuICAgIC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgIEBhcHBseSBnbC16LTE7XG4gICAgfVxuICB9XG5cbiAgLmdsLW5ldy1kcm9wZG93biB7XG4gICAgLmdsLW5ldy1kcm9wZG93bi10b2dnbGU6Zm9jdXMtdmlzaWJsZSxcbiAgICAuZ2wtbmV3LWRyb3Bkb3duLXRvZ2dsZTphY3RpdmUge1xuICAgICAgQGFwcGx5IGdsLXotMTtcbiAgICB9XG4gIH1cbn1cbiIsIi5nbC1uZXctZHJvcGRvd24taXRlbSB7XG4gIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbiAgQGFwcGx5IGdsLXB4LTI7XG4gIEBhcHBseSBnbC1teS0xO1xuXG4gIC8qIHdoZW4gdGhlcmUgaXMgYSBzY3JpbSBgbGlgIGl0ZW1zIGluc2lkZSB0aGUgbGlzdCwgdGhlIGZpcnN0IGFuZCBsYXN0IHJlYWwgaXRlbXNcbiAgZG8gbm90IG1hdGNoIHRoZSBzZWxlY3RvciBgOmZpcnN0LWNoaWxkYCBhbmQgYDpsYXN0LWNoaWxkYCxcbiAgdGhhdCdzIHdoeSB3ZSBoYXZlIHRvIHRhcmdldCB0aGVtIHdpdGggYSBkaWZmZXJlbnQgc2VsZWN0b3IgKi9cbiAgJjpmaXJzdC1jaGlsZCxcbiAgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50cy13aXRoLXNjcmltLW92ZXJsYXkgPiAmOm50aC1jaGlsZCgzKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBAYXBwbHkgZ2wtbXQtMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCxcbiAgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50cy13aXRoLXNjcmltLW92ZXJsYXkgPiAmOm50aC1sYXN0LWNoaWxkKDMpOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBAYXBwbHkgZ2wtbWItMDtcbiAgfVxuXG4gICY6bm90KC5kaXNhYmxlZCk6aG92ZXIge1xuICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1ob3Zlcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWhvdmVyKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGUge1xuICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1mb2N1cyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWZvY3VzKTtcbiAgICB9XG4gIH1cblxuICAmOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICAgICAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWFjdGl2ZSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWFjdGl2ZSk7XG4gICAgfVxuICB9XG5cbiAgJlthcmlhLXNlbGVjdGVkPVwidHJ1ZVwiXSB7XG4gICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWJhY2tncm91bmQtY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG4gICAgfVxuXG4gICAgJi5kaXNhYmxlZCB7XG4gICAgICAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGlzYWJsZWQpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5kaXNhYmxlZCk6aG92ZXIge1xuICAgICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1ob3Zlcik7XG4gICAgICB9XG5cbiAgICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1jaGVjay1pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5kaXNhYmxlZCk6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbiAgICAgIH1cblxuICAgICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNoZWNrLWljb24ge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLWluZGljYXRvci1jb2xvci1zZWxlY3RlZC1mb2N1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpub3QoLmRpc2FibGVkKTphY3RpdmUsXG4gICAgJjpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgICAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWFjdGl2ZSk7XG4gICAgICB9XG5cbiAgICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1jaGVjay1pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtYWN0aXZlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cblxuICAmOm5vdCguZGlzYWJsZWQpOmFjdGl2ZSxcbiAgJjpub3QoLmRpc2FibGVkKTpmb2N1cy12aXNpYmxlLFxuICAmOm5vdCguZGlzYWJsZWQpOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBnbC1mb2N1cygkaW5zZXQ6IHRydWUpO1xuICAgIH1cbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gIH1cblxuICAvLyBVc2VkIGluIExpc3Rib3ggdG8gdmlzdWFsbHkgaGlnaGxpZ2h0IHRoZSBmaXJzdCBpdGVtIGFmdGVyIHNlYXJjaFxuICAmLmdsLW5ldy1kcm9wZG93bi1pdGVtLWhpZ2hsaWdodGVkIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItZm9jdXMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtZm9jdXMpO1xuICAgIEBpbmNsdWRlIGdsLWZvY3VzKCRpbnNldDogdHJ1ZSk7XG4gIH1cblxuICAmLmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuXG4gICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICAgICAgY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG5cbiAgICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1jaGVjay1pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLWljb24tY29sb3ItZGlzYWJsZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICB0cmFuc2l0aW9uOlxuICAgICAgYmFja2dyb3VuZC1jb2xvciAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1mYXN0ICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgICAgYm94LXNoYWRvdyAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWM7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtZGVmYXVsdDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLTA7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWRlZmF1bHQpO1xuICAgIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtZm9udC1ub3JtYWw7XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgIEBhcHBseSBnbC1weC0zO1xuICAgIEBhcHBseSBnbC1weS0wO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBAYXBwbHkgZ2wtbm8tdW5kZXJsaW5lO1xuICAgIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tdGV4dC1jb2xvci1kZWZhdWx0KTtcbiAgICBAYXBwbHkgZ2wtdGV4dC1sZWZ0O1xuICAgIEBhcHBseSBnbC13aGl0ZXNwYWNlLW5vcm1hbDtcbiAgICBAaW5jbHVkZSBnbC1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLXRyYW5zaXRpb247XG5cbiAgICAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY2hlY2staWNvbiB7XG4gICAgICBAYXBwbHkgZ2wtc2hyaW5rLTA7XG4gICAgICBAYXBwbHkgZ2wtbXItMztcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24taW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpO1xuICAgIH1cblxuICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1pY29uIHtcbiAgICAgIEBhcHBseSBnbC1zaHJpbmstMDtcbiAgICAgIEBhcHBseSBnbC1tci0yO1xuICAgICAgQGFwcGx5IGdsLWlubGluZS1ibG9jaztcbiAgICAgIEBhcHBseSBnbC1oLTU7XG4gICAgICBAYXBwbHkgZ2wtdy01O1xuXG4gICAgICAuZ2wtaWNvbiB7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiAtM3B4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS10ZXh0LXdyYXBwZXIge1xuICAgICAgQGFwcGx5IGdsLW1pbi13LTA7XG4gICAgICBAYXBwbHkgZ2wtZ3JvdztcbiAgICAgIEBhcHBseSBnbC1weS0zO1xuICAgIH1cbiAgfVxuXG4gICYuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tZGFuZ2VyIHtcbiAgICAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0tY29udGVudCB7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQ6bm90KDpkaXNhYmxlZCk6bm90KC5kaXNhYmxlZCkge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgLmdsLW5ldy1kcm9wZG93bi1pdGVtLWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1mb3JlZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYWN0aW9uLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yLWZvY3VzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICAgIC5nbC1uZXctZHJvcGRvd24taXRlbS1jb250ZW50IHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLWFjdGlvbi1kYW5nZXItZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1hY3Rpb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiRzZWFyY2gtaWNvbi1zaXplOiAxMnB4O1xuJGNsZWFyLWJ1dHRvbi1zaXplOiAyNHB4O1xuXG4uZ2wtbGlzdGJveC1zZWFyY2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmdsLWxpc3Rib3gtc2VhcmNoLWlucHV0IHtcbiAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuICAgIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgICBAYXBwbHkgZ2wtaC1hdXRvO1xuICAgIEBhcHBseSBnbC1ib3JkZXItbm9uZTtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1ub25lO1xuICAgIHBhZGRpbmctbGVmdDogY2FsYygjeyRnbC1zcGFjaW5nLXNjYWxlLTd9ICsgI3skZ2wtc3BhY2luZy1zY2FsZS0yfSk7XG4gICAgcGFkZGluZy1yaWdodDogY2FsYygjeyRnbC1zcGFjaW5nLXNjYWxlLTZ9ICsgI3skZ2wtc3BhY2luZy1zY2FsZS0yfSk7XG4gICAgQGFwcGx5IGdsLXB5LTQ7XG4gICAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLXNlYXJjaC1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBAaW5jbHVkZSBnbC1mb2N1cygkaW5zZXQ6IHRydWUpO1xuICAgIH1cblxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yKTtcbiAgICB9XG5cbiAgICAmOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uIHtcbiAgICAgIEBhcHBseSBnbC1oaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gdG9wIGNvbnRhaW5lciByYWRpdXMgbWludXMgaXRzIGJvcmRlciBzaXplIHRvIGF2b2lkIHRoZSBzbWFsbCBnYXAgYmV0d2VlbiB0aGUgZm9jdXMgcmluZyBhbmQgY29udGFpbmVyXG4gICRpbnB1dC1mb2N1cy1yaW5nLWJvcmRlci1yYWRpdXM6IGNhbGMoJGdsLWJvcmRlci1yYWRpdXMtbGFyZ2UgLSAkZ2wtYm9yZGVyLXNpemUtMSk7XG5cbiAgJi5nbC1saXN0Ym94LXRvcG1vc3Qge1xuICAgIC5nbC1saXN0Ym94LXNlYXJjaC1pbnB1dCB7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkaW5wdXQtZm9jdXMtcmluZy1ib3JkZXItcmFkaXVzO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRpbnB1dC1mb2N1cy1yaW5nLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICB9XG5cbiAgLmdsLWxpc3Rib3gtc2VhcmNoLWljb24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IGNhbGMoNTAlIC0gI3skc2VhcmNoLWljb24tc2l6ZX0gLyAyKTtcbiAgICBsZWZ0OiAkZ2wtc3BhY2luZy1zY2FsZS00O1xuICAgIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLXN1YnRsZSk7XG4gIH1cblxuICAuZ2wtbGlzdGJveC1zZWFyY2gtY2xlYXItYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiBjYWxjKDUwJSAtICN7JGNsZWFyLWJ1dHRvbi1zaXplfSAvIDIpO1xuICAgIHJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuICB9XG59XG4iLCIuZ2wtZW1wdHktc3RhdGUtY29udGVudCB7XG4gIG1heC13aWR0aDogNjVjaDtcbn1cbiIsIjpyb290LnVpLW5ldXRyYWwsXG4udWktbmV1dHJhbC1zY29wZSB7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0wOiAjZmZmO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTA6ICNmYmZhZmQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDogI2VjZWNlZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwMDogI2RjZGNkZTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTIwMDogI2JmYmZjMztcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTMwMDogI2E0YTNhODtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTQwMDogIzg5ODg4ZDtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTUwMDogIzczNzI3ODtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTYwMDogIzYyNjE2ODtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTcwMDogIzRjNGI1MTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTgwMDogIzNhMzgzZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTkwMDogIzI4MjcyZDtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTk1MDogIzE4MTcxZDtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwMDA6ICMwNTA1MDY7XG59XG5cbjpyb290LnVpLWluZGlnbyxcbi51aS1pbmRpZ28tc2NvcGUge1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMDogI2ZmZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwOiAjZjlmOGZhO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTA6ICNlZmViZjI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDA6ICNlMWQ5ZTY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0yMDA6ICNjMmJkYzc7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0zMDA6ICNhNWEyYTg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC00MDA6ICM4OTg4OGI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDA6ICM3MzczNzQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC02MDA6ICM2NDYwNjc7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC03MDA6ICM1MDQ5NTU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC04MDA6ICMzZjM1NDY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05MDA6ICMyZTI0MzQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05NTA6ICMxZDE0MjQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwOiAjMTIwYTE4O1xufVxuXG46cm9vdC51aS1ibHVlLFxuLnVpLWJsdWUtc2NvcGUge1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMDogI2ZmZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwOiAjZjhmOGZhO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTA6ICNlOWViZjA7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDA6ICNkN2RjZTU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0yMDA6ICNiY2JmYzY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0zMDA6ICNhMWEzYTc7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC00MDA6ICM4ODg4OGE7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDA6ICM3MjcyNzM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC02MDA6ICM1ZjYyNjY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC03MDA6ICM0NzRjNTQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC04MDA6ICMzMzM5NDU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05MDA6ICMyMjI3MzM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05NTA6ICMxMjE3MjI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwOiAjMDkwZDE3O1xufVxuXG46cm9vdC51aS1ncmVlbixcbi51aS1ncmVlbi1zY29wZSB7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0wOiAjZmZmO1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMTA6ICNmN2Y5Zjg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDogI2U2ZWRlYjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwMDogI2Q0ZGZkYjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTIwMDogI2I5YzFiZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTMwMDogI2EwYTRhMztcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTQwMDogIzg3ODk4ODtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTUwMDogIzcxNzM3MjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTYwMDogIzVlNjM2MTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTcwMDogIzQ0NGU0YTtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTgwMDogIzMxM2IzODtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTkwMDogIzFmMmEyNjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTk1MDogIzEwMTkxNjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwMDA6ICMwNjBmMGM7XG59XG5cbjpyb290LnVpLXJlZCxcbi51aS1yZWQtc2NvcGUge1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMDogI2ZmZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwOiAjZmJmN2Y5O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTA6ICNmNGVhZWU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDA6ICNlOWQ3ZGU7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0yMDA6ICNjYWJiYzE7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0zMDA6ICNhYWExYTQ7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC00MDA6ICM4Yjg3ODk7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDA6ICM3NDcyNzM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC02MDA6ICM2NTYwNjI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC03MDA6ICM1MzQ5NGM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC04MDA6ICM0MjM1Mzk7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05MDA6ICMzMTI0Mjg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05NTA6ICMyMDE0MTg7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwOiAjMTUwYTBlO1xufVxuXG46cm9vdC51aS1ncmF5LFxuLnVpLWdyYXktc2NvcGUge1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtMDogI2ZmZjtcbiAgLS1nbC1jb2xvci1uZXV0cmFsLTEwOiAjZjhmOGY4O1xuICAtLWdsLWNvbG9yLW5ldXRyYWwtNTA6ICNlY2VjZWM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDA6ICNkY2RjZGM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0yMDA6ICNiZmJmYmY7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0zMDA6ICNhM2EzYTM7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC00MDA6ICM4OTg4ODk7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC01MDA6ICM3MjcyNzI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC02MDA6ICM2MTYxNjE7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC03MDA6ICM0YjRiNGI7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC04MDA6ICMzODM4Mzk7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05MDA6ICMyNzI3Mjc7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC05NTA6ICMxNzE3MTc7XG4gIC0tZ2wtY29sb3ItbmV1dHJhbC0xMDAwOiAjMGQwZDBkO1xufVxuXG4vLyBUaGVtZSBvdmVycmlkZXMuIEhhbmQtbWFpbnRhaW5lZDoga2VlcCB0aGVzZSB3aGVuIHJlZ2VuZXJhdGluZyB0aGVcbi8vIHJhbXBzIGFib3ZlLlxuXG46cm9vdC51aS1pbmRpZ28sXG4udWktaW5kaWdvLXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS01MDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTgwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTk1MCk7XG59XG5cbjpyb290LnVpLWluZGlnby5nbC1kYXJrLFxuLnVpLWluZGlnby1zY29wZS5nbC1kYXJrLXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLXB1cnBsZS0zMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTIwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwKTtcbn1cblxuOnJvb3QudWktYmx1ZSxcbi51aS1ibHVlLXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWJsdWUtODAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ibHVlLTk1MCk7XG59XG5cbjpyb290LnVpLWJsdWUuZ2wtZGFyayxcbi51aS1ibHVlLXNjb3BlLmdsLWRhcmstc2NvcGUge1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWluZGljYXRvci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0zMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLWJsdWUtNTApO1xufVxuXG46cm9vdC51aS1ncmVlbixcbi51aS1ncmVlbi1zY29wZSB7XG4gIC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1ncmVlbi01MDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tODAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1ncmVlbi05NTApO1xufVxuXG46cm9vdC51aS1ncmVlbi5nbC1kYXJrLFxuLnVpLWdyZWVuLXNjb3BlLmdsLWRhcmstc2NvcGUge1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWluZGljYXRvci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tMzAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLWdyZWVuLTIwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItZ3JlZW4tNTApO1xufVxuXG46cm9vdC51aS1yZWQsXG4udWktcmVkLXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC01MDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTgwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItcmVkLTk1MCk7XG59XG5cbjpyb290LnVpLXJlZC5nbC1kYXJrLFxuLnVpLXJlZC1zY29wZS5nbC1kYXJrLXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLXJlZC0zMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItcmVkLTIwMCk7XG4gIC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3ZlcjogdmFyKC0tZ2wtY29sb3ItcmVkLTUwKTtcbn1cblxuOnJvb3QudWktZ3JheSxcbi51aS1ncmF5LXNjb3BlIHtcbiAgLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTtcbiAgLS1nbC1uYXYtaXRlbS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7XG59XG5cbjpyb290LnVpLWdyYXkuZ2wtZGFyayxcbi51aS1ncmF5LXNjb3BlLmdsLWRhcmstc2NvcGUge1xuICAtLWdsLW5hdi1pdGVtLXNlbGVjdGVkLWluZGljYXRvci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0zMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0yMDApO1xuICAtLWdsLW5hdi1pdGVtLWZvcmVncm91bmQtY29sb3ItaG92ZXI6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNTApO1xufVxuIiwiJGR1by1jaGF0LXNjcmltLWdyYWRpZW50OiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCB0cmFuc3BhcmVudCwgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSk7XG4kZHJhd2VyLXdpZHRoOiA0MDBweDtcblxuLnJlc2l6YWJsZS1jb250ZW50IHtcbiAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy15LWF1dG87XG4gIEBhcHBseSBnbC1zaGFkb3ctbGc7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbn1cblxuLnJlc2l6YWJsZS1jb21wb25lbnQge1xuICAucmVzaXphYmxlLXQsXG4gIC5yZXNpemFibGUtbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIEBpbmNsdWRlIGdsLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tdHJhbnNpdGlvbjtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYztcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItYmx1ZS0yMDApO1xuICAgIH1cbiAgfVxuXG4gIC8vIGltcG9ydGFudCBzdHlsZXMgYmVjYXVzZSB3ZSBuZWVkXG4gIC8vIHRvIG92ZXJ3cml0ZSBpbmxpbmUgc3R5bGVzIHNldCBieVxuICAvLyBodHRwczovL3d3dy5ucG1qcy5jb20vcGFja2FnZS92dWUtcmVzaXphYmxlXG4gIC5yZXNpemFibGUtdCB7XG4gICAgd2lkdGg6IDk1JSAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBsZWZ0OiA1MCUgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDRweCAhaW1wb3J0YW50O1xuICAgIHRvcDogMnB4ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucmVzaXphYmxlLWwge1xuICAgIGhlaWdodDogOTUlICFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDRweCAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDJweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmR1by1jaGF0IHtcbiAgICBAYXBwbHkgZ2wtei0wO1xuICB9XG5cbiAgLnJlc2l6YWJsZS1sLFxuICAucmVzaXphYmxlLWx0LFxuICAucmVzaXphYmxlLXQge1xuICAgIEBhcHBseSBnbC16LTE7XG4gIH1cbn1cblxuLmR1by1jaGF0IHtcbiAgei1pbmRleDogOTk5O1xuICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuXG4gIC5tZXNzYWdlLWVudGVyLWFjdGl2ZSxcbiAgLm1lc3NhZ2UtbGVhdmUtYWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xuICB9XG5cbiAgLm1lc3NhZ2UtZW50ZXIsXG4gIC5tZXNzYWdlLWxlYXZlLXRvIHtcbiAgICBAYXBwbHkgZ2wtb3BhY2l0eS0wO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuXG4gIC5kdW8tY2hhdC1sb2FkZXIubWVzc2FnZS1sZWF2ZSxcbiAgLmR1by1jaGF0LWxvYWRlci5tZXNzYWdlLWxlYXZlLXRvIHtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG5cbiAgLmR1by1hZ2VudC1tb2RlLXN3aXRjaGVyID4gKixcbiAgLmR1by1tb2RlbC1zd2l0Y2hlciA+ICoge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5kdW8tY2hhdC1kcmF3ZXIge1xuICByaWdodDogMDtcbiAgQGFwcGx5IGdsLXRyYW5zaXRpb24tYWxsO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIEBhcHBseSBnbC1oLWZ1bGw7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy15LWF1dG87XG4gIEBhcHBseSBnbC1zaGFkb3ctbGc7XG4gIEBhcHBseSBnbC10ZXh0LWJhc2U7XG4gIEBhcHBseSBnbC1sZWFkaW5nLW5vcm1hbDtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1mbGV4LWNvbDtcbn1cblxuLmR1by1jaGF0LWRyYXdlci1mb290ZXIge1xuICBAYXBwbHkgZ2wtcHgtNDtcbiAgQGFwcGx5IGdsLXBiLTQ7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiAkZHVvLWNoYXQtc2NyaW0tZ3JhZGllbnQ7XG4gICAgdG9wOiAwO1xuICAgIEBhcHBseSAtZ2wtdHJhbnNsYXRlLXktZnVsbDtcbiAgICBjb250ZW50OiAnJztcbiAgICBsZWZ0OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBAYXBwbHkgZ2wtcG9pbnRlci1ldmVudHMtbm9uZTtcbiAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuICAgIEBhcHBseSBnbC1oLTQ7XG4gIH1cbn1cblxuLmR1by1jaGF0LWhpc3Rvcnkge1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcblxuICAvKlxuICBCcm93c2VycyBhIGFyZSBwcmV0dHkgZ29vZCBhdCBrZWVwaW5nIHRoZSBmb2N1cyBvbiBhbiBlbGVtZW50IHdoaWxlXG4gIHRoZSBwYXJlbnQgZWxlbWVudCBncm93cyBpbiBzaXplLiBXaXRoIHRoaXMgd2UgbWFyayBhbGwgY2hpbGQgZWxlbWVudHNcbiAgb2YgdGhlIGNoYXQgaGlzdG9yeSBhcyBcIm5vblwiIGFuY2hvcnMuXG4gIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0NTUy9vdmVyZmxvdy1hbmNob3JcbiAgKi9cbiAgKiB7XG4gICAgb3ZlcmZsb3ctYW5jaG9yOiBub25lO1xuICB9XG5cbiAgLypcbiAgUmlnaHQgYXQgdGhlIGJvdHRvbSBvZiB0aGUgY2hhdCBoaXN0b3J5IHdlIGFkZCBhIHNjcm9sbC1hbmNob3IgZWxlbWVudC5cbiAgVGhpcyBzY3JvbGwtYW5jaG9yIGVsZW1lbnQgaXMgdGhlIG9ubHkgXCJwb3NzaWJsZVwiIGFuY2hvci4gVGhlIGJlYXV0eSBvZiBpdDpcbiAgSXQgb25seSB3aWxsIGJlIHVzZWQgYXMgYW4gYW5jaG9yIF9pZl8gaXQgaXMgY3VycmVudGx5IGluc2lkZSB0aGUgdmlldyBwb3J0LlxuICBTbyBpZiB0aGUgdXNlciBtYW51YWxseSBzY3JvbGxzIHVwIHdoaWxlIGEgY2h1bmtlZCBtZXNzYWdlIGlzIGNvbWluZyBpbixcbiAgaXQgd29uJ3Qgc3RpY2sgdG8gdGhlIGJvdHRvbSB3aGlsZSB0aGUgbWVzc2FnZSBzdGlsbCBsb2Fkcy5cbiAgKi9cbiAgLnNjcm9sbC1hbmNob3Ige1xuICAgIG92ZXJmbG93LWFuY2hvcjogYXV0bztcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW4tdG9wOiAtMXB4OyAvLyBJbiBvcmRlciB0byBub3QgYWRkIDFweCB2ZXJ0aWNhbGx5LCB3ZSBhZGQgYSBuZWdhdGl2ZSBtYXJnaW5cbiAgfVxufVxuXG4uaGlzdG9yeS1pdGVtIHtcbiAgQGFwcGx5IGdsLXByLTI7XG4gIEBhcHBseSAtZ2wtbXgtMztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbGc7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXRlcnRpYXJ5LWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6Zm9jdXMtd2l0aGluIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC10ZXJ0aWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcblxuICAgIC5oaXN0b3J5LXJlbW92ZS1idXR0b24ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAuaGlzdG9yeS1yZW1vdmUtYnV0dG9uIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICB9XG5cbiAgLmhpc3RvcnktaXRlbS1uYW1lIHtcbiAgICBAYXBwbHkgZ2wtcHktMztcbiAgICBAYXBwbHkgZ2wtcHgtMztcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1sZztcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLTA7XG5cbiAgICAmLCAmOmhvdmVyLCAmOmFjdGl2ZSwgJjpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7IH1cbiAgfVxuXG4gIC5nbC1idXR0b24tdGV4dCB7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICBAYXBwbHkgZ2wtZmxleC1yb3c7XG4gICAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgICBAYXBwbHkgZ2wtZ2FwLTM7XG4gICAgQGFwcGx5IGdsLXRleHQtbGVmdDtcbiAgfVxufVxuXG4uZHVvLWNoYXQtaW5wdXQge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICBtYXgtaGVpZ2h0OiAyNDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAkZ2wtYm9yZGVyLXNpemUtMSB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLXJhZGl1czogcHgtdG8tcmVtKDIwcHgpO1xuXG4gICY6Zm9jdXMtd2l0aGluIHtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cygkY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWZvY3VzKSk7XG4gIH1cblxuICAuZ2wtZm9ybS10ZXh0YXJlYS5mb3JtLWNvbnRyb2wge1xuICAgIGZsZXg6IDE7XG4gICAgcmVzaXplOiBub25lO1xuICAgIG1heC1oZWlnaHQ6IDI0MHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogcHgtdG8tcmVtKDIwcHgpO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS12YWx1ZSkgJyAnO1xuICAgIEBhcHBseSBnbC1pbnZpc2libGU7XG4gICAgQGFwcGx5IGdsLXAtNDtcbiAgICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgfVxufVxuXG4uZHVvLWNoYXQgLmR1by1jaGF0LXN1Z2dlc3Rpb24tYnV0dG9uIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtMnhsO1xufVxuXG4uc2xhc2gtY29tbWFuZHMge1xuICBAYXBwbHkgLWdsLW10LTI7XG5cbiAgLmFjdGl2ZS1jb21tYW5kIHtcbiAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIH1cblxuICAuZ2wtZHJvcGRvd24taXRlbSBidXR0b24uZHJvcGRvd24taXRlbSB7XG4gICAgQGFwcGx5IGdsLXRleHQtc207XG4gICAgQGFwcGx5IGdsLXB4LTM7XG4gICAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG4vLyBUT0RPIHRoaXMgaXMgdGVjaGRlYnQgZnJvbTogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXVpLy0vbWVyZ2VfcmVxdWVzdHMvMzk1MyNub3RlXzE3NjI4MzQyMTlcbi8vIG9uY2UgdGhpcyBmaWxlIGlzIG1pZ3JhdGVkIHRvIER1by1VSSB3ZSBuZWVkIHRvIHJlbW92ZSB0aGVzZSBzdHlsZXMgYXMgYSBtYXJrZG93biBmYWxsYmFja1xuLy8gYW5kIG1ha2Ugc3VyZSBhbGwgaG9zdC1zeXN0ZW0gcHJvdmlkZSBtYXJrZG93biByZW5kZXJlclxuLmR1by1jaGF0LW1hcmtkb3duIHtcbiAgQGFwcGx5IGdsLXRleHQtbGc7XG4gIEBhcHBseSBnbC1sZWFkaW5nLTI0O1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuICBAYXBwbHkgZ2wtZm9udC1ub3JtYWw7XG5cbiAgLy8gbWFya2VkLWJpZGkgc2V0cyBkaXI9XCJhdXRvXCI7IGFsaWduIGJ5IHRoYXQgZGlyZWN0aW9uIGluc3RlYWQgb2YgdGhlXG4gIC8vIGluaGVyaXRlZCB0ZXh0LWFsaWduOiBsZWZ0LiBNaXJyb3JzIEdpdExhYidzIC5tZCB0eXBvZ3JhcGh5LlxuICBbZGlyPSdhdXRvJ10ge1xuICAgIHRleHQtYWxpZ246IGluaXRpYWw7XG4gIH1cblxuICA6Zmlyc3QtY2hpbGQge1xuICAgIEBhcHBseSBnbC1tdC0wO1xuICB9XG5cbiAgaDEsXG4gIC5nbC1oMSB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctMTtcbiAgICBAYXBwbHkgZ2wtbXQtNztcbiAgfVxuXG4gIGgyLFxuICAuZ2wtaDIge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTI7XG4gICAgQGFwcGx5IGdsLW10LTY7XG4gIH1cblxuICBoMyxcbiAgLmdsLWgzIHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy0zO1xuICAgIEBhcHBseSBnbC1tdC02O1xuICB9XG5cbiAgaDQsXG4gIC5nbC1oNCB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctNDtcbiAgICBAYXBwbHkgZ2wtbXQtNTtcbiAgfVxuXG4gIGg1LFxuICAuZ2wtaDUge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTU7XG4gICAgQGFwcGx5IGdsLW10LTU7XG4gIH1cblxuICBoNixcbiAgLmdsLWg2IHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy02O1xuICAgIEBhcHBseSBnbC1tdC01O1xuICB9XG5cbiAgcCxcbiAgLmdsLXBhcmFncmFwaCB7XG4gICAgQGFwcGx5IGdsLW10LTA7XG4gICAgQGFwcGx5IGdsLW1iLTA7XG5cbiAgICArIHAsXG4gICAgKyAuZ2wtcGFyYWdyYXBoIHtcbiAgICAgIEBhcHBseSBnbC1tdC01O1xuICAgIH1cblxuICAgICYuc20ge1xuICAgICAgZm9udC1zaXplOiAkZ2wtZm9udC1zaXplLW1hcmtkb3duLXNtO1xuICAgICAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG4gICAgfVxuICB9XG5cbiAgLnNtIHtcbiAgICBmb250LXNpemU6ICRnbC1mb250LXNpemUtbWFya2Rvd24tc207XG4gICAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG4gIH1cblxuICBibG9ja3F1b3RlIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgQGFwcGx5IGdsLXB5LTM7XG4gICAgQGFwcGx5IGdsLXBsLTY7XG4gICAgQGFwcGx5IGdsLW15LTM7XG4gICAgQGFwcGx5IGdsLW14LTA7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGdsLWJvcmRlci1zaXplLTQgMCAwIDAgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICB9XG5cbiAgLmlkaWZmIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xuICAgIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgICBAYXBwbHkgZ2wtcHgtMjtcbiAgfVxuXG4gIC5kZWxldGlvbiB7XG4gICAgQGFwcGx5IGdsLWJnLXJlZC0xMDA7XG4gIH1cblxuICAuYWRkaXRpb24ge1xuICAgIEBhcHBseSBnbC1iZy1ncmVlbi0xMDA7XG4gIH1cblxuICAvLyBDb2RlIGJsb2NrcyBhbmQgaW5saW5lIGBjb2RlYCBhcmUgc3R5bGVkIGluXG4gIC8vIGNvbXBvbmVudHMvZHVvX2NoYXRfbWVzc2FnZS9tYXJrZG93bl9yZW5kZXJlci5zY3NzLlxuXG4gIC5hdWRpby1jb250YWluZXIge1xuICAgIEBhcHBseSBnbC1pbmxpbmUtZmxleDtcbiAgICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcblxuICAgIGF1ZGlvIHtcbiAgICAgIEBhcHBseSBnbC13LWZ1bGw7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAYXBwbHkgZ2wtbXQtMztcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgQGFwcGx5IGdsLW1yLTI7XG4gICAgICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgY29udGVudDogJ/Cfk44nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRhYmxlIHtcbiAgICBAYXBwbHkgZ2wtbXktNztcblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIEBhcHBseSBnbC1weC0zO1xuICAgICAgQGFwcGx5IGdsLXB5LTQ7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIC0jeyRnbC1ib3JkZXItc2l6ZS0xfSAwIDAgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgQGFwcGx5IGdsLWFsaWduLXRvcDtcbiAgICB9XG5cbiAgICB0aCB7XG4gICAgICBib3gtc2hhZG93OlxuICAgICAgICBpbnNldCAwICN7JGdsLWJvcmRlci1zaXplLTF9IDAgMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCksXG4gICAgICAgIGluc2V0IDAgLSN7JGdsLWJvcmRlci1zaXplLTF9IDAgMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgICBAYXBwbHkgZ2wtZm9udC1ib2xkO1xuICAgIH1cblxuICAgIHRoZWFkIHtcbiAgICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgfVxuXG4gICAgdHI6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gICAgfVxuICB9XG59XG5cbi5kdW8tY2hhdC1jb21wYWN0LW1hcmtkb3duIHtcbiAgQGFwcGx5IGdsLXRleHQtYmFzZTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMjA7XG5cbiAgaDEsXG4gIC5nbC1oMSB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctMS1maXhlZDtcbiAgICBAYXBwbHkgZ2wtbXQtNztcbiAgfVxuXG4gIGgyLFxuICAuZ2wtaDIge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTItZml4ZWQ7XG4gICAgQGFwcGx5IGdsLW10LTY7XG4gIH1cblxuICBoMyxcbiAgLmdsLWgzIHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy0zLWZpeGVkO1xuICAgIEBhcHBseSBnbC1tdC02O1xuICB9XG5cbiAgaDQsXG4gIC5nbC1oNCB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctNC1maXhlZDtcbiAgICBAYXBwbHkgZ2wtbXQtNTtcbiAgfVxuXG4gIGg1LFxuICAuZ2wtaDUge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTUtZml4ZWQ7XG4gICAgQGFwcGx5IGdsLW10LTU7XG4gIH1cblxuICBoNixcbiAgLmdsLWg2IHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy02LWZpeGVkO1xuICAgIEBhcHBseSBnbC1tdC01O1xuICB9XG5cbiAgLnNtIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBAYXBwbHkgZ2wtcHktMztcbiAgICB9XG4gIH1cbn1cblxuLm1lc3NhZ2UtdG9vbC1hcHByb3ZhbC1jb2xsYXBzZWQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuXG4ubWVzc2FnZS10b29sLWFwcHJvdmFsLWNvbGxhcHNlZC1oZWFkZXIge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKHZhcigtLWdsLWNhcmQtYm9yZGVyLXJhZGl1cykgLSAxcHgpO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogY2FsYyh2YXIoLS1nbC1jYXJkLWJvcmRlci1yYWRpdXMpIC0gMXB4KTtcbn1cbiIsIi5kdW8tY2hhdC1sb2FkZXIge1xuICBAYXBwbHkgZ2wtZmxleDtcblxuICAudHJhbnNpdGlvbiB7XG4gICAgQGluY2x1ZGUgZ2wtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi10cmFuc2l0aW9uO1xuICAgIHRyYW5zaXRpb246IHdpZHRoIDIwMG1zICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICB9XG5cbiAgLnRleHQtZW50ZXIge1xuICAgIEBhcHBseSBnbC1vcGFjaXR5LTA7XG4gIH1cblxuICAudGV4dC1lbnRlci1hY3RpdmUge1xuICAgIEBpbmNsdWRlIGdsLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tdHJhbnNpdGlvbjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zICRnbC1lYXNpbmctb3V0LWN1YmljOyAvLyB3ZSBpbnRlbnRpb25hbGx5IG92ZXJsYXAgdGhpcyB0cmFuc2l0aW9uIHdpdGggLnRleHQtbGVhdmUtYWN0aXZlIGJ5IDIwMG1zXG4gIH1cblxuICAudGV4dC1lbnRlci10byB7XG4gICAgQGFwcGx5IGdsLW9wYWNpdHktMTA7XG4gIH1cblxuICAudGV4dC1sZWF2ZSB7XG4gICAgQGFwcGx5IGdsLW9wYWNpdHktMTA7XG4gIH1cblxuICAudGV4dC1sZWF2ZS1hY3RpdmUge1xuICAgIEBpbmNsdWRlIGdsLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tdHJhbnNpdGlvbjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDIwMG1zICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICB9XG5cbiAgLnRleHQtbGVhdmUtdG8ge1xuICAgIEBhcHBseSBnbC1vcGFjaXR5LTA7XG4gIH1cbn1cbiIsIi5kdW8tY2hhdC1tZXNzYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItcmFkaXVzOiBweC10by1yZW0oMTZweCkgcHgtdG8tcmVtKDE2cHgpIDA7XG4gIGNvbG9yOiB2YXIoLS1kdW8tY2hhdC1tZXNzYWdlLWNvbG9yLCBpbmhlcml0KSAhaW1wb3J0YW50O1xuICAtLWdsLXRleHQtY29sb3ItaGVhZGluZzogdmFyKC0tZHVvLWNoYXQtbWVzc2FnZS1oZWFkaW5nLWNvbG9yLCBpbmhlcml0KSAhaW1wb3J0YW50O1xuXG4gIHA6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICBAYXBwbHkgZ2wtbWItNDtcbiAgfVxuXG4gIHA6bGFzdC1vZi10eXBlIHtcbiAgICBAYXBwbHkgZ2wtbWItMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGFuaW1hdGVkLXRleHQtc2VnbWVudC1mYWRlLWluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5kdW8tY2hhdC1tZXNzYWdlLW1hcmtkb3duLXNtb290aCAuYW5pbWF0ZWQtdGV4dC1zZWdtZW50IHtcbiAgYW5pbWF0aW9uOiBhbmltYXRlZC10ZXh0LXNlZ21lbnQtZmFkZS1pbiAwLjNzIGVhc2Utb3V0IGZvcndhcmRzO1xufVxuXG4uZHVvLWNoYXQtbWVzc2FnZS1lcnJvciA+IHAge1xuICBtYXJnaW46IDA7XG59XG5cbi5hZ2VudGljLWZlZWRiYWNrLWhvdmVyLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiB3aWR0aCAwLjNzIGVhc2UtaW4tb3V0LCBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQsIG1hcmdpbiAwLjNzIGVhc2UtaW4tb3V0O1xuXG4gIC5nbC1ncm91cDpob3ZlciAmLFxuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3BhY2l0eTogMTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbn1cbiIsIi8vIFN0eWxlcyBmb3IgYSBjaGF0IGNvZGUgYmxvY2ssIGtleWVkIG9uIGAuZHVvLW1lc3NhZ2UtcHJlLWJsb2NrYCDigJQgdGhlIGNsYXNzIHRoZSByZW5kZXJlclxuLy8gcHV0cyBvbiBldmVyeSBibG9jayBpdCBlbWl0cywgaW4gYm90aCB0aGUgZmVuY2VkIHBhdGggKC4uLy4uL21hcmtkb3duX3JlbmRlcmVyLnRzKSBhbmQgdGhlXG4vLyBgY29udGVudEh0bWxgIHJlbmFtZSAobWFya2Rvd25fcmVuZGVyZXIudnVlKS5cblxuLy8gVGhlIDFweCBudWRnZSBjZW50ZXJzIHRoZSBidXR0b24gb24gYSBzaW5nbGUgbGluZSBvZiBjb2RlLiBUaGUgYmxvY2sncyB2ZXJ0aWNhbCBwYWRkaW5nXG4vLyBpcyB3aGF0IGtlZXBzIGEgMzJweCBidXR0b24gaW5zaWRlIGEgc2luZ2xlLWxpbmUgYmxvY2suXG4kZHVvLWNvZGUtYWN0aW9uLWluc2V0OiBjYWxjKCN7JGdsLXNwYWNpbmctc2NhbGUtM30gLSAxcHgpO1xuXG4uZHVvLW1lc3NhZ2UtcHJlLWJsb2NrIHByZSB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIEBhcHBseSBnbC1ib3JkZXIgZ2wtcHgtNCBnbC1weS00O1xuICBAYXBwbHkgZ2wtbWF4LWgtWzYwdmhdIGdsLXNjcm9sbC1zbW9vdGggZ2wtb3ZlcmZsb3ctYXV0bztcbiAgQGFwcGx5IGdsLXRleHQtaW5oZXJpdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1wcmVmb3JtYXQsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xuICBib3gtc2hhZG93OiBub25lO1xuXG4gIC8vIFNjcmltIGNsYXNzZXMgYXJlIHRvZ2dsZWQgYnkgRHVvQ2hhdE1lc3NhZ2UjdG9nZ2xlU2Nyb2xsaW5nLCB3aGljaCBmaW5kcyB0aGUgYmxvY2tzXG4gIC8vIHdpdGggYC5kdW8tY2hhdC1tZXNzYWdlIHByZWAg4oCUIGEgd2lkZXIgbmV0IHRoYW4gdGhpcyBzZWxlY3Rvciwgc28gYSBibG9jayB0aGF0IHJlYWNoZXNcbiAgLy8gdGhlIERPTSB3aXRob3V0IHRoZSB3cmFwcGVyIGNsYXNzIGdldHMgdGhlIGNsYXNzZXMgYW5kIG5vIGdyYWRpZW50LlxuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBsZWZ0OiAkZ2wtYm9yZGVyLXNpemUtMTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gY2FsYygyICogJGdsLWJvcmRlci1zaXplLTEpKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGFwcGx5IGdsLXBvaW50ZXItZXZlbnRzLW5vbmUgZ2wtaC03IGdsLXJvdW5kZWQtYi1iYXNlO1xuICB9XG5cbiAgJi5zY3JpbS10b3A6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZDogJGR1by1jaGF0LXNjcmltLWdyYWRpZW50O1xuICAgIHRvcDogJGdsLWJvcmRlci1zaXplLTE7XG4gICAgQGFwcGx5IC1nbC1yb3RhdGUtMTgwO1xuICB9XG5cbiAgJi5zY3JpbS1ib3R0b206OmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kOiAkZHVvLWNoYXQtc2NyaW0tZ3JhZGllbnQ7XG4gICAgYm90dG9tOiAkZ2wtYm9yZGVyLXNpemUtMTtcbiAgfVxufVxuXG4vLyBBbiBhcHByb3ZhbCBjYXJkIGhhcyBpdHMgb3duIHN1cmZhY2UsIHNvIGEgYmxvY2sgdGhlcmUga2VlcHMgdGhlIHN1YnRsZSBmaWxsIGl0IGhhZFxuLy8gYmVmb3JlIHRoZXNlIHJ1bGVzIHdlcmUgY2VudHJhbGl6ZWQuIE9uZSBjbGFzcyBtb3JlIHNwZWNpZmljIHRoYW4gdGhlIHJ1bGUgYWJvdmUuXG4ubWVzc2FnZS10b29sLWFwcHJvdmFsIHByZS5kdW8tbWVzc2FnZS1wcmUtYmxvY2sge1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xufVxuXG4uZHVvLW1lc3NhZ2UtcHJlLWJsb2NrIHByZSBjb2RlIHtcbiAgQGFwcGx5IGdsLWJsb2NrIGdsLXdoaXRlc3BhY2UtcHJlO1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQgZ2wtcm91bmRlZC1ub25lIGdsLXAtMDtcbiAgQGFwcGx5IGdsLXRleHQtc20gZ2wtdGV4dC1kZWZhdWx0O1xufVxuXG4vLyBIb3N0LWltcG9ydGVkIGhpZ2hsaWdodC5qcyB0aGVtZXMgcGFpbnQgYC5obGpzYCB3aXRoIHRoZWlyIG93biBiYWNrZ3JvdW5kIGFuZCBwYWRkaW5nLFxuLy8gZHJhd2luZyBhIHNlY29uZCBib3ggaW5zaWRlIHRoZSBgcHJlYC4gSW1wb3J0YW50IGJlY2F1c2UgdGhlbWUgc2VsZWN0b3JzIGxpa2Vcbi8vIGAuZ2wtZGFyayBwcmUgY29kZS5obGpzYCBvdXRyYW5rIHVzLlxuLmR1by1tZXNzYWdlLXByZS1ibG9jayBjb2RlLmhsanMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5kdW8tbWVzc2FnZS1wcmUtYmxvY2sge1xuICBkdW8tY29weS1jb2RlLFxuICBkdW8taW5zZXJ0LWNvZGUtc25pcHBldCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIEBhcHBseSBnbC10cmFuc2l0aW9uLWFsbDtcbiAgICBAYXBwbHkgZ2wtb3BhY2l0eS0wO1xuICAgIHJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuICAgIHRvcDogJGR1by1jb2RlLWFjdGlvbi1pbnNldDtcbiAgICAvLyBIb3N0IHN0eWxlcyBjYW4gc3RhY2sgdGhlIGBwcmVgIGFib3ZlIHRoZSBhY3Rpb25zLCB3aGljaCBoaWRlcyB0aGVtLlxuICAgIEBhcHBseSBnbC16LTE7XG5cbiAgICBbcm9sZT0ndG9vbHRpcCddIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB2YXIoLS1nbC1mZWVkYmFjay1zdHJvbmctYmFja2dyb3VuZC1jb2xvcik7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stc3Ryb25nLXRleHQtY29sb3IpO1xuICAgICAgQGFwcGx5IGdsLXB4LTMgZ2wtcHktMTtcblxuICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG5cbiAgICAgIC5hcnJvdyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgICAgQGFwcGx5IGdsLWgtMyBnbC13LTM7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBkdW8tY29weS1jb2RlIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRnbC1zcGFjaW5nLXNjYWxlLTg7XG4gIH1cblxuICAvLyBgLmNvcHktdG8tY2xpcGJvYXJkLWJ1dHRvbi1jb250YWluZXJgIGlzIFByZUJsb2NrJ3MgZXF1aXZhbGVudCwgaW5zaWRlIGl0cyBvd24gYHByZWAuXG4gICY6Zm9jdXMsXG4gICY6aG92ZXIsXG4gICY6aGFzKGJ1dHRvbjpmb2N1cykge1xuICAgIGR1by1jb3B5LWNvZGUsXG4gICAgZHVvLWluc2VydC1jb2RlLXNuaXBwZXQsXG4gICAgLmNvcHktdG8tY2xpcGJvYXJkLWJ1dHRvbi1jb250YWluZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2l0aGhlbGQgd2hpbGUgdGhlIHJlbmRlcmVyIGlzIHN0aWxsIHBhY2luZyBzdHJlYW1lZCBjb250ZW50IGluLCBzbyB0aGV5IGRvbid0IHBvcCBpblxuLy8gb3ZlciBjb250ZW50IHRoYXQgaXMgZ3Jvd2luZy5cbi5kdW8tY2hhdC1tZXNzYWdlLW1hcmtkb3duLXNtb290aCAuZHVvLW1lc3NhZ2UtcHJlLWJsb2NrIHtcbiAgJjpmb2N1cyxcbiAgJjpob3ZlcixcbiAgJjpoYXMoYnV0dG9uOmZvY3VzKSB7XG4gICAgZHVvLWNvcHktY29kZSxcbiAgICBkdW8taW5zZXJ0LWNvZGUtc25pcHBldCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxufVxuXG4vLyBTZXQgYnkgRHVvQ2hhdENvbnZlcnNhdGlvbiB3aGVuIHRoZSBob3N0IHR1cm5zIGNvZGUgaW5zZXJ0aW9uIG9mZi4gRXF1YWwgc3BlY2lmaWNpdHkgdG9cbi8vIHRoZSBgbWFyZ2luLXJpZ2h0YCBhYm92ZSwgc28gaXQgaGFzIHRvIHN0YXkgYWZ0ZXIgaXQuXG4uaW5zZXJ0LWNvZGUtaGlkZGVuIHtcbiAgZHVvLWluc2VydC1jb2RlLXNuaXBwZXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBkdW8tY29weS1jb2RlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLy8gSW5saW5lIGBjb2RlYCBoYXMgbm8gYHByZWAgYW5kIG5vIGJsb2NrIHdyYXBwZXIsIHNvIHRoZSBtYXJrZG93biBjb250YWluZXIgaXMgdGhlIG9ubHlcbi8vIGFuY2hvci4gVGhlIGluLWJsb2NrIHJlc2V0IGFib3ZlIGlzIG1vcmUgc3BlY2lmaWMgYW5kIHdpbnMgaW5zaWRlIGEgYmxvY2suXG4uZHVvLWNoYXQtbWFya2Rvd24sXG4uZHVvLWNoYXQtY29tcGFjdC1tYXJrZG93biB7XG4gIC5tb25vc3BhY2UsXG4gIGNvZGUge1xuICAgIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbiAgfVxufVxuXG4uZHVvLWNoYXQtbWFya2Rvd24gY29kZSB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtcHktMTtcbn1cblxuLy8gRXF1YWwgc3BlY2lmaWNpdHkgdG8gdGhlIHJ1bGUgYWJvdmUsIHNvIGl0IGhhcyB0byBzdGF5IGFmdGVyIGl0LlxuLmR1by1jaGF0LW1lc3NhZ2UgY29kZSB7XG4gIEBhcHBseSBnbC1iZy1zdGF0dXMtbmV1dHJhbDtcbn1cbiIsIi5yZWNlbnRzLXdyYXBwZXIge1xuICAuZ2wtYWNjb3JkaW9uLWl0ZW0taGVhZGVyIHtcbiAgICAuZ2wtYnV0dG9uLmdsLWJ1dHRvbi5idG4tbGluayB7XG4gICAgICBAYXBwbHkgZ2wtYmxvY2s7XG4gICAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuXG4gICAgICBAYXBwbHkgZ2wtcGwtMztcbiAgICAgIEBhcHBseSBnbC1weS0yO1xuICAgICAgQGFwcGx5IGdsLXJvdW5kZWQtbm9uZTtcbiAgICAgIEBhcHBseSBnbC1zaGFkb3ctbm9uZTtcbiAgICAgIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gICAgICBAYXBwbHkgZ2wtdXBwZXJjYXNlO1xuICAgICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICAgIEBhcHBseSBnbC10ZXh0LXNtO1xuICAgIH1cblxuICAgID4gLmNvbGxhcHNlIHtcbiAgICAgIEBhcHBseSBnbC1tbC0wO1xuICAgIH1cbiAgfVxuXG4gIC5nbC10ZXh0LWJhc2Uge1xuICAgIEBhcHBseSBnbC1tdC0wO1xuICB9XG59XG4iLCIuYWdlbnRpYy1iaW5hcnktZmVlZGJhY2sge1xuICAuZmVlZGJhY2stY29sb3JlZC1pY29uIHtcbiAgICBhbmltYXRpb246IGZlZWRiYWNrLWZhZGUtb3V0IDAuM3MgZWFzZS1pbi1vdXQgZm9yd2FyZHM7XG4gICAgYW5pbWF0aW9uLWRlbGF5OiAwLjNzO1xuICAgIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIH1cblxuICAuZmVlZGJhY2stdGhhbmtzIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBhbmltYXRpb246IGZlZWRiYWNrLWZhZGUtaW4gMC4zcyBlYXNlLWluLW91dCBmb3J3YXJkcztcbiAgICBhbmltYXRpb24tZGVsYXk6IDAuM3M7XG4gICAgd2lsbC1jaGFuZ2U6IG9wYWNpdHksIHdpZHRoLCBtYXJnaW47XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmZWVkYmFjay1mYWRlLW91dCB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHdpZHRoOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiByZWR1Y2UpIHtcbiAgLmZlZWRiYWNrLWNvbG9yZWQtaWNvbixcbiAgLmZlZWRiYWNrLXRoYW5rcyB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmVlZGJhY2stZmFkZS1pbiB7XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiAtNnB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICB9XG59XG4iLCIvLyAtLS1cbi8vIFNjc3MgdG8gaGVscCB3aXRoIGJvb3RzdHJhcCAzIHRvIDQgbWlncmF0aW9uIG9mIGNvcmUgZWxlbWVudHNcbi8vIC0tLVxuYm9keSB7XG4gIC8vIE92ZXJyaWRlIGRlZmF1bHQgZm9udCBzaXplIHVzZWQgaW4gbm9uLWNzc2xhYiBVSVxuICAvLyBVc2UgcmVtIHRvIGtlZXAgZGVmYXVsdCBmb250LXNpemUgYXQgMTRweCBvbiBib2R5IHNvIDFyZW0gc3RpbGxcbiAgLy8gZml0cyA4cHggZ3JpZCwgYnV0IGFsc28gYWxsb3cgdXNlcnMgdG8gY2hhbmdlIGJyb3dzZXIgZm9udCBzaXplXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbmxlZ2VuZCB7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuYnV0dG9uLFxuaHRtbCBbdHlwZT0nYnV0dG9uJ10sXG5bdHlwZT0ncmVzZXQnXSxcblt0eXBlPSdzdWJtaXQnXSxcbltyb2xlPSdidXR0b24nXSB7XG4gIC8vIE92ZXJyaWRlIGJvb3RzdHJhcCByZWJvb3RcbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmgxLFxuLmgxLFxuaDIsXG4uaDIsXG5oMyxcbi5oMyB7XG4gIG1hcmdpbi10b3A6IDIwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbmg0LFxuLmg0LFxuaDUsXG4uaDUsXG5oNixcbi5oNiB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbmg1LFxuLmg1IHtcbiAgZm9udC1zaXplOiAkZ2wtZm9udC1zaXplO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ib2xkO1xufVxuXG5ociB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmNvZGUge1xuICBAYXBwbHkgZ2wtcHktMTtcbiAgQGFwcGx5IGdsLXB4LTI7XG4gIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcblxuICAuY29kZSA+ICYsXG4gIC5idWlsZC1sb2cgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogaW5oZXJpdDtcbiAgICBwYWRkaW5nOiB1bnNldDtcbiAgfVxufVxuXG50YWJsZSB7XG4gIC8vIFJlbW92ZSBhbnkgdGFibGUgYm9yZGVyIGxpbmVzXG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG5wcmUgY29kZSB7XG4gIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbn1cblxuLypcbiBCb290c3RyYXAgNC4xLjIgaW50cm9kdWNlZCBhIG5ldyBkZWZhdWx0IHZlcnRpY2FsIGFsaWdubWVudCB3aGljaCBicmVha3Mgb3VyIGljb25zLFxuIHNvIHdlIG5lZWQgdG8gcmVzZXQgdGhlIHZlcnRpY2FsIGFsaWdubWVudCB0byB0aGUgZGVmYXVsdCB2YWx1ZS4gU2VlOlxuIC0gaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLWZvc3MvaXNzdWVzLzUxMzYyXG4gKi9cbnN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cbiIsIi8vIC0tLVxuLy8gU2NzcyB0byBoZWxwIHdpdGggYm9vdHN0cmFwIDMgdG8gNCBtaWdyYXRpb24gb2YgYm9vdHN0cmFwIGNvbXBvbmVudHNcbi8vIC0tLVxuLmZvcm0tY29udHJvbCxcbi5zZWFyY2ggZm9ybSB7XG4gIC8vIE92ZXJyaWRlIGRlZmF1bHQgZm9udCBzaXplIHVzZWQgaW4gbm9uLWNzc2xhYiBVSVxuICAvLyBVc2UgcmVtIHRvIGtlZXAgZGVmYXVsdCBmb250LXNpemUgYXQgMTRweCBvbiBib2R5IHNvIDFyZW0gc3RpbGxcbiAgLy8gZml0cyA4cHggZ3JpZCwgYnV0IGFsc28gYWxsb3cgdXNlcnMgdG8gY2hhbmdlIGJyb3dzZXIgZm9udCBzaXplXG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi8qIE91ciBhZGp1c3RtZW50cyB0byBoeCAmIC5oeCBhYm92ZSBhZGQgdW5uZWNlc3NhcnkgbWFyZ2lucyB0byBtb2RhbC10aXRsZVxuICAgYW5kIHBhZ2UtdGl0bGUgaW4gbW9kYWxzLCBzbyB3ZSBzZXQgdGhlbSB0byAwIGluIG9yZGVyIHRvIGhhdmUgcHJvcGVybHlcbiAgIGZvcm1hdHRlZCBtb2RhbCBoZWFkZXJzLiAqL1xuLm1vZGFsLWhlYWRlciB7XG4gIC5tb2RhbC10aXRsZSxcbiAgLnBhZ2UtdGl0bGUge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5pbnB1dFt0eXBlPSdmaWxlJ10ge1xuICAvLyBCb290c3RyYXAgNCBmaWxlIGlucHV0IGhlaWdodCBpcyB0YWxsZXIgYnkgZGVmYXVsdFxuICAvLyB3aGljaCBtYWtlcyB0aGVtIGxvb2sgdWdseVxuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmZvcm0tZ3JvdXAucm93ID4gLmNvbC1mb3JtLWxhYmVsIHtcbiAgLy8gQm9vdHN0cmFwIDQgYWxpZ25zIGxhYmVscyB0byB0aGUgbGVmdFxuICAvLyBmb3IgaG9yaXpvbnRhbCBmb3Jtc1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLy8gUG9seWZpbGwgZGVwcmVjYXRlZCBzZWxlY3RvcnNcblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLXRvZ2dsZTo6YWZ0ZXIsXG4uZHJvcHJpZ2h0IC5kcm9wZG93bi1tZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICAvLyBSZW1vdmUgYm9vdHN0cmFwJ3MgZHJvcGRvd24gY2FyZXRcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gQWRkIHRvIC5sYWJlbCBzbyB0aGF0IG9sZCBzeXN0ZW0gbm90ZXMgdGhhdCBhcmUgc2F2ZWQgdG8gdGhlIGRiXG4vLyB3aWxsIHN0aWxsIHJlY2VpdmUgdGhlIGNvcnJlY3Qgc3R5bGluZ1xuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuLmJhZGdlOm5vdCguZ2wtYmFkZ2UpLFxuLmxhYmVsIHtcbiAgcGFkZGluZzogNHB4IDVweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtbm9ybWFsO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5kaXZpZGVyIHtcbiAgLy8gY29waWVkIHJ1bGVzIGZyb20gbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC9zY3NzL19kcm9wZG93bi5zY3NzOjExNlxuICAvLyB0aGlzIG1pZ2h0IGJlIHNhZmUgdG8ganVzdCByZW1vdmUgaW5zdGVhZFxuICAvLyBtb3N0IHBsYWNlcyB0aGF0IHVzZSBkaXZpZGVyIGFkZCBvdmVycmlkZXMgdG8gdW5kbyB0aGVzZSB0aGluZ3NcbiAgLy8gdGhlcmUgaXMgYWxzbyBhIHByb2JhYmx5LXVuaW50ZW50aW9uYWwgdXNlIGluIGRlcHJlY2F0ZWRfZHJvcGRvd25fZGl2aWRlci5zY3NzXG4gIC8vIHNvIHdlIHdvdWxkIGVuZCB1cCB3aXRoIC5nbC1kcm9wZG93biAuZHJvcGRvd24tZGl2aWRlclxuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogNHB4IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbn1cblxuLmluZm8td2VsbCB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC1ib3JkZXItc2VjdGlvbjtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcblxuICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuXG4gIC53ZWxsLXNlZ21lbnQge1xuICAgIHBhZGRpbmc6IDFyZW07XG5cbiAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci10O1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci10LXNlY3Rpb247XG4gICAgfVxuXG4gICAgcCxcbiAgICBvbCxcbiAgICB1bCxcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jYXJkIHtcbiAgJi5jYXJkLXdpdGhvdXQtYm9yZGVyLFxuICAmLmJnLWxpZ2h0IHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ubmF2LXRhYnMge1xuICAvLyBPdmVycmlkZSBib290c3RyYXAncyBkZWZhdWx0IGJvcmRlclxuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIC5uYXYtbGluayB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cblxuICAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmFsZXJ0IHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmFsZXJ0LWRhbmdlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1kYW5nZXItYm9yZGVyLWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWRhbmdlci10ZXh0LWNvbG9yKTtcbn1cblxuaW5wdXRbdHlwZT1jb2xvcl0uZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xufVxuXG4ucHJvamVjdC10ZW1wbGF0ZXMtYnV0dG9ucyB7XG4gIC5idG4ge1xuICAgIHZlcnRpY2FsLWFsaWduOiB1bnNldDtcbiAgfVxufVxuIiwiOnJvb3Qge1xuICAtLWxheW91dC1zdGlja3ktaGVhZGVyLWhlaWdodDogMHB4OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgLS1jb250YWluZXItcGFkZGluZy14OiAjeyRnbC1zcGFjaW5nLXNjYWxlLTR9O1xuICAtLWFpLXBhbmVsLXdpZHRoOiAwcHg7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAtLWFpLW5hdmlnYXRpb24tcmFpbC1zaXplOiAwcHg7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxufVxuXG46cm9vdC5wYWdlLXdpdGgtYWktcGFuZWwge1xuICAtLWFpLXBhbmVsLXdpZHRoOiBjbGFtcCgyNXJlbSwgMjB2dywgMzVyZW0pO1xuICAtLWFpLW5hdmlnYXRpb24tcmFpbC1zaXplOiAyLjVyZW07XG59XG5cbmh0bWwge1xuICAvLyBTY3JvbGwgYmFycyBzdHlsZXNcbiAgc2Nyb2xsYmFyLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTQwMCkgdHJhbnNwYXJlbnQ7XG5cbiAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICBzY3JvbGxiYXItY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKSB0cmFuc3BhcmVudDtcbiAgfVxuXG4gICYudG91Y2ggLnRvb2x0aXAge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucGFnZS13aXRoLXBhbmVscyB7XG4gIC8vIEZpeCBwYWdlIGhlaWdodFxuICAmLCBib2R5IHtcbiAgICBAYXBwbHkgZ2wtaC1mdWxsO1xuICB9XG5cbiAgYm9keSB7XG4gICAgQGFwcGx5IGdsLWZsZXg7XG4gICAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICAgIEBhcHBseSBnbC1iZy1hcHBsaWNhdGlvbi1jaHJvbWU7XG4gIH1cbn1cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gICYubGltaXQtY29udGFpbmVyLXdpZHRoIHtcbiAgICAuZmxhc2gtY29udGFpbmVyLnN0aWNreSB7XG4gICAgICBtYXgtd2lkdGg6ICRsaW1pdGVkLWxheW91dC13aWR0aDtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4vLyB0aGlzIG5lZ2F0ZXMgdGhlIGVmZmVjdCBvZiB0aGUgd3JhcHBpbmcgZWxlbWVudCBwYWRkaW5nIGFuZCBzY3JvbGxiYXIgd2lkdGggb24gdGhlICdtYWluJyBlbGVtZW50XG4vLyBpdCBhbGxvd3MgdXMgdG8gYWNoaWV2ZSB3aWR0aCBwYXJpdHkgd2l0aCB0aGUgdmlld3BvcnQgaW5uZXIgd2lkdGggYW5kIHJlZHVjZSByZWdyZXNzaW9ucyB3aGVuIG1vdmluZyBmcm9tIG1lZGlhIHF1ZXJpZXMgdG8gY29udGFpbmVyIHF1ZXJpZXNcbi8vIHNjcm9sbGJhciBwYWRkaW5nIGlzIGFkZGVkIG9uIHRoZSBsZWZ0IHNpZGUgdG8gYXZvaWQgaW50cm9kdWNpbmcgcGFnZSBvdmVyZmxvd1xuLmNvbnRhaW5lci1xdWVyaWVzLWVuYWJsZWQge1xuICB3aWR0aDogY2FsYygxMDAlICsgdmFyKC0tY29udGFpbmVyLXBhZGRpbmcteCkgKiAyICsgdmFyKC0tc2Nyb2xsYmFyLXdpZHRoLCAwcHgpKTtcbiAgcGFkZGluZy1yaWdodDogdmFyKC0tY29udGFpbmVyLXBhZGRpbmcteCk7XG4gIHBhZGRpbmctbGVmdDogY2FsYyh2YXIoLS1jb250YWluZXItcGFkZGluZy14KSArIHZhcigtLXNjcm9sbGJhci13aWR0aCwgMHB4KSk7XG4gIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1jb250YWluZXItcGFkZGluZy14KSAqIC0xKTtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoKHZhcigtLWNvbnRhaW5lci1wYWRkaW5nLXgpICsgdmFyKC0tc2Nyb2xsYmFyLXdpZHRoLCAwcHgpKSAqIC0xKTtcbn1cblxuLmxheW91dC1wYWdlIHtcbiAgQGFwcGx5IGdsLXB5LTA7XG59XG5cbi5wYWdlLXdpdGgtcGFuZWxzIHtcbiAgLmxheW91dC1wYWdlOndoZXJlKC5wYWdlLXdpdGgtc3VwZXItc2lkZWJhcikge1xuICAgIEBhcHBseSBnbC1ncmlkO1xuICAgIEBhcHBseSBnbC1ncmlkLWNvbHMtMTtcbiAgICBAYXBwbHkgZ2wtZ3JpZC1yb3dzLVthdXRvLDFmcixhdXRvLHZhcigtLWFpLW5hdmlnYXRpb24tcmFpbC1zaXplKV07XG4gICAgQGFwcGx5IGdsLWdhcC0wO1xuICAgIEBhcHBseSBzbTpnbC1wYi0zO1xuICAgIEBhcHBseSBnbC1taW4taC0wO1xuICAgIEBhcHBseSBnbC1mbGV4LTE7XG5cbiAgICBAYXBwbHkgc206Z2wtcHgtMztcblxuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICBcImJyb2FkY2FzdC1tZXNzYWdlXCJcbiAgICAgIFwicGFuZWxzXCJcbiAgICAgIFwiYWktcGFuZWxcIlxuICAgICAgXCJhaS1uYXZpZ2F0aW9uLXJhaWxcIjtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgIEBhcHBseSBnbC1ncmlkLWNvbHMtW2F1dG8sMWZyLGF1dG8sdmFyKC0tYWktbmF2aWdhdGlvbi1yYWlsLXNpemUpXTtcbiAgICAgIEBhcHBseSBnbC1ncmlkLXJvd3MtW2F1dG8sMWZyXTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwic3VwZXItc2lkZWJhci1uYXYgYnJvYWRjYXN0LW1lc3NhZ2UgYnJvYWRjYXN0LW1lc3NhZ2UgLlwiXG4gICAgICAgIFwic3VwZXItc2lkZWJhci1uYXYgcGFuZWxzIGFpLXBhbmVsIGFpLW5hdmlnYXRpb24tcmFpbFwiO1xuICAgIH1cbiAgfVxuXG4gIC5icm9hZGNhc3Qtd3JhcHBlciB7XG4gICAgZ3JpZC1hcmVhOiBicm9hZGNhc3QtbWVzc2FnZTtcblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byBjaGlsZCBlbGVtZW50XG4gICAgJjpoYXMoPiAuZ2wtYnJvYWRjYXN0LW1lc3NhZ2UpIHtcbiAgICAgIEBhcHBseSBnbC1tYi0zO1xuICAgIH1cbiAgfVxuXG4gIC5zdXBlci1zaWRlYmFyLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAgIGdyaWQtYXJlYTogc3VwZXItc2lkZWJhci1uYXY7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVscy1jb250YWluZXIge1xuICAgIGdyaWQtYXJlYTogcGFuZWxzO1xuICB9XG59XG5cbi5wYWdlLXdpdGgtcGFuZWxzLnBhZ2Utd2l0aC1haS1wYW5lbCAubGF5b3V0LXBhZ2Uge1xuICBAYXBwbHkgc206Z2wtcGItMDtcbiAgQGFwcGx5IGxnOmdsLXBiLTM7XG4gIEBhcHBseSBsZzpnbC1wci0wO1xufVxuXG4ucGFuZWxzLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLWdyb3c7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtcHItMDtcbiAgQGFwcGx5IGdsLXBiLTA7XG4gIEBhcHBseSBnbC1taW4taC0wO1xuXG4gIC8vIEluc2lkZSB0aGUgcGFuZWxzIGNvbnRhaW5lciwgZXZlcnl0aGluZyB0aGF0IGNhbGN1bGF0ZXMgYW4gb2Zmc2V0IGZyb21cbiAgLy8gdGhlIHRvcCBuZWVkcyB0byBpZ25vcmUgYXBwbGljYXRpb24gaGVhZGVyIGhlaWdodCwgc3lzdGVtIGhlYWRlciBoZWlnaHQsXG4gIC8vIHBlcmZvcm1hbmNlIGJhciBoZWlnaHQsIGhlYWRlciBoZWlnaHQgYW5kIHRvcCBiYXIgaGVpZ2h0LCBzaW5jZSB0aGVzZVxuICAvLyBhbGwgbGllIG91dHNpZGUgb2YgdGhlIHBhbmVscy4gTm90ZSB0aGF0IHRoZSBgcHhgIElTIFJFUVVJUkVEIGhlcmUgZm9yXG4gIC8vIHRoZXNlIHZhcmlhYmxlcyB0byBmdW5jdGlvbiBwcm9wZXJseS5cbiAgLS1hcHBsaWNhdGlvbi1oZWFkZXItaGVpZ2h0OiAwcHg7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAtLXN5c3RlbS1oZWFkZXItaGVpZ2h0OiAwcHg7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQ6IDBweDsgLy8gc3R5bGVsaW50LWRpc2FibGUtbGluZSBsZW5ndGgtemVyby1uby11bml0XG4gIC0taGVhZGVyLWhlaWdodDogMHB4OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcbiAgLS10b3AtYmFyLWhlaWdodDogMHB4OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIGxlbmd0aC16ZXJvLW5vLXVuaXRcblxuICAucGFuZWwtY29udGVudC1pbm5lcixcbiAgLnZ1ZS1wb3J0YWwtdGFyZ2V0IC53b3JrLWl0ZW0tZGV0YWlsLXBhbmVsLWNvbnRlbnQge1xuICAgIC8vIEhpZGUgYWxlcnQgd3JhcHBlciBpZiBpdCdzIGVtcHR5XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGRpcmVjdCBhbGVydC13cmFwcGVyIGNoaWxkXG4gICAgPiAuYWxlcnQtd3JhcHBlcjpub3QoOmhhcygqKSkge1xuICAgICAgQGFwcGx5IGdsLWhpZGRlbjtcbiAgICB9XG4gIH1cbn1cblxuLy8gU21vb3RobHkgYW5pbWF0ZSB0aGUgcGFuZWxzIGNvbnRhaW5lciBhbmQgc3VwZXIgc2lkZWJhciB3aGVuIHRoZXkgZXhwYW5kXG4vLyBvciBjb2xsYXBzZS4gYHdpZHRoOiBhdXRvYCBjYW4ndCBub3JtYWxseSBiZSB0cmFuc2l0aW9uZWQsIHNvIHdlIHVzZVxuLy8gYGNhbGMtc2l6ZSgpYCB0b2dldGhlciB3aXRoIGBpbnRlcnBvbGF0ZS1zaXplOiBhbGxvdy1rZXl3b3Jkc2AgdG8gbWFrZSB0aGVcbi8vIGludHJpbnNpYyB3aWR0aCBhbmltYXRhYmxlLlxuQHN1cHBvcnRzICh3aWR0aDogY2FsYy1zaXplKGF1dG8sIHNpemUpKSB7XG4gIC5wYW5lbHMtY29udGFpbmVyLFxuICAuc3VwZXItc2lkZWJhci5zdXBlci1zaWRlYmFyLXRvZ2dsZWQtbWFudWFsbHkge1xuICAgIHdpZHRoOiBjYWxjLXNpemUoYXV0bywgc2l6ZSk7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXVua25vd24gKi9cbiAgICBpbnRlcnBvbGF0ZS1zaXplOiBhbGxvdy1rZXl3b3JkcztcbiAgICB0cmFuc2l0aW9uOiB3aWR0aCAuMjVzICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgICAgICAgICAgICAgIHRyYW5zZm9ybSAuMjVzICRnbC1lYXNpbmctb3V0LWN1YmljO1xuICB9XG59XG5cbi5haS1wYW5lbC13cmFwcGVyIHtcbiAgZ3JpZC1hcmVhOiBhaS1wYW5lbDtcbiAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZTtcbn1cblxuLmFpLW5hdmlnYXRpb24tcmFpbCB7XG4gIGdyaWQtYXJlYTogYWktbmF2aWdhdGlvbi1yYWlsO1xuXG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC0xO1xuICBAYXBwbHkgZ2wtaXRlbXMtY2VudGVyO1xuICBAYXBwbHkgZ2wtZ2FwLTU7XG4gIEBhcHBseSBnbC1wLTM7XG4gIEBhcHBseSBnbC1oLVt2YXIoLS1haS1uYXZpZ2F0aW9uLXJhaWwtc2l6ZSldO1xuXG4gIEBhcHBseSBsZzpnbC1mbGV4LWNvbDtcbiAgQGFwcGx5IGxnOmdsLWdhcC0zO1xuICBAYXBwbHkgbGc6Z2wtdy1bdmFyKC0tYWktbmF2aWdhdGlvbi1yYWlsLXNpemUpXTtcbiAgQGFwcGx5IGxnOmdsLWgtZnVsbDtcblxuICAuZ2wtbmF2LWl0ZW0uc2VsZWN0ZWQ6OmJlZm9yZSB7XG4gICAgQGFwcGx5IC1nbC1ib3R0b20tWzZweF07XG4gICAgQGFwcGx5IGxnOmdsLWJvdHRvbS0yO1xuICAgIEBhcHBseSBsZzotZ2wtcmlnaHQtWzZweF07XG4gIH1cbn1cblxuLy8gV2hlbiB0aGUgQUkgcGFuZWwgaXMgbWF4aW1pemVkXG4ubGF5b3V0LXBhZ2UuYWktcGFuZWwtbWF4aW1pemVkIHtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChsZykge1xuICAgIEBhcHBseSBnbC1ncmlkLWNvbHMtW2F1dG8sMmZyLDNmcl07XG4gIH1cblxuICAuYWktcGFuZWwtd3JhcHBlciB7XG4gICAgZ3JpZC1jb2x1bW4tc3RhcnQ6IHBhbmVscztcbiAgICBncmlkLWNvbHVtbi1lbmQ6IGFpLXBhbmVsO1xuICB9XG5cbiAgLmFpLXBhbmVsIHtcbiAgICBAYXBwbHkgZ2wtdy1mdWxsO1xuICAgIEBhcHBseSBnbC1ib3JkZXItbC10cmFuc3BhcmVudDtcbiAgICBAYXBwbHkgZGFyazpnbC1ib3JkZXItbC1zdWJ0bGU7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQteGw7XG4gICAgQGFwcGx5IGdsLXNoYWRvdy1zbTtcbiAgICBjbGlwLXBhdGg6IG5vbmU7XG4gIH1cblxuICAvLyBIaWRpbmcgYWxsIG90aGVyIHBhbmVscyB3aGVuIERBUCBpcyBtYXhpbWl6ZWRcbiAgLnBhbmVscy1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBQcmVzZXJ2aW5nIG90aGVyIHBhbmVscyB3aGVuIERBUCBpcyBtYXhpbWl6ZWQgb24gYmlnZ2VyIHNjcmVlbnNcbiAgQG1lZGlhKG1pbi13aWR0aDogI3skcGFuZWxlZC1sYXlvdXQtdWx0cmEtd2lkZS1icmVha3BvaW50fSkge1xuICAgIC5haS1wYW5lbC13cmFwcGVyIHtcbiAgICAgIGdyaWQtY29sdW1uLXN0YXJ0OiBhaS1wYW5lbDtcbiAgICB9XG5cbiAgICAuYWktcGFuZWwge1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1sO1xuICAgICAgQGFwcGx5IGdsLXJvdW5kZWQtbC1ub25lO1xuICAgIH1cblxuICAgIC5wYW5lbHMtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG59XG5cbi5jb250ZW50LXdyYXBwZXIge1xuICBwYWRkaW5nLXRvcDogdmFyKC0tdG9wLWJhci1oZWlnaHQpO1xuICBwYWRkaW5nLWJvdHRvbTogJGNvbnRlbnQtd3JhcHBlci1wYWRkaW5nO1xufVxuXG4uY29udGFpbmVyIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHotaW5kZXg6IDU7XG5cbiAgLmNvbnRlbnQge1xuICAgIG1hcmdpbjogMDtcblxuICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkgeyBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihzbSwgcGFuZWwpIHtcbiAgICAuY29udGFpbmVyIC50aXRsZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmNvbnRhaW5lci1saW1pdGVkIHtcbiAgbWF4LXdpZHRoOiAkZml4ZWQtbGF5b3V0LXdpZHRoO1xuXG4gICYubGltaXQtY29udGFpbmVyLXdpZHRoIHtcbiAgICBtYXgtd2lkdGg6ICRsaW1pdGVkLWxheW91dC13aWR0aDtcbiAgfVxufVxuXG4uYWxlcnQtd3JhcHBlci10b3Atc3BhY2Uge1xuICAuZ2wtYWxlcnQ6Zmlyc3QtY2hpbGQge1xuICAgIEBhcHBseSBnbC1tdC0zO1xuICB9XG59XG5cbi5hbGVydC13cmFwcGVyIHtcbiAgLmFsZXJ0LWxpbmstZ3JvdXAge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKG1kLCBwYW5lbCkge1xuICAgIC5hbGVydC1saW5rLWdyb3VwIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogJGdsLXBhZGRpbmctODtcbiAgICB9XG4gIH1cbn1cblxuLmZ1bGxzY3JlZW4tbGF5b3V0IHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIGhlaWdodDogMTAwdmg7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWpzLWNsYXNzXG4gID4gI2pzLXBlZWsge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgLmZsYXNoLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5nbC1kcmF3ZXItcmVzcG9uc2l2ZSB7XG4gIC8vIEJvdGggd2lkdGggJiBtaW4td2lkdGhcbiAgLy8gYXJlIGRlZmluZWQgYXMgcGVyIFBhamFtYXNcbiAgLy8gU2VlIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL21lcmdlX3JlcXVlc3RzLzQ0OTAyI25vdGVfNDI5MDU2MTgyXG4gIHdpZHRoOiAyOCU7XG4gIG1pbi13aWR0aDogNDAwcHg7XG4gIHBhZGRpbmctbGVmdDogJGdsLXBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRnbC1wYWRkaW5nO1xuICBib3gtc2hhZG93OiBub25lO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWw7XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gICAgbWluLXdpZHRoOiB1bnNldDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8vIFRoZXNlIG92ZXJyaWRlcyBzaG91bGQgbm90IGhhcHBlbiBoZXJlLFxuICAvLyB3ZSBzaG91bGQgaWRlYWxseSBoYXZlIHN1cHBvcnQgZm9yIGN1c3RvbVxuICAvLyBoZWFkZXIgYW5kIGJvZHkgY2xhc3NlcyBpbiBgR2xEcmF3ZXJgLlxuICAuZ2wtZHJhd2VyLWhlYWRlcixcbiAgLmdsLWRyYXdlci1ib2R5ID4gKiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cblxuLy8gSGlkZXMgQ2hyb21lJ3MgaU9TIHRyYW5zbGF0aW9uIHRvb2x0aXBcbi8vXG4vLyBDaHJvbWUgb24gaU9TIGluamVjdHMgYCNnb29nLWd0LXR0YCBpbnRvIHRoZSBgPGJvZHk+YCB3aGVuIHRyYW5zbGF0aW9uIGlzIGVuYWJsZWQuXG4vLyBUaGUgYWNjb21wYW55aW5nIEdvb2dsZSBDU1MsIHdoaWNoIHdvdWxkIG5vcm1hbGx5IGhpZGUgdGhpcyBlbGVtZW50LCBpcyBibG9ja2VkXG4vLyBieSBHaXRMYWIncyBDU1AuIFdpdGhvdXQgdGhhdCBzdHlsZXNoZWV0LCB0aGUgZWxlbWVudCBiZWNvbWVzIHZpc2libHkgcmVuZGVyZWQuXG4jZ29vZy1ndC10dCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qXG4gKiBUaGVzZSBhcmUgdXNlZCBieSB0aGUgYFRhYiB3aWR0aGAgdXNlciBwcmVmZXJlbmNlIGluXG4gKiBgaHR0cHM6Ly9naXRsYWIuY29tLy0vcHJvZmlsZS9wcmVmZXJlbmNlc2AuIFRoZSBgY3NzX2NsYXNzX2Zvcl91c2VyYCBtZXRob2QgaW5cbiAqIGBsaWIvZ2l0bGFiL3RhYl93aWR0aC5yYmAgaXMgdXNlZCB0byBhZGQgb25lIG9mIHRoZXNlIGNsYXNzZXMgdG8gdGhlIGBib2R5YCBlbGVtZW50LlxuKi9cblxuQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAxMiB7XG4gICN7Jy50YWItd2lkdGgtI3skaX0nfSB7XG4gICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbiAgICAtbW96LXRhYi1zaXplOiAkaTtcbiAgICB0YWItc2l6ZTogJGk7XG4gIH1cbn1cbiIsIjpyb290IHtcbiAgLyoqXG4gICAqIEJsb29tIGJhY2tncm91bmRzXG4gICAqL1xuXG4gIC8vIFRoZSB0d28gYmxvb20gdmFyaWFudHMgYXJlIHJlbmRlcmVkIGFzIGZpeGVkLCBmdWxsLXZpZXdwb3J0IHBzZXVkby1lbGVtZW50XG4gIC8vIGxheWVycyBzbyB0b2dnbGluZyB0aGUgQUkgcGFuZWwgY3Jvc3MtZmFkZXMgdGhlbSB2aWEgb3BhY2l0eSBpbnN0ZWFkIG9mXG4gIC8vIHN3YXBwaW5nIGEgKG5vbi1hbmltYXRhYmxlKSBiYWNrZ3JvdW5kLWltYWdlLlxuICAvL1xuICAvLyBUaGUgei1pbmRleDogLTEgbGF5ZXJzIHN0YXkgdmlzaWJsZSBiZWNhdXNlIGJvZHkncyBiYWNrZ3JvdW5kLWNvbG9yXG4gIC8vIHByb3BhZ2F0ZXMgdG8gdGhlIGNhbnZhcyAoaHRtbCBoYXMgbm8gYmFja2dyb3VuZCBvZiBpdHMgb3duKSwgc28gYm9keVxuICAvLyBpdHNlbGYgcGFpbnRzIG5vIGJhY2tncm91bmQgb3ZlciB0aGVtLlxuICAmLndpdGgtYmxvb20gYm9keSB7XG4gICAgQGFwcGx5IGdsLWJnLWFwcGxpY2F0aW9uLWNocm9tZTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgICAgIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNnMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGVmYXVsdCB2aWV3IHdoZW4gQUkgZmVhdHVyZXMgYXJlIGF2YWlsYWJsZVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKGxnKSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnYmxvb21zL2Jsb29tLXNpZGUucG5nJyk7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCByaWdodDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAzNTBweCA2MDBweDtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBSSBwYW5lbCBpcyBvcGVuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdibG9vbXMvYmxvb20tYm90dG9tLnBuZycpO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIHJpZ2h0IC0zMDBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMTIwMHB4IDQwMHB4O1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICAmLndpdGgtYmxvb20uYWktcGFuZWwtaXMtb3BlbiBib2R5IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNpZ24gaW4vdXAgcGFnZXNcbiAgJi5odG1sLWRldmlzZS1sYXlvdXQgYm9keSB7XG4gICAgQGFwcGx5IGdsLWJnLWFwcGxpY2F0aW9uLWNocm9tZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIGluc2V0OiAwO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnYmxvb21zL2Jsb29tLWdyYW5kLWFtYmllbnQucG5nJyk7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b20gY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxNDQwcHggNTI1cHg7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIH1cbiAgfVxuXG4gICYuaHRtbC1kZXZpc2UtbGF5b3V0IC5mb290ZXItY29udGFpbmVyIGhyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCJAdXNlIFwic2FzczpsaXN0XCI7XG4vLyBUaGlzIGZpbGUgaXMgYmFzZWQgb2ZmIGFuaW1hdGUuY3NzIDMuNS4xLCBhdmFpbGFibGUgaGVyZTpcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9kYW5lZGVuL2FuaW1hdGUuY3NzL2Jsb2IvMy41LjEvYW5pbWF0ZS5jc3Ncbi8vXG4vLyBhbmltYXRlLmNzcyAtIGh0dHA6Ly9kYW5lZGVuLm1lL2FuaW1hdGVcbi8vIFZlcnNpb24gLSAzLjUuMVxuLy8gTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIC0gaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuLy9cbi8vIENvcHlyaWdodCAoYykgMjAxNiBEYW5pZWwgRWRlblxuXG4uYW5pbWF0ZWQge1xuICBAaW5jbHVkZSB3ZWJraXQtcHJlZml4KGFuaW1hdGlvbi1kdXJhdGlvbiwgMXMpO1xuICBAaW5jbHVkZSB3ZWJraXQtcHJlZml4KGFuaW1hdGlvbi1maWxsLW1vZGUsIGJvdGgpO1xuXG4gICYub25jZSB7XG4gICAgQGluY2x1ZGUgd2Via2l0LXByZWZpeChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCAxKTtcbiAgfVxuXG4gICYuc2hvcnQge1xuICAgIEBpbmNsdWRlIHdlYmtpdC1wcmVmaXgoYW5pbWF0aW9uLWR1cmF0aW9uLCAzMjFtcyk7XG4gICAgQGluY2x1ZGUgd2Via2l0LXByZWZpeChhbmltYXRpb24tZmlsbC1tb2RlLCBub25lKTtcbiAgfVxufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMocHVsc2UpIHtcbiAgZnJvbSxcbiAgdG8ge1xuICAgIEBpbmNsdWRlIHdlYmtpdC1wcmVmaXgodHJhbnNmb3JtLCBzY2FsZTNkKDEsIDEsIDEpKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgQGluY2x1ZGUgd2Via2l0LXByZWZpeCh0cmFuc2Zvcm0sIHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSkpO1xuICB9XG59XG5cbi5wdWxzZSB7XG4gIEBpbmNsdWRlIHdlYmtpdC1wcmVmaXgoYW5pbWF0aW9uLW5hbWUsIHB1bHNlKTtcbn1cblxuLypcbiogR2VuZXJhbCBob3ZlciBhbmltYXRpb25zXG4qL1xuXG5cbi8vIFNhc3MgbXVsdGlwbGUgdHJhbnNpdGlvbnMgbWl4aW4gfCBodHRwczovL2dpc3QuZ2l0aHViLmNvbS90b2JpYXNhaGxpbi83YTQyMWZiOTMwNmE0ZjUxOGFhYlxuLy8gVXNhZ2U6ICAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCwgaGVpZ2h0IDAuM3MgZWFzZS1pbi1vdXQpO1xuLy8gT3V0cHV0OiAgLXdlYmtpdC10cmFuc2l0aW9uKHdpZHRoIDAuMnMsIGhlaWdodCAwLjNzIGVhc2UtaW4tb3V0KTtcbi8vICAgICAgICAgIHRyYW5zaXRpb24od2lkdGggMC4ycywgaGVpZ2h0IDAuM3MgZWFzZS1pbi1vdXQpO1xuLy9cbi8vIFBhc3MgaW4gYW55IG51bWJlciBvZiB0cmFuc2l0aW9uc1xuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb25zLi4uKSB7XG4gICR1bmZvbGRlZC10cmFuc2l0aW9uczogKCk7XG4gIEBlYWNoICR0cmFuc2l0aW9uIGluICR0cmFuc2l0aW9ucyB7XG4gICAgJHVuZm9sZGVkLXRyYW5zaXRpb25zOiBsaXN0LmFwcGVuZCgkdW5mb2xkZWQtdHJhbnNpdGlvbnMsIHVuZm9sZC10cmFuc2l0aW9uKCR0cmFuc2l0aW9uKSwgY29tbWEpO1xuICB9XG5cbiAgdHJhbnNpdGlvbjogJHVuZm9sZGVkLXRyYW5zaXRpb25zO1xufVxuXG5AZnVuY3Rpb24gdW5mb2xkLXRyYW5zaXRpb24gKCR0cmFuc2l0aW9uKSB7XG4gIC8vIERlZmF1bHQgdmFsdWVzXG4gICRwcm9wZXJ0eTogYWxsO1xuICAkZHVyYXRpb246ICRnZW5lcmFsLWhvdmVyLXRyYW5zaXRpb24tZHVyYXRpb247XG4gICRlYXNpbmc6ICRnZW5lcmFsLWhvdmVyLXRyYW5zaXRpb24tY3VydmU7IC8vIEJyb3dzZXIgZGVmYXVsdCBpcyBlYXNlLCB3aGljaCBpcyB3aGF0IHdlIHdhbnRcbiAgJGRlbGF5OiBudWxsOyAvLyBCcm93c2VyIGRlZmF1bHQgaXMgMCwgd2hpY2ggaXMgd2hhdCB3ZSB3YW50XG4gICRkZWZhdWx0LXByb3BlcnRpZXM6ICgkcHJvcGVydHksICRkdXJhdGlvbiwgJGVhc2luZywgJGRlbGF5KTtcblxuICAvLyBHcmFiIHRyYW5zaXRpb24gcHJvcGVydGllcyBpZiB0aGV5IGV4aXN0XG4gICR1bmZvbGRlZC10cmFuc2l0aW9uOiAoKTtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsaXN0Lmxlbmd0aCgkZGVmYXVsdC1wcm9wZXJ0aWVzKSB7XG4gICAgJHA6IG51bGw7XG4gICAgQGlmICRpIDw9IGxpc3QubGVuZ3RoKCR0cmFuc2l0aW9uKSB7XG4gICAgICAkcDogbGlzdC5udGgoJHRyYW5zaXRpb24sICRpKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgICRwOiBsaXN0Lm50aCgkZGVmYXVsdC1wcm9wZXJ0aWVzLCAkaSk7XG4gICAgfVxuICAgICR1bmZvbGRlZC10cmFuc2l0aW9uOiBsaXN0LmFwcGVuZCgkdW5mb2xkZWQtdHJhbnNpdGlvbiwgJHApO1xuICB9XG5cbiAgQHJldHVybiAkdW5mb2xkZWQtdHJhbnNpdGlvbjtcbn1cblxuLmJ0biB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvciwgYm9yZGVyLWNvbG9yLCBjb2xvciwgYm94LXNoYWRvdyk7XG59XG5cbi5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yKTtcbn1cblxuLm5vdGUtYWN0aW9uLWJ1dHRvbixcbi5kcm9wZG93bi10b2dnbGUtY2FyZXQge1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKGNvbG9yKTtcbn1cblxuLnN0YWdlLW5hdi1pdGVtIHtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yLCBib3gtc2hhZG93KTtcbn1cblxuLmRyb3Bkb3duLW1lbnUgYSxcbi5kcm9wZG93bi1tZW51IGJ1dHRvbiB7XG4gIHRyYW5zaXRpb246IG5vbmU7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mYWRlLWluIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW4gJGZhZGUtaW4tZHVyYXRpb24gMTtcbn1cblxuQGtleWZyYW1lcyBmYWRlSW5IYWxmIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwLjU7XG4gIH1cbn1cblxuLmZhZGUtaW4taGFsZiB7XG4gIGFuaW1hdGlvbjogZmFkZUluSGFsZiAkZmFkZS1pbi1kdXJhdGlvbiAxO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkZ1bGwge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMC41O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uZmFkZS1pbi1mdWxsIHtcbiAgYW5pbWF0aW9uOiBmYWRlSW5GdWxsICRmYWRlLWluLWR1cmF0aW9uIDE7XG59XG5cbi5hbmltYXRpb24tY29udGFpbmVyIHtcbiAgaGVpZ2h0OiA0MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICYuYW5pbWF0aW9uLWNvbnRhaW5lci1zbWFsbCB7XG4gICAgaGVpZ2h0OiAxMnB4O1xuICB9XG5cbiAgJi5hbmltYXRpb24tY29udGFpbmVyLXJpZ2h0IHtcbiAgICAuc2tlbGV0b24tbGluZS0yIHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMTUwcHg7XG4gICAgfVxuICB9XG5cbiAgW2NsYXNzXj0nc2tlbGV0b24tbGluZS0nXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyAnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBhbmltYXRpb246IGJsb2NrVGV4dFNoaW5lIDFzIGxpbmVhciBpbmZpbml0ZSBmb3J3YXJkcztcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgJGdyYXktNTAgMCUsXG4gICAgICAkZ3JheS0xMCAyMCUsXG4gICAgICAkZ3JheS01MCA0MCUsXG4gICAgICAkZ3JheS01MCAxMDAlKTtcbiAgICAgIGhlaWdodDogMTBweDtcbiAgICB9XG4gIH1cbn1cblxuJHNrZWxldG9uLWxpbmUtd2lkdGhzOiAoXG4gIDE1NnB4LFxuICAyMzVweCxcbiAgMjAwcHgsXG4pO1xuXG5AZm9yICRjb3VudCBmcm9tIDEgdGhyb3VnaCBsaXN0Lmxlbmd0aCgkc2tlbGV0b24tbGluZS13aWR0aHMpIHtcbiAgLnNrZWxldG9uLWxpbmUtI3skY291bnR9IHtcbiAgICB3aWR0aDogbGlzdC5udGgoJHNrZWxldG9uLWxpbmUtd2lkdGhzLCAkY291bnQpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYmxvY2tUZXh0U2hpbmUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00NjhweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDY4cHgpO1xuICB9XG59XG5cbi8vIFRoZXNlIGFyZSBjb21wb3NpdGUgY2xhc3NlcyBmb3IgdXNlIHdpdGggVnVlIFRyYW5zaXRpb25cbi8vIGh0dHBzOi8vdnVlanMub3JnL2d1aWRlL2J1aWx0LWlucy90cmFuc2l0aW9uXG4uc2xpZGUtZG93bi1lbnRlci1hY3RpdmUge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4ycztcbn1cblxuLnNsaWRlLWRvd24tZW50ZXIsXG4uc2xpZGUtZG93bi1sZWF2ZS10byB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzAlKTtcbn1cblxuLnNsaWRlLWluLWZ3ZC1ib3R0b20tZW50ZXItYWN0aXZlIHtcbiAgYW5pbWF0aW9uOiBzbGlkZS1pbi1md2QtYm90dG9tIDAuNHMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpIGJvdGg7XG59XG5cbi5zbGlkZS1pbi1md2QtYm90dG9tLWxlYXZlLWFjdGl2ZSB7XG4gIGFuaW1hdGlvbjogc2xpZGUtaW4tZndkLWJvdHRvbSAwLjRzIGN1YmljLWJlemllcigwLjI1LCAwLjQ2LCAwLjQ1LCAwLjk0KSBib3RoIHJldmVyc2U7XG59XG5cbi8qIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbiAqIEdlbmVyYXRlZCBieSBBbmltaXN0YSBvbiAyMDE5LTQtMjYgMTc6NDA6NDFcbiAqIHc6IGh0dHA6Ly9hbmltaXN0YS5uZXQsIHQ6IEBjc3NhbmltaXN0YVxuICogLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSAqL1xuQGtleWZyYW1lcyBzbGlkZS1pbi1md2QtYm90dG9tIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigtMTQwMHB4KSB0cmFuc2xhdGVZKDgwMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApIHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4vLyBIb3RzcG90IHB1bHNlIGFuaW1hdGlvblxuLmhvdHNwb3QtcHVsc2Uge1xuICBAYXBwbHkgZ2wtcmVsYXRpdmU7XG4gIFxuICAvLyBTdGF0aWMgZG90IHRoYXQgYXBwZWFycyBhZnRlciBmbGV4IGNvbnRlbnRcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIEBhcHBseSBnbC1oLTM7XG4gICAgQGFwcGx5IGdsLXctMztcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1mdWxsO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLXN0YXR1cy1pbmZvLWljb24tY29sb3IpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgei1pbmRleDogMjtcbiAgfVxuICBcbiAgLy8gUHVsc2luZyByaW5nIHBvc2l0aW9uZWQgb24gdG9wIG9mIHRoZSBzdGF0aWMgZG90XG4gICY6OmJlZm9yZSB7XG4gICAgQGluY2x1ZGUgZ2wtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi1hbmltYXRpb247XG4gICAgY29udGVudDogJyc7XG4gICAgQGFwcGx5IGdsLWFic29sdXRlO1xuICAgIEBhcHBseSBnbC1oLTM7XG4gICAgQGFwcGx5IGdsLXctMztcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1mdWxsO1xuICAgIEBhcHBseSBnbC1wb2ludGVyLWV2ZW50cy1ub25lO1xuICAgIFxuICAgIC8qIFBvc2l0aW9uIGV4YWN0bHkgd2hlcmUgdGhlIDo6YWZ0ZXIgZG90IHdpbGwgYmUgKi9cbiAgICByaWdodDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgXG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiKGZyb20gdmFyKC0tZ2wtc3RhdHVzLWluZm8taWNvbi1jb2xvcikgciBnIGIgLyAwLjcpO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYW5pbWF0aW9uOiBob3RzcG90LXB1bHNlIDJzIGluZmluaXRlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGhvdHNwb3QtcHVsc2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpIHNjYWxlKDEpO1xuICAgIG9wYWNpdHk6IDAuNztcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSBzY2FsZSgyLjUpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbiIsIi8qKlxuKiBUcmFuc2l0aW9uIGNsYXNzZXMgYXJlIGJ1aWx0IGR5bmFtaWNhbGx5LCBwbGVhc2UgcmVhZCBhYm91dCB2dWUtdHJhbnNpdGlvbnNcbiogaGVyZSBiZWZvcmUgcmVtb3ZpbmcgaHR0cHM6Ly92dWVqcy5vcmcvZ3VpZGUvYnVpbHQtaW5zL3RyYW5zaXRpb25cbioqL1xuXG4uZmFkZS1lbnRlci1hY3RpdmUsXG4uZmFkZS1sZWF2ZS1hY3RpdmUsXG4uZmFkZS1pbi1lbnRlci1hY3RpdmUsXG4uZmFkZS1vdXQtbGVhdmUtYWN0aXZlIHtcbiAgQGFwcGx5IGdsLXRyYW5zaXRpb24tb3BhY2l0eTtcbn1cblxuLmZhZGUtZW50ZXIsXG4uZmFkZS1pbi1lbnRlcixcbi5mYWRlLW91dC1sZWF2ZS10byxcbi5mYWRlLWxlYXZlLXRvIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNsaWRlLWVudGVyLWZyb20tZWxlbWVudCB7XG4gICYuc2xpZGUtZW50ZXIsXG4gICYuc2xpZGUtbGVhdmUtdG8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1MCUpO1xuICB9XG59XG5cbi5zbGlkZS1lbnRlci10by1lbGVtZW50IHtcbiAgJi5zbGlkZS1lbnRlcixcbiAgJi5zbGlkZS1sZWF2ZS10byB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxNTAlKTtcbiAgfVxufVxuXG4uc2xpZGUtZW50ZXItYWN0aXZlLFxuLnNsaWRlLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAzMDBtcyBlYXNlLW91dDtcbn1cblxuLnNsaWRlLWVudGVyLXRvLFxuLnNsaWRlLWxlYXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuIiwiLy8gSW5saW5lIGNvZGUtc25pcHBldCBlbWJlZHMgcmVuZGVyZWQgZnJvbSBibG9iIHBlcm1hbGlua3MgaW4gR2l0TGFiIEZsYXZvcmVkXG4vLyBNYXJrZG93biAoc2VlIEJhbnphaTo6RmlsdGVyOjpSZXBvc2l0b3J5QmxvYkVtYmVkRmlsdGVyKS5cbi8vXG4vLyBUaGUgY29kZSBib2R5IGFuZCBsaW5lLW51bWJlciBndXR0ZXIgcmV1c2UgdGhlIGJsb2Igdmlld2VyJ3Ncbi8vIGAuZmlsZS1jb250ZW50LmNvZGVgIHN0eWxpbmcgKGZyYW1ld29yay9oaWdobGlnaHQpLCBzbyB0aGVzZSBydWxlcyBvbmx5IGFkZFxuLy8gdGhlIGNhcmQgY2hyb21lIGFuZCBhZGp1c3QgdGhlIGd1dHRlciwgd2hvc2UgZW50cmllcyBhcmUgcGxhaW4gbGlua3MgcmF0aGVyXG4vLyB0aGFuIHRoZSBibG9iIHZpZXdlcidzIGZhbmN5IGxpbmUgYW5jaG9ycy5cbi5ibG9iLWVtYmVkIHtcbiAgbWFyZ2luOiAkZ2wtcGFkZGluZyAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1sZztcblxuICAuYmxvYi1lbWJlZC1oZWFkZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgIGdhcDogJGdsLXBhZGRpbmctODtcbiAgICBwYWRkaW5nOiAkZ2wtcGFkZGluZy04ICRnbC1wYWRkaW5nO1xuICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICB9XG5cbiAgLmJsb2ItZW1iZWQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICB9XG5cbiAgLmxpbmUtbnVtYmVycyBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAvLyBUaGVyZSBpcyBubyBsaW5lLWxpbmsgaWNvbiBoZXJlLCBzbyBkcm9wIHRoZSBibG9iIHZpZXdlcidzIGhvdmVyIGhpdC1hcmVhLlxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIubm90aGluZy1oZXJlLWJsb2NrIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxNnB4O1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtbm9ybWFsO1xuICBmb250LXNpemU6IDE0cHg7XG5cbiAgJi5kaWZmLWNvbGxhcHNlZCB7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuXG4gICAgLmNsaWNrLXRvLWV4cGFuZCB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogaW5pdGlhbDtcbiAgICB9XG4gIH1cbn1cblxuLnJvdy1jb250ZW50LWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgcGFkZGluZzogJGdsLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuXG4gICYudG9wLWJsb2NrIHtcbiAgICBib3JkZXItdG9wOiAwO1xuXG4gICAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gICYubWlkZGxlLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkZ2wtcGFkZGluZy0yNDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJi5zZWNvbmQtYmxvY2sge1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gICYuZm9vdGVyLWJsb2NrIHtcbiAgICBtYXJnaW4tdG9wOiAkZ2wtcGFkZGluZy0yNDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG5cbiAgJi5jb250ZW50LWNvbXBvbmVudC1ibG9jayB7XG4gICAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIH1cblxuICAudGl0bGUge1xuICAgIEBhcHBseSBnbC10ZXh0LWhlYWRpbmc7XG4gIH1cblxuICA+IHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uY29udGVudC1ibG9jayB7XG4gIHBhZGRpbmc6ICRnbC1wYWRkaW5nIDA7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcblxuICA+IC5jb250cm9scyB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbi5sYW5kaW5nIHtcbiAgbWFyZ2luOiAkZ2wtcGFkZGluZyBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdsLWJhbm5lci1pbnRyby1ib3JkZXItY29sb3IpO1xuICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1pbmZvLWJhY2tncm91bmQtY29sb3IpO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAuc3ZnLWNvbnRhaW5lciB7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuXG4uZW1wdHktc3RhdGUge1xuICBtYXJnaW46IDUlIGF1dG8gMDtcblxuICAudGV4dC1jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDQ2MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuICB9XG5cbiAgLmVtb2ppLWljb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC5idG46bm90KC5zcGxpdC1jb250ZW50LWJ1dHRvbik6bm90KC5kcm9wZG93bi10b2dnbGUtc3BsaXQpIHtcbiAgICBtYXJnaW46ICRnbC1wYWRkaW5nLTggJGdsLXBhZGRpbmctNDtcblxuICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46ICRnbC1wYWRkaW5nLTggMDtcbiAgICB9XG4gIH1cbn1cblxuLmNvZGUtYmxvY2sge1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBmb250LXNpemU6IDEycHg7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogJGdyaWQtc2l6ZTtcblxuICBjb2RlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xuICAgIHBhZGRpbmc6IGluaGVyaXQ7XG4gIH1cbn1cblxuLmdsLWVtcHR5LXN0YXRlIHtcbiAgbWFyZ2luLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtNztcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tanMtY2xhc3NcbiNqcy12dWUtcGFnZS1icmVhZGNydW1icy13cmFwcGVyIHtcbiAgZmxleC1ncm93OiAxO1xuICBtaW4td2lkdGg6IDFweDtcblxuICAvKlxuICAgKiBPdXIgYXV0by1yZXNpemluZyBHbEJyZWFkY3J1bWIgY29tcG9uZW50IHdvcmtzIGJlc3Qgd2hlbiBpdCBpcyBzZXQgdG8gZ3JvdyB3aXRoIHRoZSBhdmFpbGFibGUgc3BhY2UuXG4gICAqIE9ubHkgdGhpcyB3YXkgY2FuIGl0cyBSZXNpemVPYnNlcnZlciBkZXRlY3QgdGhhdCBtb3JlIHNwYWNlIHRoYW4gY3VycmVudGx5IHRha2VuIGlzIGF2YWlsYWJsZSxcbiAgICogc28gaXQgY2FuIHVuY29sbGFwc2UgaXRlbXMgd2hlbiBtb3JlIHNwYWNlIGJlY29tZXMgYXZhaWxhYmxlLlxuICAgKiBCdXQgd2UgZG8gKm5vdCogd2FudCB0aGlzIGVmZmVjdCBvbiBwYWdlcyB0aGF0IHVzZSB0aGUgaW5qZWN0VnVlQXBwQnJlYWRjcnVtYnMoKSBtZWNoYW5pc20uXG4gICAqIFRoZXJlLCB3ZSB3YW50IHRoZSBsZWZ0aGFuZCBicmVhZGNydW1icyBvbmx5IHRha2UgYXMgbXVjaCBzcGFjZSBhcyB0aGV5IG5lZWRlZCBvbiB0aGVpciBmaXJzdCBzaXplIGNhbGMsXG4gICAqIHNvIHRoYXQgdGhlIHNlY29uZCwgaW5qZWN0ZWQgR2xCcmVhZGNydW1iIGNvbXBvbmVudCBzaXRzIHJpZ2h0IG5leHQgdG8gaXQsIHdpdGggbm8gXCJncm93IGVmZmVjdFwiIHRha2luZ1xuICAgKiBlbXB0eSBzcGFjZSBiZXR3ZWVuIHRoZW0uXG4gICAqIFRoZSBvbmx5IGRvd25zaWRlIHRvIHRoaXMgYXBwcm9hY2ggaXMgdGhhdCBvbiBzdWNoIGluamVjdGVkIHBhZ2VzLCB0aGUgbGVmdGhhbmQgYnJlYWRjcnVtYnMgd29uJ3RcbiAgICogdW5jb2xsYXBzZSB0aGVtc2VsdmVzIHdoZW4gbW9yZSBzcGFjZSBiZWNvbWVzIGF2YWlsYWJsZSwgYXMgdGhleSB3b24ndCBcImdyb3dcIiBpbnRvIGl0LCBub3QgdHJpZ2dlcmluZ1xuICAgKiB0aGVpciBSZXNpemVPYnNlcnZlci5cbiAgICovXG4gIG5hdi5nbC1icmVhZGNydW1iczpvbmx5LW9mLXR5cGUge1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuXG4gIC8qIElmIGEgVnVlIGFwcCBwb3J0YWxzIGl0cyBicmVhZGNydW1icyBoZXJlIChsaWtlIGBOZXdOYW1lc3BhY2VQYWdlYCBkb2VzKSwgaGlkZSB0aGUgb3RoZXJzISAqL1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gZGlyZWN0IGNoaWxkcmVuIG9mIGJyZWFkY3J1bWIgY29udGFpbmVyICovXG4gID4gOmhhcyh+IC52dWUtcG9ydGFsLXRhcmdldCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLyogLi4uIGFuZCBnaXZlIHBvcnRhbGVkIGVsZW1lbnQgcm9vbSB0byBncm93ICovXG4gID4gLnZ1ZS1wb3J0YWwtdGFyZ2V0IHtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cbn1cbiIsIkBtaXhpbiBidG4tZGVmYXVsdCB7XG4gIGJvcmRlci1yYWRpdXM6IHZhcigtLWdsLWJ1dHRvbi1ib3JkZXItcmFkaXVzKTtcbiAgZm9udC1zaXplOiAkZ2wtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgcGFkZGluZzogJGdsLXZlcnQtcGFkZGluZyAkZ2wtYnRuLXBhZGRpbmc7XG5cbiAgJjpmb2N1cy12aXNpYmxlLFxuICAmOmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ0bi1hY3RpdmUtZ3JheTtcbiAgfVxufVxuXG5AbWl4aW4gYnRuLXdpdGgtbWFyZ2luIHtcbiAgbWFyZ2luLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTM7XG4gIGZsb2F0OiBsZWZ0O1xuXG4gICYuaW5saW5lIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxufVxuXG4uYnRuIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgQGluY2x1ZGUgYnRuLWRlZmF1bHQ7XG5cbiAgJjpmb2N1cy12aXNpYmxlOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gICYuYnRuLWdyb3VwZWQge1xuICAgIEBpbmNsdWRlIGJ0bi13aXRoLW1hcmdpbjtcbiAgfVxuXG4gIHN2ZyB7XG4gICAgaGVpZ2h0OiAxNXB4O1xuICAgIHdpZHRoOiAxNXB4O1xuICB9XG5cbiAgc3ZnOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG59XG5cbi5idG4tZ3JvdXAge1xuICAmLmJ0bi1ncm91cGVkIHtcbiAgICBAaW5jbHVkZSBidG4td2l0aC1tYXJnaW47XG4gIH1cbn1cblxuLy8gUmVzZXQgYnV0dG9uIHN0eWxlcyB3aGVuIHdyYXBwaW5nIGEgdG9vbHRpcCBlbGVtZW50IGluIGEgYnV0dG9uIGZvciBhY2Nlc3NpYmlsaXR5XG4uYnV0dG9uLXJlc2V0IHtcbiAgQGFwcGx5IGdsLWJvcmRlci1ub25lO1xuICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBnbC1wLTA7XG4gIEBhcHBseSBmb2N1cy12aXNpYmxlOmdsLWZvY3VzLWluc2V0O1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gKiBVc2UgYGdsLWJ1dHRvbi10aGVtZWAgbWl4aW4gZnJvbSBHaXRMYWIgVUkgdG8gYXBwbHkgc2FtZSBzdHlsZXMgdG9cbiAqIDxidXR0b24gY2xhc3M9XCJidG5cIj4gYW5kIDxidXR0b24gY2xhc3M9XCJidG4gYnRuLWRhbmdlclwiPiBhcyBHbEJ1dHRvbi5cbiAqIFVzZSBgOm5vdCguZ2wtYnV0dG9uKWAgc2VsZWN0b3IgdG8gYXZvaWQgb3ZlcnJpZGluZyBHbEJ1dHRvbiB1c2FnZS5cbiAqIFVzZSBgLmJ0bi1kYW5nZXIuYnRuLWRhbmdlcmAgZG91YmxlIHNlbGVjdG9yIHRvIGluY3JlYXNlIHNwZWNpZmljaXR5XG4gKiBhZ2FpbnN0IEJvb3RzdHJhcCBkZWZhdWx0IC5idG4tZGFuZ2VyIHN0eWxlcyBmb3IgaG92ZXIvZm9jdXMgc3RhdGVzLlxuICovXG4uYnRuOm5vdCguZ2wtYnV0dG9uKSB7XG4gIEBpbmNsdWRlIGdsLWJ1dHRvbi10aGVtZShcbiAgICAkY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0KSxcbiAgICAkYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLFxuICAgICRib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWRlZmF1bHQpLFxuICAgICRob3Zlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAkaG92ZXItYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAkaG92ZXItYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3ZlciksXG4gICAgJGZvY3VzLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICRmb2N1cy1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICRmb2N1cy1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWZvY3VzKSxcbiAgICAkYWN0aXZlLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKSxcbiAgICAkYWN0aXZlLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpLFxuICAgICRhY3RpdmUtYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1hY3RpdmUpLFxuICApO1xuXG4gICYuYnRuLWRhbmdlci5idG4tZGFuZ2VyIHtcbiAgICBAaW5jbHVkZSBnbC1idXR0b24tdGhlbWUoXG4gICAgICAkY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLFxuICAgICAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLFxuICAgICAgJGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1kZWZhdWx0KSxcbiAgICAgICRob3Zlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpLFxuICAgICAgJGhvdmVyLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKSxcbiAgICAgICRob3Zlci1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItaG92ZXIpLFxuICAgICAgJGZvY3VzLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1mb2N1cyksXG4gICAgICAkZm9jdXMtYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItZm9jdXMpLFxuICAgICAgJGZvY3VzLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYnV0dG9uLWRhbmdlci1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1cyksXG4gICAgICAkYWN0aXZlLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktZm9yZWdyb3VuZC1jb2xvci1hY3RpdmUpLFxuICAgICAgJGFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGFuZ2VyLXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1hY3RpdmUpLFxuICAgICAgJGFjdGl2ZS1ib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kYW5nZXItcHJpbWFyeS1ib3JkZXItY29sb3ItYWN0aXZlKSxcbiAgICApO1xuICB9XG59XG5cbi5pbnB1dC1ncm91cC1wcmVwZW5kLFxuLmlucHV0LWdyb3VwLWFwcGVuZCB7XG4gIC5idG4ge1xuICAgIEBpbmNsdWRlIGJ0bi1kZWZhdWx0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cblxuICAgICY6YWN0aXZlIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmFjdGl2ZSB7XG4gICAgYm94LXNoYWRvdzogJGdsLWJ0bi1hY3RpdmUtYmFja2dyb3VuZDtcblxuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTEwMCAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidG4tYWN0aXZlLWdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLyBBbGwgZGlzYWJsZWQgYnV0dG9ucywgcmVnYXJkbGVzcyBvZiBjb2xvciwgdHlwZSwgZXRjXG4uYnRuLmRpc2FibGVkLFxuLmJ0bltkaXNhYmxlZF0sXG5maWVsZHNldFtkaXNhYmxlZF0gLmJ0bixcbi5kcm9wZG93bi10b2dnbGVbZGlzYWJsZWRdLFxuW2Rpc2FibGVkXS5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gICYsXG4gICY6aG92ZXIge1xuICAgIEBhcHBseSBnbC1iZy1kaXNhYmxlZDtcbiAgICBib3JkZXItY29sb3I6ICRncmF5LTEwMDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICAmLmN1cnNvci1ub3QtYWxsb3dlZCB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cblxuICAgIGkge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG4gICAgfVxuICB9XG59XG4iLCIubmV3LWFjdGl2aXRpZXMtYmxvY2sge1xuICAvLyBTZXQgbWluLWhlaWdodCB0byBhdm9pZCBiaWcgbGF5b3V0IHNoaWZ0XG4gIG1pbi1oZWlnaHQ6IDI0MHB4O1xufVxuXG4uY29udHJpYi1jYWxlbmRhci13cmFwcGVyLFxuLmNvbnRyaWItbGVnZW5kLXdyYXBwZXIge1xuICBtYXgtd2lkdGg6ICRmaXhlZC1sYXlvdXQtd2lkdGg7XG4gIEBhcHBseSBnbC1teC1hdXRvO1xufVxuXG4uY29udHJpYi1jYWxlbmRhciB7XG4gIC8vIEZpcnN0IHJvdyBob2xkcyB0aGUgbW9udGggbGFiZWxzOyB0aGUgcmVtYWluaW5nIDcgcm93cyBhcmUgdGhlIGRheSBjZWxscy5cbiAgLy8gVGhlIGZpcnN0IGNvbHVtbiBob2xkcyB0aGUgZGF5IGxhYmVscyBhbmQgaHVncyB0aGVpciB3aWR0aDsgdGhlIHdlZWtcbiAgLy8gY29sdW1ucyBhcmUgY3JlYXRlZCBpbXBsaWNpdGx5LCBvbmUgcGVyIHdlZWssIHNpemVkIGV2ZW5seSBzbyB3aWRlIG1vbnRoXG4gIC8vIGxhYmVscyBvdmVyZmxvdyBpbnN0ZWFkIG9mIHdpZGVuaW5nIHRoZWlyIHdlZWsgY29sdW1uLlxuICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gcmVwZWF0KDcsIG1pbm1heCgwLCAxZnIpKTtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvO1xuICBncmlkLWF1dG8tY29sdW1uczogbWlubWF4KDE1cHgsIDFmcik7XG59XG5cbi51c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsIHtcbiAgbWluLXdpZHRoOiAxNXB4O1xuICBtaW4taGVpZ2h0OiAxNXB4O1xufVxuXG4uY29udHJpYi1jYWxlbmRhciAudXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbCB7XG4gIC8vIEZhZGUgY29udHJpYnV0aW9uIGNvbG9ycyBpbiBvbmNlIHRoZSBkYXRhIGhhcyBiZWVuIGZldGNoZWQuIFRoZSBkZWxheSBpc1xuICAvLyBzdGFnZ2VyZWQgcGVyIGNvbHVtbiAodmlhIC0tY29udHJpYi1mYWRlLWRlbGF5KSBmb3IgYSBtb3JlIG5hdHVyYWwgcmV2ZWFsLlxuICB0cmFuc2l0aW9uOlxuICAgIGJhY2tncm91bmQtY29sb3IgMC41cyBlYXNlIHZhcigtLWNvbnRyaWItZmFkZS1kZWxheSwgMG1zKSxcbiAgICBib3JkZXItY29sb3IgMC4xcyBlYXNlO1xufVxuXG4vLyBPbmx5IHJlYWwgZGF5cyByZW5kZXIgYXMgYnV0dG9uczsgZW1wdHkgcGFkZGluZyBjZWxscyBhcmUgcGxhaW4gZGl2c1xuLy8gdGhhdCBhcmUgaGlkZGVuIGFuZCBtdXN0IG5vdCBsb29rIGludGVyYWN0aXZlLlxuLmNvbnRyaWItY2FsZW5kYXIgYnV0dG9uLnVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJi5pcy1hY3RpdmU6aG92ZXIsXG4gICYuaXMtYWN0aXZlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWdsLWZvY3VzLXJpbmctaW5uZXItY29sb3IpO1xuICAgIG91dGxpbmU6IDJweCBzb2xpZCB2YXIoLS1nbC1mb2N1cy1yaW5nLW91dGVyLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIG91dGxpbmUtb2Zmc2V0OiAwO1xuICB9XG5cbiAgLy8gaXMtYWN0aXZlIGtlZXBzIHRoZSBzZWxlY3RlZCBkYXkgaGlnaGxpZ2h0ZWQgYWZ0ZXIgZm9jdXMgbW92ZXMgdG8gdGhlIGZlZWQuXG4gICYuaXMtYWN0aXZlIHtcbiAgICB6LWluZGV4OiAxO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLWdsLWFjdGlvbi1zZWxlY3RlZC1ib3JkZXItY29sb3ItZGVmYXVsdCkgIWltcG9ydGFudDtcbiAgICBvdXRsaW5lLW9mZnNldDogMDtcbiAgfVxufVxuXG4uY29udHJpYi1jYWxlbmRhciBkaXYudXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbCB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5jb250cmliLWxlZ2VuZC1jZWxsIHtcbiAgY3Vyc29yOiBoZWxwO1xufVxuXG4udXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbCB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXNtO1xufVxuXG4udXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC0wIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0wKTtcbn1cblxuLnVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtMSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMSk7XG59XG5cbi51c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLTIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTIpO1xufVxuXG4udXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC0zIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0zKTtcbn1cblxuLnVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtNCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtNCk7XG59XG5cbi51c2VyLWNvbnRyaWItY2VsbCB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJi5pcy1hY3RpdmUge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHN0cm9rZTogdmFyKC0tZ2wtdGV4dC1jb2xvci1kZWZhdWx0KTtcbiAgfVxuXG4gICY6YWN0aXZlLFxuICAmLmlzLWFjdGl2ZSB7XG4gICAgc3Ryb2tlLXdpZHRoOiAycHg7XG4gIH1cblxuICAmW2RhdGEtbGV2ZWw9XCIwXCJdIHtcbiAgICBmaWxsOiB2YXIoLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTApO1xuICB9XG5cbiAgJltkYXRhLWxldmVsPVwiMVwiXSB7XG4gICAgZmlsbDogdmFyKC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC0xKTtcbiAgfVxuXG4gICZbZGF0YS1sZXZlbD1cIjJcIl0ge1xuICAgIGZpbGw6IHZhcigtLXVzZXItY29udHJpYnV0aW9uLWdyYXBoLWNlbGwtbGV2ZWwtMik7XG4gIH1cblxuICAmW2RhdGEtbGV2ZWw9XCIzXCJdIHtcbiAgICBmaWxsOiB2YXIoLS11c2VyLWNvbnRyaWJ1dGlvbi1ncmFwaC1jZWxsLWxldmVsLTMpO1xuICB9XG5cbiAgJltkYXRhLWxldmVsPVwiNFwiXSB7XG4gICAgZmlsbDogdmFyKC0tdXNlci1jb250cmlidXRpb24tZ3JhcGgtY2VsbC1sZXZlbC00KTtcbiAgfVxufVxuXG4uY29udHJpYnV0aW9uLWV2ZW50IHtcbiAgQGFwcGx5IGdsLWdhcC14LTM7XG4gIEBhcHBseSBnbC1nYXAteS0yO1xuICBkaXNwbGF5OiBncmlkO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgQGFwcGx5IGdsLXctMTtcbiAgICBAYXBwbHkgZ2wtbGVmdC00O1xuICAgIEBhcHBseSBnbC10b3AtNjtcbiAgICBAYXBwbHkgZ2wtYm90dG9tLTA7XG4gICAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbn1cblxuLmNvbnRyaWJ1dGlvbi1ldmVudC1hdmF0YXIge1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtNikgYXV0byAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICBcImF1dGhvciBhdXRob3IgYXV0aG9yXCJcbiAgICAgIFwiLiBpY29uIHRpdGxlXCJcbiAgICAgIFwiLiBkZXNjcmlwdGlvbiBkZXNjcmlwdGlvblwiXG4gICAgICBcIi4gdGltZXN0YW1wIHRpbWVzdGFtcFwiO1xuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChzbSwgcGFuZWwpIHtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtNikgbWluLWNvbnRlbnQgMWZyIGF1dG87XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgXCJhdXRob3IgYXV0aG9yIGF1dGhvciB0aW1lc3RhbXBcIlxuICAgICAgICBcIi4gaWNvbiB0aXRsZSAuXCJcbiAgICAgICAgXCIuIGRlc2NyaXB0aW9uIGRlc2NyaXB0aW9uIC5cIjtcbiAgfVxuXG4gIC5jb250cmlidXRpb24tZXZlbnQtaWNvbiB7XG4gICAgQGFwcGx5IC1nbC1tci0xOyAvLyBWaXN1YWwgYWxpZ25tZW50IGZpeFxuICB9XG59XG5cbi5jb250cmlidXRpb24tZXZlbnQtZGVmYXVsdCB7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogYXV0byAxZnI7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICBcImljb24gdGl0bGVcIlxuICAgICAgXCIuIGRlc2NyaXB0aW9uXCJcbiAgICAgIFwiLiB0aW1lc3RhbXBcIjtcblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20sIHBhbmVsKSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBhdXRvIDFmciBhdXRvO1xuICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgIFwiaWNvbiB0aXRsZSB0aW1lc3RhbXBcIlxuICAgICAgICBcIi4gZGVzY3JpcHRpb24gLlwiO1xuICB9XG59XG5cbi5jb250cmlidXRpb24tZXZlbnQtYXV0aG9yIHtcbiAgZ3JpZC1hcmVhOiBhdXRob3I7XG59XG5cbi5jb250cmlidXRpb24tZXZlbnQtaWNvbiB7XG4gIGdyaWQtYXJlYTogaWNvbjtcbn1cblxuLmNvbnRyaWJ1dGlvbi1ldmVudC10aW1lc3RhbXAge1xuICBncmlkLWFyZWE6IHRpbWVzdGFtcDtcbn1cblxuLmNvbnRyaWJ1dGlvbi1ldmVudC10aXRsZSB7XG4gIGdyaWQtYXJlYTogdGl0bGU7XG59XG5cbi5jb250cmlidXRpb24tZXZlbnQtZGVzY3JpcHRpb24ge1xuICBncmlkLWFyZWE6IGRlc2NyaXB0aW9uO1xufVxuXG4uY29udHJpYnV0aW9uLWV2ZW50Omxhc3Qtb2YtdHlwZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGxlbmd0aC16ZXJvLW5vLXVuaXRcbjpyb290IHtcbiAgQGVhY2ggJG5hbWUsICRzaXplIGluICRncmlkLWJyZWFrcG9pbnRzIHtcbiAgICAtLWJyZWFrcG9pbnQtI3skbmFtZX06ICN7JHNpemV9O1xuICB9XG59XG5cbi53aXRoLXBlcmZvcm1hbmNlLWJhciB7XG4gIC0tcGVyZm9ybWFuY2UtYmFyLWhlaWdodDogI3skcGVyZm9ybWFuY2UtYmFyLWhlaWdodH07XG59XG5cbi53aXRoLXN5c3RlbS1oZWFkZXIge1xuICAtLXN5c3RlbS1oZWFkZXItaGVpZ2h0OiAjeyRzeXN0ZW0taGVhZGVyLWhlaWdodH07XG59XG5cbi53aXRoLWhlYWRlciB7XG4gIC0taGVhZGVyLWhlaWdodDogI3skaGVhZGVyLWhlaWdodH07XG59XG5cbi53aXRoLXRvcC1iYXIge1xuICAtLXRvcC1iYXItaGVpZ2h0OiAjeyR0b3AtYmFyLWhlaWdodH07XG59XG5cbi53aXRoLXN5c3RlbS1mb290ZXIge1xuICAtLXN5c3RlbS1mb290ZXItaGVpZ2h0OiAjeyRzeXN0ZW0tZm9vdGVyLWhlaWdodH07XG59XG5cbkBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChzbSwgcGFuZWwpIHtcbiAgLnJpZ2h0LXNpZGViYXItY29sbGFwc2VkIHtcbiAgICAtLWFwcGxpY2F0aW9uLWJhci1yaWdodDogI3skcmlnaHQtc2lkZWJhci1jb2xsYXBzZWQtd2lkdGh9O1xuXG4gICAgJi5pcy1tZXJnZS1yZXF1ZXN0IHtcbiAgICAgIC0tYXBwbGljYXRpb24tYmFyLXJpZ2h0OiAwcHg7XG4gICAgfVxuICB9XG5cbiAgLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQge1xuICAgIC0tYXBwbGljYXRpb24tYmFyLXJpZ2h0OiAjeyRyaWdodC1zaWRlYmFyLXdpZHRofTtcbiAgfVxufVxuXG4vKiogQ09MT1JTICoqL1xuLnRleHQtdW5kZXJsaW5lLFxuLnRleHQtdW5kZXJsaW5lOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5oaW50IHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbn1cblxuLmxpZ2h0IHsgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDsgfVxuXG4udGFiLWNvbnRlbnQge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxucHJlIHtcbiAgJi5jbGVhbiB7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAmLndyYXAge1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuICB9XG59XG5cbmhyIHtcbiAgQGFwcGx5IGdsLW15LTY7XG4gIEBhcHBseSBnbC1teC0wO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gIEBhcHBseSBnbC1ib3JkZXItc3VidGxlO1xufVxuXG4uc3RyLXRydW5jYXRlZCB7XG4gIEBpbmNsdWRlIHN0ci10cnVuY2F0ZWQ7XG59XG5cbi5zdHItdHJ1bmNhdGVkLTEwMCB7XG4gIEBpbmNsdWRlIHN0ci10cnVuY2F0ZWQoMTAwJSk7XG59XG5cbi5pdGVtLXRpdGxlIHsgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ib2xkOyB9XG5cbi5sb2FkaW5nIHtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIGhlaWdodDogNDBweDtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBmb250LXNpemU6IDMycHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxucC50aW1lIHtcbiAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBtYXJnaW46IDMwcHggM3B4IDNweCAycHg7XG59XG5cbi5oaWdobGlnaHQge1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLy8gRml4IGlzc3VlIHdpdGggbm90ZXMgJiBsaXN0cyBjcmVhdGluZyBhIGJ1bmNoIG9mIGJvdHRvbSBib3JkZXJzLlxubGkubm90ZSB7XG4gIGltZyB7IG1heC13aWR0aDogMTAwJTsgfVxufVxuXG4ubWFya2Rvd24ge1xuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxufVxuXG4ud2lraV9jb250ZW50IGNvZGUsXG4ucmVhZG1lIGNvZGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBpbmhlcml0O1xufVxuXG4uZXJyb3ItbWVzc2FnZSB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIGJhY2tncm91bmQ6ICRyZWQtNDAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgYSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG5AbWl4aW4gbWVzc2FnZSgkYmFja2dyb3VuZC1jb2xvciwgJGJvcmRlci1jb2xvciwgJHRleHQtY29sb3IpIHtcbiAgYm9yZGVyLWxlZnQ6IDRweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBjb2xvcjogJHRleHQtY29sb3I7XG4gIHBhZGRpbmc6ICRnbC1wYWRkaW5nICRnbC1wYWRkaW5nLTI0O1xuICBtYXJnaW4tYm90dG9tOiAkZ2wtcGFkZGluZy0xMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG5cbiAgJi5jZW50ZXJlZCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmNsb3NlIHtcbiAgICBzdmcge1xuICAgICAgd2lkdGg6ICRnbC1mb250LXNpemUtbGFyZ2U7XG4gICAgICBoZWlnaHQ6ICRnbC1mb250LXNpemUtbGFyZ2U7XG4gICAgfVxuXG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLndhcm5pbmdfbWVzc2FnZSB7XG4gIEBpbmNsdWRlIG1lc3NhZ2UoJG9yYW5nZS01MCwgJG9yYW5nZS0yMDAsICRncmF5LTkwMCk7XG59XG5cbi5naXRsYWItcHJvbW8ge1xuICBhIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7XG4gIH1cbn1cblxuLm1pbGVzdG9uZSB7XG4gIC5wcm9ncmVzcyB7XG4gICAgbWFyZ2luLXRvcDogNHB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICB9XG59XG5cbi5jaGFydCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMjIwcHg7XG59XG5cbi5jYXJkLmNhcmQtYm9keSB7XG4gIG1hcmdpbi1ib3R0b206ICRnbC1wYWRkaW5nO1xuXG4gIGhyIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXN1YnRsZTtcbiAgfVxufVxuXG4vLyB0aGVzZSBjbGFzc2VzIG92ZXJyaWRlIHN0eWxlcyBmcm9tIHRoZSBkcm9wem9uZSBub2RlIHBhY2thZ2Vcbi5kcm9wem9uZSAuZHotcHJldmlldyAuZHotcHJvZ3Jlc3Mge1xuICBAYXBwbHkgZ2wtYm9yZGVyICN7IWltcG9ydGFudH07XG5cbiAgLmR6LXVwbG9hZCB7XG4gICAgYmFja2dyb3VuZDogJGdyZWVuLTUwMCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5kei1tZXNzYWdlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYWxlcnQge1xuICBtYXJnaW4tYm90dG9tOiAkZ2wtcGFkZGluZztcbn1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiA0cHg7XG59XG5cbi5nbC1hY2Nlc3NpYmlsaXR5IHtcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdG9wOiAxcHg7XG4gICAgbGVmdDogMXB4O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgY2xpcDogYXV0bztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLnRvb2x0aXAge1xuICAudG9vbHRpcC1pbm5lciB7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICB9XG59XG5cbi5kaXNhYmxlZC1jb250ZW50IHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLyoqIENPTU1PTiBDTEFTU0VTICoqL1xuLyoqXG4gIPCfmqggRG8gbm90IHVzZSB0aGVzZSBjbGFzc2VzIOKAlCB0aGV5IGFyZSBkZXByZWNhdGVkIGFuZCBiZWluZyByZW1vdmVkLiDwn5qoXG4gIFNlZSBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9pc3N1ZXMvMjE3NDE4IGZvciBtb3JlIGRldGFpbHMuXG4qKi9cbi5jZW50ZXIgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi5ibG9jayB7IGRpc3BsYXk6IGJsb2NrOyB9XG4udmVydGljYWwtYWxpZ24tdGV4dC10b3AgeyB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7IH1cbi52ZXJ0aWNhbC1hbGlnbi1taWRkbGUgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi8qKiBDT01NT04gU0laSU5HIENMQVNTRVMgKiovXG4udy0wIHsgd2lkdGg6IDA7IH1cbi53LThlbSB7IHdpZHRoOiA4ZW07IH1cbi53LTMwcCB7IHdpZHRoOiAzMCU7IH1cbi53LTYwcCB7IHdpZHRoOiA2MCU7IH1cblxuLmgtMzItcHggeyBoZWlnaHQ6IDMycHg7fVxuXG4ubXctNmVtIHsgbWF4LXdpZHRoOiA2ZW07IH1cblxuLmRyYWctaGFuZGxlIHtcbiAgd2lkdGg6IDRweDtcblxuICAmOmhvdmVyIHtcbiAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktNDAwO1xuICB9XG59XG5cbi5jdXJzb3ItcG9pbnRlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLy8gdGhpcyBuZWVkcyB0byB1c2UgXCIhaW1wb3J0YW50XCIgZHVlIHRvIHNvbWUgdmVyeSBzcGVjaWZpYyBzdHlsZXNcbi8vIGFyb3VuZCBidXR0b25zXG4uY3Vyc29yLWRlZmF1bHQge1xuICBjdXJzb3I6IGRlZmF1bHQgIWltcG9ydGFudDtcbn1cblxuLy8gTWFrZSBidXR0b25zL2Ryb3Bkb3ducyBmdWxsLXdpZHRoIG9uIG1vYmlsZVxuLmZ1bGwtd2lkdGgtbW9iaWxlIHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICA+IC5kcm9wZG93bi1tZW51LFxuICAgID4gLmJ0bixcbiAgICA+IC5nbC1uZXctZHJvcGRvd24tdG9nZ2xlID4gLmdsLWJ1dHRvbi10ZXh0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uZ2wtZm9udC1zaXplLTAgeyBmb250LXNpemU6IDA7IH1cblxuLmdsLXBzZXVkby1wbGFjZWhvbGRlcjplbXB0eTo6YmVmb3JlIHtcbiAgY29udGVudDogYXR0cihkYXRhLXBsYWNlaG9sZGVyKTtcbiAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ub3JtYWw7XG4gIGNvbG9yOiB2YXIoLS1nbC1jb250cm9sLXBsYWNlaG9sZGVyLWNvbG9yKTtcbiAgY3Vyc29yOiB0ZXh0O1xufVxuXG4vLyBUZW1wb3JhcmlseSByZXN0b3JlIHRoZSBicm93c2VyLWRlZmF1bHQgYm90dG9tIG1hcmdpbiB0aGF0IEBnaXRsYWIvdWlAMTM1XG4vLyByZW1vdmVkIGZyb20gR2xQYWdpbmF0aW9uLCB1bnRpbCBhbGwgdXNhZ2VzIGFyZSBhdWRpdGVkIGluZGl2aWR1YWxseS5cbi8vIFNlZSBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWItc2VydmljZXMvZGVzaWduLmdpdGxhYi5jb20vLS9tZXJnZV9yZXF1ZXN0cy81NDM3XG4uZ2wtcGFnaW5hdGlvbiB1bCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi8vIC0tLSBtb3ZlZCBmcm9tIGxhYmVscy5zY3NzIHdoZW4gbW92aW5nIHRvIHBhZ2VfYnVuZGxlcyAtLS1cbi8vIEZpeCBzY29wZWQgbGFiZWwgcGFkZGluZyBpbiBjYXNlcyB3aGVyZSBvbGQgbWFya2Rvd24gdXNlcyB0aGUgb2xkIGxhYmVsIHN0cnVjdHVyZSAqL1xuLmdsLWxhYmVsLXRleHQgKyAuZ2wtbGFiZWwtdGV4dCB7XG4gIHBhZGRpbmctbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMztcbn1cblxuLmdsLWxhYmVsLXNjb3BlZCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCBjdXJyZW50Q29sb3IgaW5zZXQ7XG59XG5cbi5nbC1sYWJlbC10b29sdGlwLWZvb3RlciB7XG4gIGNvbG9yOiB2YXIoLS1nbC10b29sdGlwLXRleHQtY29sb3Itc3VidGxlKTtcbn1cblxuLnJlZi1jb250YWluZXIsXG4uY29tbWl0LXNoYS1jb250YWluZXIge1xuICBmb250LWZhbWlseTogJGdsLW1vbm9zcGFjZS1mb250O1xuICBmb250LXZhcmlhbnQtbGlnYXR1cmVzOiBub25lO1xuICBmb250LXNpemU6ICRnbC1mb250LXNpemUtc207XG4gIHBhZGRpbmctbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtYmFzZTtcbn1cblxuLnJlZi1jb250YWluZXIge1xuICBjb2xvcjogdmFyKC0tZ2wtbGluay1tZW50aW9uLXRleHQtY29sb3ItZGVmYXVsdCkgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbGluay1tZW50aW9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG5cbi5jb21taXQtc2hhLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmcgI3shaW1wb3J0YW50fTtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlICN7IWltcG9ydGFudH07XG59XG5cbltyZWFkb25seV0ge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbmNvcHktY29kZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMDtcbiAgdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuICByaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMztcblxuICAubWFya2Rvd24tY29kZS1ibG9jazpob3ZlciAmLFxuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ubWFya2Rvd24tY29kZS1ibG9jayBpbnNlcnQtY29kZS1zbmlwcGV0IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5cbi5kcm9wZG93biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBPbmNlIHRoZSBuZXcgZGVzaWduIChodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWItZm9zcy8tL2lzc3Vlcy82MzQ5OS9kZXNpZ25zKVxuICAvLyBmb3IgU25pcHBldHMgaXMgaW50cm9kdWNlZCBhbmQgQ2xvbmUgYnV0dG9uIGlzIHJlbG9jYXRlZCwgd2Ugd29uJ3RcbiAgLy8gbmVlZCB0aGlzIHN0eWxlLlxuICAvLyBJc3N1ZSBmb3IgdGhlIHJlZmFjdG9yaW5nOiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9pc3N1ZXMvMjEzMzI3XG4gICYuZ2wtZHJvcGRvd24gYnV0dG9uLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cblxuICAuYnRuLWxpbmsge1xuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc2V0LXZpc2libGUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2hvdy5kcm9wZG93biB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICBAaW5jbHVkZSBzZXQtdmlzaWJsZTtcbiAgICBtaW4taGVpZ2h0OiAkZHJvcGRvd24tbWluLWhlaWdodDtcbiAgICAvLyBQcmV2ZW50cyBkb3VibGUgc2Nyb2xsYmFyIG9uIGRyb3Bkb3ducyB0aGF0IGFsc29cbiAgICAvLyBoYXZlIG1heC1oZWlnaHQgc2V0IG9uIGFuIGlubmVyIHNjcm9sbGFibGUgZWxlbWVudFxuICAgIG1heC1oZWlnaHQ6ICRkcm9wZG93bi1tYXgtaGVpZ2h0LWxnO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAmLmRyb3Bkb3duLWV4dGVuZGVkLWhlaWdodCB7XG4gICAgICAkZXh0ZW5kZWQtbWF4LWhlaWdodDogNDAwcHg7XG5cbiAgICAgIG1heC1oZWlnaHQ6ICRleHRlbmRlZC1tYXgtaGVpZ2h0O1xuXG4gICAgICAvLyBTZWUgY29tbWVudCBiZWxvdyBmb3IgZXhwbGFuYXRpb25cbiAgICAgIC5nbC1kcm9wZG93bi1pbm5lciB7XG4gICAgICAgIG1heC1oZWlnaHQ6ICRleHRlbmRlZC1tYXgtaGVpZ2h0IC0gMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZHJvcGRvd24tcmVkdWNlZC1oZWlnaHQge1xuICAgICAgbWF4LWhlaWdodDogJGRyb3Bkb3duLW1heC1oZWlnaHQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBgR2xEcm9wZG93bmAgc3BlY2lmaWVzIHRoZSBgbWF4LWhlaWdodGAgb2YgYC5nbC1kcm9wZG93bi1pbm5lcmBcbiAgICAvLyBhcyBgJGRyb3Bkb3duLW1heC1oZWlnaHRgLCBidXQgdGhlIGBtYXgtaGVpZ2h0YCBydWxlIGFib3ZlIGZvcmNlc1xuICAgIC8vIHRoZSBwYXJlbnQgYC5kcm9wZG93bi1tZW51YCB0byBiZSBfc2xpZ2h0bHlfIHRvbyBzbWFsbCBiZWNhdXNlIG9mXG4gICAgLy8gdGhlIDFweCBib3JkZXJzLiBUaGUgd29ya2Fyb3VuZCBiZWxvdyBvdmVycmlkZXMgdGhlIEBnaXRsYWIvdWkgc3R5bGVcbiAgICAvLyB0byBhdm9pZCBhIGRvdWJsZSBzY3JvbGwgYmFyLlxuICAgIC5nbC1kcm9wZG93bi1pbm5lciB7XG4gICAgICBtYXgtaGVpZ2h0OiAkZHJvcGRvd24tbWF4LWhlaWdodCAtIDJweDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24tdG9nZ2xlLFxuICAuZHJvcGRvd24tbWVudS10b2dnbGUge1xuICAgIGJvcmRlci1jb2xvcjogJGdyYXktMjAwO1xuICB9XG5cbiAgW2RhdGEtdG9nZ2xlPSdkcm9wZG93biddIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi5kcm9wZG93bi10b2dnbGUsXG4uZHJvcGRvd24tbWVudS10b2dnbGUsXG4uZHJvcGRvd24tbWVudS1jbG9zZSB7XG4gICY6YWN0aXZlLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIEBhcHBseSBnbC1mb2N1cztcbiAgfVxufVxuXG5AbWl4aW4gZ2wtZHJvcGRvd24tdG9nZ2xlLWJ1dHRvbiB7XG4gIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtYnV0dG9uLWRlZmF1bHQtcHJpbWFyeS1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIHRyYW5zaXRpb246IGNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICBiYWNrZ3JvdW5kLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICBib3JkZXItY29sb3IgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljLFxuICAgIGJveC1zaGFkb3cgJGdsLXRyYW5zaXRpb24tZHVyYXRpb24tbWVkaXVtICRnbC1lYXNpbmctb3V0LWN1YmljO1xuXG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItaG92ZXIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1ob3Zlcik7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItZm9jdXMpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYmFja2dyb3VuZC1jb2xvci1mb2N1cyk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJvcmRlci1jb2xvci1mb2N1cyk7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWZvcmVncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1idXR0b24tZGVmYXVsdC1wcmltYXJ5LWJhY2tncm91bmQtY29sb3ItYWN0aXZlKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWJ1dHRvbi1kZWZhdWx0LXByaW1hcnktYm9yZGVyLWNvbG9yLWFjdGl2ZSk7XG5cbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tdG9nZ2xlLFxuLmRyb3Bkb3duLW1lbnUtdG9nZ2xlLFxuLmNvbmZpZGVudGlhbC1tZXJnZS1yZXF1ZXN0LWZvcmstZ3JvdXAgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIHBhZGRpbmc6IDZweCA4cHggNnB4IDEwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIEBpbmNsdWRlIGdsLWRyb3Bkb3duLXRvZ2dsZS1idXR0b247XG5cbiAgJjpkaXNhYmxlZC5yZWFkLW9ubHkge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQgI3shaW1wb3J0YW50fTtcbiAgfVxuXG4gICYubGFyZ2Uge1xuICAgIHdpZHRoOiAyMDBweDtcbiAgfVxuXG4gICYud2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICArIC5kcm9wZG93bi1zZWxlY3Qge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLy8gQWxsb3dzIGR5bmFtaWMtd2lkdGggdGV4dCBpbiB0aGUgZHJvcGRvd24gdG9nZ2xlLlxuICAvLyBSZXNpemVzIHRvIGFsbG93IGxvbmcgdGV4dCB3aXRob3V0IG92ZXJmbG93aW5nIHRoZSBjb250YWluZXIuXG4gICYuZHluYW1pYyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWluLXdpZHRoOiAxNjBweDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy1yaWdodDogMjVweDtcbiAgfVxufVxuXG4vLyBUaGlzIGlzIGRvdWJsZSBjbGFzc2VkIHRvIHNvbHZlIGEgc3BlY2lmaWNpdHkgaXNzdWUgd2l0aCB0aGUgZ2l0bGFiIHVpIGJ1dHRvbnNcbi5kcm9wZG93bi1tZW51LXRvZ2dsZS5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy10b3A6ICN7JGdsLXBhZGRpbmctOCAtIDF9O1xuICBwYWRkaW5nLWJvdHRvbTogI3skZ2wtcGFkZGluZy04IC0gMX07XG4gIHBhZGRpbmctcmlnaHQ6IDI1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIGxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQ7XG4gIHdpZHRoOiAxNjBweDtcbiAgQGluY2x1ZGUgZ2wtZHJvcGRvd24tdG9nZ2xlLWJ1dHRvbjtcblxuICAuZ2wtc3Bpbm5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogOXB4O1xuICAgIHJpZ2h0OiA4cHg7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS10b2dnbGUtaWNvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAkZ2wtcGFkZGluZy04O1xuICAgIGNvbG9yOiBjdXJyZW50Q29sb3I7XG4gIH1cbn1cblxuLmxhYmVscyB7XG4gIC8vIFByZXZlbnQgZG91YmxlIHNjcm9sbC1iYXJzIGZvciBsYWJlbHMgZHJvcGRvd24uXG4gIC5kcm9wZG93bi1tZW51LXRvZ2dsZS53aWRlICsgLmRyb3Bkb3duLXNlbGVjdCB7XG4gICAgbWF4LWhlaWdodDogdW5zZXQ7XG4gIH1cbn1cblxuLmdsLWRyb3Bkb3duIC5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gIHBhZGRpbmctcmlnaHQ6ICRnbC1wYWRkaW5nLTg7XG5cbiAgLmdsLWRyb3Bkb3duLXRvZ2dsZS10ZXh0IHtcbiAgICBtaW4taGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtMjA7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLWl0ZW0taG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWhvdmVyKTtcbiAgY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi10ZXh0LWNvbG9yLWhvdmVyKTtcbiAgb3V0bGluZTogMDtcbn1cblxuQG1peGluIGRyb3Bkb3duLWxpbmsge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ub3JtYWw7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15ICRkcm9wZG93bi1pdGVtLXBhZGRpbmcteDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgbGluZS1oZWlnaHQ6ICRnbC1idG4tbGluZS1oZWlnaHQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuXG4gICYuZGlzYWJsZS1ob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjpub3QoLmRpc2FibGUtaG92ZXIpOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cy12aXNpYmxlLFxuICAmLmlzLWZvY3VzZWQge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWl0ZW0taG92ZXI7XG5cbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cy12aXNpYmxlLFxuICAmOmZvY3VzLXZpc2libGU6YWN0aXZlLFxuICAmLmlzLWZvY3VzZWQge1xuICAgIEBpbmNsdWRlIGdsLWZvY3VzKCRpbnNldDogdHJ1ZSk7XG4gIH1cblxuICAmLmRyb3Bkb3duLW1lbnUtdXNlci1saW5rIHtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcbiAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogN3B4O1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICAuZHJvcGRvd24tbWVudS11c2VyLXVzZXJuYW1lIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IGF1dG87XG4gIHRvcDogMTAwJTtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bi1tZW51O1xuICBtaW4td2lkdGg6IDI0MHB4O1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBtYXJnaW4tdG9wOiAkZHJvcGRvd24tdmVydGljYWwtb2Zmc2V0O1xuICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgcGFkZGluZzogOHB4IDA7XG4gIEBhcHBseSBnbC1iZy1kcm9wZG93bjtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1kcm9wZG93bjtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgQGFwcGx5IGdsLXNoYWRvdy1tZDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcblxuICAmLmRyb3Bkb3duLW9wZW4tdG9wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZHJvcGRvd24tdmVydGljYWwtb2Zmc2V0O1xuICB9XG5cbiAgJi5pcy1sb2FkaW5nIHtcbiAgICAuZHJvcGRvd24tY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1sb2FkaW5nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5ub24tYmxvY2tpbmctbG9hZGVyICYge1xuICAgICYuaXMtbG9hZGluZ3tcbiAgICAgIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMnJlbTtcblxuICAgICAgICB1bHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLWxvYWRpbmd7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuICB9XG5cbiAgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgID4gYSxcbiAgICA+IGJ1dHRvbixcbiAgICAuZ2wtYnV0dG9uLmJ0bi1saW5rLFxuICAgIC5tZW51LWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbGluaztcbiAgICB9XG4gIH1cblxuICAuZGl2aWRlciB7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAjeyRncmlkLXNpemUgKiAwLjV9IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gICAgQGFwcGx5IGdsLWJvcmRlci10LWRyb3Bkb3duO1xuICB9XG5cbiAgLnNlcGFyYXRvciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luLXRvcDogOHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUtZW1wdHktaXRlbSBhIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cblxuICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodDtcbiAgICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICB9XG5cbiAgJi5jYXBpdGFsaXplLWhlYWRlciAuZHJvcGRvd24taGVhZGVyIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgfVxuXG4gIC51bmNsaWNrYWJsZSB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBwYWRkaW5nOiA1cHggOHB4O1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgfVxuXG4gIC5iYWRnZS5iYWRnZS1waWxsICsgc3Bhbjpub3QoLmJhZGdlKTpub3QoLmJhZGdlLXBpbGwpIHtcbiAgICAvLyBFeHBlY3RzIHVwIHRvIDMgZGlnaXRzIG9uIHRoZSBiYWRnZVxuICAgIG1hcmdpbi1yaWdodDogNDBweDtcbiAgfVxufVxuXG4uZHJvcGRvd24taXRlbSB7XG4gIEBpbmNsdWRlIGRyb3Bkb3duLWxpbms7XG59XG5cbi5kcm9wbGFiLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXRvZ2dsZSA+IGksXG4gIC5kcm9wZG93bi10b2dnbGUgPiBzdmcge1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblxuICAgIGxpIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJi5kcm9wbGFiLWl0ZW0tYWN0aXZlIGJ1dHRvbiB7XG4gICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWl0ZW0taG92ZXI7XG4gICAgICB9XG5cbiAgICAgID4gYSxcbiAgICAgID4gYnV0dG9uLFxuICAgICAgPiAuZ2wtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHRleHQtb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgICB9XG5cbiAgICAgID4gYnV0dG9uLmRyb3Bkb3duLWVwaWMtYnV0dG9uIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAucmVmZXJlbmNlIHtcbiAgICAgICAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAkZ2wtcGFkZGluZy00O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuZHJvcGxhYi1pdGVtLXNlbGVjdGVkIGksXG4gICAgICAmLmRyb3BsYWItaXRlbS1zZWxlY3RlZCBzdmcge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuXG4gICAgICAuaWNvbiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cblxuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaWNvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcGFkZGluZy10b3A6IDJweDtcbiAgfVxufVxuXG4uY29tbWVudC10eXBlLWRyb3Bkb3duLnNob3cgLmRyb3Bkb3duLW1lbnUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmZpbHRlcmVkLXNlYXJjaC1ib3gtaW5wdXQtY29udGFpbmVyIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1heC13aWR0aDogMjgwcHg7XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUtZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZHJvcGRvd24tbWVudS1wYWdpbmcge1xuICAuZHJvcGRvd24tcGFnZS10d28sXG4gIC5kcm9wZG93bi1tZW51LWJhY2sge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmLmlzLXBhZ2UtdHdvIHtcbiAgICAuZHJvcGRvd24tcGFnZS1vbmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tcGFnZS10d28sXG4gICAgLmRyb3Bkb3duLW1lbnUtYmFjayB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuZHJvcGRvd24tY29udGVudCB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LXVzZXIge1xuICAuYXZhdGFyIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMiAqICRnbC1wYWRkaW5nO1xuICAgIGhlaWdodDogMiAqICRnbC1wYWRkaW5nO1xuICAgIG1hcmdpbjogMCAxMHB4IDAgMDtcbiAgfVxuXG4gIC5zaWRlYmFyLXBhcnRpY2lwYW50IHtcbiAgICAubWVyZ2UtaWNvbiB7XG4gICAgICB0b3A6IGNhbGMoNTAlICsgNXB4KTtcbiAgICAgIGxlZnQ6IDNyZW07XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LXVzZXItZnVsbC1uYW1lIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTZweDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5kcm9wZG93bi1tZW51LXVzZXItdXNlcm5hbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uZHJvcGRvd24tc2VsZWN0IHtcbiAgd2lkdGg6ICRkcm9wZG93bi13aWR0aDtcblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihtZCwgcGFuZWwpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS1zZWxlY3RhYmxlIHtcbiAgbGkge1xuICAgIGEsXG4gICAgYnV0dG9uLFxuICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDhweCA0MHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmLmlzLWluZGV0ZXJtaW5hdGUsXG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG5cbiAgICAgICAgJi5kcm9wZG93bi1tZW51LXVzZXItbGluazo6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5pcy1pbmRldGVybWluYXRlOjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDE2cHg7XG4gICAgICAgIHRvcDogMTZweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgICBjb250ZW50OiAn4oCUJztcbiAgICAgIH1cblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwLjVyZW07XG4gICAgICAgICAgbGVmdDogMXJlbTtcbiAgICAgICAgICB3aWR0aDogMXJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDFyZW07XG4gICAgICAgICAgbWFzay1pbWFnZTogdXJsKCdAZ2l0bGFiL3N2Z3MvZGlzdC9pY29ucy1zdGFja2VkLnN2ZyNjaGVjaycpO1xuICAgICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgbWFzay1zaXplOiBjb3ZlcjtcbiAgICAgICAgICBtYXNrLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1pbmRpY2F0b3ItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmRyb3Bkb3duLXRpdGxlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAkZHJvcGRvd24taXRlbS1wYWRkaW5nLXkgJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy14O1xuICBwYWRkaW5nLWJvdHRvbTogI3syICogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15fTtcbiAgbWFyZ2luLWJvdHRvbTogJGRyb3Bkb3duLWl0ZW0tcGFkZGluZy15O1xuICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLWRyb3Bkb3duO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZHJvcGRvd24tdGl0bGUtYnV0dG9uIHtcbiAgcGFkZGluZzogMDtcbiAgY29sb3I6ICRkcm9wZG93bi10aXRsZS1idG4tY29sb3I7XG4gIGJvcmRlcjogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgb3V0bGluZTogMDtcblxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogY29sb3IuYWRqdXN0KCRkcm9wZG93bi10aXRsZS1idG4tY29sb3IsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LWJhY2sge1xuICBsZWZ0OiAxMHB4O1xuICB0b3A6ICRnbC1wYWRkaW5nLTg7XG59XG5cbi5kcm9wZG93bi1pbnB1dCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgcGFkZGluZzogMCAxMHB4O1xuXG4gIC5pbnB1dC1pY29uLFxuICAuZHJvcGRvd24taW5wdXQtY2xlYXIsXG4gIC5kcm9wZG93bi1pbnB1dC1zZWFyY2gge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRnbC1wYWRkaW5nLTg7XG4gICAgcmlnaHQ6IDIwcHg7XG4gICAgQGFwcGx5IGdsLWZpbGwtaWNvbi1zdWJ0bGU7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG5cbiAgLmRyb3Bkb3duLWlucHV0LWNsZWFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIHRvcDogJGdsLXBhZGRpbmctODtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAmOm5vdCguZ2wtaWNvbikge1xuICAgICAgcmlnaHQ6IDIycHg7XG4gICAgfVxuICB9XG5cbiAgJi5oYXMtdmFsdWUge1xuICAgIC5kcm9wZG93bi1pbnB1dC1jbGVhciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuZHJvcGRvd24taW5wdXQtc2VhcmNoIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1pbnB1dC1maWVsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtaW4taGVpZ2h0OiAzMHB4O1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICBsaW5lLWhlaWdodDogMzBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWJhc2U7XG4gIG91dGxpbmU6IDA7XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICB+IC5kcm9wZG93bi1pbnB1dC1jbGVhciB7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgfVxuICB9XG59XG5cbi5kcm9wZG93bi1jb250ZW50IHtcbiAgbWF4LWhlaWdodDogMjUycHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi5kcm9wZG93bi1pbmZvLW5vdGUge1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmRyb3Bkb3duLWZvb3RlciB7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBmb250LXNpemU6IDEzcHg7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgQGFwcGx5IGdsLWJvcmRlci10LWRyb3Bkb3duO1xufVxuXG4uZHJvcGRvd24tZm9vdGVyLWNvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG59XG5cbi5kcm9wZG93bi1mb290ZXItbGlzdCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcblxuICBhIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICB9XG59XG5cbi5kcm9wZG93bi1jcmVhdGUtbmV3LWl0ZW0tYnV0dG9uIHtcbiAgQGluY2x1ZGUgZHJvcGRvd24tbGluaztcblxuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG59XG5cbi5kcm9wZG93bi1sb2FkaW5nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDk7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkcm9wZG93bi1sb2FkaW5nLWJnO1xuICBmb250LXNpemU6IDI4cHg7XG59XG5cbi5kcm9wZG93bi1sYWJlbC1ib3gge1xuICBtYXJnaW4tcmlnaHQ6ICRnbC1zcGFjaW5nLXNjYWxlLTM7XG4gIG1hcmdpbi10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gIGhlaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi5naXQtcmV2aXNpb24tZHJvcGRvd24ge1xuICAuZHJvcGRvd24tY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMjE1cHg7XG4gIH1cbn1cblxuLnNpZGViYXItbW92ZS1pc3N1ZS1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiAxNjBweDtcbiAgfVxufVxuXG4uZHJvcGRvd24tbWVudS1hdXRob3Ige1xuICAuZHJvcGRvd24tY29udGVudCB7XG4gICAgbWF4LWhlaWdodDogMjE1cHg7XG4gIH1cbn1cblxuLmRyb3Bkb3duLW1lbnUtbGFiZWxzIHtcbiAgLmRyb3Bkb3duLWNvbnRlbnQge1xuICAgIG1heC1oZWlnaHQ6IDEyOHB4O1xuICB9XG59XG5cbi5kcm9wZG93bi1tZW51LWlubmVyLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbn1cblxuLmRyb3Bkb3duLW1lbnUtaW5uZXItY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG5cbi5kcm9wZG93bi10b2dnbGUtdGV4dCB7XG4gICYuaXMtZGVmYXVsdCB7XG4gICAgY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3Itc3VidGxlKTtcbiAgfVxufVxuXG4ucGlrYS1zaW5nbGUuYW5pbWF0ZS1waWNrZXIuaXMtYm91bmQsXG4ucGlrYS1zaW5nbGUuYW5pbWF0ZS1waWNrZXIuaXMtYm91bmQuaXMtaGlkZGVuIHtcbiAgLypcbiAgICogSGF2aW5nIGAhaW1wb3J0YW50YCBpcyBub3QgcmVjb21tZW5kZWQgYnV0XG4gICAqIHNpbmNlIGBwaWthZGF5YCBzZXRzIHBvc2l0aW9uaW5nIGlubGluZVxuICAgKiB0aGVyZSdzIG5vIHdheSBpdCBjYW4gYmUgZ3JhY2VmdWxseSBvdmVycmlkZGVuXG4gICAqIHVzaW5nIGNvbmZpZyBvcHRpb25zLlxuICAgKi9cbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ucGlrYS1zaW5nbGUuYW5pbWF0ZS1waWNrZXIuaXMtYm91bmQge1xuICBAaW5jbHVkZSBzZXQtdmlzaWJsZTtcblxuICAmLmlzLWhpZGRlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLmxhYmVscy1zZWxlY3Qtd3JhcHBlciB7XG4gICYuaXMtc3RhbmRhbG9uZSB7XG4gICAgbWluLXdpZHRoOiAkaW5wdXQtbWQtd2lkdGg7XG5cbiAgICAubGFiZWxzLXNlbGVjdC1kcm9wZG93bi1jb250ZW50cyB7XG4gICAgICBtYXgtaGVpZ2h0OiAzNTBweDtcblxuICAgICAgLmRyb3Bkb3duLWNvbnRlbnQge1xuICAgICAgICBoZWlnaHQ6IDI1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxpIHtcbiAgICAmOmhvdmVyLFxuICAgICYuaXMtZm9jdXNlZCB7XG4gICAgICAubGFiZWwtaXRlbSB7XG4gICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWl0ZW0taG92ZXI7XG5cbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5sYWJlbHMtc2VsZWN0LWRyb3Bkb3duLWJ1dHRvbiB7XG4gICAgLmdsLWJ1dHRvbi10ZXh0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5sYWJlbHMtc2VsZWN0LWRyb3Bkb3duLWNvbnRlbnRzIHtcbiAgICBtaW4taGVpZ2h0OiAkZHJvcGRvd24tbWluLWhlaWdodDtcbiAgICBtYXgtaGVpZ2h0OiAzMzBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIEBhcHBseSBnbC1ib3JkZXI7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1kcm9wZG93bjtcbiAgICBAYXBwbHkgZ2wtYmctZHJvcGRvd247XG4gICAgQGFwcGx5IGdsLXNoYWRvdy1tZDtcblxuICAgIC5kcm9wZG93bi1jb250ZW50IHtcbiAgICAgIGhlaWdodDogMTM1cHg7XG4gICAgfVxuICB9XG5cbiAgLmxhYmVscy1mZXRjaC1sb2FkaW5nIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICAuZHJvcGRvd24taGVhZGVyLWJ1dHRvbiB7XG4gICAgLmdsLWljb24ge1xuICAgICAgY29sb3I6ICRkcm9wZG93bi10aXRsZS1idG4tY29sb3I7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubGFiZWwtaXRlbSB7XG4gICAgcGFkZGluZzogOHB4IDIwcHg7XG4gIH1cbn1cblxuLmJ1bGstdXBkYXRlIHtcbiAgLmRyb3Bkb3duLXRvZ2dsZS10ZXh0IHtcbiAgICAmLmlzLWRlZmF1bHQge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICB9XG4gIH1cbn1cblxuLy8gVGhpcyBjbGFzcyB3b24ndCBiZSBuZWVkZWQgb25jZSB3ZSBjYW4gZGlyZWN0bHkgYWRkIHV0aWxpdHkgY2xhc3NlcyB0byB0aGUgY2hpbGRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvaXNzdWVzLzU2Njlcbi5nbC1kcm9wZG93bi10ZXh0LXB5LTAge1xuICAuYi1kcm9wZG93bi10ZXh0IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLyBUaGlzIGNsYXNzIHdvbid0IGJlIG5lZWRlZCBvbmNlIHdlIGNhbiBkaXJlY3RseSBhZGQgdXRpbGl0eSBjbGFzc2VzIHRvIHRoZSBjaGlsZFxuLy8gaHR0cHM6Ly9naXRodWIuY29tL2Jvb3RzdHJhcC12dWUvYm9vdHN0cmFwLXZ1ZS9pc3N1ZXMvNTY2OVxuLmdsLWRyb3Bkb3duLXRleHQtYmxvY2sge1xuICAuYi1kcm9wZG93bi10ZXh0IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4vLyBUaGlzIGNsYXNzIHdvbid0IGJlIG5lZWRlZCBvbmNlIHdlIGNhbiBhZGQgYSBwcm9wIGZvciB0aGlzIGluIHRoZSBHaXRMYWIgVUkgY29tcG9uZW50XG4vLyBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWItdWkvLS9pc3N1ZXMvOTY2IFtDTE9TRURdXG4uZ2wtZHJvcGRvd24ge1xuICAuZ2wtZHJvcGRvd24tbWVudS13aWRlIHtcbiAgICB3aWR0aDogJGdsLWRyb3Bkb3duLXdpZHRoLXdpZGU7XG4gIH1cbn1cblxuLy8gVGhpcyBjbGFzcyB3b24ndCBiZSBuZWVkZWQgb25jZSB3ZSBjYW4gYWRkIGEgcHJvcCBmb3IgdGhpcyBpbiB0aGUgR2l0TGFiIFVJIGNvbXBvbmVudFxuLy8gaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLXVpLy0vaXNzdWVzLzk2NiBbQ0xPU0VEXVxuLmdsLWRyb3Bkb3duLmdsLWRyb3Bkb3duLW1lbnUtZnVsbC13aWR0aCB7XG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uZ3JvdXAtbmFtZXNwYWNlLWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24tY3VzdG9tLXRvZ2dsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXg6IGF1dG87XG5cbiAgLmdsLWJ1dHRvbi10ZXh0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5ncm91cC1uYW1lc3BhY2UtZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1pdGVtLXRleHQtd3JhcHBlciB7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG4iLCIvKipcbiAqIEZpbGUgY29udGVudCBob2xkZXJcbiAqXG4gKi9cbi5maWxlLWhvbGRlciB7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xuXG4gICYuZmlsZS1ob2xkZXItdG9wLWJvcmRlciB7XG4gICAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXNlY3Rpb247XG5cbiAgICAuZmlsZS10aXRsZSB7XG4gICAgICAvLyBQcmV2ZW50cyB0aGUgdG9wIGJvcmRlciBnZXR0aW5nIGNsaXBwZWQgYnkgdGhlIGJhY2tncm91bmRcbiAgICAgIEBhcHBseSBnbC1yb3VuZGVkLXQtbGc7XG4gICAgfVxuICB9XG5cbiAgJi5yZWFkbWUtaG9sZGVyIHtcbiAgICBtYXJnaW46ICRnbC1wYWRkaW5nIDA7XG4gIH1cblxuICAuZmlsZS10aXRsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICAgIEBhcHBseSBnbC1ib3JkZXItYi1zZWN0aW9uO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IGluaGVyaXQ7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IGluaGVyaXQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgcGFkZGluZzogMTBweCAkZ2wtcGFkZGluZztcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cbiAgICAuZmlsZS1hY3Rpb25zIHtcbiAgICAgIC5idG46bm90KC5idG4taWNvbikge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYTpub3QoLmJ0bikge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICB9XG4gIH1cblxuICAuZmlsZS1ibGFtZS1sZWdlbmQge1xuICAgIC5sZWZ0LWxhYmVsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDVweDtcbiAgICB9XG5cbiAgICAucmlnaHQtbGFiZWwge1xuICAgICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gICAgfVxuXG4gICAgLmxlZ2VuZC1ib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICBwYWRkaW5nOiAwIDJweDtcbiAgICB9XG5cbiAgICAubGVnZW5kLWJveC0wIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1kYXRhLWJsdWUtOTAwO1xuICAgIH1cblxuICAgIC5sZWdlbmQtYm94LTEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLWRhdGEtYmx1ZS04MDA7XG4gICAgfVxuXG4gICAgLmxlZ2VuZC1ib3gtMiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItZGF0YS1ibHVlLTcwMDtcbiAgICB9XG5cbiAgICAubGVnZW5kLWJveC0zIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1kYXRhLWJsdWUtNjAwO1xuICAgIH1cblxuICAgIC5sZWdlbmQtYm94LTQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLWRhdGEtYmx1ZS01MDA7XG4gICAgfVxuXG4gICAgLmxlZ2VuZC1ib3gtNSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItZGF0YS1ibHVlLTQwMDtcbiAgICB9XG5cbiAgICAubGVnZW5kLWJveC02IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1kYXRhLWJsdWUtMzAwO1xuICAgIH1cblxuICAgIC5sZWdlbmQtYm94LTcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLWRhdGEtYmx1ZS0yMDA7XG4gICAgfVxuXG4gICAgLmxlZ2VuZC1ib3gtOCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItZGF0YS1ibHVlLTEwMDtcbiAgICB9XG5cbiAgICAubGVnZW5kLWJveC05IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRnbC1jb2xvci1kYXRhLWJsdWUtNTA7XG4gICAgfVxuICB9XG5cbiAgLmZpbGUtY29udGVudCB7XG4gICAgJi5pbWFnZV9maWxlLFxuICAgICYuYXVkaW8sXG4gICAgJi52aWRlbyB7XG4gICAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZzogMzBweDtcblxuICAgICAgaW1nLFxuICAgICAgYXVkaW8sXG4gICAgICB2aWRlbyB7XG4gICAgICAgIG1heC13aWR0aDogODAlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYubWQge1xuICAgICAgcGFkZGluZzogJGdsLXBhZGRpbmc7XG5cbiAgICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChtZCwgcGFuZWwpIHtcbiAgICAgICAgcGFkZGluZzogJGdsLXBhZGRpbmcgKiAyO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuYmxvYi1uby1wcmV2aWV3IHtcbiAgICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgICB0ZXh0LXNoYWRvdzogMCAxcHggMnB4ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDEwMHB4IDA7XG4gICAgfVxuXG4gICAgJi5sb2dzIHtcbiAgICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgICBtYXgtaGVpZ2h0OiA3MDBweDtcbiAgICAgIG92ZXJmbG93LXk6IGF1dG87XG5cbiAgICAgIG9sIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gICAgICAgIEBhcHBseSBnbC1ib3JkZXItbDtcbiAgICAgICAgQGFwcGx5IGdsLWJvcmRlci1sLXNlY3Rpb247XG5cbiAgICAgICAgbGkge1xuICAgICAgICAgIGNvbG9yOiAkbG9ncy1saS1jb2xvcjtcblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgY29sb3I6ICRsb2dzLXAtY29sb3I7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjRweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibHVlLTUwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5saXN0LWlubGluZS5wcmV2aWV3cyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuXG4gICAgICAucHJldmlldyB7XG4gICAgICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5zcGFuLmlkaWZmIHtcbiAgJi5sZWZ0IHtcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAycHg7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMnB4O1xuICB9XG5cbiAgJi5yaWdodCB7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDJweDtcbiAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMnB4O1xuICB9XG59XG5cbi5maWxlLXN0YXRzIHtcbiAgdWwge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmc6IDNweCAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgLm5ldy1maWxlIHtcbiAgICBhIHtcbiAgICAgIEBhcHBseSBnbC10ZXh0LXN1Y2Nlc3M7XG4gICAgfVxuICB9XG5cbiAgLmRlbGV0ZWQtZmlsZSB7XG4gICAgYSB7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1kYW5nZXI7XG4gICAgfVxuICB9XG5cbiAgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgLm5ldy1maWxlIHtcbiAgICAgIEBhcHBseSBnbC10ZXh0LXN1Y2Nlc3M7XG4gICAgfVxuXG4gICAgLmRlbGV0ZWQtZmlsZSB7XG4gICAgICBjb2xvcjogJHJlZC03MDA7XG4gICAgfVxuICB9XG59XG5cbi5maWxlLXRpdGxlLWZsZXgtcGFyZW50IHtcbiAgJixcbiAgLmZpbGUtaG9sZGVyICYge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICAgIG1hcmdpbjogMDtcbiAgICBtaW4taGVpZ2h0OiBweC10by1yZW0oJGZpbGUtaGVhZGVyLWhlaWdodCk7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXIgJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXIgMCAwO1xuICB9XG5cbiAgLy8gU2libGluZyBzbmlwcGV0IGZpbGUgaGVhZGVycyBhcmUgc3RpY2t5IHdpdGggdGhlIHNhbWUgei1pbmRleCwgc28gbGlmdCB0aGUgb25lXG4gIC8vIHdpdGggYW4gb3BlbiBkcm9wZG93biAobGlrZSB0aGUgdGFibGUgb2YgY29udGVudHMpIGFib3ZlIHRoZSBuZXh0IGZpbGUncyBoZWFkZXIuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byBzbmlwcGV0IGZpbGUgaGVhZGVyc1xuICAuc25pcHBldC1maWxlLWNvbnRlbnQgJjpoYXMoYnV0dG9uW2FyaWEtZXhwYW5kZWQ9J3RydWUnXSkge1xuICAgIHotaW5kZXg6IDU7XG4gIH1cblxuICAuZmlsZS1oZWFkZXItY29udGVudCB7XG4gICAgcGFkZGluZy1yaWdodDogMzBweDtcbiAgfVxuXG4gIGEge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIH1cbn1cblxuLmlzLXN0bC1sb2FkaW5nIHtcbiAgLnN0bC1jb250cm9scyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uZmlsZS1mb3JrLXN1Z2dlc3Rpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIEBhcHBseSBnbC1ib3JkZXItYi1zZWN0aW9uO1xuICBwYWRkaW5nOiA1cHggJGdsLXBhZGRpbmc7XG59XG5cbi5maWxlLWZvcmstc3VnZ2VzdGlvbi1ub3RlIHtcbiAgbWFyZ2luLXJpZ2h0OiAxLjVlbTtcbn1cblxuLnByZXZpZXctY29udGFpbmVyIHtcbiAgLmZpbGUtY29udGFpbmVyIHtcbiAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuZmlsZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5MCU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDcwdmg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZpbGUtaW5mbyB7XG4gICAgICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgfVxuICB9XG5cbiAgLm5vdGUtY29udGFpbmVyIHtcbiAgICAudXNlci1hdmF0YXItbGluay5uZXctY29tbWVudCB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuICB9XG5cbiAgLmRpZmYtZGlzY3Vzc2lvbnM6bm90KDpsYXN0LWNoaWxkKSAuZGlzY3Vzc2lvbiAuZGlzY3Vzc2lvbi1ib2R5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGdsLXBhZGRpbmc7XG5cbiAgICAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIge1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbiAgICAgIEBhcHBseSBkYXJrOmdsLWJvcmRlci1iLXNlY3Rpb247XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5tZC1wcmV2aWV3ZXIge1xuICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tanMtY2xhc3NcbiNqcy1vcGVuYXBpLXZpZXdlciB7XG4gIHByZS52ZXJzaW9uLFxuICBjb2RlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLmdsLWRhcmsgJiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgZmlsdGVyOiBpbnZlcnQoMSkgaHVlLXJvdGF0ZSgxODBkZWcpO1xuICB9XG59XG5cbi5jb2RlLW5hdmlnYXRpb24tbGluZTpob3ZlciB7XG4gIC5jb2RlLW5hdmlnYXRpb24ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCAkZ3JheS0yMDAgZGFzaGVkO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkZ3JheS05NTA7XG4gICAgfVxuICB9XG59XG5cbi5jb2RlLW5hdmlnYXRpb24tcG9wb3Zlci5wb3BvdmVyIHtcbiAgbWF4LXdpZHRoOiBjYWxjKG1pbigje3B4LXRvLXJlbSg1NjBweCl9LCBjYWxjKDEwMHZ3IC0gI3skZ2wtcGFkZGluZy0zMn0pKSk7XG59XG5cbi5jb2RlLW5hdmlnYXRpb24tcG9wb3Zlci1jb250YWluZXIge1xuICBtYXgtaGVpZ2h0OiBweC10by1yZW0oMzIwcHgpO1xufVxuXG4uY29kZS1uYXZpZ2F0aW9uLXBvcG92ZXIgLmNvZGUge1xuICBwYWRkaW5nLWxlZnQ6ICRncmlkLXNpemUgKiAzO1xuICB0ZXh0LWluZGVudDogLSRncmlkLXNpemUgKiAyO1xufVxuXG4udHJlZS1pdGVtLWxpbmsge1xuICAmOm5vdCguaXMtc3VibW9kdWxlKSB7XG4gICAgc3BhbiB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICB9XG59XG5cbi52ZXJzaW9uLWxpbmsge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgd2lkdGg6ICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gIGhlaWdodDogJGdsLXNwYWNpbmctc2NhbGUtNTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktNDAwO1xuICBtYXNrLWltYWdlOiB1cmwoJ0BnaXRsYWIvc3Zncy9kaXN0L2ljb25zLXN0YWNrZWQuc3ZnI2RvYy12ZXJzaW9ucycpO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXNpemU6IGNvdmVyO1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICB9XG59XG5cbi8vXG4vLyBJTVBPUlRBTlQgUEVSRk9STUFOQ0UgT1BUSU1JWkFUSU9OIEJFTE9XXG4vL1xuLy8gKiA6bnRoLW9mLXR5cGUoMW4rNzApIC0gbWFrZXMgc3VyZSB3ZSBkbyBub3QgcmVuZGVyIGxpbmVzIDcxKyByaWdodFxuLy8gYXdheS4gRXZlbiB0aG91Z2ggdGhlIEhUTUwgaXMgaW5qZWN0ZWQgaW4gdGhlIERPTSwgYXMgbG9uZyBhcyB3ZSBkb1xuLy8gbm90IHJlbmRlciB0aG9zZSBsaW5lcywgdGhlIGJyb3dzZXIgZG9lc24ndCBuZWVkIHRvIHNwZW5kIHJlc291cmNlc1xuLy8gY2FsY3VsYXRpbmcgYW5kIHJlcGFpbnRpbmcgd2hhdCdzIGhpZGRlbi5cbi8vXG4vLyAqIDpub3QoOmxhc3Qtb2YtdHlwZSkgbWFrZXMgc3VyZSB0aGF0IHdlIG91dHB1dCB0aGUgbGFzdCBsaW5lIG9mIHRoZVxuLy8gYmxvYidzIHNuaXBwZXQuIFRoaXMgaXMgaW1wb3J0YW50IGJlY2F1c2UgdGhlIGNvbHVtbiB3aXRoIHRoZSBsaW5lXG4vLyBudW1iZXJzIGhhcyBhdXRvIHdpZHRoIGFuZCBpcyBleHBhbmRpbmcgYmFzZWQgb24gdGhlIGNvbnRlbnQgaW4gaXQuXG4vLyBUaGlzIGxlYWRzIHRvIHVubmVjZXNzYXJ5IGxheW91dCBzaGlmdCB3aGVuIHRoZSBsYXN0IGxpbmVzIG9mIHRoZVxuLy8gc25pcHBldCBhcmUgbG9uZ2VyIHRoYW4gdHdvICgyKSBkaWdpdHMuXG4vLyBFWEFNUExFOiBMZXQncyBzYXksIHdlIGhhdmUgYSBibG9iIHdpdGggMTAwIGxpbmVzLiBJZiB3ZSBvdXRwdXQgNzBcbi8vIGxpbmVzLCBhbmQgdGhlbiwgdGhlIHJlbWFpbmluZyAzMCAoaW5jbCB0aGUgbGluZSAxMDApLCBpdCB3aWxsIGxlYWRcbi8vIHRvIHRoZSBsYXlvdXQgcmVmbG93IGFuZCBzdHlsZXMgcmVjYWxjdWxhdGlvbiB3aGVuIHdlIG91dHB1dCBsaW5lXG4vLyAxMDAgKGJlY2F1c2UgdGhlIHdpZHRoIG9mICcxMDAnIGlzIGFsd2F5cyBiaWdnZXIgdGhhbiAnNzAnKS4gQnlcbi8vIG91dHB1dHRpbmcgdGhlIGxhc3QgbGluZSByaWdodCBhd2F5LCB3ZSBwcmV2ZW50IHRoYXQgYXMgdGhlIGNvbHVtblxuLy8gd2lsbCBhbHdheXMgYmUgZXhwYW5kZWQgdG8gdGhlIG1heGltdW0gbmVlZGVkIHdpZHRoLlxuLmJsb2Itdmlld2VyW2RhdGEtbG9hZGluZ10gLmZpbGUtY29udGVudC5jb2RlIC5saW5lOm50aC1vZi10eXBlKDFuKzcwKTpub3QoOmxhc3Qtb2YtdHlwZSksXG4uYmxvYi12aWV3ZXJbZGF0YS1sb2FkaW5nXSAuZmlsZS1jb250ZW50LmNvZGUgLmZpbGUtbGluZS1udW06bnRoLW9mLXR5cGUoMW4rNzApOm5vdCg6bGFzdC1vZi10eXBlKSB7ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O31cblxuLmJsb2Itdmlld2VyW2RhdGEtbG9hZGluZ10gLmZpbGUtY29udGVudC5jb2RlIC5saW5lOm50aC1vZi10eXBlKDY5KTpub3QoOmxhc3Qtb2YtdHlwZSksXG4uYmxvYi12aWV3ZXJbZGF0YS1sb2FkaW5nXSAuZmlsZS1jb250ZW50LmNvZGUgLmZpbGUtbGluZS1udW06bnRoLW9mLXR5cGUoNjkpOm5vdCg6bGFzdC1vZi10eXBlKSB7XG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgY29udGVudDogJ1xcMjAyNic7XG4gIH1cbn1cblxuLmJsb2Itdmlld2VyW2RhdGEtbG9hZGluZ10gLmZpbGUtY29udGVudC5jb2RlIC5saW5lOm50aC1vZi10eXBlKDY5KTpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAmOjphZnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG5cbi8vICo6bnRoLW9mLXR5cGUoMW4rMzApIC0gbWFrZXMgc3VyZSB3ZSBkbyBub3QgcmVuZGVyIGVsZW1lbnRzIDMwKyByaWdodCBhd2F5IHdoZW5cbi8vIHZpZXdpbmcgYSBmaWxlLiBFdmVuIHRob3VnaCB0aGUgSFRNTCBpcyBpbmplY3RlZCBpbiB0aGUgRE9NLCBhcyBsb25nIGFzIHdlIGRvXG4vLyBub3QgcmVuZGVyIHRob3NlIGVsZW1lbnRzLCB0aGUgYnJvd3NlciBkb2Vzbid0IG5lZWQgdG8gc3BlbmQgcmVzb3VyY2VzXG4vLyBjYWxjdWxhdGluZyBhbmQgcmVwYWludGluZyB3aGF0J3MgaGlkZGVuLlxuLmZpbGUtaG9sZGVyIFtkYXRhLWxvYWRpbmddIC5maWxlLWNvbnRlbnQgKjpudGgtb2YtdHlwZSgxbiszMCkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubXItdHJlZS1saXN0IHtcbiAgLS1maWxlLXJvdy1sZXZlbC1wYWRkaW5nOiAxNnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtaW4taGVpZ2h0OiAwO1xuICBtYXgtaGVpZ2h0OiB2YXIoLS10cmVlLWxpc3QtbWF4LWhlaWdodCk7XG5cbiAgLnZ1ZS1yZWN5Y2xlLXNjcm9sbGVyIHtcbiAgICAvLyBtYWtlIHZpcnR1YWwgc2Nyb2xsZXIgYSBzY3JvbGwgY29udGFpbmVyXG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gICAgZmxleDogMTtcbiAgfVxufVxuXG4uZGlmZnMtdHJlZS1kcmF3ZXIgLm1yLXRyZWUtbGlzdCB7XG4gIG1heC1oZWlnaHQ6IG5vbmU7XG59XG5cbi5tci10cmVlLWxpc3Q6bm90KC50cmVlLWxpc3QtYmxvYnMpIC50cmVlLWxpc3QtcGFyZW50OjpiZWZvcmUsIC5yZXBvc2l0b3J5LXRyZWUtbGlzdCAudHJlZS1saXN0LXBhcmVudDo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTRweDtcbiAgd2lkdGg6IGNhbGModmFyKC0tbGV2ZWwpICogdmFyKC0tZmlsZS1yb3ctbGV2ZWwtcGFkZGluZykpO1xuICBib3R0b206IDA7XG4gIC8vIFRoZSB2aXJ0dWFsIHNjcm9sbGVyIGhhcyBhIGZsYXQgSFRNTCBzdHJ1Y3R1cmUgc28gaW5zdGVhZCBvZiB0aGUgOjpiZWZvcmVcbiAgLy8gZWxlbWVudCBzdHJldGNoaW5nIG92ZXIgbXVsdGlwbGUgcm93cyB3ZSBpbnN0ZWFkIGNyZWF0ZSBhIHJlcGVhdGluZyBiYWNrZ3JvdW5kIGltYWdlXG4gIC8vIGZvciB0aGUgbGluZVxuICBiYWNrZ3JvdW5kOlxuICAgIGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpIDFweCwgdHJhbnNwYXJlbnQgMXB4KVxuICAgIHJlcGVhdC14XG4gICAgMCAvIHZhcigtLWZpbGUtcm93LWxldmVsLXBhZGRpbmcpIDEwMCU7XG59XG5cbi5ibGFtZS1hZ2UtaW5kaWNhdG9yIHtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1ibGFtZS1hZ2UtY29sb3IsIHRyYW5zcGFyZW50KTtcbn1cblxuLmNvZGUge1xuICBwYWRkaW5nOiAwO1xuICBAYXBwbHkgZ2wtcm91bmRlZC10LW5vbmU7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWItYmFzZTtcbn1cbiIsIi5maWx0ZXItaXRlbSB7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cbiAgJi51cGRhdGUtaXNzdWVzLWJ0biB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKG1kLCBwYW5lbCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChzbSwgcGFuZWwpIHtcbiAgLmZpbHRlci1pdGVtOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICB9XG5cbiAgLmJ1bGstdXBkYXRlIHtcbiAgICAuZmlsdGVyLWl0ZW0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zb3J0LWZpbHRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LXNvcnQge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gIC5maWx0ZXItaXRlbSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LXRvZ2dsZS5kcm9wZG93bi1tZW51LXRvZ2dsZSxcbiAgLnVwZGF0ZS1pc3N1ZXMtYnRuIC5idG4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtd3JhcHBlciB7XG4gIC50b2tlbnMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDE7XG4gICAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxcHg7XG4gIH1cblxuICAuaW5wdXQtdG9rZW4ge1xuICAgIG1heC13aWR0aDogMjAwcHg7XG4gICAgcGFkZGluZzogMDtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtdG9rZW46b25seS1jaGlsZCxcbiAgLmlucHV0LXRva2VuOmxhc3QtY2hpbGQge1xuICAgIGZsZXg6IDE7XG4gICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICB9XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4sXG4uZmlsdGVyZWQtc2VhcmNoLXRlcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXNocmluazogMDtcbiAgbWFyZ2luLXRvcDogMnB4O1xuICBtYXJnaW4tYm90dG9tOiAycHg7XG5cbiAgLnNlbGVjdGFibGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAubmFtZSxcbiAgLm9wZXJhdG9yLFxuICAudmFsdWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAycHggN3B4O1xuICAgIEBhcHBseSBnbC10ZXh0LXNtO1xuICB9XG5cbiAgLm5hbWUsXG4gIC5vcGVyYXRvcixcbiAgLnZhbHVlLWNvbnRhaW5lciB7XG4gICAgY29sb3I6IHZhcigtLWdsLXRva2VuLWZvcmVncm91bmQtY29sb3IpO1xuICB9XG5cbiAgLm5hbWUsXG4gIC5vcGVyYXRvcixcbiAgLnZhbHVlLWNvbnRhaW5lcixcbiAgLnZhbHVlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDI0cHg7XG4gIH1cblxuICAubmFtZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLXR5cGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICBib3JkZXItcmFkaXVzOiAycHggMCAwIDJweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgfVxuXG4gIC5vcGVyYXRvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gIH1cblxuICAudmFsdWUtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICBib3JkZXItcmFkaXVzOiAwIDJweCAycHggMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cHg7XG4gIH1cblxuICAudmFsdWUge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAucmVtb3ZlLXRva2VuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgcGFkZGluZy1yaWdodDogMDtcblxuICAgIC5jbG9zZS1pY29uIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1pY29uLWNvbG9yLXN1YnRsZSk7XG4gICAgfVxuXG4gICAgJjpob3ZlciAuY2xvc2UtaWNvbiB7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtaWNvbi1jb2xvci1kZWZhdWx0KTtcbiAgICB9XG5cbiAgICAmLmludmVydGVkIHtcbiAgICAgIC5jbG9zZS1pY29uIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gICAgICAgIG9wYWNpdHk6IDAuODU7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIgLmNsb3NlLWljb24ge1xuICAgICAgICBjb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZpbHRlcmVkLXNlYXJjaC10b2tlbjpob3Zlcixcbi5maWx0ZXJlZC1zZWFyY2gtdG9rZW4gLnNlbGVjdGVkLFxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIC5zZWxlY3RlZCB7XG4gIC5uYW1lIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1maWx0ZXJlZC1zZWFyY2gtdG9rZW4tdHlwZS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5vcGVyYXRvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLW9wZXJhdG9yLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICB9XG5cbiAgLnZhbHVlLWNvbnRhaW5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZmlsdGVyZWQtc2VhcmNoLXRva2VuLWRhdGEtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gIH1cbn1cblxuLmZpbHRlcmVkLXNlYXJjaC10ZXJtIHtcbiAgLm5hbWUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gICAgY29sb3I6IHZhcigtLWdsLXRva2VuLWZvcmVncm91bmQtY29sb3IpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLnNlbGVjdGFibGUge1xuICAgIGN1cnNvcjogdGV4dDtcbiAgfVxufVxuXG4uc2Nyb2xsLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZmlsdGVyZWQtc2VhcmNoLWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleDogMTtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1pbi13aWR0aDogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXMpO1xuXG4gICYuZm9jdXMsXG4gICYuZm9jdXM6aG92ZXIge1xuICAgIEBhcHBseSBnbC1mb2N1cztcbiAgfVxuXG4gIGdsLWVtb2ppIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0O1xuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogJGRlZmF1bHQtaWNvbi1zaXplO1xuICAgICAgd2lkdGg6ICRkZWZhdWx0LWljb24tc2l6ZTtcbiAgICB9XG4gIH1cblxuICAuZm9ybS1jb250cm9sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBoZWlnaHQ6ICN7JGlucHV0LWhlaWdodCAtIDJweH07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG5cbiAgICAmLFxuICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAmOmhvdmVyIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmZpbHRlcmVkLXNlYXJjaC1ib3gtaW5wdXQtY29udGFpbmVyIHtcbiAgZmxleDogMTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4td2lkdGg6IDA7XG4gIGhlaWdodDogI3skaW5wdXQtaGVpZ2h0IC0gMnB4fTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXMpO1xufVxuXG4uZmlsdGVyZWQtc2VhcmNoLWlucHV0LWRyb3Bkb3duLW1lbnUge1xuICBtYXgtaGVpZ2h0OiAkZHJvcGRvd24tbWF4LWhlaWdodC1sZztcbiAgbWF4LXdpZHRoOiAyODBweDtcbiAgb3ZlcmZsb3c6IGF1dG87XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93bi13cmFwcGVyIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cblxuLmZpbHRlcmVkLXNlYXJjaC1oaXN0b3J5LWRyb3Bkb3duLXRvZ2dsZS1idXR0b24uZ2wtYnV0dG9uIHtcbiAgJGZpbHRlcmVkLXNlYXJjaC1pbm5lci1ib3JkZXItcmFkaXVzOiBjYWxjKHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLXJhZGl1cykgLSAxcHgpO1xuICBib3JkZXItcmFkaXVzOiAkZmlsdGVyZWQtc2VhcmNoLWlubmVyLWJvcmRlci1yYWRpdXMgMCAwICRmaWx0ZXJlZC1zZWFyY2gtaW5uZXItYm9yZGVyLXJhZGl1cztcbiAgbWFyZ2luOiAtMXB4IDAgLTFweCAtMXB4O1xuICBmbGV4OiAxO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjFzIGxpbmVhcjtcbiAgd2lkdGg6IGF1dG87XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93biB7XG4gIHdpZHRoOiA0MCU7XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cblxuLmZpbHRlcmVkLXNlYXJjaC1oaXN0b3J5LWRyb3Bkb3duLWNvbnRlbnQge1xuICBtYXgtaGVpZ2h0OiBub25lO1xuXG4gIC5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93bi1pdGVtLFxuICAuZmlsdGVyZWQtc2VhcmNoLWhpc3RvcnktY2xlYXItYnV0dG9uIHtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB9XG59XG5cbi5maWx0ZXJlZC1zZWFyY2gtaGlzdG9yeS1kcm9wZG93bi10b2tlbiB7XG4gIGRpc3BsYXk6IGlubGluZTtcblxuICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIG1hcmdpbi1yaWdodDogMC4zZW07XG4gIH1cblxuICA+IC52YWx1ZSB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ib2xkO1xuICB9XG59XG5cbi5pc3N1ZXMtZGV0YWlscy1maWx0ZXJzLFxuLmVwaWNzLWRldGFpbHMtZmlsdGVycyB7XG4gIEBhcHBseSBnbC1wdC0zO1xuICBAYXBwbHkgZ2wtcHgtWy0tY29udGFpbmVyLXBhZGRpbmcteF07XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbn1cblxuQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gIC5pc3N1ZXMtZGV0YWlscy1maWx0ZXJzLFxuICAuZXBpY3MtZGV0YWlscy1maWx0ZXJzIHtcbiAgICBAYXBwbHkgZ2wtcHktMztcbiAgICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgfVxuXG4gIC5maWx0ZXItZHJvcGRvd24tY29udGFpbmVyIHtcbiAgICA+IGRpdiB7XG4gICAgICBtYXJnaW46IDA7XG5cbiAgICAgID4gLmJ0biB7XG4gICAgICAgIG1hcmdpbjogMCAwICRnbC1pbnB1dC1wYWRkaW5nO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmRyb3BsYWItZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUgLmZpbHRlci1kcm9wZG93bi1pdGVtIHtcbiAgLmJ0biB7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbiAgICBzdmcge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZ2wtcGFkZGluZy04O1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1sYWJlbC1ib3gge1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4O1xuICAgICAgd2lkdGg6IDE3cHg7XG4gICAgICBoZWlnaHQ6IDE3cHg7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5maWx0ZXItZHJvcGRvd24tbG9hZGluZyB7XG4gIHBhZGRpbmc6IDhweCAxNnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi52dWUtZmlsdGVyZWQtc2VhcmNoLWJhci1jb250YWluZXIge1xuICAuZ2wtc2VhcmNoLWJveC1ieS1jbGljayB7XG4gICAgLy8gVGhpcyBlbmZvcmNlcyB3aWR0aCBvZiBmbGV4IGl0ZW1zIHRvIGJlXG4gICAgLy8gY2FsY3VsYXRlZCBpbiBhZHZhbmNlIHNvIHRoYXQgY29udGVudFxuICAgIC8vIGRvZXMgbm90IG92ZXJmbG93LlxuXG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kLCBwYW5lbCkge1xuICAgIC5zb3J0LWRyb3Bkb3duLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihtZCwgcGFuZWwpIHtcbiAgICAuc29ydC1kcm9wZG93bi1jb250YWluZXIge1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB9XG4gIH1cbn1cbiIsIiRub3RpZmljYXRpb24tYm94LXNoYWRvdy1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjI1KTtcblxuLmZsYXNoLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAxNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIEBhcHBseSBnbC1nYXAtMztcblxuICAmLnN0aWNreSB7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB0b3A6IDA7XG4gICAgei1pbmRleDogJGZsYXNoLXotaW5kZXg7XG4gIH1cblxuICAmLmZsYXNoLWNvbnRhaW5lci1wYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgJjplbXB0eSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGZsYXNoIGNvbnRhaW5lclxuICAmOmhhcyguZ2wtYWxlcnQpIHtcbiAgICBAYXBwbHkgZ2wtbXQtMztcbiAgfVxuXG4gIC5mbGFzaC1hbGVydCxcbiAgLmZsYXNoLW5vdGljZSxcbiAgLmZsYXNoLXN1Y2Nlc3MsXG4gIC5mbGFzaC13YXJuaW5nIHtcbiAgICAmOm5vdCguZ2wtYWxlcnQpIHtcbiAgICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nICRnbC1wYWRkaW5nLTMyICRnbC1wYWRkaW5nICgkZ2wtcGFkZGluZyArICRnbC1wYWRkaW5nLTQpO1xuICAgICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgICAgLmNvbnRhaW5lci1mbHVpZCxcbiAgICAgIC5jb250YWluZXItZmx1aWQuY29udGFpbmVyLWxpbWl0ZWQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLmZsYXNoLWNvbnRhaW5lci1uby1tYXJnaW4ge1xuICAgIC5nbC1hbGVydCB7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5mbGFzaC1hbGVydCxcbiAgICAuZmxhc2gtbm90aWNlLFxuICAgIC5mbGFzaC1zdWNjZXNzLFxuICAgIC5mbGFzaC13YXJuaW5nIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICB9XG59XG5cbi5nbC1icm93c2VyLWllIC5mbGFzaC1jb250YWluZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG1heC13aWR0aDogJGxpbWl0ZWQtbGF5b3V0LXdpZHRoO1xuICBsZWZ0OiA1MCU7XG5cbiAgLmZsYXNoLWFsZXJ0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxufVxuIiwidGV4dGFyZWEge1xuICByZXNpemU6IHZlcnRpY2FsO1xufVxuXG5pbnB1dCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbn1cblxuaW5wdXRbdHlwZT0ndGV4dCddLmRhbmdlciB7XG4gIGJhY2tncm91bmQ6ICRpbnB1dC1kYW5nZXItYmcgIWltcG9ydGFudDtcbiAgYm9yZGVyLWNvbG9yOiAkcmVkLTQwMDtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDFweCAkd2hpdGU7XG59XG5cbi8qKlxuICogV2hlbiBmb3JtIGlucHV0IHR5cGUgaXMgc2VhcmNoLCBicm93c2VycyBhZGQgYSBjbGVhciBpbnB1dCBidXR0b24gaW5zaWRlXG4gKiB0aGUgaW5wdXQgZmllbGQuIFRoaXMgb3ZlcmxhcHMgd2l0aCB0aGUgaW5wdXQgZmllbGQgd2UgaGF2ZSBhbHJlYWR5IGFkZGVkLlxuICovXG5cbi8qIHN0eWxlbGludC1kaXNhYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cbmlucHV0W3R5cGU9J3NlYXJjaCddIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBhcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG5cbiAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbixcbiAgJjo6LXdlYmtpdC1zZWFyY2gtcmVzdWx0cy1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi8qIHN0eWxlbGludC1lbmFibGUgcHJvcGVydHktbm8tdmVuZG9yLXByZWZpeCAqL1xuXG4uZm9ybS1hY3Rpb25zIHtcbiAgQGFwcGx5IGdsLW10LTA7XG4gIEBhcHBseSAtZ2wtbWItNTtcbiAgQGFwcGx5IGdsLXAtNTtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xufVxuXG5sYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcblxuICAmLmlubGluZS1sYWJlbCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgJi5mb3JtLWNoZWNrLWxhYmVsLFxuICAmLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgfVxuXG4gICYubGFiZWwtYm9sZCB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ib2xkO1xuICB9XG59XG5cbi5jdXN0b20tZm9ybS1jb250cm9sIHtcbiAgd2lkdGg6IDE1MHB4O1xufVxuXG5AaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20sIHBhbmVsKSB7XG4gIC5jdXN0b20tZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTUwcHg7XG4gIH1cbn1cblxuLyogTWVkaXVtIGRldmljZXMgKGRlc2t0b3BzLCA5OTJweCBhbmQgdXApICovXG5AaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gIC5jdXN0b20tZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTcwcHg7XG4gIH1cbn1cblxuLyogTGFyZ2UgZGV2aWNlcyAobGFyZ2UgZGVza3RvcHMsIDEyMDBweCBhbmQgdXApICovXG5AaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobGcsIHBhbmVsKSB7XG4gIC5jdXN0b20tZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMjAwcHg7XG4gIH1cbn1cblxuLmhlbHAtZm9ybSAuZm9ybS1ncm91cCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgZm9udC1mYW1pbHk6ICRtb25vc3BhY2UtZm9udDtcbiAgfVxuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgIHBhZGRpbmc6IDAgJGdsLXBhZGRpbmc7XG4gIH1cbn1cblxuLmZpZWxkc2V0LWZvcm0gZmllbGRzZXQge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4uZm9ybS1jb250cm9sIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1yYWRpdXMpO1xuICBwYWRkaW5nOiAkZ2wtdmVydC1wYWRkaW5nICRnbC1pbnB1dC1wYWRkaW5nO1xuXG4gICYuaW5wdXQtc2hvcnQge1xuICAgIHdpZHRoOiAkaW5wdXQtc2hvcnQtd2lkdGg7XG5cbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gICAgICB3aWR0aDogJGlucHV0LXNob3J0LW1kLXdpZHRoO1xuICAgIH1cbiAgfVxufVxuXG4uZm9ybS1jb250cm9sLFxuW2NvbnRlbnRlZGl0YWJsZT10cnVlXSB7XG4gICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gIH1cbn1cblxuLnNlbGVjdC1jb250cm9sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICBhcHBlYXJhbmNlOiBub25lO1xuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBwcm9wZXJ0eS1uby12ZW5kb3ItcHJlZml4ICovXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlIHByb3BlcnR5LW5vLXZlbmRvci1wcmVmaXggKi9cblxuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5mb3JtLWNvbnRyb2w6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtcGxhY2Vob2xkZXItY29sb3IpO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICAuaW5wdXQtZ3JvdXAtcHJlcGVuZDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpLFxuICAuaW5wdXQtZ3JvdXAtYXBwZW5kOm5vdCg6Zmlyc3QtY2hpbGQpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxufVxuXG4uZm9ybS10ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogI3skZ3JpZC1zaXplICogMC41fTtcbiAgZm9udC1zaXplOiAkZ2wtZm9udC1zaXplO1xuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufVxuXG4uZ2wtZmllbGQtZXJyb3IsXG4uaW52YWxpZC1mZWVkYmFjayB7XG4gIEBhcHBseSBnbC10ZXh0LWRhbmdlcjtcbiAgZm9udC1zaXplOiAkZ2wtZm9udC1zaXplO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07IC8vIE1hdGNoIFBhamFtYXMgZXJyb3IgbWVzc2FnZSBzcGFjaW5nXG59XG5cbi5nbC1zaG93LWZpZWxkLWVycm9ycyB7XG4gIC5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgLmdsLWZpZWxkLXN1Y2Nlc3Mtb3V0bGluZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyZWVuLTYwMDtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAxcHggJGdyZWVuLTYwMCBpbnNldCwgMCAxcHggMXB4ICRnbC1maWVsZC1mb2N1cy1zaGFkb3cgaW5zZXQsXG4gICAgICAgIDAgMCA0cHggMCAkZ3JlZW4tNjAwO1xuICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmdsLWZpZWxkLWVycm9yLW91dGxpbmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRyZWQtNTAwO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkcmVkLTUwMCBpbnNldCwgMCAxcHggMXB4ICRnbC1maWVsZC1mb2N1cy1zaGFkb3cgaW5zZXQsXG4gICAgICAgIDAgMCA0cHggMCAkZ2wtZmllbGQtZm9jdXMtc2hhZG93LWVycm9yO1xuICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmdsLWZpZWxkLXN1Y2Nlc3MtbWVzc2FnZSB7XG4gICAgQGFwcGx5IGdsLXRleHQtc3VjY2VzcztcbiAgfVxuXG4gIC5nbC1maWVsZC1lcnJvci1tZXNzYWdlIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kYW5nZXI7XG4gIH1cbn1cblxuLnNob3ctcGFzc3dvcmQtY29tcGxleGl0eS1lcnJvcnMge1xuICAuZm9ybS1jb250cm9sOm5vdCh0ZXh0YXJlYSkge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gIC5wYXNzd29yZC1jb21wbGV4aXR5LWVycm9yLW91dGxpbmUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRyZWQtNTAwO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkcmVkLTUwMCBpbnNldCwgMCAxcHggMXB4ICRnbC1maWVsZC1mb2N1cy1zaGFkb3cgaW5zZXQsXG4gICAgICAgIDAgMCA0cHggMCAkZ2wtZmllbGQtZm9jdXMtc2hhZG93LWVycm9yO1xuICAgICAgYm9yZGVyOiAwIG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5zZWxlY3Qtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmlucHV0LWxnIHtcbiAgbWF4LXdpZHRoOiAkaW5wdXQtbGctd2lkdGg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaW5wdXQtZ3JvdXAtdGV4dCB7XG4gIG1heC1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG59XG5cbi5hZGQtaXNzdWFibGUtZm9ybS1pbnB1dC13cmFwcGVyIHtcbiAgJi5mb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1cyk7XG4gIH1cblxuICAuZ2wtc2hvdy1maWVsZC1lcnJvcnMgJi5mb3JtLWNvbnRyb2w6bm90KHRleHRhcmVhKSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG5cbi5hZGQtaXNzdWFibGUtZm9ybS1pbnB1dC13cmFwcGVyLmZvY3VzLFxuLmlzc3VlLXRva2VuLXJlbW92ZS1idXR0b246Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cbiIsIi8qKlxuICogU3R5bGVzIHRoYXQgYXBwbHkgdG8gYWxsIEdGTSByZWxhdGVkIGZvcm1zLlxuICovXG5cbkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuLmdmbS1jb21taXQsXG4uZ2ZtLWNvbW1pdF9yYW5nZSB7XG4gIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiA5NSU7XG59XG5cbi8vIEluY3JlYXNlIHNwZWNpZmljaXR5IHRvIGVuc3VyZSB0aGF0IGl0IGlzIGFwcGxpZWRcbi5nZm0tcHJvamVjdF9tZW1iZXIuZ2ZtLXByb2plY3RfbWVtYmVyLFxuLm1kIGEuZ2ZtLXByb2plY3RfbWVtYmVyIHtcbiAgcGFkZGluZzogMCAycHg7XG4gIGNvbG9yOiB2YXIoLS1nbC1saW5rLW1lbnRpb24tdGV4dC1jb2xvci1kZWZhdWx0KTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbGluay1tZW50aW9uLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gIGJvcmRlci1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgJi5jdXJyZW50LXVzZXIge1xuICAgIGNvbG9yOiB2YXIoLS1nbC1saW5rLW1lbnRpb24tdGV4dC1jb2xvci1jdXJyZW50KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1saW5rLW1lbnRpb24tYmFja2dyb3VuZC1jb2xvci1jdXJyZW50KTtcbiAgfVxufVxuXG4uZ2ZtLWNvbG9yX2NoaXAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW46IDAgMCAycHggNHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG5cbiAgJGNoaXAtc2l6ZTogMC45ZW07XG4gICRiZy1zaXplOiBtYXRoLmRpdigkY2hpcC1zaXplLCAwLjkpO1xuICAkYmctcG9zOiAkYmctc2l6ZSAqIDAuNTtcblxuICB3aWR0aDogJGNoaXAtc2l6ZTtcbiAgaGVpZ2h0OiAkY2hpcC1zaXplO1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICRncmF5LTEwMCAyNSUsIHRyYW5zcGFyZW50IDAlLCB0cmFuc3BhcmVudCA3NSUsICRncmF5LTEwMCAwJSksXG4gICAgbGluZWFyLWdyYWRpZW50KDEzNWRlZywgJGdyYXktMTAwIDI1JSwgdHJhbnNwYXJlbnQgMCUsIHRyYW5zcGFyZW50IDc1JSwgJGdyYXktMTAwIDAlKTtcbiAgYmFja2dyb3VuZC1zaXplOiAkYmctc2l6ZSAkYmctc2l6ZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwLCAkYmctcG9zICRiZy1wb3M7XG5cbiAgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICAgIEBhcHBseSBnbC1ib3JkZXItc29saWQ7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1hbHBoYS1kYXJrLTI0O1xuICB9XG59XG5cbi8qXG4gKiBNQVJLRE9XTiBBTEVSVFMgLSBUaGVzZSBhcmUgY29tcGxldGVseSBzZXBhcmF0ZSBmcm9tIG91ciBBbGVydCBjb21wb25lbnQuXG4gKiBUaGVzZSBhcmUgdXNlci1nZW5lcmF0ZWQgY29udGVudCwgZm9ybWF0dGVkIGxpa2U6XG4gKiA+IFshbm90ZV1cbiAqID4gSGlnaGxpZ2h0cyBpbmZvcm1hdGlvbiB0aGF0IHVzZXJzIHNob3VsZCB0YWtlIGludG8gYWNjb3VudCwgZXZlbiB3aGVuIHNraW1taW5nLlxuICovXG4ubWQgLm1hcmtkb3duLWFsZXJ0IHtcbiAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWwtNDtcbiAgQGFwcGx5IGdsLWJvcmRlci1sLXNvbGlkO1xuICBAYXBwbHkgZ2wtcGwtNDtcbiAgQGFwcGx5IGdsLXB5LTI7XG4gIEBhcHBseSBnbC1teS01O1xuICBAYXBwbHkgZ2wtbXgtMDtcblxuICAubWFya2Rvd24tYWxlcnQtdGl0bGUge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTQ7XG4gICAgQGFwcGx5IGdsLW1iLTI7XG4gIH1cblxuICA+ICo6bGFzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLW1iLTA7XG4gIH1cblxuICAmLm1hcmtkb3duLWFsZXJ0LW5vdGUge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1pY29uLWNvbG9yKTtcblxuICAgIC5tYXJrZG93bi1hbGVydC10aXRsZSB7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2staW5mby10ZXh0LWNvbG9yKTtcbiAgICB9XG4gIH1cblxuICAmLm1hcmtkb3duLWFsZXJ0LXRpcCB7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1zdWNjZXNzLWljb24tY29sb3IpO1xuXG4gICAgLm1hcmtkb3duLWFsZXJ0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1zdWNjZXNzLXRleHQtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gICYubWFya2Rvd24tYWxlcnQtaW1wb3J0YW50IHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXB1cnBsZS02MDA7XG5cbiAgICAubWFya2Rvd24tYWxlcnQtdGl0bGUge1xuICAgICAgQGFwcGx5IGdsLXRleHQtcHVycGxlLTcwMDtcbiAgICB9XG4gIH1cblxuICAmLm1hcmtkb3duLWFsZXJ0LXdhcm5pbmcge1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZmVlZGJhY2stZGFuZ2VyLWljb24tY29sb3IpO1xuXG4gICAgLm1hcmtkb3duLWFsZXJ0LXRpdGxlIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1kYW5nZXItdGV4dC1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgJi5tYXJrZG93bi1hbGVydC1jYXV0aW9uIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXdhcm5pbmctaWNvbi1jb2xvcik7XG5cbiAgICAubWFya2Rvd24tYWxlcnQtdGl0bGUge1xuICAgICAgY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLXdhcm5pbmctdGV4dC1jb2xvcik7XG4gICAgfVxuICB9XG59Iiwia2JkIHtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLXN0cm9uZztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAzcHggNXB4O1xuICBmb250LXNpemU6ICRnbC1mb250LXNpemUtc207XG4gIGxpbmUtaGVpZ2h0OiAxMHB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogdW5zZXQ7XG4gIGJvcmRlci1pbWFnZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIC0xcHggMCB2YXIoLS1nbC1ib3JkZXItY29sb3Itc3Ryb25nKSBpbnNldDtcblxuICAmLmZsYXQge1xuICAgIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICAgIEBhcHBseSBnbC1ib3JkZXItc3Ryb25nO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBmb250LWZhbWlseTogJG1vbm9zcGFjZS1mb250O1xuICAgIGZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgLy8gU2FmYXJpXG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIG92ZXJmbG93LXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgd29yZC1icmVhazoga2VlcC1hbGw7XG4gIH1cbn1cbiIsIi5uYXZiYXItZW1wdHkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgaGVpZ2h0OiB2YXIoLS1oZWFkZXItaGVpZ2h0KTtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcblxuICAudGFudWtpLWxvZ28sXG4gIC5icmFuZC1oZWFkZXItbG9nbyB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgfVxufVxuXG4uc2V0LXVzZXItc3RhdHVzLW1vZGFsIHtcbiAgLm1vZGFsLWJvZHkge1xuICAgIG1pbi1oZWlnaHQ6IHVuc2V0O1xuICB9XG5cbiAgLmlucHV0LWxnIHtcbiAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICB9XG5cbiAgLmVtb2ppLW1lbnUtdG9nZ2xlLWJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZW1vamktbWVudS10b2dnbGUtYnV0dG9uO1xuICAgIHBhZGRpbmc6ICRnbC12ZXJ0LXBhZGRpbmcgJGdsLWJ0bi1wYWRkaW5nO1xuICB9XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICAmLFxuICAgIC5pbnB1dC1ncm91cC1wcmVwZW5kLFxuICAgIC5pbnB1dC1ncm91cC1hcHBlbmQge1xuICAgICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIH1cbiAgfVxufVxuXG4ubmF2LWxpbmtzID4gbGkgPiBhIHtcbiAgLmJhZGdlLmJhZGdlLXBpbGwge1xuICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkgeyBkaXNwbGF5OiBub25lOyB9XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihzbSwgcGFuZWwpIHsgbWFyZ2luLXJpZ2h0OiAzcHg7IH1cbn1cbiIsIi50b3AtYXBwLWhlYWRlciB7XG4gIHRvcDogJGNhbGMtYXBwbGljYXRpb24taGVhZGVyLWhlaWdodDtcbn1cbiIsIi8qKlxuICBUaGlzIGZpbGUgY29udGFpbnMgb25seSBpbXBvcnRzIG9mIEJvb3RzdHJhcCwgR2l0TGFiIFVJIGFuZCBHaXRMYWIgbWl4aW5zLFxuICB2YXJpYWJsZXMgYW5kIGZ1bmN0aW9ucywgaW4gdGhlIGNvcnJlY3Qgb3JkZXIuXG5cbiAgSXQgaXMgbWVhbnQgdG8gYmUgdXNlZCBpbiBwYWdlX2J1bmRsZXMsIGJ1dCBTSE9VTEQgTk9UIGludHJvZHVjZSBhbnlcbiAgc3R5bGVzIG9mIGl0J3Mgb3duLiBXZSBhY3R1YWxseSBjaGVjayBpbiBDSSB0aGF0IGNvbXBpbGluZyBfdGhpc18gZmlsZSBkb2Vzbid0XG4gIHJlc3VsdCBpbiBhbnkgYWRkaXRpb25hbCBzdHlsZXMuXG5cbiAgU2VlOiBzY3JpcHRzL2Zyb250ZW5kL2NoZWNrX3BhZ2VfYnVuZGxlX21peGluc19jc3NfZm9yX3NpZGVlZmZlY3RzLmpzXG4gKi9cbkBpbXBvcnQgJ2ZyYW1ld29yay9mdW5jdGlvbnMnO1xuQGltcG9ydCAnZnJhbWV3b3JrL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdmcmFtZXdvcmsvdmFyaWFibGVzX292ZXJyaWRlcyc7XG5AaW1wb3J0ICdmcmFtZXdvcmsvbWl4aW5zJztcblxuQGltcG9ydCAnYm9vdHN0cmFwL3Njc3MvZnVuY3Rpb25zJztcbkBpbXBvcnQgJ2Jvb3RzdHJhcC9zY3NzL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdib290c3RyYXAvc2Nzcy9taXhpbnMnO1xuXG5AaW1wb3J0ICdAZ2l0bGFiL3VpL3NyYy9zY3NzL2Z1bmN0aW9ucyc7XG5AaW1wb3J0ICdAZ2l0bGFiL3VpL3NyYy9zY3NzL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdAZ2l0bGFiL3VpL3NyYy9zY3NzL21peGlucyc7XG4iLCJAdXNlIFwic2FzczptYXBcIjtcbkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5cbkBpbXBvcnQgJy4uL2ZyYW1ld29yay92YXJpYWJsZXMnO1xuQGltcG9ydCAnLi9jb25mbGljdF9jb2xvcnMnO1xuQGltcG9ydCAncGFnZV9idW5kbGVzL21peGluc19hbmRfdmFyaWFibGVzX2FuZF9mdW5jdGlvbnMnO1xuXG5AbWl4aW4gZGlmZi1iYWNrZ3JvdW5kKCRiYWNrZ3JvdW5kLCAkaWRpZmYsICRib3JkZXIpIHtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgJi5saW5lX2NvbnRlbnQgc3Bhbi5pZGlmZiB7XG4gICAgYmFja2dyb3VuZDogJGlkaWZmO1xuICB9XG59XG5cbkBtaXhpbiBkYXJrLWRpZmYtbWF0Y2gtbGluZSB7XG4gIGNvbG9yOiAkZ2wtY29sb3ItbmV1dHJhbC0yMDA7XG4gIGJhY2tncm91bmQ6ICRkYXJrLWRpZmYtbWF0Y2gtY29sb3I7XG59XG5cbkBtaXhpbiBkaWZmLWV4cGFuc2lvbigkYmFja2dyb3VuZCwgJGNvbG9yLCAkaG92ZXItYmFja2dyb3VuZCwgJGhvdmVyLWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkaG92ZXItY29sb3I7XG4gIH1cbn1cblxuXG5AbWl4aW4gZGFyay1kaWZmLWV4cGFuc2lvbi1saW5lIHtcbiAgJi5leHBhbnNpb24gLmRpZmYtdGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWRpZmYtbWF0Y2gtY29sb3I7XG4gIH1cbn1cblxuQG1peGluIGxpbmUtY292ZXJhZ2UtYm9yZGVyLWNvbG9yKCRjb3ZlcmFnZSwgJG5vLWNvdmVyYWdlKSB7XG4gIHRyYW5zaXRpb246IGJvcmRlci1sZWZ0IDAuMXMgZWFzZS1vdXQ7XG5cbiAgJi5jb3ZlcmFnZSB7XG4gICAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkY292ZXJhZ2U7XG4gIH1cblxuICAmLm5vLWNvdmVyYWdlIHtcbiAgICBib3JkZXItbGVmdDogNHB4IHNvbGlkICRuby1jb3ZlcmFnZTtcbiAgfVxufVxuXG5AbWl4aW4gbGluZS1udW1iZXItaG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ2wtY29sb3ItcHVycGxlLTEwMDtcbiAgYm9yZGVyLWNvbG9yOiAkZ2wtY29sb3ItcHVycGxlLTIwMDtcblxuICBhIHtcbiAgICBjb2xvcjogJGdsLWNvbG9yLW5ldXRyYWwtNjAwO1xuICB9XG59XG5cbkBtaXhpbiBsaW5lLW51bWJlci1ob3Zlci1kYXJrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLXB1cnBsZS04MDA7XG4gIGJvcmRlci1jb2xvcjogJGdsLWNvbG9yLXB1cnBsZS0zMDA7XG5cbiAgYSB7XG4gICAgY29sb3I6ICRnbC1jb2xvci1wdXJwbGUtNTA7XG4gIH1cbn1cblxuQG1peGluIGNvbmZsaWN0LWNvbG9ycygkdGhlbWUpIHtcbiAgLmRpZmYtbGluZS1udW0ge1xuICAgICYuY29uZmxpY3RfbWFya2VyX291cixcbiAgICAmLmNvbmZsaWN0X291ciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1oZWFkZXItaGVhZC1uZXV0cmFsKTtcbiAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0taGVhZGVyLWhlYWQtbmV1dHJhbCk7XG4gICAgfVxuXG4gICAgJi5jb25mbGljdF9tYXJrZXJfdGhlaXIsXG4gICAgJi5jb25mbGljdF90aGVpciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1oZWFkZXItb3JpZ2luLW5ldXRyYWwpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1oZWFkZXItb3JpZ2luLW5ldXRyYWwpO1xuICAgIH1cbiAgfVxuXG4gIC5saW5lX2hvbGRlciB7XG4gICAgLmxpbmVfY29udGVudCxcbiAgICAubGluZS1jb3ZlcmFnZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICYuY29uZmxpY3RfbWFya2VyX291ciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGNvbmZsaWN0LWNvbG9ycywgI3skdGhlbWV9LWhlYWRlci1oZWFkLW5ldXRyYWwpO1xuICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJGNvbmZsaWN0LWNvbG9ycywgI3skdGhlbWV9LWhlYWRlci1oZWFkLW5ldXRyYWwpO1xuICAgICAgfVxuXG4gICAgICAmLmNvbmZsaWN0X21hcmtlcl90aGVpciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGNvbmZsaWN0LWNvbG9ycywgI3skdGhlbWV9LWhlYWRlci1vcmlnaW4tbmV1dHJhbCk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0taGVhZGVyLW9yaWdpbi1uZXV0cmFsKTtcbiAgICAgIH1cblxuICAgICAgJi5jb25mbGljdF9vdXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1saW5lLWhlYWQtbmV1dHJhbCk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0tbGluZS1oZWFkLW5ldXRyYWwpO1xuICAgICAgfVxuXG4gICAgICAmLmNvbmZsaWN0X3RoZWlyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0tbGluZS1vcmlnaW4tbmV1dHJhbCk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0tbGluZS1vcmlnaW4tbmV1dHJhbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuQG1peGluIGxpbmUtbGluaygkY29sb3IsICRpY29uKSB7XG4gICY6OmJlZm9yZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6ICRnbC1zcGFjaW5nLXNjYWxlLTE7XG4gICAgd2lkdGg6ICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gICAgaGVpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS01O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAwLjMpO1xuICAgIG1hc2staW1hZ2U6IHVybCgnQGdpdGxhYi9zdmdzL2Rpc3QvaWNvbnMtc3RhY2tlZC5zdmcjI3skaWNvbn0nKTtcbiAgICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIG1hc2stc2l6ZTogY292ZXI7XG4gICAgbWFzay1wb3NpdGlvbjogY2VudGVyO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJGNvbG9yLCAwLjYpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbGluZS1ob3Zlci1iZygkY29sb3I6ICRnbC1jb2xvci1uZXV0cmFsLTUwKSB7XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtd2l0aGluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBjb2xvci5hZGp1c3QoJGNvbG9yLCAkbGlnaHRuZXNzOiAtMTApO1xuICB9XG59XG5cbkBtaXhpbiBobGpzLW92ZXJyaWRlKCRzdWZmaXgsICRjb2xvcikge1xuICAmLmJsb2Itdmlld2VyIHtcbiAgICAuaGxqcy0jeyRzdWZmaXh9IHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi8qKlxuKiBFeHRlbmRzIHZhbHVlcyBmcm9tIHN5bnRheCBoaWdobGlnaHQgdGhlbWVzIGZvciBtZXJnZSBjb25mbGljdCB2aWV3LlxuKi9cbkBtaXhpbiBtZXJnZS1jb25mbGljdHMtc3ludGF4LWhpZ2hsaWdodC10aGVtZSgkdGhlbWUpIHtcbiAgI2NvbmZsaWN0cyB7XG4gICAgLmhlYWRlci5saW5lX2NvbnRlbnQsXG4gICAgLmRpZmYtbGluZS1udW0ge1xuICAgICAgJi5vcmlnaW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1oZWFkZXItb3JpZ2luLW5ldXRyYWwpO1xuICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJGNvbmZsaWN0LWNvbG9ycywgI3skdGhlbWV9LWhlYWRlci1vcmlnaW4tbmV1dHJhbCk7XG5cbiAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0taGVhZGVyLW9yaWdpbi1jaG9zZW4pO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0taGVhZGVyLW9yaWdpbi1jaG9zZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi51bnNlbGVjdGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1oZWFkZXItbm90LWNob3Nlbik7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1oZWFkZXItbm90LWNob3Nlbik7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5oZWFkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0taGVhZGVyLWhlYWQtbmV1dHJhbCk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0taGVhZGVyLWhlYWQtbmV1dHJhbCk7XG5cbiAgICAgICAgJi5zZWxlY3RlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0taGVhZGVyLWhlYWQtY2hvc2VuKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJGNvbmZsaWN0LWNvbG9ycywgI3skdGhlbWV9LWhlYWRlci1oZWFkLWNob3Nlbik7XG4gICAgICAgIH1cblxuICAgICAgICAmLnVuc2VsZWN0ZWQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGNvbmZsaWN0LWNvbG9ycywgI3skdGhlbWV9LWhlYWRlci1ub3QtY2hvc2VuKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IG1hcC5nZXQoJGNvbmZsaWN0LWNvbG9ycywgI3skdGhlbWV9LWhlYWRlci1ub3QtY2hvc2VuKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5saW5lX2NvbnRlbnQge1xuICAgICAgJi5vcmlnaW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1saW5lLW9yaWdpbi1uZXV0cmFsKTtcblxuICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1saW5lLW9yaWdpbi1jaG9zZW4pO1xuICAgICAgICB9XG5cbiAgICAgICAgJi51bnNlbGVjdGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1saW5lLW5vdC1jaG9zZW4pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaGVhZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IG1hcC5nZXQoJGNvbmZsaWN0LWNvbG9ycywgI3skdGhlbWV9LWxpbmUtaGVhZC1uZXV0cmFsKTtcblxuICAgICAgICAmLnNlbGVjdGVkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtYXAuZ2V0KCRjb25mbGljdC1jb2xvcnMsICN7JHRoZW1lfS1saW5lLWhlYWQtY2hvc2VuKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYudW5zZWxlY3RlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogbWFwLmdldCgkY29uZmxpY3QtY29sb3JzLCAjeyR0aGVtZX0tbGluZS1ub3QtY2hvc2VuKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vaGlnaGxpZ2h0L2NvbW1vbic7XG5cbi5maWxlLWNvbnRlbnQuY29kZSB7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuXG4gIHByZSB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgIGZvbnQtZmFtaWx5OiAkbW9ub3NwYWNlLWZvbnQ7XG4gICAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemU7XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgIHdvcmQtd3JhcDogbm9ybWFsO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQ7XG5cbiAgICAvLyBPbmx5IGBjb2RlLmxpbmVgIHRha2VzIHBhcnQgaW4gd2lkdGggY2FsY3VsYXRpb25zLCBzaW5jZSB0aGUgYWJzb2x1dGVseVxuICAgIC8vIHBvc2l0aW9uZWQgaGlnaGxpZ2h0ZWQgbGluZXMgZG9uJ3QgYWZmZWN0IGBtYXgtY29udGVudGAgc2l6aW5nLiBCb3RoIGxheWVyc1xuICAgIC8vIG5lZWQgdGhlIHNhbWUgcGFkZGluZywgb3IgdGhlIGhpZ2hsaWdodGVkIG9uZSBlbmRzIHVwIHdpZGVyIHRoYW4gdGhlIGNvbHVtbi5cbiAgICBjb2RlLmxpbmUsIGNvZGUgLmxpbmUge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICBjb2RlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1pbi13aWR0aDogMTAwJTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbW9ub3NwYWNlLWZvbnQ7XG4gICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICAgICAgd29yZC13cmFwOiBub3JtYWw7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAubGluZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcblxuICAgICAgICAmOmVtcHR5OjpiZWZvcmUsIHNwYW46ZW1wdHk6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJ1xcMjAwYic7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VsZWN0ZWQtaW5saW5lLWl0ZW0tbWFyayB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzI1NzVjNiAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmlubGluZS1pdGVtLW1hcmsge1xuICAgICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheS01MDA7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbmxpbmUtc2VjdGlvbi1tYXJrZXIge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWxnLWlubmVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmxpbmUtbnVtYmVycyB7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxOXB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgICBhIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbW9ub3NwYWNlLWZvbnQ7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICBpLFxuICAgICAgICBzdmcge1xuICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogMjRweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI7XG4gICAgfVxuICB9XG5cbiAgcHJlIC5saW5lLFxuICBwcmUgLnBsYWluLWxpbmVzLFxuICAubGluZS1udW1iZXJzIGEge1xuICAgIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE4NzVyZW07XG4gICAgbWluLWhlaWdodDogMS4xODc1cmVtO1xuICB9XG5cbiAgLm1hcmstbXVsdGlwbGUtbGluZS1leHBhbmQtYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaWZmLWV4cGFuc2lvbigkZ3JheS0xMDAsICRncmF5LTQwMCwgJGdyYXktMTAwLCAkZ3JheS00MDApO1xuICB9XG59XG5cbi8vIFZlcnRpY2FsbHkgYWxpZ25zIDx0YWJsZT4gbGluZSBudW1iZXJzIChlZy4gYmxhbWUgdmlldylcbi8vIHNlZSBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWItZm9zcy9pc3N1ZXMvNTQwNDhcbnRkLmxpbmUtbnVtYmVycyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ucHJvamVjdC1oaWdobGlnaHQtcHVjIC51bmljb2RlLWJpZGk6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICdcXEZGRkQnO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIHdhdnkgJHJlZC01MDA7XG59XG5cbi8vIExpbmUgaGlnaGxpZ2h0IGJhY2tncm91bmQgZm9yIGFsbCBjb2RlIHZpZXdlcnM6IGdsb2JhbCBjb2RlIHNlYXJjaCwgdGhlIHNpbXBsZVxuLy8gYmxvYiB2aWV3ZXIsIGFuZCB0aGUgcmljaCBzb3VyY2Ugdmlld2VyLiBgIWltcG9ydGFudGAgb3ZlcnJpZGVzIHRoZSBwZXItdGhlbWVcbi8vIGAuaGxsYCB0b2tlbiBjb2xvci5cbnByZSAuaGxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1oaWdobGlnaHRlZC1saW5lLWJhY2tncm91bmQtY29sb3IpICFpbXBvcnRhbnQ7XG59XG5cbi5ibG9iLXZpZXdlciB7XG4gIC0tc291cmNlLWxpbmUtaGVpZ2h0OiAxLjE4NzVyZW07XG5cbiAgLy8gRm9sbG93IHRoZSBgZ2wtcm91bmRlZC1sZ2AgZmlsZSBmcmFtZSwgc28gYSBzZWxlY3RlZCBsYXN0IGxpbmUncyBib3R0b21cbiAgLy8gY29ybmVycyBtYXRjaCBpdCBpbnN0ZWFkIG9mIHRoZSBzbWFsbGVyIGRlZmF1bHQgYC5jb2RlYCByYWRpdXMuXG4gICYuY29kZSB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWxnLWlubmVyO1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWxnLWlubmVyO1xuICB9XG5cbiAgLy8gQmxhbWUsIHdoZW4gc2hvd24sIHRha2VzIG92ZXIgdGhlIGZyYW1lJ3MgYm90dG9tLWxlZnQgY29ybmVyLlxuICAuYmxhbWUge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWxnLWlubmVyO1xuICB9XG5cbiAgLmJsYW1lIH4gJi5jb2RlIC5saW5lLW51bWJlcnM6bGFzdC1vZi10eXBlIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICB9XG5cbiAgLmxpbmUtbnVtYmVycyB7XG4gICAgbWluLXdpZHRoOiA2cmVtO1xuICAgIC8vIGZvciBzZXJ2ZXItc2lkZS1yZW5kZXJpbmdcbiAgICAubGluZS1saW5rcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC8vIGZvciBjbGllbnRcbiAgICAmLmxpbmUtbGlua3Mge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcblxuICAgICAgKyBwcmUge1xuICAgICAgICBtYXJnaW4tbGVmdDogNnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubGluZS1udW1iZXJzOm5vdCgubGluZS1saW5rcykgYTpob3Zlcjo6YmVmb3JlLFxuICAubGluZS1udW1iZXJzOm5vdCgubGluZS1saW5rcykgYTpmb2N1cy13aXRoaW46OmJlZm9yZSxcbiAgLmxpbmUtbGlua3M6aG92ZXIgYTo6YmVmb3JlLFxuICAvLyBgLmlzLW92ZXJgIGlzIHNldCBmcm9tIEpTIHdoZW4gdGhlIGNvZGUgKG5vdCB0aGUgZ3V0dGVyKSBpcyBob3ZlcmVkLCBzbyB0aGVcbiAgLy8gYmxhbWUgaWNvbiBhbHNvIGFwcGVhcnMgd2hlbiBob3ZlcmluZyBhbnkgcGFydCBvZiB0aGUgbGluZS5cbiAgLmxpbmUtbGlua3MuaXMtb3ZlciBhOjpiZWZvcmUsXG4gIC8vIGA6Zm9jdXMtdmlzaWJsZWAgcmF0aGVyIHRoYW4gYDpmb2N1cy13aXRoaW5gIGtlZXBzIHRoZSBpY29uIHZpc2libGUgd2hlbiBpdCBpc1xuICAvLyB0YWJiZWQgdG8sIHdpdGhvdXQgbGVhdmluZyBpdCB2aXNpYmxlIGFmdGVyIGEgbGluZSBudW1iZXIgaXMgY2xpY2tlZC5cbiAgLmxpbmUtbGlua3MgYTpmb2N1cy12aXNpYmxlOjpiZWZvcmUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAuZmlsZS1saW5lLW51bSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBmbGV4LWdyb3c6IDE7XG4gICAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgfVxuXG4gIC5maWxlLWxpbmUtYmxhbWUge1xuICAgIG1hcmdpbi1sZWZ0OiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuICB9XG5cbiAgLmZpbGUtbGluZS1udW0sXG4gIC5maWxlLWxpbmUtYmxhbWUge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC8vIE1hdGNoIHRoZSBndXR0ZXIvY29udGVudCBzZXBhcmF0b3IgY29sb3IgdG8gdGhlIGRpZmYgdmlld3MgKHdoaWNoIHVzZVxuICAvLyBgLS1jb2RlLWJvcmRlci1jb2xvcmApIGluc3RlYWQgb2YgdGhlIGdlbmVyaWMgYGdsLWJvcmRlci1yYCBkZWZhdWx0LlxuICAuZGlmZi1saW5lLW51bS5saW5lLWxpbmtzIHtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6IHZhcigtLWNvZGUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC8vIFNlbGVjdGVkIGxpbmVzIHJlYWQgYXMgb25lIGJveCBhY3Jvc3MgdGhlIGd1dHRlciBhbmQgdGhlIGNvZGUuIEFuIGVsZW1lbnQgY2FuXG4gIC8vIG9ubHkgaGF2ZSBvbmUgYGJveC1zaGFkb3dgLCBzbyBlYWNoIHNpZGUgaXMgY29tcG9zZWQgZnJvbSBhIGN1c3RvbSBwcm9wZXJ0eTpcbiAgLy8gYSBtdWx0aS1saW5lIHNlbGVjdGlvbiB0aGVuIGRyYXdzIHRvcC9ib3R0b20gb24gaXRzIGZpcnN0L2xhc3QgbGluZSBvbmx5LlxuICAuZGlmZi1saW5lLW51bS5obGwsXG4gIHByZSAuaGxsIHtcbiAgICAtLWhpZ2hsaWdodGVkLWxpbmUtc2hhZG93LXRvcDogMCAwIHRyYW5zcGFyZW50O1xuICAgIC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctYm90dG9tOiAwIDAgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyBgLmxpbmUtbGlua3NgIG91dHJhbmtzIHRoZSB0aGVtZSdzIGBsaW5lLWxpbmtzOmZvY3VzLXdpdGhpbmAgYmFja2dyb3VuZCwgc28gYVxuICAvLyBjbGlja2VkIGxpbmUga2VlcHMgaXRzIGZpbGwgaW5zdGVhZCBvZiB0aGUgaG92ZXIgYmFja2dyb3VuZC5cbiAgLmRpZmYtbGluZS1udW0ubGluZS1saW5rcy5obGwge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvZGUtaGlnaGxpZ2h0ZWQtbGluZS1iYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICBib3gtc2hhZG93OlxuICAgICAgaW5zZXQgMXB4IDAgdmFyKC0tY29kZS1oaWdobGlnaHRlZC1saW5lLWJvcmRlci1jb2xvciksXG4gICAgICB2YXIoLS1oaWdobGlnaHRlZC1saW5lLXNoYWRvdy10b3ApLFxuICAgICAgdmFyKC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctYm90dG9tKTtcbiAgfVxuXG4gIHByZSAuaGxsIHtcbiAgICBib3gtc2hhZG93OlxuICAgICAgaW5zZXQgLTFweCAwIHZhcigtLWNvZGUtaGlnaGxpZ2h0ZWQtbGluZS1ib3JkZXItY29sb3IpLFxuICAgICAgdmFyKC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctdG9wKSxcbiAgICAgIHZhcigtLWhpZ2hsaWdodGVkLWxpbmUtc2hhZG93LWJvdHRvbSk7XG4gIH1cblxuICAuZGlmZi1saW5lLW51bS5oaWdobGlnaHQtdG9wLFxuICBwcmUgLmhpZ2hsaWdodC10b3Age1xuICAgIC0taGlnaGxpZ2h0ZWQtbGluZS1zaGFkb3ctdG9wOiBpbnNldCAwIDFweCB2YXIoLS1jb2RlLWhpZ2hsaWdodGVkLWxpbmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kaWZmLWxpbmUtbnVtLmhpZ2hsaWdodC1ib3R0b20sXG4gIHByZSAuaGlnaGxpZ2h0LWJvdHRvbSB7XG4gICAgLS1oaWdobGlnaHRlZC1saW5lLXNoYWRvdy1ib3R0b206IGluc2V0IDAgLTFweCB2YXIoLS1jb2RlLWhpZ2hsaWdodGVkLWxpbmUtYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gIC5kaWZmLWxpbmUtbnVtLmhsbCAuZmlsZS1saW5lLW51bSB7XG4gICAgY29sb3I6IHZhcigtLWNvZGUtbGluZS1udW1iZXItaG92ZXItY29sb3IsICN7JGdsLWNvbG9yLW5ldXRyYWwtNjAwfSk7XG4gIH1cblxuICAvLyBUaGUgYC5saW5lLWxpbmtzYCBjb21wb3VuZCBpcyBuZWVkZWQgdG8gb3ZlcnJpZGUgdGhlIGdyYXkgZ3V0dGVyIGhvdmVyXG4gIC8vIGJhY2tncm91bmQgdGhlIHRoZW1lIGFwcGxpZXMgdG8gYC5saW5lLWxpbmtzYC4gTm90IGA6Zm9jdXMtd2l0aGluYCwgd2hpY2hcbiAgLy8gd291bGQga2VlcCB0aGUgZ3V0dGVyIHRpbnRlZCBhZnRlciBhIGxpbmUgbnVtYmVyIGlzIGNsaWNrZWQuXG4gIC5kaWZmLWxpbmUtbnVtLmxpbmUtbGlua3M6aG92ZXIsXG4gIC5kaWZmLWxpbmUtbnVtLmxpbmUtbGlua3MuaXMtb3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1saW5lLW51bWJlci1ob3Zlci1iYWNrZ3JvdW5kLWNvbG9yLCAjeyRnbC1jb2xvci1wdXJwbGUtMTAwfSk7XG4gIH1cblxuICAuZmlsZS1saW5lLW51bTpob3ZlciB7XG4gICAgY29sb3I6IHZhcigtLWNvZGUtbGluZS1udW1iZXItaG92ZXItY29sb3IsICN7JGdsLWNvbG9yLW5ldXRyYWwtNjAwfSk7XG4gIH1cblxuICAuZGlmZi1saW5lLW51bSAuZmlsZS1saW5lLWJsYW1lOmhvdmVyOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNvZGUtbGluZS1udW1iZXItaG92ZXItY29sb3IsICN7JGdsLWNvbG9yLW5ldXRyYWwtNjAwfSk7XG4gIH1cbn1cblxuLy8gTGl2ZXMgb3V0c2lkZSB0aGUgZ3JpZCBhbmQgaXRzIHdyYXBwZXI6IGJvdGggYXJlIGFzIHRhbGwgYXMgdGhlIGZpbGUsIHNvIGFcbi8vIHN0aWNreSBjaGlsZCBvZiBlaXRoZXIgcGlucyB0byB0aGUgZmlsZSdzIGJvdHRvbSBlZGdlLCBub3QgdGhlIHZpZXdwb3J0J3MuXG4uc291cmNlLXZpZXdlci1zY3JvbGxiYXIge1xuICBoZWlnaHQ6ICRnbC1zcGFjaW5nLXNjYWxlLTU7XG59XG5cbi8vIEF2b2lkcyBhIHNlY29uZCBzY3JvbGxiYXIgc3RhY2tlZCBhdCB0aGUgZmlsZSdzIGJvdHRvbSBlZGdlLlxuLnNvdXJjZS12aWV3ZXItZmlsZS1jb250ZW50IHtcbiAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuXG4gICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvKiogbGlnaHQgbGlzdCB3aXRoIGJvcmRlci1ib3R0b20gYmV0d2VlbiBsaSAqKi9cbnVsLmJvcmRlcmVkLWxpc3QsXG51bC51bnN0eWxlZC1saXN0IHtcbiAgQGluY2x1ZGUgYmFzaWMtbGlzdDtcbn1cblxudWwudW5zdHlsZWQtbGlzdCA+IGxpIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxudWwubGlzdC1pdGVtcy1weS0yIHtcbiAgPiBsaSB7XG4gICAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICB9XG59XG5cbi8vIEdlbmVyaWMgY29udGVudCBsaXN0XG51bC5jb250ZW50LWxpc3Qge1xuICBAaW5jbHVkZSBiYXNpYy1saXN0O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgbGkge1xuICAgIEBhcHBseSBnbC1ib3JkZXItZGVmYXVsdDtcbiAgICBmb250LXNpemU6ICRnbC1mb250LXNpemU7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICB3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXG4gICAgLnRpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG5cbiAgICAgICYuaW5saW5lLWxpbmsge1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1saW5rO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBAaW5jbHVkZSBzdHItdHJ1bmNhdGVkO1xuICAgIH1cblxuICAgIC5jb250cm9scyB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICAgID4gLmJ0bixcbiAgICAgID4gLmJ0bi1ncm91cCxcbiAgICAgID4gLmRyb3Bkb3duLmlubGluZSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGdyaWQtc2l6ZTtcblxuICAgICAgICAmLmhhcy10b29sdGlwLFxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcblxuICAgICAgICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENvbnRlbnQgbGlzdCB1c2luZyBmbGV4Ym94XG4uZmxleC1saXN0IHtcbiAgLmZsZXgtcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIC5kcm9wZG93biB7XG4gICAgLmJ0bi1ibG9jayB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlLXNlY29uZGFyeSB7XG4gICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICB9XG59XG5cbnVsLmNvbnRlbnQtbGlzdC5jb250ZW50LWxpc3QtaXRlbXMtcGFkZGluZyA+IGxpLFxudWwuY29udGVudC1saXN0Lmlzc3VhYmxlLWxpc3QgPiBsaSxcbi5jYXJkID4gLmNvbnRlbnQtbGlzdCA+IGxpIHtcbiAgcGFkZGluZzogJGdsLXBhZGRpbmctdG9wICRnbC1wYWRkaW5nO1xufVxuXG51bC5jb250cm9scyB7XG4gIGZsb2F0OiByaWdodDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAuYnRuIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gIH1cblxuICA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cblxuICAgIC5hdXRob3ItbGluayB7XG4gICAgICAuYXZhdGFyLWlubGluZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzc3VhYmxlLXBpcGVsaW5lLWJyb2tlbiBhLFxuICAuYXV0aG9yLWxpbmsge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbn1cblxudWwuaW5kZW50LWxpc3Qge1xuICBwYWRkaW5nOiAxMHB4IDAgMCAzMHB4O1xufVxuXG4vLyBTcGVjaWZpYyBzdHlsZXMgZm9yIHRyZWUgbGlzdFxuQGtleWZyYW1lcyBzcGluLWF2YXRhciB7XG4gIGZyb20geyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICB0byB7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cblxuLmhvcml6b250YWwtbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuXG4gICYubGlzdC1pdGVtcy1zZXBhcmF0ZWQge1xuICAgID4gbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJ1xcMDBiNyc7XG4gICAgICBtYXJnaW46IDAgJGdsLXBhZGRpbmctNDtcbiAgICB9XG4gIH1cbn1cbiIsIkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5cbkBtaXhpbiB0YW51a2ktbG9nby1jb2xvcnMoJHBhdGgtY29sb3IpIHtcbiAgZmlsbDogJHBhdGgtY29sb3I7XG4gIHRyYW5zaXRpb246IGFsbCAwLjhzO1xuXG4gICY6aG92ZXIge1xuICAgIGZpbGw6IGNvbG9yLmFkanVzdCgkcGF0aC1jb2xvciwgJGxpZ2h0bmVzczogMjUlKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4xcztcbiAgfVxufVxuXG4udGFudWtpLWxvZ28ge1xuICBAYXBwbHkgZ2wtYWxpZ24tbWlkZGxlO1xuXG4gIC50YW51a2kge1xuICAgIEBpbmNsdWRlIHRhbnVraS1sb2dvLWNvbG9ycygkdGFudWtpLXJlZCk7XG4gIH1cblxuICAubGVmdC1jaGVlayxcbiAgLnJpZ2h0LWNoZWVrIHtcbiAgICBAaW5jbHVkZSB0YW51a2ktbG9nby1jb2xvcnMoJHRhbnVraS1vcmFuZ2UpO1xuICB9XG5cbiAgLmNoaW4ge1xuICAgIEBpbmNsdWRlIHRhbnVraS1sb2dvLWNvbG9ycygkdGFudWtpLXllbGxvdyk7XG4gIH1cblxuICAmLmFuaW1hdGUge1xuICAgIC50YW51a2ktc2hhcGUge1xuICAgICAgQGluY2x1ZGUgd2Via2l0LXByZWZpeChhbmltYXRpb24tZHVyYXRpb24sIDEuNXMpO1xuICAgICAgQGluY2x1ZGUgd2Via2l0LXByZWZpeChhbmltYXRpb24taXRlcmF0aW9uLWNvdW50LCBpbmZpbml0ZSk7XG4gICAgfVxuXG4gICAgLnRhbnVraSB7XG4gICAgICBAaW5jbHVkZSBpbmNsdWRlLWtleWZyYW1lcyhhbmltYXRlLXRhbnVraS1iYXNlKSB7XG4gICAgICAgIDAlLFxuICAgICAgICA1MCUge1xuICAgICAgICAgIGZpbGw6ICR0YW51a2ktcmVkO1xuICAgICAgICB9XG5cbiAgICAgICAgMjUlIHtcbiAgICAgICAgICBmaWxsOiBjb2xvci5hZGp1c3QoJHRhbnVraS1yZWQsICRsaWdodG5lc3M6IDI1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucmlnaHQtY2hlZWsge1xuICAgICAgQGluY2x1ZGUgaW5jbHVkZS1rZXlmcmFtZXMoYW5pbWF0ZS10YW51a2ktcmlnaHQtY2hlZWspIHtcbiAgICAgICAgMjUlLFxuICAgICAgICA3NSUge1xuICAgICAgICAgIGZpbGw6ICR0YW51a2ktb3JhbmdlO1xuICAgICAgICB9XG5cbiAgICAgICAgNTAlIHtcbiAgICAgICAgICBmaWxsOiBjb2xvci5hZGp1c3QoJHRhbnVraS1vcmFuZ2UsICRsaWdodG5lc3M6IDI1JSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2hpbiB7XG4gICAgICBAaW5jbHVkZSBpbmNsdWRlLWtleWZyYW1lcyhhbmltYXRlLXRhbnVraS1jaGluKSB7XG4gICAgICAgIDUwJSxcbiAgICAgICAgMTAwJSB7XG4gICAgICAgICAgZmlsbDogJHRhbnVraS15ZWxsb3c7XG4gICAgICAgIH1cblxuICAgICAgICA3NSUge1xuICAgICAgICAgIGZpbGw6IGNvbG9yLmFkanVzdCgkdGFudWtpLXllbGxvdywgJGxpZ2h0bmVzczogMjUlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5sZWZ0LWNoZWVrIHtcbiAgICAgIEBpbmNsdWRlIGluY2x1ZGUta2V5ZnJhbWVzKGFuaW1hdGUtdGFudWtpLWxlZnQtY2hlZWspIHtcbiAgICAgICAgMjUlLFxuICAgICAgICA3NSUge1xuICAgICAgICAgIGZpbGw6ICR0YW51a2ktb3JhbmdlO1xuICAgICAgICB9XG5cbiAgICAgICAgMTAwJSB7XG4gICAgICAgICAgZmlsbDogY29sb3IuYWRqdXN0KCR0YW51a2ktb3JhbmdlLCAkbGlnaHRuZXNzOiAyNSUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWpzLWNsYXNzXG4uanMtaGlnaGxpZ2h0IHtcbiAgY29sb3I6IHZhcigtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtdGV4dC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtYmFja2dyb3VuZC1jb2xvcik7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tanMtY2xhc3Ncbi5qcy1oaWdobGlnaHQtYWN0aXZlIHtcbiAgY29sb3I6IHZhcigtLWZpbmQtYW5kLXJlcGxhY2UtbWF0Y2gtYWN0aXZlLXRleHQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1maW5kLWFuZC1yZXBsYWNlLW1hdGNoLWFjdGl2ZS1iYWNrZ3JvdW5kLWNvbG9yKTtcbn1cblxuLmRpdi1kcm9wem9uZS13cmFwcGVyIHtcbiAgLmRpdi1kcm9wem9uZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmRpdi1kcm9wem9uZS1ob3ZlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xMS41cHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTE1cHg7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyMDBtcyBlYXNlLWluLW91dDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgIC5kaXYtZHJvcHpvbmUtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAuZHotcHJldmlldyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ubmF2LWxpbmtzIHtcbiAgbGkubWQtaGVhZGVyLXRvb2xiYXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgICYuYWN0aXZlIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgICAgICBmbGV4OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgbWFyZ2luLXRvcDogJGdsLXBhZGRpbmctODtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnJlZmVyZW5jZWQtdXNlcnMge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBwYWRkaW5nOiAwICRnbC1wYWRkaW5nICRnbC1wYWRkaW5nLTg7XG59XG5cbi5yZWZlcmVuY2VkLWNvbW1hbmRzIHtcbiAgYmFja2dyb3VuZDogJGJsdWUtNTA7XG4gIHBhZGRpbmc6ICRnbC1wYWRkaW5nLTggJGdsLXBhZGRpbmc7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlLWlubmVyICRnbC1ib3JkZXItcmFkaXVzLWJhc2UtaW5uZXI7XG5cbiAgcCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG5cbi5tZC1wcmV2aWV3LWhvbGRlciB7XG4gIG1pbi1oZWlnaHQ6IDE3N3B4O1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi5tYXJrZG93bi1hcmVhIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgbWluLWhlaWdodDogMTQwcHg7XG4gIG1heC1oZWlnaHQ6IDUwMHB4O1xuICBwYWRkaW5nOiA1cHg7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xuICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcbiAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXN1YnRsZTtcbiAgQGFwcGx5IGdsLXRyYW5zaXRpb24tYm94LXNoYWRvdztcbn1cblxuLm1kLXN1Z2dlc3Rpb24tZGlmZiB7XG4gIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gIEBhcHBseSBnbC1ib3JkZXIgI3shaW1wb3J0YW50fTtcbiAgQGFwcGx5IGdsLWJvcmRlci1zZWN0aW9uICN7IWltcG9ydGFudH07XG5cbiAgdGQge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICB9XG5cbiAgdHIub2xkIHtcbiAgICB0ZCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5zdWdnZXN0aW9ucy5tZCA+IC5tYXJrZG93bi1jb2RlLWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubWQtc3VnZ2VzdGlvbi1oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIEBhcHBseSBnbC1iZy1zZWN0aW9uO1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBAYXBwbHkgZ2wtYm9yZGVyLXNlY3Rpb247XG4gIGJvcmRlci1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWJhc2UgJGdsLWJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG59XG5cbi8qIHRoZXNlIHR3byBzdHlsZXMgYXJlIGltcG9ydGFudCB0byBwcmV2ZW50IGNlcnRhaW4gTGFUZVggZnJvbVxuICAgaGlqYWNraW5nIGEgcGFnZTogaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vaXNzdWVzLzM5NDc3MFxuKi9cbi5tYXRoLWNvbnRlbnQtaW5saW5lIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5cbi5tYXRoLWNvbnRlbnQtZGlzcGxheSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gIC5yZWZlcmVuY2VkLXVzZXJzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbn1cblxuLy8gT3B0LWluIGxheW91dCBmb3IgTWFya2Rvd25FZGl0b3IgY29uc3VtZXJzIHRoYXQgcmVuZGVyIHRoZSBlZGl0b3IgaW5zaWRlXG4vLyBhIGZpeGVkLWhlaWdodCBjb250YWluZXIgKHNpZGUgcGFuZWxzLCBtb2RhbHMsIGV0YykuIEVuYWJsZWQgYnkgdGhlXG4vLyBgOmZpbGwtY29udGFpbmVyYCBwcm9wIG9uIE1hcmtkb3duRWRpdG9yLCB3aGljaCBwdXRzIHRoaXMgY2xhc3Mgb24gdGhlXG4vLyBlZGl0b3IncyByb290IGAubWQtYXJlYS13cmFwcGVyYC5cbi5tZC1hcmVhLXdyYXBwZXItZmlsbCB7XG4gICYsXG4gIC5tZC1jb250ZW50LWVkaXRvci13cmFwcGVyLFxuICAubWQtY29udGVudC1lZGl0b3Itd3JhcHBlciAuY29udGVudC1lZGl0b3ItYm9keSxcbiAgLm1kLWNvbnRlbnQtZWRpdG9yLXdyYXBwZXIgLm1kLFxuICAubWQtYXJlYSxcbiAgLm1kLXdyaXRlLWhvbGRlcixcbiAgLm1kLXByZXZpZXctaG9sZGVyLFxuICAuemVuLWJhY2tkcm9wLFxuICAuZGl2LWRyb3B6b25lLXdyYXBwZXIsXG4gIC5kaXYtZHJvcHpvbmUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLm1kLWNvbnRlbnQtZWRpdG9yLXdyYXBwZXIgPiAubWQtYXJlYSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIC5tZCAuUHJvc2VNaXJyb3Ige1xuICAgIGZsZXg6IDEgMSAwO1xuICAgIG92ZXJmbG93LXk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAubWFya2Rvd24tYXJlYS5ub3RlLXRleHRhcmVhIHtcbiAgICBmbGV4OiAxIDEgMDtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgcmVzaXplOiBub25lICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kLXByZXZpZXctaG9sZGVyIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgLm1kLWFyZWEsXG4gIC5tZC1hcmVhOmZvY3VzLXdpdGhpbixcbiAgLm1kLWFyZWE6aG92ZXIsXG4gIC5tZC1hcmVhLXdyYXBwZXIsXG4gIC56ZW4tYmFja2Ryb3AsXG4gIC5kaXYtZHJvcHpvbmUtd3JhcHBlcixcbiAgLmRpdi1kcm9wem9uZSB7XG4gICAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLm1kLXdyaXRlLWhvbGRlciB0ZXh0YXJlYTpmb2N1cy12aXNpYmxlLFxuICAuemVuLWJhY2tkcm9wOm5vdCguZnVsbHNjcmVlbikgdGV4dGFyZWE6Zm9jdXMtdmlzaWJsZSxcbiAgLm1kIC5Qcm9zZU1pcnJvcjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIubWVkaWEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLm1lZGlhLWJvZHkge1xuICBmbGV4OiAxO1xufVxuIiwiLm1vZGFsLWhlYWRlciB7XG4gIC5wYWdlLXRpdGxlLFxuICAubW9kYWwtdGl0bGUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4gICAgLm1vZGFsLXRpdGxlLXdpdGgtbGFiZWwgc3BhbiB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxuXG4gIC5tb2RhbC10aXRsZSB7XG4gICAgbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC0yNDtcblxuICAgIC8vIGxlYXZlIGVub3VnaCBzcGFjZSBmb3IgdGhlIGNsb3NlIGljb25cbiAgICAmLmdsLW1heC13LWZ1bGwsXG4gICAgJi5nbC13LWZ1bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtJG1vZGFsLWhlYWRlci1wYWRkaW5nLXg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkbW9kYWwtaGVhZGVyLXBhZGRpbmcteDtcbiAgICB9XG4gIH1cblxuICAuY2xvc2Uge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRncmF5LTkwMDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5tb2RhbC1ib2R5IHtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6ICRtb2RhbC1ib2R5LWhlaWdodDtcbiAgcGFkZGluZzogI3syICogJGdyaWQtc2l6ZX07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgLmZvcm0tYWN0aW9ucyB7XG4gICAgbWFyZ2luOiAjezIgKiAkZ3JpZC1zaXplfSAjey0yICogJGdyaWQtc2l6ZX0gI3stMiAqICRncmlkLXNpemV9O1xuICB9XG59XG5cbi5tb2RhbC1mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gIC5idG4ge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogJGdyaWQtc2l6ZTtcbiAgfVxuXG4gIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICB9XG5cbiAgQGluY2x1ZGUgZ2wtbWVkaWEtYnJlYWtwb2ludC1kb3duKHNtKSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgIC5idG4tZ3JvdXAgLmJ0biArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxufVxuXG5ib2R5Lm1vZGFsLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5tb2RhbC1vcGVuIC5tb2RhbC1iYWNrZHJvcCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tb2RhbCB7XG4gIEBhcHBseSBnbC1iZy1vdmVybGF5O1xuXG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC0yeGw7XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICBAYXBwbHkgZ2wtcm91bmRlZC10LTJ4bDtcbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIEBhcHBseSBnbC1yb3VuZGVkLWItMnhsO1xuICAgIH1cbiAgfVxufVxuIiwiLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAkZ2wtcGFkZGluZztcbn1cblxuLmNhcmQtc2xpbSB7XG4gIG1hcmdpbi1ib3R0b206ICRnbC12ZXJ0LXBhZGRpbmc7XG59XG5cbi5jYXJkLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRnbC12ZXJ0LXBhZGRpbmcgJGdsLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAzNnB4O1xuXG4gIC5jb250cm9scyB7XG4gICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cblxuICAuZHJvcGRvd24tbWVudS10b2dnbGUge1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB9XG5cbiAgLmJhZGdlLmJhZGdlLXBpbGwge1xuICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuXG4gICYuc3BsaXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC5sZWZ0IHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuXG4gIC5yaWdodCB7XG4gICAgZmxleDogMCAwIGF1dG87XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLmNhcmQtYm9keSB7XG4gIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuXG4gIC5mb3JtLWFjdGlvbnMge1xuICAgIG1hcmdpbjogLSRnbC1wYWRkaW5nO1xuICAgIG1hcmdpbi10b3A6ICRnbC1wYWRkaW5nO1xuICB9XG59XG4iLCIucG9wdXAge1xuICBAaW5jbHVkZSB0cmlhbmdsZShcbiAgICAkZ3JheS0xMCxcbiAgICAkZ3JheS01MCxcbiAgICAkcG9wdXAtdHJpYW5nbGUtc2l6ZSxcbiAgICAkcG9wdXAtdHJpYW5nbGUtYm9yZGVyLXNpemVcbiAgKTtcblxuICBwYWRkaW5nOiAkZ2wtcGFkZGluZztcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktNTA7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIGJveC1zaGFkb3c6IDAgNXB4IDhweCAkcG9wdXAtYm94LXNoYWRvdy1jb2xvcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuIiwiLy8gRm9yIHRhYmJlZCBuYXZpZ2F0aW9uIGxpbmtzLCBzY3JvbGxpbmcgdGFicywgZXRjLiBGb3IgYWxsIHRvcC9tYWluIG5hdmlnYXRpb24sXG4vLyBwbGVhc2UgY2hlY2sgbmF2LnNjc3Ncbi5uYXYtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGhlaWdodDogYXV0bztcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuXG4gIGxpOm5vdCgubWQtaGVhZGVyLXRvb2xiYXIpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgYSxcbiAgICBidXR0b24ge1xuICAgICAgQGFwcGx5IGdsLXB5LTU7XG4gICAgICBAYXBwbHkgZ2wtcHgtNDtcbiAgICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1iYXNlO1xuICAgICAgQGFwcGx5IGdsLWxlYWRpbmctbm9ybWFsO1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci0wO1xuICAgICAgQGFwcGx5IGdsLXdoaXRlc3BhY2Utbm93cmFwO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1kZWZhdWx0KTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAtMnB4IDAgMCB2YXIoLS1nbC10YWItc2VsZWN0ZWQtaW5kaWNhdG9yLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgfVxuXG4gICAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWRlZmF1bHQpO1xuICAgICAgICBvdXRsaW5lOiAycHggc29saWQgdmFyKC0tZ2wtZm9jdXMtcmluZy1jb2xvciwgdmFyKC0tZ2wtdGFiLXNlbGVjdGVkLWluZGljYXRvci1jb2xvci1kZWZhdWx0KSk7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYnV0dG9uIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUgYSxcbiAgICAmLmFjdGl2ZSBidXR0b24sXG4gICAgYS5hY3RpdmUge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICAgIEBhcHBseSBnbC1mb250LWJvbGQ7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIC0ycHggMCAwIHZhcigtLWdsLXRhYi1zZWxlY3RlZC1pbmRpY2F0b3ItY29sb3ItZGVmYXVsdCk7XG5cbiAgICAgIC5iYWRnZS5iYWRnZS1waWxsIHtcbiAgICAgICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLWJhZGdlLW5ldXRyYWwtdGV4dC1jb2xvci1kZWZhdWx0KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFkZ2UtbmV1dHJhbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udG9wLWFyZWEge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKGxnLCBwYW5lbCkge1xuICAgIGZsZXgtZmxvdzogY29sdW1uLXJldmVyc2Ugd3JhcDtcbiAgfVxuXG4gIC5uYXYtdGV4dCB7XG4gICAgZmxleDogMTtcbiAgICBwYWRkaW5nLXRvcDogMTZweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTFweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLm5hdi1saW5rcyB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBmbGV4OiAxO1xuXG4gICAgJi53aWRlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5zY3JvbGxpbmctdGFicyB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihtZCwgcGFuZWwpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5uYXYtY29udHJvbHMge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgID4gLmJ0bixcbiAgICA+IC5idG4tZ3JvdXAsXG4gICAgPiAuYnRuLWNvbnRhaW5lcixcbiAgICA+IC5kcm9wZG93bixcbiAgICA+IC5nbC1uZXctZHJvcGRvd24sXG4gICAgPiBpbnB1dCxcbiAgICA+IGZvcm0ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAkZ2wtcGFkZGluZy04O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IC5idG4tZ3JvdXBlZCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG5cbiAgICAuaWNvbi1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihsZywgcGFuZWwpIHtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogJGdsLXBhZGRpbmctODtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihtZCwgcGFuZWwpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC5idG4uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDtcbiAgICAgIH1cblxuICAgICAgLyogVGhpcyByZXNldHMgdGhlIHdpZHRoIG9mIHRoZSBjb250cm9sIHNvIHRoYXQgdGhlIHNlYXJjaCBidXR0b24gZG9lc24ndCB3cmFwICovXG4gICAgICAuZ2wtc2VhcmNoLWJveC1ieS1jbGljayAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgd2lkdGg6IDElO1xuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tbWVudS10b2dnbGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICBmb3JtIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGdsLXBhZGRpbmctODtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuaWNvbi1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cblxuICAgICAgJi5pbmxpbmUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgPiAuYnRuLFxuICAgICAgICA+IC5idG4tY29udGFpbmVyLFxuICAgICAgICA+IC5kcm9wZG93bixcbiAgICAgICAgPiBpbnB1dCxcbiAgICAgICAgPiBmb3JtIHtcbiAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICBtYXJnaW46IDAgMCAxMHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAkZ2wtcGFkZGluZy10b3A7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG5cbiAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5hZGp1c3Qge1xuICAgIC5uYXYtdGV4dCxcbiAgICAubmF2LWNvbnRyb2xzIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihzbSwgcGFuZWwpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5tdWx0aS1saW5lIHtcbiAgICAubmF2LXRleHQge1xuICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgfVxuXG4gICAgLm5hdi1jb250cm9scyB7XG4gICAgICBwYWRkaW5nOiAxN3B4IDA7XG4gICAgfVxuICB9XG5cbiAgcHJlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uc2Nyb2xsaW5nLXRhYnMtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIC5tZXJnZS1yZXF1ZXN0LXRhYnMtY29udGFpbmVyICYge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubmF2LWxpbmtzIHtcbiAgICBAaW5jbHVkZSBzY3JvbGxpbmctbGlua3MoKTtcbiAgfVxuXG4gIC5mYWRlLWxlZnQ6OmFmdGVyLFxuICAuZmFkZS1yaWdodDo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxNnB4O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICB9XG5cbiAgLmZhZGUtcmlnaHQge1xuICAgIEBpbmNsdWRlIGZhZGUobGVmdCwgJGdyYXktMTApO1xuICAgIHJpZ2h0OiAtNXB4O1xuXG4gICAgc3ZnIHtcbiAgICAgIHJpZ2h0OiAtN3B4O1xuICAgIH1cblxuICAgICY6OmFmdGVyIHtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDI3MGRlZywgJHdoaXRlLCB0cmFuc3BhcmVudCk7XG4gICAgfVxuICB9XG5cbiAgLmZhZGUtbGVmdCB7XG4gICAgQGluY2x1ZGUgZmFkZShyaWdodCwgJGdyYXktMTApO1xuICAgIGxlZnQ6IC01cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgc3ZnIHtcbiAgICAgIGxlZnQ6IC03cHg7XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgJHdoaXRlLCB0cmFuc3BhcmVudCk7XG4gICAgfVxuICB9XG59XG5cbi5pbm5lci1wYWdlLXNjcm9sbC10YWJzIHtcbiAgLmZhZGUtcmlnaHQge1xuICAgIEBpbmNsdWRlIGZhZGUobGVmdCwgJHdoaXRlKTtcbiAgICByaWdodDogMDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgIHN2ZyB7XG4gICAgICByaWdodDogNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5mYWRlLWxlZnQge1xuICAgIEBpbmNsdWRlIGZhZGUocmlnaHQsICR3aGl0ZSk7XG4gICAgbGVmdDogMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgc3ZnIHtcbiAgICAgIGxlZnQ6IDVweDtcbiAgICB9XG4gIH1cblxuICAuZmFkZS1yaWdodCxcbiAgLmZhZGUtbGVmdCB7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgJi5pcy1zbWFsbGVyIHtcbiAgICAuZmFkZS1yaWdodCxcbiAgICAuZmFkZS1sZWZ0IHtcbiAgICAgIHRvcDogMTFweDtcbiAgICB9XG4gIH1cbn1cblxuLm5hdi1ibG9jayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAubmF2LWxpbmtzIHtcbiAgICBAaW5jbHVkZSBzY3JvbGxpbmctbGlua3MoKTtcblxuICAgIC5mYWRlLXJpZ2h0IHtcbiAgICAgIEBpbmNsdWRlIGZhZGUobGVmdCwgJHdoaXRlKTtcbiAgICAgIHJpZ2h0OiAtNXB4O1xuXG4gICAgICBzdmcge1xuICAgICAgICByaWdodDogLTdweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZmFkZS1sZWZ0IHtcbiAgICAgIEBpbmNsdWRlIGZhZGUocmlnaHQsICR3aGl0ZSk7XG4gICAgICBsZWZ0OiAtNXB4O1xuXG4gICAgICBzdmcge1xuICAgICAgICBsZWZ0OiAtN3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZpdGllcyB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAubmF2LWxpbmtzIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcblxuLmNvbnRlbnQtd3JhcHBlciB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5jb250YWluZXItZmx1aWQge1xuICAgIEBhcHBseSBnbC1weS0wO1xuICAgIEBhcHBseSBnbC1weC1bLS1jb250YWluZXItcGFkZGluZy14XTtcbiAgfVxufVxuXG4ucGFnZS1pbml0aWFsaXNlZCAgLmNvbnRlbnQtd3JhcHBlciB7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLXBhZGRpbmc7XG59XG5cbi5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgJjpub3QoLmlzLW1lcmdlLXJlcXVlc3QpIHtcbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20sIGNvbnRlbnQtcGFuZWxzKSB7XG4gICAgICBAYXBwbHkgZ2wtYm9yZGVyLWw7XG5cbiAgICAgICY6bm90KC53aWtpLXNpZGViYXIpOm5vdCguYnVpbGQtc2lkZWJhcik6bm90KC5pc3N1YWJsZS1idWxrLXVwZGF0ZS1zaWRlYmFyKSAucGFuZWwtY29udGVudC1pbm5lciB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRyaWdodC1zaWRlYmFyLWNvbGxhcHNlZC13aWR0aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2lkZWJhci1jb2xsYXBzZWQtaWNvbiB7XG4gICAgLmJ0biB7XG4gICAgICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICAgIH1cblxuICAgICY6bm90KC5kaXNhYmxlZCkge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogJGdsLXBhZGRpbmc7XG4gICAgICBoZWlnaHQ6ICRnbC1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC5yaWdodC1zaWRlYmFyLWhlYWRlciB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5yaWdodC1zaWRlYmFyLWV4cGFuZGVkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgei1pbmRleDogJHppbmRleC1kcm9wZG93bi1tZW51O1xuXG4gIC5yaWdodC1zaWRlYmFyLWhlYWRlciB7XG4gICAgcGFkZGluZy1ibG9jazogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgfVxuXG4gIC5pbmxpbmUtYmxvY2sge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gICYucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gICAgd2lkdGg6ICRyaWdodC1zaWRlYmFyLXdpZHRoO1xuXG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kLCBwYW5lbCkge1xuICAgICAgei1pbmRleDogYXV0bztcbiAgICB9XG5cbiAgICAuc2hvcnRjdXQtc2lkZWJhci1kcm9wZG93bi10b2dnbGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgJjpub3QoLndpa2ktc2lkZWJhciwgLmJ1aWxkLXNpZGViYXIsIC5pcy1tZXJnZS1yZXF1ZXN0KSAucGFuZWwtY29udGVudC1pbm5lciB7XG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKHNtLCBjb250ZW50LXBhbmVscykge1xuICAgICAgcGFkZGluZy1yaWdodDogJHJpZ2h0LXNpZGViYXItd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi5yaWdodC1zaWRlYmFyIHtcbiAgJjp3aGVyZSgucmlnaHQtc2lkZWJhci1leHBhbmRlZCkge1xuICAgIEBhcHBseSBnbC1ib3JkZXItbDtcbiAgfVxuXG4gICYucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKGxnLCBwYW5lbCkge1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtYWludGFpbi1zaWRlYmFyLWRpbWVuc2lvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogJHJpZ2h0LXNpZGViYXItd2lkdGg7XG59XG5cbi5pc3N1ZXMtYnVsay11cGRhdGUucmlnaHQtc2lkZWJhciB7XG4gIEBpbmNsdWRlIG1haW50YWluLXNpZGViYXItZGltZW5zaW9ucztcbiAgd2lkdGg6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLXdpZHRoO1xuXG4gICYucmlnaHQtc2lkZWJhci1leHBhbmRlZCB7XG4gICAgQGluY2x1ZGUgbWFpbnRhaW4tc2lkZWJhci1kaW1lbnNpb25zO1xuICAgIHdpZHRoOiAkcmlnaHQtc2lkZWJhci13aWR0aDtcblxuICAgIC5pc3N1YWJsZS1zaWRlYmFyLWhlYWRlciB7XG4gICAgICAvLyBtYXRjaGVzIGAudG9wLWFyZWEgLm5hdi1jb250cm9sc2AgZm9yIGlzc3VhYmxlIGluZGV4IHBhZ2VzXG4gICAgICBwYWRkaW5nOiAxMXB4IDA7XG4gICAgfVxuXG4gICAgLmJsb2NrOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCB7XG4gICAgQGluY2x1ZGUgbWFpbnRhaW4tc2lkZWJhci1kaW1lbnNpb25zO1xuICAgIHdpZHRoOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuYmxvY2sge1xuICAgICAgcGFkZGluZzogMTZweCAwO1xuICAgICAgd2lkdGg6IDI1MHB4O1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICAgIH1cbiAgfVxuXG4gIC5pc3N1YWJsZS1zaWRlYmFyIHtcbiAgICBwYWRkaW5nOiAwIDNweDtcbiAgfVxuXG4gIC5ibG9jayB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuXG4uaXNzdWVzLWJ1bGstdXBkYXRlLnJpZ2h0LXNpZGViYXIucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWwtMDtcbn1cblxuLmlzc3VhYmxlLXNpZGViYXIgLmxhYmVscyB7XG4gIC52YWx1ZS5kb250LWhpZGUgfiAuc2VsZWN0Ym94IHtcbiAgICBwYWRkaW5nLXRvcDogJGdsLXBhZGRpbmctODtcbiAgfVxuXG4gIC8vIFRoaXMgaXMgZm9yIHNpZGViYXIgY29tcG9uZW50cyB1c2luZyBnbC1idXR0b24gZm9yIHRoZSBFZGl0IGJ1dHRvbiB0byBiZSBjb25zaXN0ZW50IHdpdGggdGhlXG4gIC8vIHJlc3Qgb2YgdGhlIHNpZGViYXIsIGFuZCBjb3VsZCBiZSByZW1vdmVkIG9uY2UgdGhlIHNpZGViYXIgaGFzIGJlZW4gZnVsbHkgY29udmVydGVkIHRvIHVzZVxuICAvLyBnaXRsYWItdWkgY29tcG9uZW50cy5cbiAgLnRpdGxlIC5nbC1idXR0b24ge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcblxuICAgIC5nbC1idXR0b24ge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICB9XG4gIH1cbn1cblxuLnNpZGViYXItY29sbGFwc2VkLWljb24ge1xuICBmb250LXNpemU6IDEycHg7XG59XG5cbi50b2dnbGUtcmlnaHQtc2lkZWJhci1idXR0b24ge1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi13aWR0aDtcbiAgaGVpZ2h0OiAkdG9nZ2xlLXNpZGViYXItaGVpZ2h0O1xuICBwYWRkaW5nOiAwICRnbC1wYWRkaW5nO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBib3JkZXI6IDA7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuXG4gICY6aG92ZXIge1xuICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgfVxufVxuXG4uZWRpdC1saW5rIHtcbiAgbWFyZ2luLXJpZ2h0OiAtJGdsLXNwYWNpbmctc2NhbGUtMjtcbn1cblxuLmlzc3VhYmxlLXNpZGViYXIuaXMtbWVyZ2UtcmVxdWVzdCAuZWRpdC1saW5rIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4uYXNzaWduZWUtZ3JpZCB7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICdhdHRlbnRpb24gdXNlcic7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogbWluLWNvbnRlbnQgMWZyO1xufVxuXG4ucmV2aWV3ZXItZ3JpZCB7XG4gIGdyaWQtdGVtcGxhdGUtYXJlYXM6ICd1c2VyIGFwcHJvdmFsIHJlcmVxdWVzdCByZW1vdmUnO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcbn1cblxuLnJldmlld2Vycy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsLFxuLnNpZGViYXItZHJvcGRvd24td2lkZ2V0LWxpc3Rib3ggLmdsLW5ldy1kcm9wZG93bi1wYW5lbCB7XG4gIG1pbi13aWR0aDogJHJpZ2h0LXNpZGViYXItd2lkdGggLSAkZ2wtcGFkZGluZztcbn1cblxuLm1lcmdlLXJlcXVlc3QtYXBwcm92ZWQtaWNvbiB7XG4gIGFuaW1hdGlvbjogYXBwcm92YWwtYW5pbWF0ZSAzNTBtcyBlYXNlLWluO1xufVxuXG5AaW5jbHVkZSBrZXlmcmFtZXMoYXBwcm92YWwtYW5pbWF0ZSkge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuXG4uYXNzaWduZWUtZ3JpZCxcbi5yZXZpZXdlci1ncmlkIHtcbiAgW2RhdGEtY3NzLWFyZWE9J3VzZXInXSB7XG4gICAgZ3JpZC1hcmVhOiB1c2VyO1xuICB9XG59XG5cbkBtaXhpbiByaWdodC1zaWRlYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBib3R0b206ICRjYWxjLWFwcGxpY2F0aW9uLWZvb3Rlci1oZWlnaHQ7XG4gIHJpZ2h0OiB2YXIoLS1zY3JvbGxiYXItd2lkdGgsIDApO1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgei1pbmRleDogMjAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi13aWR0aDtcbn1cblxuLnJpZ2h0LXNpZGViYXIge1xuICAmOm5vdCgucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cykge1xuICAgIEBpbmNsdWRlIHJpZ2h0LXNpZGViYXI7XG4gICAgdG9wOiAkY2FsYy1hcHBsaWNhdGlvbi1oZWFkZXItaGVpZ2h0O1xuXG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obGcsIHBhbmVsKSB7XG4gICAgICB6LWluZGV4OiAkc2lkZWJhci16LWluZGV4O1xuICAgIH1cbiAgfVxuXG4gICYucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obGcsIHBhbmVsKSB7XG4gICAgICBAaW5jbHVkZSByaWdodC1zaWRlYmFyO1xuICAgICAgdG9wOiAkY2FsYy1hcHBsaWNhdGlvbi1iYXJzLWhlaWdodDtcbiAgICAgIHotaW5kZXg6ICRzaWRlYmFyLXotaW5kZXg7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gICAgICB0b3A6ICRjYWxjLWFwcGxpY2F0aW9uLWhlYWRlci1oZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgYTpub3QoLmJ0bikge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1saW5rO1xuICAgIH1cbiAgfVxuXG4gIC5nbC1sYWJlbCAuZ2wtbGFiZWwtbGluazpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cblxuICAuYnRuLWxpbmsge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgLmd1dHRlci10b2dnbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICBwYWRkaW5nOiA0cHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGhlaWdodDogMjRweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cyB7XG4gICAgLmJsb2NrLFxuICAgIC5zaWRlYmFyLWNvbnRhaW5lZC13aWR0aCxcbiAgICAuaXNzdWFibGUtc2lkZWJhci1oZWFkZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmJsb2NrIHtcbiAgICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZywgcGFuZWwpIHtcbiAgICAgICAgcGFkZGluZzogJGdsLXNwYWNpbmctc2NhbGUtNCAwICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gICAgICB9XG5cbiAgICAgICYucGFydGljaXBhbnRzIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYmxvY2ssXG4gIC5zaWRlYmFyLWNvbnRhaW5lZC13aWR0aCxcbiAgLmlzc3VhYmxlLXNpZGViYXItaGVhZGVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICBwYWRkaW5nOiAkZ2wtc3BhY2luZy1zY2FsZS00IDAgJGdsLXNwYWNpbmctc2NhbGUtNTtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1zdWJ0bGU7XG4gICAgLy8gVGhpcyBwcmV2ZW50cyB0aGUgbWVzcyB3aGVuIHJlc2l6aW5nIHRoZSBzaWRlYmFyXG4gICAgLy8gb2YgZWxlbWVudHMgcmVwb3NpdGlvbmluZyB0aGVtc2VsdmVzLi5cbiAgICB3aWR0aDogJHJpZ2h0LXNpZGViYXItaW5uZXItd2lkdGg7XG4gICAgLy8gLS1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuXG4gICAgJi5hc3NpZ25lZSB7XG4gICAgICAuYXV0aG9yLWxpbmsge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC5hdXRob3Ige1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi50aW1lLXRyYWNraW5nLFxuICAgICYucGFydGljaXBhbnRzLFxuICAgICYuc3Vic2NyaXB0aW9ucyxcbiAgICAmLndpdGgtc3ViLWJsb2NrcyB7XG4gICAgICBwYWRkaW5nLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtNTtcbiAgICB9XG4gIH1cblxuICAudGl0bGUge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC0yMDtcblxuICAgIC5hdmF0YXIge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLnNlbGVjdGJveCB7XG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuc2hvdyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuaXNzdWFibGUtc2lkZWJhciB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgJjpub3QoLmlzLW1lcmdlLXJlcXVlc3QpIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG5cbiAgICAmLmlzLW1lcmdlLXJlcXVlc3Qge1xuICAgICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodC1zaWRlYmFyLWV4cGFuZGVkIHtcbiAgICAmOm5vdCgucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cykge1xuICAgICAgd2lkdGg6ICRyaWdodC1zaWRlYmFyLXdpZHRoO1xuICAgIH1cblxuICAgIC5pc3N1YWJsZS1zaWRlYmFyLWhlYWRlciB7XG4gICAgICBwYWRkaW5nLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtNTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS01O1xuICAgIH1cblxuICAgIC52YWx1ZSB7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG5cbiAgICAuaXNzdWFibGUtc2lkZWJhciB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG5cbiAgICAgICYuaXMtbWVyZ2UtcmVxdWVzdCB7XG4gICAgICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZywgcGFuZWwpIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgLmlzc3VhYmxlLWNvbnRleHQtZm9ybSB7XG4gICAgICAgICAgICB0b3A6ICRtci1zdGlja3ktaGVhZGVyLWhlaWdodDtcbiAgICAgICAgICAgIGhlaWdodDogY2FsYyh2YXIoLS1wYW5lbC1jb250ZW50LWlubmVyLWhlaWdodCkgLSAjeyRtci1zdGlja3ktaGVhZGVyLWhlaWdodH0pO1xuICAgICAgICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoKCN7JGNvbnRlbnQtd3JhcHBlci1wYWRkaW5nfSAqIC0xKSk7XG4gICAgICAgICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC5ib2FyZHMtc2lkZWJhcik6bm90KFtkYXRhLXNpZ25lZC1pbl0pOm5vdChbZGF0YS1hbHdheXMtc2hvdy10b2dnbGVdKSB7XG4gICAgICAuaXNzdWFibGUtc2lkZWJhci1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saWdodCB7XG4gICAgICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgICB9XG5cbiAgICAubm8tdmFsdWUge1xuICAgICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICAgIH1cblxuICAgIC5zaWRlYmFyLWNvbGxhcHNlZC1pY29uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmd1dHRlci10b2dnbGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC50aXRsZSAuZ3V0dGVyLXRvZ2dsZSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIC5hc3NpZ25lZSAudXNlci1saXN0IC5hdmF0YXIge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5oaWRlLWV4cGFuZGVkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodC1zaWRlYmFyLWNvbGxhcHNlZCB7XG4gICAgLyogRXh0cmEgc21hbGwgZGV2aWNlcyAocGhvbmVzLCBsZXNzIHRoYW4gNzY4cHgpICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiBTbWFsbCBkZXZpY2VzICh0YWJsZXRzLCA3NjhweCBhbmQgdXApICovXG5cbiAgICAmOm5vdCgucmlnaHQtc2lkZWJhci1tZXJnZS1yZXF1ZXN0cykge1xuICAgICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKHNtLCBjb250ZW50LXBhbmVscykge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnJpZ2h0LXNpZGViYXItbWVyZ2UtcmVxdWVzdHMge1xuICAgICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKGxnLCBwYW5lbCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICB3aWR0aDogJHJpZ2h0LXNpZGViYXItY29sbGFwc2VkLXdpZHRoO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAuYmxvY2ssXG4gICAgLnNpZGViYXItY29udGFpbmVkLXdpZHRoLFxuICAgIC5pc3N1YWJsZS1zaWRlYmFyLWhlYWRlciB7XG4gICAgICB3aWR0aDogJHJpZ2h0LXNpZGViYXItY29sbGFwc2VkLXdpZHRoIC0gMnB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC5ibG9jayxcbiAgICAuZ3V0dGVyLXRvZ2dsZSxcbiAgICAuc2lkZWJhci1jb2xsYXBzZWQtY29udGFpbmVyIHtcbiAgICAgICYud2l0aC1zdWItYmxvY2tzIC5zdWItYmxvY2s6aG92ZXIsXG4gICAgICAmOm5vdCgud2l0aC1zdWItYmxvY2tzKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWFjdGlvbi1uZXV0cmFsLWJhY2tncm91bmQtY29sb3ItaG92ZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wYXJ0aWNpcGFudHMge1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICAgIH1cblxuICAgIC5oaWRlLWNvbGxhcHNlZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ndXR0ZXItdG9nZ2xlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAkc2lkZWJhci10b2dnbGUtaGVpZ2h0O1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1iICN7IWltcG9ydGFudH07XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIGEuZ3V0dGVyLXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5tZXJnZS1pY29uIHtcbiAgICAgIGhlaWdodDogMTJweDtcbiAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgcmlnaHQ6IDRweDtcbiAgICB9XG5cbiAgICAuc2lkZWJhci1jb2xsYXBzZWQtaWNvbiB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAkc2lkZWJhci10b2dnbGUtaGVpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuXG4gICAgICA+IHN2ZyB7XG4gICAgICAgIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyOm5vdCguZGlzYWJsZWQpLFxuICAgICAgJjpob3ZlciAudG9kby11bmRvbmUge1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuXG4gICAgICAgID4gc3ZnIHtcbiAgICAgICAgICBAYXBwbHkgZ2wtZmlsbC1pY29uLWRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRvZG8tdW5kb25lIHtcbiAgICAgICAgY29sb3I6IHZhcigtLWdsLXN0YXR1cy1pbmZvLXRleHQtY29sb3IpO1xuICAgICAgICBmaWxsOiB2YXIoLS1nbC1zdGF0dXMtaW5mby1pY29uLWNvbG9yKTtcbiAgICAgIH1cblxuICAgICAgLmF1dGhvciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICYubXVsdGlwbGUtdXNlcnMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lkZWJhci1hdmF0YXItY291bnRlciB7XG4gICAgICB3aWR0aDogMjRweDtcbiAgICAgIGhlaWdodDogMjRweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG5cbiAgICAgIH4ubWVyZ2UtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2lkZWJhci1jb2xsYXBzZWQtdXNlciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcblxuICAgICAgLmF1dGhvci1saW5rIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgICAgIC5hdmF0YXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlzc3VhYmxlLWhlYWRlci1idG4ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubXVsdGlwbGUtdXNlcnMge1xuICAgICAgLmJ0bi1saW5rIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgIC5hdmF0YXIge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYnRuLWxpbms6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC5idG4tbGluazpsYXN0LWNoaWxkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTBweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWlsZXN0b25lLXRpdGxlIHNwYW4sXG4gICAgLmNvbGxhcHNlLXRydW5jYXRlZC10aXRsZSB7XG4gICAgICBAaW5jbHVkZSBzdHItdHJ1bmNhdGVkKDEwMCUpO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAgNHB4O1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZy10b3A6IDZweDtcbiAgfVxuXG4gIC5kcm9wZG93bi1tZW51IHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC8qXG4gICAgICogT3ZlcndyaXRlIGhvdmVyIHN0eWxlIGZvciBkcm9wZG93biBpdGVtcywgc28gdGhhdCB0aGV5IGFyZSBub3QgYmx1ZVxuICAgICAqIFRoaXMgc2hvdWxkIGJlIHJlbW92ZWQgZHVyaW5nIGRldiBvZiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWItZm9zcy9pc3N1ZXMvNDQwNDBcbiAgICAgKi9cbiAgICBsaSBhIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmFjdGl2ZSxcbiAgICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAgICYuaXMtZm9jdXNlZCB7XG4gICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWl0ZW0taG92ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbi5pc3N1YWJsZS1zaG93LWxhYmVscyB7XG4gIC5nbC1sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgICBtYXJnaW4tcmlnaHQ6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gIH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAuY29sb3ItbGFiZWwge1xuICAgICAgcGFkZGluZzogNHB4ICRncmlkLXNpemU7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbGFiZWwtYm9yZGVyLXJhZGl1cztcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIH1cblxuICAgICY6aG92ZXIgLmNvbG9yLWxhYmVsIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gICYuaGFzLWxhYmVscyB7XG4gICAgLy8gdGhpcyBmb250IHNpemUgaXMgYSBmaXggdG9cbiAgICAvLyBwcmV2ZW50IHVuaW50ZW5kZWQgc3BhY2luZyBiZXR3ZWVuIGxhYmVsc1xuICAgIC8vIHdoaWNoIHNob3dzIHVwIHdoZW4gcmVuZGVyaW5nIG1hcmt1cCBoYXMgd2hpdGUtc3BhY2VcbiAgICAvLyBjaGFyYWN0ZXJzIHByZXNlbnQuXG4gICAgLy8gc2VlOiBodHRwczovL2Nzcy10cmlja3MuY29tL2ZpZ2h0aW5nLXRoZS1zcGFjZS1iZXR3ZWVuLWlubGluZS1ibG9jay1lbGVtZW50cy8jYXJ0aWNsZS1oZWFkZXItaWQtM1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAtNXB4O1xuICB9XG59XG5cbi5yZXZpZXdlci1tZXJnZS1pY29uLFxuLmFzc2lnbmVlIC5tZXJnZS1pY29uLFxuLnJldmlld2VyIC5tZXJnZS1pY29uIHtcbiAgY29sb3I6IHZhcigtLWdsLXN0YXR1cy13YXJuaW5nLWljb24tY29sb3IpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTNweDtcbiAgcmlnaHQ6IC0zcHg7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMXB4IDAgMCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKVxuICAgICAgICAgIGRyb3Atc2hhZG93KC0xcHggMCAwIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpXG4gICAgICAgICAgZHJvcC1zaGFkb3coMCAtMXB4IDAgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSlcbiAgICAgICAgICBkcm9wLXNoYWRvdygwIDFweCAwIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xufVxuXG4vLyBPdmVybGF5cyB0aGUgcmVjb21tZW5kYXRpb24tcmVhc29uIHN0YXR1cyBiYWRnZSBvbiB0aGUgYm90dG9tLXJpZ2h0IG9mIHRoZVxuLy8gMjRweCByZXZpZXdlciBhdmF0YXIsIG1pcnJvcmluZyB0aGUgXCJjYW5ub3QgbWVyZ2VcIiBtZXJnZS1pY29uIHRyZWF0bWVudC5cbi5zdWdnZXN0ZWQtcmV2aWV3ZXItcmVhc29uLWljb24ge1xuICB0b3A6IDE3cHg7XG4gIGxlZnQ6IDE4cHg7XG4gIGZpbHRlcjogZHJvcC1zaGFkb3coMXB4IDAgMCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpKVxuICAgICAgICAgIGRyb3Atc2hhZG93KC0xcHggMCAwIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpXG4gICAgICAgICAgZHJvcC1zaGFkb3coMCAtMXB4IDAgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KSlcbiAgICAgICAgICBkcm9wLXNoYWRvdygwIDFweCAwIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xufVxuXG4uc3VnZ2VzdGVkLXJldmlld2VyLWF2YXRhciAuZ2wtYXZhdGFyIHtcbiAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWRhc2hlZDtcbiAgQGFwcGx5IGdsLWJvcmRlci1zdHJvbmc7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2lkZWJhci1oZWxwLXdyYXAge1xuICAuc2lkZWJhci1oZWxwLXN0YXRlIHtcbiAgICBtYXJnaW46IDE2cHggLTIwcHggLTIwcHg7XG4gICAgcGFkZGluZzogMTZweCAyMHB4O1xuICB9XG5cbiAgLy8gVGhlc2UgYXJlIGNvbXBvc2l0ZSBjbGFzc2VzIGZvciB1c2Ugd2l0aCBWdWUgVHJhbnNpdGlvblxuICAvLyBodHRwczovL3Z1ZWpzLm9yZy9ndWlkZS9idWlsdC1pbnMvdHJhbnNpdGlvblxuICAuaGVscC1zdGF0ZS10b2dnbGUtZW50ZXItYWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC44cyBlYXNlO1xuICB9XG5cbiAgLmhlbHAtc3RhdGUtdG9nZ2xlLWxlYXZlLWFjdGl2ZSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgfVxuXG4gIC5oZWxwLXN0YXRlLXRvZ2dsZS1lbnRlcixcbiAgLmhlbHAtc3RhdGUtdG9nZ2xlLWxlYXZlLWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4udGltZS10cmFja2VyIHtcbiAgLnNpZGViYXItY29sbGFwc2VkLWljb24ge1xuICAgID4gLnN0b3B3YXRjaC1zdmcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICAgIGhlaWdodDogMTZweDtcbiAgICAgIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xuICAgIH1cblxuICAgICY6aG92ZXIgc3ZnIHtcbiAgICAgIEBhcHBseSBnbC1maWxsLWljb24tZGVmYXVsdDtcbiAgICB9XG4gIH1cblxuICAuY29tcGFyZS1tZXRlciB7XG4gICAgJi5vdmVyX2VzdGltYXRlIHtcbiAgICAgIC50aW1lLXJlbWFpbmluZyxcbiAgICAgIC5jb21wYXJlLXZhbHVlLnNwZW50IHtcbiAgICAgICAgQGFwcGx5IGdsLXRleHQtZGFuZ2VyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jb21wYXJlLWRpc3BsYXktY29udGFpbmVyIHtcbiAgICBmb250LXNpemU6IDEzcHg7XG4gIH1cbn1cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIHNjc3MvYXQtcnVsZS1uby11bmtub3duICovXG4vKipcbiAqIFNDU1MgdmFyaWFibGVzXG4gKi9cbiRzdXBlci1zaWRlYmFyLXRyYW5zaXRpb24tZGVsYXk6IDAuNHM7XG4kc3VwZXItc2lkZWJhci10cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjJzO1xuJGNvbW1hbmQtcGFsZXR0ZS1zcGFjaW5nOiBweC10by1yZW0oMTRweCk7XG5cbi8qKlxuICogQ1NTIEN1c3RvbSBwcm9wZXJ0aWVzXG4gKi9cbjpyb290IHtcbiAgLS1zdXBlci1zaWRlYmFyLWhyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMDApO1xufVxuXG46cm9vdC5nbC1kYXJrIHtcbiAgLS1zdXBlci1zaWRlYmFyLWhyLWJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC05MDApO1xufVxuXG4vKipcbiAqIFNraXAgdG9cbiAqL1xuLnN1cGVyLXNpZGViYXItc2tpcC10byB7XG4gIHRvcDogJGNhbGMtYXBwbGljYXRpb24tYmFycy1oZWlnaHQ7XG4gIHotaW5kZXg6ICRzdXBlci1zaWRlYmFyLXNraXAtdG8tei1pbmRleDtcbn1cblxuLyoqXG4gKiBTdXBlciBzaWRlYmFyIHdyYXBwZXJcbiAqL1xuLnN1cGVyLXNpZGViYXItd3JhcHBlciB7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgQGFwcGx5IHhsOmdsLXN0YXRpYztcbiAgQGFwcGx5IGdsLXctMDtcbiAgQGFwcGx5IGdsLWgtMDtcbiAgQGFwcGx5IHhsOmdsLWgtYXV0bztcbiAgQGFwcGx5IHhsOmdsLXctYXV0bztcbiAgQGFwcGx5IHhsOmdsLW1sLTA7XG4gIEBhcHBseSBnbC1taW4taC0wO1xuXG4gIC8vIFByZXZlbnQgdGhlIGFjdGl2ZSBuYXYgaXRlbSdzIGJhY2tncm91bmQgZnJvbSBicmVha2luZyBvdXQgcGFzdCB0aGUgcmFpbFxuICAvLyB3aGlsZSB0aGUgc2lkZWJhciBjb2xsYXBzZXMuIEFwcGxpZWQgYXMgYSBvbmUtc2hvdCBhbmltYXRpb24gcmF0aGVyIHRoYW4gYVxuICAvLyBwbGFpbiBgY2xpcC1wYXRoYCwgYmVjYXVzZSB0aGUgY2xpcCBhbHNvIGFwcGxpZXMgdG8gdGhlIGZpeGVkLXBvc2l0aW9uXG4gIC8vIGZseW91dCBtZW51cywgYW5kIGAuc3VwZXItc2lkZWJhci10b2dnbGVkLW1hbnVhbGx5YCBzdGlja3MgYXJvdW5kIHdoZW5ldmVyXG4gIC8vIGB0cmFuc2l0aW9uZW5kYCBkb2Vzbid0IGZpcmUgKGZvciBleGFtcGxlIHdoZW4gdHJhbnNpdGlvbnMgYXJlIGRpc2FibGVkKS5cbiAgLy8gVHlpbmcgaXQgdG8gdGhlIGFuaW1hdGlvbiBtZWFucyB0aGUgY2xpcCBjYW4gbmV2ZXIgb3V0bGl2ZSB0aGUgY29sbGFwc2UuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byB0aGUgYW5pbWF0aW5nIHNpZGViYXJcbiAgJjpoYXMoLnN1cGVyLXNpZGViYXItdG9nZ2xlZC1tYW51YWxseSkge1xuICAgIC8vIER1cmF0aW9uIG1hdGNoZXMgdGhlIHNpZGViYXIgd2lkdGggdHJhbnNpdGlvbiBpbiBsYXlvdXQuc2Nzcy5cbiAgICBhbmltYXRpb246IHN1cGVyLXNpZGViYXItY29sbGFwc2UtY2xpcCAwLjI1cztcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN1cGVyLXNpZGViYXItY29sbGFwc2UtY2xpcCB7XG4gIC8vIFRoZSBsZWZ0IHN0YXlzIG9wZW4gYmVjYXVzZSB0aGUgc2lkZWJhcidzIG5lZ2F0aXZlIG1hcmdpbiBwdXRzIHRoZSBhY3RpdmVcbiAgLy8gaXRlbSdzIGxlZnQgZWRnZSBvdXRzaWRlIHRoZSB3cmFwcGVyLCBhbmQgY2xpcHBpbmcgaXQgdGhlcmUgbWFrZXMgdGhlIGFjY2VudFxuICAvLyBmbGlja2VyIG1pZC1jb2xsYXBzZS5cbiAgZnJvbSxcbiAgdG8ge1xuICAgIGNsaXAtcGF0aDogaW5zZXQoMCAwIDAgLSN7JGdsLXNwYWNpbmctc2NhbGUtM30pO1xuICB9XG59XG5cbi8qKlxuICogU3VwZXIgc2lkZWJhclxuICovXG4uc3VwZXItc2lkZWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwO1xuICBib3R0b206ICRjYWxjLWFwcGxpY2F0aW9uLWZvb3Rlci1oZWlnaHQ7XG4gIGxlZnQ6IDA7XG4gIEBhcHBseSBnbC1oLWZ1bGw7XG4gIEBhcHBseSB4bDotZ2wtbWwtMztcbiAgQGFwcGx5IGdsLWJnLWFwcGxpY2F0aW9uLWNocm9tZTtcbiAgQGFwcGx5IHhsOmdsLWJnLXRyYW5zcGFyZW50O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB6LWluZGV4OiAkc3VwZXItc2lkZWJhci16LWluZGV4O1xuICBAYXBwbHkgbWF4LXhsOmZvcmNlZC1jb2xvcnM6Z2wtYm9yZGVyLXI7XG5cbiAgJjpub3QoLnN1cGVyLXNpZGViYXItaXMtaWNvbi1vbmx5KSB7XG4gICAgd2lkdGg6IG1pbig4MCUsIDMyMHB4KTtcblxuICAgIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoeGwpIHtcbiAgICAgIHdpZHRoOiAkc3VwZXItc2lkZWJhci13aWR0aDtcbiAgICB9XG4gIH1cblxuICAmOmlzKC5zdXBlci1zaWRlYmFyLWlzLWljb24tb25seSkge1xuICAgIC8vIFN0YWNrIHNlY3Rpb24gYnV0dG9ucyBhYm92ZSBTVkcgcG9seWdvbiBmb3IgY2xpY2thYmxlIHNwYWNlXG4gICAgLy8gT25seSB0YXJnZXQgdG9wLWxldmVsIG5hdiBpdGVtcywgbm90IHRob3NlIGluc2lkZSBmbHlvdXQgbWVudXNcbiAgICA+ICogLnN1cGVyLXNpZGViYXItbmF2LWl0ZW06bm90KC5uYXYtZmx5b3V0LW1lbnUgLnN1cGVyLXNpZGViYXItbmF2LWl0ZW0pIHtcbiAgICAgIHotaW5kZXg6ICRzdXBlci1zaWRlYmFyLW5hdi1pdGVtLXotaW5kZXg7XG4gICAgfVxuICB9XG5cbiAgLy8gRW5zdXJlIHNlbGVjdGVkIHN0eWxlcyBvbiBwYXJlbnQgR2xOYXZJdGVtIHdoZW4gZmx5b3V0IG1lbnUgaXMgb3BlblxuICAuZ2wtbmF2LWl0ZW0ge1xuICAgICYud2l0aC1tb3VzZS1vdmVyLWZseW91dCB7XG4gICAgICBjb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tZm9yZWdyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1iYWNrZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICB9XG5cbiAgICAmLnNlbGVjdGVkIHtcbiAgICAgICYud2l0aC1tb3VzZS1vdmVyLWZseW91dCB7XG4gICAgICAgIGNvbG9yOiB2YXIoLS1nbC1uYXYtaXRlbS1zZWxlY3RlZC1mb3JlZ3JvdW5kLWNvbG9yLWhvdmVyKTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtbmF2LWl0ZW0tc2VsZWN0ZWQtYmFja2dyb3VuZC1jb2xvci1ob3Zlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdi1mbHlvdXQtbWVudSB7XG4gICAgei1pbmRleDogJHN1cGVyLXNpZGViYXItbmF2LWZsYXlvdXQtbWVudS16LWluZGV4O1xuICAgIEBpbmNsdWRlIGdsLXByZWZlcnMtcmVkdWNlZC1tb3Rpb24tdHJhbnNpdGlvbjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyAkZ2wtZWFzaW5nLW91dC1jdWJpYztcblxuICAgIC5nbC1uYXYtaXRlbS1sYWJlbCB7XG4gICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICBvdmVyZmxvdy13cmFwOiBhbnl3aGVyZTtcbiAgICB9XG5cbiAgICBAc3RhcnRpbmctc3R5bGUge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gIH1cblxuICAmLnN1cGVyLXNpZGViYXItbG9hZGluZyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuXG4gICAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgfVxuXG4gICAgJjpub3QoLnN1cGVyLXNpZGViYXItaXMtaWNvbi1vbmx5KSB7XG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIHdpZHRoOiAkc3VwZXItc2lkZWJhci13aWR0aDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN1cGVyLXNpZGViYXItaXMtaWNvbi1vbmx5IHtcbiAgICAgIHdpZHRoOiAkZ2wtYnV0dG9uLW1lZGl1bS1zaXplO1xuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgIEBhcHBseSBnbC10cmFuc2l0aW9uLXRyYW5zZm9ybTtcbiAgfVxuXG4gIGhyIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLXN1cGVyLXNpZGViYXItaHItYm9yZGVyLWNvbG9yKTtcbiAgfVxuXG4gICN0cmlhbC1zdGF0dXMtc2lkZWJhci13aWRnZXQ6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTtcbiAgfVxufVxuXG5AaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LWRvd24obGcpIHtcbiAgLnBhZ2Utd2l0aC1zdXBlci1zaWRlYmFyOm5vdCguc3VwZXItc2lkZWJhci1oYXMtY3NzLXRyYW5zaXRpb25zLWJsb2NrZWQpIC5zdXBlci1zaWRlYmFyIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtci1bMXJlbV07XG4gIH1cbn1cblxuLyoqXG4gKiBPdmVybGF5XG4gKi9cbi5zdXBlci1zaWRlYmFyLW92ZXJsYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKipcbiAqIFBhZ2Ugd2l0aCBzdXBlciBzaWRlYmFyXG4gKi9cbi5wYWdlLXdpdGgtc3VwZXItc2lkZWJhciB7XG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgIEBhcHBseSBnbC10cmFuc2l0aW9uLXBhZGRpbmc7XG4gIH1cblxuICAmOm5vdCgucGFnZS13aXRoLXN1cGVyLXNpZGViYXItY29sbGFwc2VkLC5zdXBlci1zaWRlYmFyLWhhcy1jc3MtdHJhbnNpdGlvbnMtYmxvY2tlZCkge1xuICAgIC5zdXBlci1zaWRlYmFyLW92ZXJsYXkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBAYXBwbHkgZ2wtYmctb3ZlcmxheTtcbiAgICAgIHotaW5kZXg6ICRzdXBlci1zaWRlYmFyLXotaW5kZXggLSAxO1xuXG4gICAgICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cCh4bCkge1xuICAgIC5zdXBlci1zaWRlYmFyLXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZS13aXRoLXN1cGVyLXNpZGViYXItY29sbGFwc2VkIHtcbiAgLnN1cGVyLXNpZGViYXIge1xuICAgIEBhcHBseSBnbC1tLTA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cblxuICBAaW5jbHVkZSBtZWRpYS1icmVha3BvaW50LXVwKHhsKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuXG4gICAgLnN1cGVyLXNpZGViYXItdG9nZ2xlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEZlYXR1cmUgTGlicmFyeSBtb2RhbFxuICovXG4uZmVhdHVyZS1saWJyYXJ5LW1vZGFsIHtcbiAgJi5nbC1tb2RhbCAubW9kYWwtZGlhbG9nIHtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tdG9wOiA1dmg7XG4gICAgbWluLWhlaWdodDogMDtcblxuICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGdsLW1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwdmg7XG5cbiAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgbWF4LWhlaWdodDogODB2aDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmVhdHVyZS1saWJyYXJ5LXNjcm9sbC1hcmVhIHtcbiAgICAvLyBLZWVwcyB0aGUgbW9kYWwgZnJvbSBjb2xsYXBzaW5nIG9uIGVtcHR5IHJlc3VsdHMsIHdoaWxlIHN0YXlpbmcgc21hbGxcbiAgICAvLyBlbm91Z2ggbm90IHRvIG92ZXJmbG93IHNob3J0IHZpZXdwb3J0cy5cbiAgICBtaW4taGVpZ2h0OiBtaW4oMjByZW0sIDQwdmgpO1xuICB9XG5cbiAgLy8gTGV0IHRoZSBzY3JvbGwgYXJlYSAoYW5kIGl0cyB0b3AvYm90dG9tIHNjcmltIGdyYWRpZW50cykgYmxlZWQgdG8gdGhlXG4gIC8vIG1vZGFsIGJvZHkgZWRnZXMgYnkgY2FuY2VsbGluZyB0aGUgYm9keSdzIGhvcml6b250YWwgcGFkZGluZywgdGhlblxuICAvLyByZS1pbnNldCB0aGUgYWN0dWFsIGNvbnRlbnQgc28gaXQgc3RheXMgYWxpZ25lZCB3aXRoIHRoZSBzZWFyY2ggYm94LlxuICAuZmVhdHVyZS1saWJyYXJ5LXNjcm9sbC1ibGVlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ2wtcGFkZGluZztcbiAgICBtYXJnaW4tcmlnaHQ6IC0kZ2wtcGFkZGluZztcbiAgfVxuXG4gIC5mZWF0dXJlLWxpYnJhcnktc2Nyb2xsLWluc2V0IHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRnbC1wYWRkaW5nO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRnbC1wYWRkaW5nO1xuICB9XG5cbiAgJi5nbC1tb2RhbCAubW9kYWwtZm9vdGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgfVxuXG4gIC5mZWF0dXJlLWxpYnJhcnktZ2VtaW5pLWJ1dHRvbiB7XG4gICAgJi5nbC1idXR0b24uZ2wtYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDkwZGVnLFxuICAgICAgICBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ2wtY29sb3ItcHVycGxlLTUwMCkgMTIlLCB0cmFuc3BhcmVudCksXG4gICAgICAgIGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1nbC1jb2xvci1ibHVlLTUwMCkgMTIlLCB0cmFuc3BhcmVudClcbiAgICAgICk7XG4gICAgICBib3JkZXItY29sb3I6IGNvbG9yLW1peChpbiBzcmdiLCB2YXIoLS1nbC1jb2xvci1wdXJwbGUtNTAwKSA2MCUsIHRyYW5zcGFyZW50KTtcbiAgICB9XG5cbiAgICAmLmdsLWJ1dHRvbi5nbC1idXR0b246aG92ZXIsXG4gICAgJi5nbC1idXR0b24uZ2wtYnV0dG9uOmZvY3VzLFxuICAgICYuZ2wtYnV0dG9uLmdsLWJ1dHRvbjphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KFxuICAgICAgICA5MGRlZyxcbiAgICAgICAgY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWdsLWNvbG9yLXB1cnBsZS01MDApIDI0JSwgdHJhbnNwYXJlbnQpLFxuICAgICAgICBjb2xvci1taXgoaW4gc3JnYiwgdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApIDI0JSwgdHJhbnNwYXJlbnQpXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIEdsb2JhbCBzZWFyY2ggbW9kYWxcbiAqL1xuLmdsb2JhbC1zZWFyY2gtbW9kYWwge1xuICBwYWRkaW5nOiB2YXIoLS1wZXJmb3JtYW5jZS1iYXItaGVpZ2h0KSAwLjVyZW0gMDtcblxuICAubW9kYWwtY29udGVudCB7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtWzFyZW1dICN7IWltcG9ydGFudH07XG4gIH1cblxuICAmLmdsLW1vZGFsIC5tb2RhbC1kaWFsb2cge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG5cbiAgQGluY2x1ZGUgZ2wtbWVkaWEtYnJlYWtwb2ludC11cChzbSkge1xuICAgIHBhZGRpbmc6IHZhcigtLXBlcmZvcm1hbmNlLWJhci1oZWlnaHQpIDFyZW0gMDtcbiAgfVxuXG4gIC52ZXJ0aWNhbC1hbGlnbi1ub3JtYWxpemF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAtJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgICBtYXJnaW4tYm90dG9tOiAtJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgfVxuXG5cbiAgLnNob3ctZm9jdXMtbGF5b3ZlciB7XG4gICAgJjpmb2N1cy12aXNpYmxlLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIC5zaG93LWZvY3VzLWxheW92ZXItaGludCB7XG4gICAgICAgIEBhcHBseSBnbC1vcGFjaXR5LTEwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jb21tYW5kLXBhbGV0dGUtcHgge1xuICAgIHBhZGRpbmctbGVmdDogJGNvbW1hbmQtcGFsZXR0ZS1zcGFjaW5nO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRjb21tYW5kLXBhbGV0dGUtc3BhY2luZztcbiAgfVxuXG4gIC8vIFRoaXMgaXMgYSB0ZW1wb3Jhcnkgd29ya2Fyb3VuZCFcbiAgLy8gdGhlIGJ1dHRvbiBpbiBHaXRMYWIgVUkgU2VhcmNoIGNvbXBvbmVudHMgbmVlZCB0byBiZSB1cGRhdGVkIHRvIG5vdCBiZSB0aGUgc21hbGwgc2l6ZVxuICAvLyBzZWUgaW4gRmlnbWE6IGh0dHBzOi8vd3d3LmZpZ21hLmNvbS9maWxlL3FFZGR5cUNySTdrUFNCakdtd2taelEvQ29tcG9uZW50LWxpYnJhcnk/bm9kZS1pZD00MzkwNSUzQTQ1NTQwXG4gIC5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtY2xlYXIuYnRuLXNtIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gIC5nbC1zZWFyY2gtYm94LWJ5LXR5cGUtaW5wdXQtYm9yZGVybGVzcyB7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtWzAuNzVyZW1dO1xuICB9XG5cbiAgLmdsb2JhbC1zZWFyY2gtcmVzdWx0cyB7XG4gICAgbWF4LWhlaWdodDogMzByZW07XG5cbiAgICAuZ2wtbmV3LWRyb3Bkb3duLWl0ZW0ge1xuICAgICAgQGFwcGx5IGdsLXB4LTM7XG4gICAgfVxuXG4gICAgLy8gVGFyZ2V0IGdyb3Vwc1xuICAgIFtpZCo9J2dsLWRpc2Nsb3N1cmUtZHJvcGRvd24tZ3JvdXAnXSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRjb21tYW5kLXBhbGV0dGUtc3BhY2luZztcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRjb21tYW5kLXBhbGV0dGUtc3BhY2luZztcbiAgICB9XG5cbiAgICAuZ2wtc2Nyb2xsLXNjcmltIHtcbiAgICAgIGJvcmRlci13aWR0aDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICYuZ2wtbW9kYWwgLm1vZGFsLWZvb3RlciB7XG4gICAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gICAgcGFkZGluZzogJGNvbW1hbmQtcGFsZXR0ZS1zcGFjaW5nO1xuICB9XG5cbiAgQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGdsLWVhc2luZy1vdXQtY3ViaWM7XG5cbiAgICAmLnNob3cge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMnM7XG5cbiAgICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICBzY2FsZTogMTtcbiAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4ycztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguc2hvdykge1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG5cbiAgICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICBzY2FsZTogMC44O1xuICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjFzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBzdGFydGluZy1zdHlsZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgICAgIHRyYW5zZm9ybTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogc2NhbGU7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGdsLWVhc2luZy1vdXQtY3ViaWM7XG5cbiAgICAgIEBzdGFydGluZy1zdHlsZSB7XG4gICAgICAgIHNjYWxlOiAwLjg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qKlxuICogVXRpbGl0aWVzXG4gKi9cbi50cmFuc2l0aW9uLW9wYWNpdHktb24taG92ZXItLWNvbnRleHQge1xuICAudHJhbnNpdGlvbi1vcGFjaXR5LW9uLWhvdmVyLS10YXJnZXQge1xuICAgIEBhcHBseSBnbC10cmFuc2l0aW9uLW9wYWNpdHk7XG4gICAgQGFwcGx5IGdsLWR1cmF0aW9uLWZhc3Q7XG4gICAgQGFwcGx5IGdsLWVhc2UtbGluZWFyO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkc3VwZXItc2lkZWJhci10cmFuc2l0aW9uLWRlbGF5O1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIC50cmFuc2l0aW9uLW9wYWNpdHktb24taG92ZXItLXRhcmdldCB7XG4gICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkc3VwZXItc2lkZWJhci10cmFuc2l0aW9uLWRlbGF5O1xuICAgIH1cbiAgfVxufVxuXG4vLyBUb3VjaCBkZXZpY2VzIGNhbid0IGhvdmVyLCBzbyBvbmx5IGhpZGUgdGhlIGNhdGVnb3J5IGNoZXZyb24gd2hlcmUgaG92ZXIgZXhpc3RzLlxuQG1lZGlhIChob3ZlcjogaG92ZXIpIHtcbiAgLnN1cGVyLXNpZGViYXItY2F0ZWdvcnktdG9nZ2xlIHtcbiAgICAuZ2wtbmF2LWl0ZW0tY2hldnJvbiB7XG4gICAgICBAaW5jbHVkZSBnbC1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLXRyYW5zaXRpb247XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4xcyBsaW5lYXI7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIC5nbC1uYXYtaXRlbS1jaGV2cm9uIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLWNvbnRleHQge1xuICAuc2hvdy1vbi1mb2N1cy1vci1ob3Zlci0tdGFyZ2V0IHtcbiAgICBvcGFjaXR5OiAwO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXZpc2libGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgLnNob3ctb24tZm9jdXMtb3ItaG92ZXItLXRhcmdldCB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgfVxuXG4gIC5zaG93LW9uLWZvY3VzLW9yLWhvdmVyLS1jb250cm9sIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICArIC5zaG93LW9uLWZvY3VzLW9yLWhvdmVyLS10YXJnZXQge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaGlkZS1vbi1mb2N1cy1vci1ob3Zlci0tY29udGV4dCB7XG4gIC5oaWRlLW9uLWZvY3VzLW9yLWhvdmVyLS10YXJnZXQge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXdpdGhpbiB7XG4gICAgLmhpZGUtb24tZm9jdXMtb3ItaG92ZXItLXRhcmdldCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLW9uLWZvY3VzLW9yLWhvdmVyLS1jb250cm9sIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAuaGlkZS1vbi1mb2N1cy1vci1ob3Zlci0tdGFyZ2V0IHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnN1cGVyLXNpZGViYXItbWl4LWJsZW5kLW1vZGUge1xuICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG5cbiAgLmdsLWRhcmsgJiB7XG4gICAgbWl4LWJsZW5kLW1vZGU6IHNjcmVlbjtcbiAgfVxufVxuXG4vLyBUd2Vha3MgdG8gdGhlIGRyb3Bkb3duIHN0eWxlcyB3aWR0aCB0byBtYXRjaCB0aGVcbi8vIGRyb3Bkb3duIHdpZHRoXG4uc3VwZXItc2lkZWJhci1vcmctc3dpdGNoZXItZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1wYW5lbCxcbi5zdXBlci1zaWRlYmFyLW1yLW1lbnUtZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1wYW5lbCxcbi5zdXBlci1zaWRlYmFyLW5ldy1tZW51LWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24tcGFuZWwsXG4uc3VwZXItc2lkZWJhci11c2VyLWRyb3Bkb3duIC5nbC1uZXctZHJvcGRvd24tcGFuZWwsXG4uc3VwZXItc2lkZWJhci1oZWxwLWNlbnRlci1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsLFxuLnN1cGVyLXNpZGViYXItc2V0dGluZ3MtZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1wYW5lbCB7XG4gIEBhcHBseSBnbC1taW4tdy0yOCAjeyFpbXBvcnRhbnR9O1xuICBAYXBwbHkgZ2wtdy0yOCAjeyFpbXBvcnRhbnR9O1xufVxuXG4vLyBLZWVwIHRoZSBzZWxlY3RlZCBiYWNrZ3JvdW5kIG9uIHRoZSBzZXR0aW5ncyB0b2dnbGUgYnV0IGRyb3AgdGhlIGVkZ2Vcbi8vIGluZGljYXRvciBiYXIsIHdoaWNoIHJlYWRzIGFzIGNsdXR0ZXIgb24gdGhpcyBhbHdheXMtcHJlc2VudCBjb250cm9sLlxuLy8gQXBwbGllcyB0byBib3RoIHRoZSBoZWFkZXIgYW5kIGZvb3RlciBwbGFjZW1lbnRzIG9mIHRoZSBkaXNjbG9zdXJlLlxuLnN1cGVyLXNpZGViYXItc2V0dGluZ3MtZHJvcGRvd24gLmdsLW5hdi1pdGVtLnNlbGVjdGVkOjpiZWZvcmUge1xuICBAYXBwbHkgZ2wtaGlkZGVuO1xufVxuXG4uY3VzdG9tLWdyYWRpZW50LXByb2dyZXNzIC5nbC1wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgI2ZmYjE3NyAwJSwgIzkzNmZmZiAxMDAlKTtcbn1cblxuQG1lZGlhIChwcmVmZXJzLXJlZHVjZWQtbW90aW9uOiBuby1wcmVmZXJlbmNlKSB7XG4gIC5zdXBlci1zaWRlYmFyLWFuaW1hdGFibGUge1xuICAgIC5uYXYtaXRlbS1saW5rLWxhYmVsLFxuICAgIC5tZW51LXNlY3Rpb24tYnV0dG9uLWxhYmVsIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4xNXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGdsLWVhc2luZy1vdXQtY3ViaWM7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2xhdGU7XG5cbiAgICAgIEBzdGFydGluZy1zdHlsZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zbGF0ZTogLTMwJSAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zdXBlci1zaWRlYmFyLWNvbnRleHQtaGVhZGVyIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4xNXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGdsLWVhc2luZy1vdXQtY3ViaWM7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5LCB0cmFuc2xhdGU7XG5cbiAgICAgIEBzdGFydGluZy1zdHlsZSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zbGF0ZTogMCAtMzAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXYtaXRlbS1saW5rLWJhZGdlIHtcbiAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246IC4xNXM7XG4gICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJGdsLWVhc2luZy1vdXQtY3ViaWM7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuXG4gICAgICBAc3RhcnRpbmctc3R5bGUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZmVhdHVyZS1saWJyYXJ5LXNoaW1tZXIge1xuICAtLXN1cGVyLXNpZGViYXItc2hpbW1lci1iYXNlLWNvbG9yOiBoc2xhKGZyb20gdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApIGggcyBsIC8gMzIlKTtcbiAgLS1zdXBlci1zaWRlYmFyLXNoaW1tZXItcGVhay1jb2xvcjogaHNsYShmcm9tIHZhcigtLWdsLWNvbG9yLWJsdWUtNTAwKSBoIHMgbCAvIDglKTtcbiAgLS1zdXBlci1zaWRlYmFyLXNoaW1tZXItYm9yZGVyLWNvbG9yOiBoc2xhKGZyb20gdmFyKC0tZ2wtY29sb3ItYmx1ZS01MDApIGggcyBsIC8gMjQlKTtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gUmFpc2UgdGhlIG5hdiBpdGVtJ3MgaWNvbiBhbmQgbGFiZWwgYWJvdmUgdGhlIG92ZXJsYXkgc28gdGhlIGNvbnRlbnQgc3RheXNcbiAgLy8gdmlzaWJsZSB3aGlsZSB0aGUgcHNldWRvLWVsZW1lbnQgaXMgZHJhd24gb24gdG9wIG9mIHRoZSBuYXYgaXRlbSdzIG93blxuICAvLyBiYWNrZ3JvdW5kLlxuICAuZ2wtbmF2LWl0ZW0tc2xvdCxcbiAgLmdsLW5hdi1pdGVtLWxhYmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIC8vIFN0YXRpYyBvdXRsaW5lLCBkcmF3biByZWdhcmRsZXNzIG9mIG1vdGlvbiBwcmVmZXJlbmNlIHNvIHVzZXJzIHdobyBwcmVmZXJcbiAgLy8gcmVkdWNlZCBtb3Rpb24gc3RpbGwgZ2V0IGEgbW90aW9uLWZyZWUgaGlnaGxpZ2h0IG9uIHRoZSBuYXYgaXRlbS4gSW5zZXRcbiAgLy8gYm94LXNoYWRvdyByZW5kZXJzIHRoZSBvdXRsaW5lIGluc2lkZSB0aGUgZWxlbWVudCdzIGVkZ2Ugc28gaXQgZG9lcyBub3QgYWRkXG4gIC8vIHRvIHRoZSBib3ggYW5kIHNoaWZ0IHRoZSBuYXYgaXRlbSdzIGxheW91dC5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaW5zZXQ6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogdmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1sZyk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgMnB4IHZhcigtLXN1cGVyLXNpZGViYXItc2hpbW1lci1ib3JkZXItY29sb3IpO1xuICB9XG5cbiAgLy8gT25seSB0aGUgYW5pbWF0ZWQgZ3JhZGllbnQgc3dlZXAgZGVwZW5kcyBvbiBtb3Rpb24gcHJlZmVyZW5jZS4gSXQgbGl2ZXMgb25cbiAgLy8gdGhlIHNhbWUgcHNldWRvLWVsZW1lbnQgc28gdGhlIHdob2xlIHRyZWF0bWVudCBjYW4gYmUgZmFkZWQgb3V0IGJ5XG4gIC8vIGFuaW1hdGluZyBgb3BhY2l0eWA7IGZhZGluZyB0aGUgZ3JhZGllbnQgZGlyZWN0bHkgaXMgbm90IHBvc3NpYmxlIGJlY2F1c2VcbiAgLy8gYGJhY2tncm91bmQtaW1hZ2VgIGlzIGEgZGlzY3JldGUgcHJvcGVydHkgYW5kIGNhbm5vdCBiZSBpbnRlcnBvbGF0ZWQuXG4gIEBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogbm8tcHJlZmVyZW5jZSkge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgIDkwZGVnLFxuICAgICAgICB2YXIoLS1zdXBlci1zaWRlYmFyLXNoaW1tZXItYmFzZS1jb2xvciksXG4gICAgICAgIHZhcigtLXN1cGVyLXNpZGViYXItc2hpbW1lci1wZWFrLWNvbG9yKSxcbiAgICAgICAgdmFyKC0tc3VwZXItc2lkZWJhci1zaGltbWVyLWJhc2UtY29sb3IpXG4gICAgICApO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyMDAlIDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA1MCUgMDtcbiAgICAgIC8vIFN3ZWVwIHRoZSBncmFkaWVudCBmb3Igc2V2ZXJhbCBpdGVyYXRpb25zLCB0aGVuIGZhZGUgdGhlIHdob2xlXG4gICAgICAvLyB0cmVhdG1lbnQgb3V0LiBgZm9yd2FyZHNgIGhvbGRzIHRoZSBmaW5hbCAodHJhbnNwYXJlbnQpIGZyYW1lIHNvIHRoZVxuICAgICAgLy8gbmF2IGl0ZW0gcmV2ZXJ0cyB0byBpdHMgZGVmYXVsdCB0ZXJ0aWFyeSBzdHlsaW5nIG9uY2UgY29tcGxldGUuXG4gICAgICBhbmltYXRpb246XG4gICAgICAgIHN1cGVyLXNpZGViYXItc2hpbW1lciAycyBsaW5lYXIgNCxcbiAgICAgICAgc3VwZXItc2lkZWJhci1zaGltbWVyLWZhZGUtb3V0IDFzIGVhc2Utb3V0IDhzIGZvcndhcmRzO1xuICAgIH1cbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHN1cGVyLXNpZGViYXItc2hpbW1lciB7XG4gIGZyb20ge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDIwMCUgMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjAwJSAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3VwZXItc2lkZWJhci1zaGltbWVyLWZhZGUtb3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG4iLCIuc3VwZXItdG9wYmFyIHtcbiAgQGFwcGx5IGdsLXB4LTM7XG4gIEBhcHBseSBsZzpnbC1wbC00OyAvLyB2aXN1YWxseSBhbGlnbnMgYXBwIGxvZ28gd2l0aCBzaWRlYmFyIGljb25zXG5cbiAgaGVpZ2h0OiB2YXIoLS10b3AtYmFyLWhlaWdodCk7XG5cbiAgLy8gUGxhY2Vob2xkZXIgc3R5bGVzXG4gIC50b3BiYXItc2VhcmNoLWJ1dHRvbi1wbGFjZWhvbGRlciB7XG4gICAgZm9udC13ZWlnaHQ6IDMyMDtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgfVxuXG4gIC8vIFNlYXJjaCBidXR0b25cbiAgLnRvcGJhci1zZWFyY2gtYnV0dG9uIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGUgI3shaW1wb3J0YW50fTtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWFscGhhLWRhcmstMjQgI3shaW1wb3J0YW50fTtcblxuICAgIGtiZCB7XG4gICAgICBAYXBwbHkgZ2wtYm9yZGVyLXN0cm9uZztcbiAgICAgIEBhcHBseSBnbC1mb250LXNlbWlib2xkO1xuICAgICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICAgICAgQGFwcGx5IGdsLXNoYWRvdy1ub25lO1xuICAgICAgQGFwcGx5IGRhcms6Z2wtYm9yZGVyLXRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC50b3BiYXItc2VhcmNoLWJ1dHRvbjpub3QoOmhvdmVyKTpub3QoOmZvY3VzLXZpc2libGUpOm5vdCg6YWN0aXZlKSB7XG4gICAgQGFwcGx5IGRhcms6Z2wtYmctYWxwaGEtbGlnaHQtOCAjeyFpbXBvcnRhbnR9O1xuICAgIEBhcHBseSBkYXJrOmdsLWJvcmRlci1hbHBoYS1saWdodC0xNiAjeyFpbXBvcnRhbnR9O1xuICB9XG5cbiAgLy8gRnJlZSB0cmlhbCBidXR0b25cbiAgLmdsLWJ1dHRvbi50b3BiYXItc2lnbnVwLWJ1dHRvbiB7XG4gICAgQGFwcGx5IGdsLWJnLW5ldXRyYWwtODAwO1xuICAgIEBhcHBseSBnbC1ib3JkZXItbmV1dHJhbC04MDA7XG4gICAgQGFwcGx5IGRhcms6Z2wtYmctbmV1dHJhbC0xMDA7XG4gICAgQGFwcGx5IGRhcms6Z2wtYm9yZGVyLW5ldXRyYWwtMTAwO1xuICB9XG5cbiAgLy8gT3JnYW5pemF0aW9uIHN3aXRjaGVyIGJ1dHRvblxuICAub3JnYW5pemF0aW9uLXN3aXRjaGVyLWJ1dHRvbiAuZ2wtYnV0dG9uLXRleHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBnYXA6IHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMik7XG4gIH1cbn1cbiIsIi50YWJsZS1ob2xkZXIge1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG50YWJsZSB7XG4gICYudGFibGUge1xuICAgIC50aGVhZC13aGl0ZSB7XG4gICAgICB0aCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWQgJjpub3QoLmNvZGUpLFxuICAmLnRhYmxlOm5vdCguZ2wtdGFibGUpIHtcbiAgICAuZHJvcGRvd24tbWVudSBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG5cbiAgICAuc3VjY2VzcyxcbiAgICAud2FybmluZyxcbiAgICAuZGFuZ2VyLFxuICAgIC5pbmZvIHtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG5cbiAgICAgIGE6bm90KC5idG4pIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdHIge1xuICAgICAgdGQsXG4gICAgICB0aCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggJGdsLXBhZGRpbmc7XG4gICAgICAgIEBhcHBseSBnbC1sZWFkaW5nLTIwO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgdGhlYWQgdHIge1xuICAgICAgdGgge1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICAgICAgJi53aWRlIHtcbiAgICAgICAgICB3aWR0aDogNTUlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRoZWFkLXdoaXRlIHtcbiAgICAgIHRoIHtcbiAgICAgICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udG9wLWFyZWEgKyAuY29udGVudC1saXN0IHtcbiAgdGgge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cbn1cblxuLmdsLXRhYmxlLW5vLXRvcC1ib3JkZXIgdGgge1xuICBib3JkZXItdG9wOiAwO1xufVxuXG4vLyBJZiBhIHVzZXIgbWFrZXMgYSB0YWJsZSB0aGF0IG9ubHkgdXNlcyB0aGUgdGhlYWQsIHRoZW5cbi8vIGxldCdzIG1ha2Ugc3VyZSBpdCBoYXMgYSBib3R0b20gYm9yZGVyLlxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIG1hcmtkb3duIHRhYmxlc1xuLm1kIHRhYmxlOm5vdCg6aGFzKHRib2R5KSkgdGhlYWQgdHIge1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG59XG4iLCIuZ2l0bGFiLXRhYnMge1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICBsaSB7XG4gICAgd2lkdGg6IDUwJTtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBAYXBwbHkgZ2wtYm9yZGVyLXI7XG4gICAgfVxuXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbi5naXRsYWItdGFiLWNvbnRlbnQge1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBib3JkZXItdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAkZ2wtcGFkZGluZztcblxuICAudGFiLXBhbmUge1xuICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuICB9XG59XG4iLCIvKipcbiAqIEFwcGx5IE1hcmt1cCAoTWFya2Rvd24vQXNjaWlEb2MpIHR5cG9ncmFwaHlcbiAqXG4gKi9cbi5tZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIFtkaXI9J2F1dG8nXSB7XG4gICAgdGV4dC1hbGlnbjogaW5pdGlhbDtcbiAgfVxuXG4gICo6Zmlyc3QtY2hpbGQge1xuICAgIEBhcHBseSBnbC1tdC0wO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgQGFwcGx5IGdsLW1iLTA7XG4gIH1cblxuICBwIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICAgIEBhcHBseSBnbC1tLTA7XG4gICAgQGFwcGx5IGdsLW1iLTU7XG5cbiAgICA+IGNvZGUge1xuICAgICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgICBAYXBwbHkgZ2wtYnJlYWstd29yZHM7XG4gICAgICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1icmVhay1zcGFjZXM7XG4gICAgfVxuICB9XG5cbiAgLm1lZGlhLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBAYXBwbHkgZ2wtbWItMjtcblxuICAgIHZpZGVvIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAmLmlmcmFtZS1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIGltZ1t3aWR0aF1baGVpZ2h0XSB7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICBvYmplY3QtcG9zaXRpb246IHRvcDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICBpbWcubGF6eSB7XG4gICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgICBAYXBwbHkgZ2wtYmctZGlzYWJsZWQ7XG4gIH1cblxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgaW1nLmpzLWxhenktbG9hZGVkLFxuICBpbWcuZW1vamkge1xuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGdpdGxhYi9uby1qcy1jbGFzcyAqL1xuICAgIG1pbi13aWR0aDogaW5oZXJpdDtcbiAgICBtaW4taGVpZ2h0OiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIH1cblxuICBpbWcubWQtaW1nLWNoZWNrZXJib2FyZCB7XG4gICAgQGluY2x1ZGUgY2hlY2tlcmJvYXJkLWJnO1xuICB9XG5cbiAgZGV0YWlscyB7XG4gICAgQGFwcGx5IGdsLW1iLTU7XG5cbiAgICA+ICo6bm90KHN1bW1hcnkpIHtcbiAgICAgIEBhcHBseSBnbC1tbC01O1xuICAgIH1cblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byBhIHNwZWNpZmljIGRldGFpbHMgZWxlbWVudFxuICAgICY6bm90KDpoYXMoc3VtbWFyeSkpOm5vdChbb3Blbl0pIHtcbiAgICAgIEBhcHBseSBnbC1mb250LWJvbGQ7XG4gICAgfVxuICB9XG5cbiAgZGV0YWlsc1tvcGVuXSBzdW1tYXJ5IHtcbiAgICBAYXBwbHkgZ2wtbWItNTtcbiAgfVxuXG4gIGRldGFpbHMgc3VtbWFyeSB7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgfVxuXG4gIHN1bW1hcnkgPiAqIHtcbiAgICBAYXBwbHkgZ2wtaW5saW5lLWJsb2NrO1xuICAgIEBhcHBseSBnbC1tYi0wO1xuICB9XG5cbiAgLy8gbWFrZSBkZWZhdWx0IHBhcmFncmFwaCBvZiBzdW1tYXJ5IHRleHQgYmVoYXZlIG5pY2VseSB3aXRoIHRoZSBzdW1tYXJ5IG1hcmtlclxuICBzdW1tYXJ5ID4gcCwgc3VtbWFyeSA+IC5tYXJrZG93bi1jb2RlLWJsb2NrIHtcbiAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDFyZW0pO1xuICB9XG5cbiAgLy8gU2luZ2xlIGNvZGUgbGluZXMgc2hvdWxkIHdyYXBcbiAgY29kZSB7XG4gICAgQGFwcGx5IGdsLWZvbnQtbW9ub3NwYWNlO1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICAvLyBTYWZhcmlcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgb3ZlcmZsb3ctd3JhcDogYnJlYWstd29yZDtcbiAgICB3b3JkLWJyZWFrOiBrZWVwLWFsbDtcbiAgfVxuXG4gIG1hcmsge1xuICAgIEBpbmNsdWRlIHN0ci1oaWdobGlnaHRlZDtcbiAgfVxuXG4gIC8vIHRoZSB6LWluZGV4IG9mIHRoZSBtYXJrIGlzIHNldCB0byAtMSwgc28gaXQncyBiZWxvdyB0aGUgdGFibGUgY2VsbHNcbiAgLy8gdW5sZXNzIHRoZXkgaGF2ZSB0aGVpciBvd24gc3RhY2tpbmcgY29udGV4dFxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gdGFibGUgY2VsbHMgd2l0aCBtYXJrIGNvbnRlbnRcbiAgdGQ6aGFzKG1hcmspLCB0aDpoYXMobWFyaykge1xuICAgIGlzb2xhdGlvbjogaXNvbGF0ZTtcbiAgfVxuXG4gIC8vIEZpeGVkIGhlYWRpbmdzIGFyZSBkZWZhdWx0IGZvciBtYXJrZG93blxuICBoMSB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctMS1maXhlZDtcbiAgICBAYXBwbHkgZ2wtbXQtNztcbiAgfVxuXG4gIGgyOm5vdCg6d2hlcmUoLmNydWQtaGVhZGVyKSBoMikge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTItZml4ZWQ7XG4gICAgQGFwcGx5IGdsLW10LTY7XG4gIH1cblxuICBoMyB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctMy1maXhlZDtcbiAgICBAYXBwbHkgZ2wtbXQtNjtcbiAgfVxuXG4gIGg0IHtcbiAgICBAYXBwbHkgZ2wtaGVhZGluZy00LWZpeGVkO1xuICAgIEBhcHBseSBnbC1tdC01O1xuICB9XG5cbiAgaDUge1xuICAgIEBhcHBseSBnbC1oZWFkaW5nLTUtZml4ZWQ7XG4gICAgQGFwcGx5IGdsLW10LTU7XG4gIH1cblxuICBoNiB7XG4gICAgQGFwcGx5IGdsLWhlYWRpbmctNi1maXhlZDtcbiAgICBAYXBwbHkgZ2wtbXQtNTtcbiAgfVxuXG4gIGJsb2NrcXVvdGUsXG4gIC5ibG9ja3F1b3RlIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zaXplLXJlc2V0O1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgICBAYXBwbHkgZ2wtcHktMztcbiAgICBAYXBwbHkgZ2wtcGwtNTtcbiAgICBAYXBwbHkgZ2wtbXktMztcbiAgICBAYXBwbHkgZ2wtbXgtMDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWw7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1sLTQ7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1zdHJvbmc7XG5cbiAgICAmOmRpcihydGwpIHtcbiAgICAgIEBhcHBseSBnbC1ib3JkZXItbC0wO1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1yO1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1yLTQ7XG4gICAgfVxuXG4gICAgcCB7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1pbmhlcml0O1xuICAgICAgQGFwcGx5IGdsLWxlYWRpbmctWzEuNV07XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBlbnN1cmUgcXVvdGVkIGxpc3RzIGFyZSBzdHlsZWQgdGhlIHNhbWUgYXMgbm9ybWFsIGxpc3RzXG4gICAgPiB1bCB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdXJlIGEgbGlzdCB0aGF0IGlzIHRoZSBsYXN0IGNoaWxkIG9mIGEgYmxvY2txdW90ZSBkb2Vzbid0IGhhdmUgYW4gdW5uZWNlc3NhcnkgYm90dG9tIG1hcmdpblxuICAgID4gdWwsID4gb2wge1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgQGFwcGx5IGdsLW1iLTA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaHIge1xuICAgIEBhcHBseSBnbC1ib3JkZXItZGVmYXVsdDtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgfVxuXG4gIC8vIEEgc2hhZG93IGlzIG9ubHkgc2hvd24gb24gdGhlIHJpZ2h0IHNpZGUgd2hpbGUgbW9yZSBjb250ZW50IGV4aXN0cyBpblxuICAvLyB0aGF0IGRpcmVjdGlvbi4gTm8gc2hhZG93IG9uIHRoZSBsZWZ0OiBvbmNlIHRoZSB1c2VyIGhhcyBzY3JvbGxlZCwgdGhleVxuICAvLyBhbHJlYWR5IGtub3cgY29udGVudCBleGlzdHMgaW4gdGhlIGRpcmVjdGlvbiB0aGV5IGNhbWUgZnJvbS4gVGhpc1xuICAvLyBtYXRjaGVzIHRoZSB0cmVhdG1lbnQgb2Ygc3RpY2t5IGhlYWRlciB0YWJsZXMgKC5nbC10YWJsZS1zaGFkb3ctb3ZlcmxheSkuXG4gIEBrZXlmcmFtZXMgZ2wtdGFibGUtc2hhZG93IHtcbiAgICAwJSxcbiAgICA5NSUge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgLTE2cHggMCAxNHB4IC0xNHB4IHZhcigtLWdsLXNoYWRvdy1jb2xvci1kZWZhdWx0KTtcbiAgICB9XG5cbiAgICAxMDAlIHtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMCAwIDAgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkteCB7XG4gICAgMCUsXG4gICAgOTUlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gIEBrZXlmcmFtZXMgZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkteSB7XG4gICAgMCUsXG4gICAgOTUlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIE92ZXJsYXlzIHNjcm9sbCBzaGFkb3dzIG9uIHRoZSByaWdodCBhbmQgYm90dG9tIGVkZ2VzIG9mIHNjcm9sbGFibGVcbiAgLy8gdGFibGVzIHdoaWxlIHRoZXJlIGlzIG1vcmUgY29udGVudCB0byBzY3JvbGwgdG8gaW4gdGhhdCBkaXJlY3Rpb24uXG4gIC8vIFRoZSBzaGFkb3dzIGFyZSBwc2V1ZG8tZWxlbWVudHMgb24gdGhpcyBub24tc2Nyb2xsaW5nIHdyYXBwZXIgc28gdGhleVxuICAvLyBwYWludCBvbiB0b3Agb2YgdGhlIHN0aWNreSB0YWJsZSBoZWFkZXIuIFRoZWlyIG9wYWNpdHkgaXMgZHJpdmVuIGJ5XG4gIC8vIG5hbWVkIHNjcm9sbCB0aW1lbGluZXMgb24gdGhlIGlubmVyIHNjcm9sbCBjb250YWluZXIuIEJyb3dzZXJzIHdpdGhvdXRcbiAgLy8gc2Nyb2xsIHRpbWVsaW5lIHN1cHBvcnQgKEZpcmVmb3gpIG5ldmVyIHNob3cgdGhlIHNoYWRvd3MuXG4gIC5nbC10YWJsZS1zaGFkb3ctb3ZlcmxheSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLy8gVGhlIGNvbnRhaW5lciBkcmF3cyB0aGUgdGFibGUncyBvdXRlciBmcmFtZTsgdGhlIG91dGVybW9zdCBjZWxsXG4gICAgLy8gYm9yZGVycyBhcmUgcmVtb3ZlZCBiZWxvdyB0byBhdm9pZCBkb3VibGUgYm9yZGVycy5cbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRpbWVsaW5lLXNjb3BlOiAtLWdsLXRhYmxlLXNjcm9sbC14LCAtLWdsLXRhYmxlLXNjcm9sbC15O1xuXG4gICAgdGFibGU6bm90KC5jb2RlKSB7XG4gICAgICAmOmRpcihsdHIpIHtcbiAgICAgICAgPiB0aGVhZCA+IHRyID4gdGgsXG4gICAgICAgID4gdGJvZHkgPiB0ciA+IHRkLFxuICAgICAgICA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmRpcihydGwpIHtcbiAgICAgICAgPiB0aGVhZCA+IHRyID4gdGgsXG4gICAgICAgID4gdGJvZHkgPiB0ciA+IHRkLFxuICAgICAgICA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IHRoZWFkOmZpcnN0LW9mLXR5cGUgPiB0cjpmaXJzdC1jaGlsZCA+IHRoIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgIH1cblxuICAgICAgPiB0Ym9keSA+IHRyOmxhc3QtY2hpbGQgPiB0ZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgLy8gU2Nyb2xsYmFyIHdpZHRoIGNhbiB2YXJ5IGRlcGVuZGluZyBvbiB0aGUgT1Mgc2V0dGluZ3MgZm9yIHZpc2libGUgc2Nyb2xsYmFyLlxuICAgICAgLy8gVGhpcyBtZWFucyB0aGF0IHdlIGNhbm5vdCB1c2UgLS1zY3JvbGxiYXItd2lkdGggdG8gcG9zaXRpb24gdGhlIHNoYWRvdywgYXMgaXQgd2lsbCBiZSBkaWZmZXJlbnQgZm9yIGVhY2ggdXNlci5cbiAgICAgIGluc2V0LWJsb2NrOiAwIDA7XG4gICAgICBpbnNldC1pbmxpbmUtZW5kOiAwO1xuICAgICAgd2lkdGg6IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gbGVmdCwgdmFyKC0tZ2wtc2hhZG93LWNvbG9yLWRlZmF1bHQpLCB0cmFuc3BhcmVudCk7XG4gICAgICBhbmltYXRpb246IGdsLXRhYmxlLXNoYWRvdy1vdmVybGF5LXggJGdsLWVhc2luZy1vdXQtY3ViaWM7XG4gICAgICBhbmltYXRpb24tdGltZWxpbmU6IC0tZ2wtdGFibGUtc2Nyb2xsLXg7XG4gICAgfVxuXG4gICAgJjpkaXIocnRsKSB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIHRyYW5zcGFyZW50KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOjphZnRlciB7XG4gICAgICAvLyBTY3JvbGxiYXIgd2lkdGggY2FuIHZhcnkgZGVwZW5kaW5nIG9uIHRoZSBPUyBzZXR0aW5ncyBmb3IgdmlzaWJsZSBzY3JvbGxiYXIuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoYXQgd2UgY2Fubm90IHVzZSAtLXNjcm9sbGJhci13aWR0aCB0byBwb3NpdGlvbiB0aGUgc2hhZG93LCBhcyBpdCB3aWxsIGJlIGRpZmZlcmVudCBmb3IgZWFjaCB1c2VyLlxuICAgICAgaW5zZXQtaW5saW5lOiAwIDA7XG4gICAgICBpbnNldC1ibG9jay1lbmQ6IDA7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB2YXIoLS1nbC1zaGFkb3ctY29sb3ItZGVmYXVsdCksIHRyYW5zcGFyZW50KTtcbiAgICAgIGFuaW1hdGlvbjogZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkteSAkZ2wtZWFzaW5nLW91dC1jdWJpYztcbiAgICAgIGFuaW1hdGlvbi10aW1lbGluZTogLS1nbC10YWJsZS1zY3JvbGwteTtcbiAgICB9XG5cbiAgICA+IFtkYXRhLXN0aWNreS1oZWFkZXJdIHtcbiAgICAgIHNjcm9sbC10aW1lbGluZTogLS1nbC10YWJsZS1zY3JvbGwteCBpbmxpbmUsIC0tZ2wtdGFibGUtc2Nyb2xsLXkgYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gRml4IGJvcmRlciBibGVlZC4gVGhlIEdMUUwgdGFibGUgY2FuIHdyYXAgYC5nbC10YWJsZS1zaGFkb3dgIHdpdGggaXRzIGRlc2NyaXB0aW9uLCBzb1xuICAvLyBcImxvYWQgbW9yZVwiIG1heSBmb2xsb3cgdGhlIHdyYXBwZXIgaW5zdGVhZC5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGdsLXRhYmxlLXNoYWRvdyBlbGVtZW50XG4gIC5nbC10YWJsZS1zaGFkb3c6bm90KDpoYXMoKyAuZ2xxbC1sb2FkLW1vcmUpLCA6aGFzKCsgLmdscWwtbG9hZC1tb3JlKSA+ICopIHtcbiAgICBjbGlwLXBhdGg6IGluc2V0KDAgcm91bmQgMCAwIDFweCAxcHgpO1xuICB9XG5cbiAgLmdsLXRhYmxlLXNoYWRvdyB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgYW5pbWF0aW9uOiBnbC10YWJsZS1zaGFkb3cgJGdsLWVhc2luZy1vdXQtY3ViaWM7XG4gICAgYW5pbWF0aW9uLXRpbWVsaW5lOiBzY3JvbGwoc2VsZiBpbmxpbmUpO1xuICAgIC8vIE5lZWRzIHRvIHN0YXkgd2hpdGUgYmVjYXVzZSB3ZSB1c2UgbWl4LWJsZW5kLW1vZGVcbiAgICAvLyB0byBtYWtlIGl0IHdvcmsgaW4gYm90aCBsaWdodCBhbmQgZGFya21vZGUuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0wKTtcblxuICAgID4gdGFibGU6bm90KC5jb2RlKSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIG92ZXJmbG93LXg6IGluaXRpYWw7XG4gICAgICBtaXgtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gICAgICBtaW4td2lkdGg6IHN0cmV0Y2g7XG4gICAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgdmFsdWUtbm8tdmVuZG9yLXByZWZpeCAqL1xuICAgICAgbWluLXdpZHRoOiAtd2Via2l0LWZpbGwtYXZhaWxhYmxlO1xuICAgICAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIHZhbHVlLW5vLXZlbmRvci1wcmVmaXggKi9cbiAgICAgIG1pbi13aWR0aDogLW1vei1hdmFpbGFibGU7XG4gICAgfVxuICB9XG5cbiAgdGFibGU6bm90KC5jb2RlKSB7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICBib3JkZXI6IDA7XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICAmOm5vdCguZ2wtdGFibGUtc2hhZG93ID4gKiwgW2RhdGEtc3RpY2t5LWhlYWRlcl0gPiAqKSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMTZweCAwO1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICB9XG5cbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICBAYXBwbHkgZ2wtYm9yZGVyO1xuICAgIH1cblxuICAgIHRyIHtcbiAgICAgIHRoIHtcbiAgICAgICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICAgICAgfVxuXG4gICAgICB0ZFthbGlnbj1cInJpZ2h0XCJdIHtcbiAgICAgICAgZm9udC12YXJpYW50LW51bWVyaWM6IHRhYnVsYXItbnVtcztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmdyaWQtbm9uZSB7XG4gICAgICA+IHRoZWFkID4gdHIge1xuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgID4gdGJvZHkge1xuICAgICAgICA+IHRyID4gdGQge1xuICAgICAgICAgIGJvcmRlci13aWR0aDogMDtcblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDFweDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiB0cjpsYXN0LWNoaWxkID4gdGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuZ3JpZC1yb3dzIHtcbiAgICAgID4gdGhlYWQgPiB0ciA+IHRoLFxuICAgICAgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgfVxuXG4gICAgICA+IHRoZWFkID4gdHIge1xuICAgICAgICA+IHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgPiB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IHRib2R5ID4gdHIge1xuICAgICAgICA+IHRkIHtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgPiB0ZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuZ3JpZC1jb2xzIHtcbiAgICAgID4gdGhlYWQgPiB0ciA+IHRoIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIH1cblxuICAgICAgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgfVxuXG4gICAgICA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZnJhbWUtc2lkZXMge1xuICAgICAgPiB0aGVhZCA+IHRyID4gdGgge1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgfVxuXG4gICAgICA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZyYW1lLXRvcGJvdCxcbiAgICAmLmZyYW1lLWVuZHMge1xuICAgICAgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgfVxuXG4gICAgICA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmZyYW1lLW5vbmUge1xuICAgICAgPiB0aGVhZCA+IHRyID4gdGgge1xuICAgICAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgICAgfVxuXG4gICAgICA+IHRib2R5ID4gdHI6bGFzdC1jaGlsZCA+IHRkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICAgIH1cblxuICAgICAgPiB0aGVhZCA+IHRyID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICA+IHRib2R5ID4gdHIgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgICAgfVxuXG4gICAgICA+IHRoZWFkID4gdHIgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgPiB0Ym9keSA+IHRyID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0cmlwZXMtYWxsIHRyLFxuICAgICYuc3RyaXBlcy1vZGQgdHI6bnRoLW9mLXR5cGUob2RkKSxcbiAgICAmLnN0cmlwZXMtZXZlbiB0cjpudGgtb2YtdHlwZShldmVuKSxcbiAgICAmLnN0cmlwZXMtaG92ZXIgdHI6aG92ZXIge1xuICAgICAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgICB9XG4gIH1cblxuICBbZGF0YS1zdGlja3ktaGVhZGVyXSA+IHRhYmxlOm5vdCguY29kZSkgPiB0aGVhZDpmaXJzdC1vZi10eXBlID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCxcbiAgW2RhdGEtc3RpY2t5LWhlYWRlcl0gPiB0YWJsZTpub3QoLmNvZGUpID4gdGJvZHk6Zmlyc3Qtb2YtdHlwZSA+IHRyOmZpcnN0LWNoaWxkID4gdGgge1xuICAgIEBhcHBseSBnbC1zdGlja3k7XG4gICAgQGFwcGx5IGdsLXRvcC0wO1xuICAgIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICAgIEBhcHBseSBnbC16LTE7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIC8vIFRvcCBlZGdlIGlzIHByb3ZpZGVkIGJ5IHRoZSAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXkgY29udGFpbmVyIGJvcmRlci5cbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggMCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIH1cblxuICB0YWJsZTpkaXIocnRsKSB0aCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cblxuICBwcmUge1xuICAgIEBhcHBseSBnbC1tYi01O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjZlbTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG5cbiAgICAvLyBNdWx0aS1saW5lIGNvZGUgYmxvY2tzIHNob3VsZCBzY3JvbGwgaG9yaXpvbnRhbGx5XG4gICAgY29kZSB7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgICAgLy8gU2FmYXJpXG4gICAgICB3b3JkLXdyYXA6IG5vcm1hbDtcbiAgICAgIG92ZXJmbG93LXdyYXA6IG5vcm1hbDtcbiAgICB9XG5cbiAgICAmLnBsYWluLXJlYWRtZSB7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cblxuICBkZCB7XG4gICAgbWFyZ2luLWxlZnQ6ICRnbC1wYWRkaW5nO1xuICB9XG5cbiAgdWwsXG4gIG9sIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBhcHBseSBnbC1tLTA7XG4gICAgQGFwcGx5IGdsLW1iLTU7XG5cbiAgICAvLyBMaXN0cyBlbWJlZGRlZCBpbiBvdGhlciBsaXN0cyBjYW4gYmUgXCJsb29zZVwiIG9yIFwidGlnaHRcIlxuICAgIC8vIFJlbW92ZSBib3R0b20gbWFyZ2luIGZvciBhbGwgbGlzdHMgKGRlZmF1bHQgZm9yIHRpZ2h0IGxpc3RzKVxuICAgIHVsLFxuICAgIG9sIHtcbiAgICAgIEBhcHBseSBnbC1tYi0wO1xuICAgIH1cblxuICAgIC8vIExvb3NlIGxpc3RzIG5lZWQgYm90dG9tIG1hcmdpbiBhZGRlZCBiYWNrXG4gICAgcCB+IG9sLFxuICAgIHAgfiB1bCB7XG4gICAgICBAYXBwbHkgZ2wtbWItNTtcbiAgICB9XG4gIH1cblxuICB1bDpkaXIocnRsKSxcbiAgb2w6ZGlyKHJ0bCkge1xuICAgIG1hcmdpbjogM3B4IDI4cHggM3B4IDAgIWltcG9ydGFudDtcbiAgfVxuXG4gID4gdWwge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogZGlzYztcblxuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xuXG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogc3F1YXJlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVsLmNoZWNrbGlzdCxcbiAgdWwubm9uZSxcbiAgb2wubm9uZSxcbiAgdWwubm8tYnVsbGV0LFxuICBvbC5uby1idWxsZXQsXG4gIG9sLnVubnVtYmVyZWQsXG4gIHVsLnVuc3R5bGVkLFxuICBvbC51bnN0eWxlZCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgbGkge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjZlbTtcbiAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICBwYWRkaW5nLWxlZnQ6IDNweDtcblxuICAgIC8qIE5vcm1hbGl6ZSB0aGUgYnVsbGV0IHBvc2l0aW9uIG9uIHdlYmtpdC4gKi9cbiAgICAvKiBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWVkaWEtZmVhdHVyZS1uYW1lLW5vLXZlbmRvci1wcmVmaXggKi9cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAwKSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjhweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICB1bC50YXNrLWxpc3QsXG4gIG9sLnRhc2stbGlzdCB7XG4gICAgPiBsaS50YXNrLWxpc3QtaXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtaW4taGVpZ2h0OiAyMnB4O1xuICAgICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDMycHg7XG5cbiAgICAgID4gcCA+IGlucHV0LnRhc2stbGlzdC1pdGVtLWNoZWNrYm94LFxuICAgICAgPiBpbnB1dC50YXNrLWxpc3QtaXRlbS1jaGVja2JveCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQtaW5saW5lLXN0YXJ0OiAkZ2wtcGFkZGluZy04O1xuICAgICAgICBpbnNldC1ibG9jay1zdGFydDogM3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHVsLnRhc2stbGlzdCB7XG4gICAgPiBsaS50YXNrLWxpc3QtaXRlbSB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgdWxbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbiAgdWwudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveCxcbiAgb2xbZGF0YS10eXBlPXRhc2tMaXN0XSBpbnB1dFt0eXBlPWNoZWNrYm94XSxcbiAgb2wudGFzay1saXN0IC50YXNrLWxpc3QtaXRlbS1jaGVja2JveCB7XG4gICAgYWxsOiB1bnNldDtcbiAgICBAYXBwbHkgZ2wtYmxvY2s7XG4gICAgQGFwcGx5IGdsLXctNTtcbiAgICBAYXBwbHkgZ2wtaC01O1xuICAgIEBhcHBseSBnbC1jdXJzb3ItcG9pbnRlcjtcbiAgICBAYXBwbHkgZ2wtYm94LWJvcmRlcjtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xuICAgIEBhcHBseSBmb2N1cy12aXNpYmxlOmdsLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcblxuICAgIC8vIEVuc3VyZSBzaXplIG9mIHRoZSB0YXJnZXQgZm9yIHBvaW50ZXIgaW5wdXRzIGlzIGF0IGxlYXN0IDI0IHBpeGVscyB0byBzYXRpc2Z5IFdDQUcgMi41LjguXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgbWFyZ2luLXRvcDogY2FsYygtI3skZ2wtc3BhY2luZy1zY2FsZS0yfSAtIDFweCk7XG4gICAgICBtYXJnaW4tbGVmdDogY2FsYygtI3skZ2wtc3BhY2luZy1zY2FsZS0yfSAtIDFweCk7XG4gICAgICBAYXBwbHkgZ2wtYWJzb2x1dGU7XG4gICAgICBAYXBwbHkgZ2wtei0xO1xuICAgICAgQGFwcGx5IGdsLXctNjtcbiAgICAgIEBhcHBseSBnbC1oLTY7XG4gICAgICBAYXBwbHkgZ2wtYmctdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpub3QoOmRpc2FibGVkKTpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWhvdmVyKTtcbiAgICB9XG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOmZvY3VzLXZpc2libGUge1xuICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1mb2N1cyk7XG4gICAgfVxuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG5cbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgICAgICAgQGFwcGx5IGdsLXotMjtcbiAgICAgICAgQGFwcGx5IGdsLXctNTtcbiAgICAgICAgQGFwcGx5IGdsLWgtNTtcbiAgICAgICAgQGFwcGx5IGdsLW10LVstMXB4XTtcbiAgICAgICAgQGFwcGx5IGdsLW1sLVstMXB4XTtcbiAgICAgICAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgICAgICAgbWFzazogdXJsKFwiI3skZ2wtaWNvbi1jaGVja31cIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtaW5kaWNhdG9yLWNvbG9yLXNlbGVjdGVkKTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhIChmb3JjZWQtY29sb3JzOiBhY3RpdmUpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogTGlua1RleHQ7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgc2NhbGUtdW5saW1pdGVkL2RlY2xhcmF0aW9uLXN0cmljdC12YWx1ZVxuICAgICAgICBib3JkZXItY29sb3I6IExpbmtUZXh0OyAvLyBzdHlsZWxpbnQtZGlzYWJsZS1saW5lIHNjYWxlLXVubGltaXRlZC9kZWNsYXJhdGlvbi1zdHJpY3QtdmFsdWVcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCg6ZGlzYWJsZWQpOmNoZWNrZWQ6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1iYWNrZ3JvdW5kLWNvbG9yLXNlbGVjdGVkLWhvdmVyKTtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtaG92ZXIpO1xuICAgIH1cblxuICAgICY6bm90KDpkaXNhYmxlZCk6Y2hlY2tlZDpmb2N1cy12aXNpYmxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1mb2N1cyk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWZvY3VzKTtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kaXNhYmxlZCk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRpc2FibGVkKTtcbiAgICAgIEBhcHBseSBnbC1jdXJzb3Itbm90LWFsbG93ZWQ7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAmOmRpc2FibGVkOmNoZWNrZWQsXG4gICAgJltkYXRhLWluZGV0ZXJtaW5hdGVdOmRpc2FibGVkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1zZWxlY3RlZC1kaXNhYmxlZCk7XG4gICAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRpc2FibGVkKTtcblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb250cm9sLWluZGljYXRvci1jb2xvci1kaXNhYmxlZCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJltkYXRhLWluZGV0ZXJtaW5hdGVdOmRpc2FibGVkIHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgICAgICAgQGFwcGx5IGdsLXotMjtcbiAgICAgICAgQGFwcGx5IGdsLXctNTtcbiAgICAgICAgQGFwcGx5IGdsLWgtNTtcbiAgICAgICAgQGFwcGx5IGdsLW10LVstMXB4XTtcbiAgICAgICAgQGFwcGx5IGdsLW1sLVstMXB4XTtcbiAgICAgICAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgICAgICAgbWFzazogdXJsKFwiI3skZ2wtaWNvbi1pbmRldGVybWluYXRlfVwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtY29udHJvbC1pbmRpY2F0b3ItY29sb3ItZGlzYWJsZWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGxpLmluYXBwbGljYWJsZSB7XG4gICAgLy8gRm9yIGEgc2luZ2xlIGxpbmUgbGlzdCBpdGVtLCB0aGVyZSdzIG5vIDxwPiAodGlnaHQgbGlzdCk7IHRleHQgbm9kZXMgYXJlIHdyYXBwZWQgaW4gPHMgY2xhc3M9XCJpbmFwcGxpY2FibGVcIj4uXG4gICAgcy5pbmFwcGxpY2FibGUge1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyBTdHJpa2V0aHJvdWdoIGJsb2NrLWxldmVsIGl0ZW1zIGluIG5vbi10aWdodCBsaXN0cyBhcyBhIHdob2xlOyB3ZSBkb24ndCBkbyBzdWJsaXN0cy5cbiAgICA+IHAsXG4gICAgPiBkaXYge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAuZHJhZy1pY29uIHtcbiAgICAgIEBhcHBseSBnbC1maWxsLWljb24tZGVmYXVsdDtcbiAgICB9XG5cbiAgICAvLyBJZiBhbiBpbmFwcGxpY2FibGUgdGFzayBsaXN0IGl0ZW0gY29udGFpbnMgbGFiZWxzIG9yIDxrYmQ+cywgc3RyaWtlIHRoZW1cbiAgICAvLyBvdXQgYXMgd2VsbC5cbiAgICAuZ2wtbGFiZWwsIGtiZCB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbi1jb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1kaXNhYmxlZCk7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gICAgfVxuICB9XG5cbiAgYS5nZm0tZ29sbHVtLXdpa2ktcGFnZSB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IC0ycHg7XG5cbiAgICAgIEBpbmNsdWRlIGdsLWRhcmstaW52ZXJ0LWtlZXAtaHVlO1xuICAgICAgY29udGVudDogdXJsKCdzcHJpdGVfaWNvbnMvZG9jdW1lbnQuc3ZnJyk7XG4gICAgfVxuICB9XG5cbiAgYS53aXRoLWF0dGFjaG1lbnQtaWNvbixcbiAgYVtocmVmKj0nL3VwbG9hZHMvJ10sXG4gIGFbaHJlZio9J3N0b3JhZ2UuZ29vZ2xlYXBpcy5jb20vZ29vZ2xlLWNvZGUtYXR0YWNobWVudHMvJ10ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiAtMnB4O1xuXG4gICAgICBAaW5jbHVkZSBnbC1kYXJrLWludmVydC1rZWVwLWh1ZTtcbiAgICAgIGNvbnRlbnQ6IHVybCgnc3ByaXRlX2ljb25zL3BhcGVyY2xpcC5zdmcnKTtcbiAgICB9XG4gIH1cblxuICBhW2hyZWYqPScvd2lraXMvJ10sXG4gIGFbaHJlZio9Jy91cGxvYWRzLyddLFxuICBhW2hyZWYqPSdzdG9yYWdlLmdvb2dsZWFwaXMuY29tL2dvb2dsZS1jb2RlLWF0dGFjaG1lbnRzLyddIHtcbiAgICAmLm5vLWF0dGFjaG1lbnQtaWNvbiB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIExpbmsgdG8gY3VycmVudCBoZWFkZXIuICovXG4gIGgxLFxuICBoMixcbiAgaDMsXG4gIGg0LFxuICBoNSxcbiAgaDYge1xuICAgIGEuYW5jaG9yIHtcbiAgICAgICY6bm90KFthcmlhLWhpZGRlbj10cnVlXSkge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgQGFwcGx5IGdsLWlubGluZS1ibG9jaztcbiAgICAgICAgICBAYXBwbHkgZ2wtYmctY292ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgZ2wtZGFyay1pbnZlcnQta2VlcC1odWU7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2ljb25fYW5jaG9yLnN2ZycpO1xuICAgICAgICAgIGhlaWdodDogMC45ZW07XG4gICAgICAgICAgd2lkdGg6IDAuOWVtO1xuICAgICAgICAgIG1hcmdpbi1pbmxpbmUtc3RhcnQ6IDAuMmVtO1xuICAgICAgICAgIEBhcHBseSBnbC1pbnZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjppcyhbYXJpYS1oaWRkZW49dHJ1ZV0pIHtcbiAgICAgICAgJGFuY2hvci1vZmZzZXQ6IDIwcHg7XG5cbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTEgKiAkYW5jaG9yLW9mZnNldCk7XG4gICAgICAgIEBhcHBseSBnbC1uby11bmRlcmxpbmU7XG4gICAgICAgIEBhcHBseSBnbC1vdXRsaW5lLW5vbmU7XG4gICAgICAgIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6ICRhbmNob3Itb2Zmc2V0O1xuXG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBnbC1kYXJrLWludmVydC1rZWVwLWh1ZTtcbiAgICAgICAgICBjb250ZW50OiB1cmwoJ2ljb25fYW5jaG9yLnN2ZycpO1xuICAgICAgICAgIEBhcHBseSBnbC1pbnZpc2libGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyID4gYS5hbmNob3I6OmFmdGVyIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgPiBhLmFuY2hvcjpmb2N1cy12aXNpYmxlOjphZnRlciB7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgb3V0bGluZTogYXV0bztcbiAgICB9XG4gIH1cblxuICAuYmlnIHtcbiAgICBmb250LXNpemU6IGxhcmdlcjtcbiAgfVxuXG4gIGZpZ2NhcHRpb24sXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiBzbWFsbGVyO1xuICB9XG5cbiAgLnVuZGVybGluZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICAub3ZlcmxpbmUge1xuICAgIHRleHQtZGVjb3JhdGlvbjogb3ZlcmxpbmU7XG4gIH1cblxuICAubGluZS10aHJvdWdoIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgfVxuXG4gIC8vIEN1c3RvbSBGb250IEF3ZXNvbWUgc3R5bGVzIHRoYXQgcmVuZGVyIGVtb2ppcyBpbiBhc2NpaWRvY1xuICAuZmEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIH1cblxuICAuYWRtb25pdGlvbmJsb2NrIHRkLmljb24gW2NsYXNzXj0nZmEgaWNvbi0nXSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gIH1cblxuICAuYWRtb25pdGlvbmJsb2NrIHRkLmljb24gLmljb24td2FybmluZzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAn4pqgJztcbiAgfVxuXG4gIC5hZG1vbml0aW9uYmxvY2sgdGQuaWNvbiAuaWNvbi1pbXBvcnRhbnQ6OmJlZm9yZSB7XG4gICAgY29udGVudDogJ+Kdlyc7XG4gIH1cblxuICAuYWRtb25pdGlvbmJsb2NrIHRkLmljb24gLmljb24tdGlwOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICfwn5KhJztcbiAgfVxuXG4gIC5hZG1vbml0aW9uYmxvY2sgdGQuaWNvbiAuaWNvbi1ub3RlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICfwn5OMJztcbiAgfVxuXG4gIC5hZG1vbml0aW9uYmxvY2sgdGQuaWNvbiAuaWNvbi1jYXV0aW9uOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICfwn5SlJztcbiAgfVxuXG4gIC5hZG1vbml0aW9uYmxvY2ssIC5zaWRlYmFyYmxvY2ssIC5vcGVuYmxvY2ssIC5leGFtcGxlYmxvY2sge1xuICAgIG1hcmdpbjogJGdsLXBhZGRpbmcgMCAkZ2wtcGFkZGluZztcbiAgfVxuXG4gIC5zaWRlYmFyYmxvY2sge1xuICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgcGFkZGluZzogJGdsLXBhZGRpbmctMTIgJGdsLXBhZGRpbmctMjQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGFyZ2U7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAuZXhhbXBsZWJsb2NrID4gZGl2Om50aC1vZi10eXBlKDEpIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyO1xuICAgIGJvcmRlci13aWR0aDogJGdsLWJvcmRlci1zaXplLTM7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgICBwYWRkaW5nOiAkZ2wtcGFkZGluZy0xMiAkZ2wtcGFkZGluZy0yNDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5mYS1zcXVhcmUtbzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyNjEwJztcbiAgfVxuXG4gIC5mYS1jaGVjay1zcXVhcmUtbzo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnXFwyNjExJztcbiAgfVxuXG4gIC5hZG1vbml0aW9uYmxvY2sgdGQuaWNvbiB7XG4gICAgd2lkdGg6IDElO1xuICB9XG5cbiAgLmdsLWRyb3Bkb3duLWl0ZW0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxcmVtO1xuICB9XG5cbiAgLyogQXNjaWlEb2ModG9yKSBidWlsdC1pbiBhbGlnbm1lbnQgcm9sZXMgKi9cblxuICAudGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gIH1cblxuICAudGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBBc2NpaURvYyh0b3IpIHRhYmxlIG9mIGNvbnRlbnRzICovXG5cbiAgLnRvYyA+IGRpdiB7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgfVxuXG4gIEBpbmNsdWRlIGVtYWlsLWNvZGUtYmxvY2s7XG5cbiAgJi5tZC1jaGlsZC1jb250ZW50LXRleHQtc3VidGxlIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG5cbiAgICBwLFxuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIHRhYmxlOm5vdCguY29kZSkge1xuICAgICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICAgIH1cbiAgfVxuXG4gIC8qIFZlcnRpY2FsbHkgYWxpZ24gYmFkZ2VzIHdpdGggaWNvbnMgKi9cbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGdsLWJhZGdlIGVsZW1lbnQgKi9cbiAgLmdsLWJhZGdlOmhhcyg+IHN2Zykge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IC0zcHg7XG4gIH1cblxuICAvKiBDdXN0b20gY2xhc3NlcyB3ZSBleHBsaWNpdGx5IHN1cHBvcnQgKi9cbiAgLmdsZm0tZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAuZ2xmbS1mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmdsZm0tZmxvYXQtbm9uZSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLyoqXG4gKiBMaW5rc1xuICpcbiAqL1xuYTpmb2N1cy12aXNpYmxlIHtcbiAgQGluY2x1ZGUgZ2wtZm9jdXMoJG91dGxpbmU6IHRydWUsICRvdXRsaW5lLW9mZnNldDogJG91dGxpbmUtd2lkdGgpO1xufVxuXG4vKipcbiAqIEhlYWRlcnNcbiAqXG4gKi9cbmJvZHkge1xuICAtd2Via2l0LXRleHQtc2hhZG93OiAkYm9keS10ZXh0LXNoYWRvdyAwIDAgMXB4O1xufVxuXG4ucGFnZS10aXRsZSB7XG4gIG1hcmdpbjogJGdsLXNwYWNpbmctc2NhbGUtNCAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xuXG4gICYud2l0aC1idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICB9XG5cbn1cblxuLnBhZ2UtdGl0bGUtZW1wdHkge1xuICBtYXJnaW46IDEycHggMDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgZm9udC1zaXplOiAxLjI1ZW07XG4gIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbn1cblxuLmxpZ2h0LWhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbn1cblxuLyoqIENPREUgKiovXG5wcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJGdsLXBhZGRpbmctOCAkaW5wdXQtaG9yaXpvbnRhbC1wYWRkaW5nO1xuICBtYXJnaW46IDAgMCAkZ2wtcGFkZGluZy04O1xuICBmb250LXNpemU6ICRnbC1mb250LXNpemU7XG4gIHdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcblxuICAvLyBTZWxlY3Qgb25seSBjb2RlIGVsZW1lbnRzIHRoYXQgd2lsbCBoYXZlIHRoZSBjb3B5IGNvZGUgYnV0dG9uXG4gIC5tYXJrZG93bi1jb2RlLWJsb2NrICYge1xuICAgIHBhZGRpbmc6ICRpbnB1dC1ob3Jpem9udGFsLXBhZGRpbmc7XG4gIH1cbn1cblxuLm1vbm9zcGFjZSB7XG4gIEBhcHBseSBnbC1mb250LW1vbm9zcGFjZTtcbn1cblxuLndlaWdodC1ub3JtYWwge1xuICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbn1cblxuLmNvbW1pdC1zaGEsXG4ucmVmLW5hbWUge1xuICBAYXBwbHkgZ2wtZm9udC1tb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogOTUlO1xufVxuXG4uZ2l0LXJldmlzaW9uLWRyb3Bkb3duIC5kcm9wZG93bi1jb250ZW50IGxpOm5vdCguZHJvcGRvd24tbWVudS1lbXB0eS1pdGVtKSBhIHtcbiAgQGFwcGx5IGdsLWZvbnQtbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDk1JTtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xufVxuXG4vKipcbiAqIFRleHRhcmVhcyBpbnRlbmRlZCBmb3IgR0ZNXG4gKlxuICovXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWpzLWNsYXNzXG50ZXh0YXJlYS5qcy1nZm0taW5wdXQge1xuICBAYXBwbHkgZ2wtZm9udC1tb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZTtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQge1xuICBzbWFsbCB7XG4gICAgQGFwcGx5IGdsLXRleHQtaGVhZGluZztcbiAgfVxufVxuXG4udGV4dC1yaWdodC1tZCB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChtZCwgcGFuZWwpIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4udGV4dC1yaWdodC1sZyB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZywgcGFuZWwpIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4uaWRpZmYuZGVsZXRpb24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2RlLW9sZC1pbmxpbmUtZGlmZi1iYWNrZ3JvdW5kLWNvbG9yLCAkbGluZS1yZW1vdmVkLWRhcmspO1xufVxuXG4uaWRpZmYuYWRkaXRpb24ge1xuICBiYWNrZ3JvdW5kOiB2YXIoLS1jb2RlLW5ldy1pbmxpbmUtZGlmZi1iYWNrZ3JvdW5kLWNvbG9yLCAkbGluZS1hZGRlZC1kYXJrKTtcbn1cblxuLyoqXG4gKiBmb3JtIHRleHQgaW5wdXQgaS5lLiBzZWFyY2ggYmFyLCBjb21tZW50cywgZm9ybXMsIGV0Yy5cbiAqL1xuaW5wdXQsXG50ZXh0YXJlYSB7XG4gICY6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogdmFyKC0tZ2wtY29udHJvbC1wbGFjZWhvbGRlci1jb2xvcik7XG4gIH1cbn1cblxud2JyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4vLyBUaGUgZm9udCB1c2VkIGluIE1vbmFjbyBlZGl0b3IgLSBXZWIgSURFLCBTbmlwcGV0cywgc2luZ2xlIGZpbGUgZWRpdG9yXG46cm9vdCB7XG4gIC0tY29kZS1lZGl0b3ItZm9udDogI3skbW9ub3NwYWNlLWZvbnR9O1xufVxuXG4vKipcbiAqIEZPT1ROT1RFU1xuICovXG4gc2VjdGlvbi5mb290bm90ZXMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS01O1xuICBtYXJnaW4tdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS03O1xuICBmb250LXNpemU6ICRnbC1mb250LXNpemUtMTI7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMTZyZW07XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICBvbCA+IGxpIHtcbiAgICBtYXJnaW4taW5saW5lLXN0YXJ0OiAkZ2wtc3BhY2luZy1zY2FsZS02O1xuXG4gICAgIHAge1xuICAgICAgbWFyZ2luLWJsb2NrLWVuZDogMDtcbiAgICAgfVxuICB9XG5cbiAgLy8gcHJldmVudCBiYWNrcmVmIGNoYXJhY3RlciBmcm9tIHJlbmRlcmluZyBhcyBlbW9qaVxuICAuZm9vdG5vdGUtYmFja3JlZiBnbC1lbW9qaSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiAwLjg3NWVtO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICB9XG59XG5cbi5tYXRoLWNvbnRlbnQtaW5saW5lIHtcbiAgQGFwcGx5IGdsLW1heC13LWZ1bGw7XG59XG4iLCIuemVuLWJhY2tkcm9wIHtcbiAgJi5mdWxsc2NyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxMDMxO1xuXG4gICAgdGV4dGFyZWEge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICBwYWRkaW5nOiAzMHB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgcmVzaXplOiBub25lO1xuICAgICAgaGVpZ2h0OiAxMDB2aDtcbiAgICAgIG1heC1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMHB4KTtcbiAgICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgICBtYXJnaW46IDAgYXV0byAxMHB4O1xuICAgIH1cblxuICAgIC5kaXYtZHJvcHpvbmUge1xuICAgICAgdGV4dGFyZWEubm90ZS10ZXh0YXJlYSB7XG4gICAgICAgIHJlc2l6ZTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC56ZW4tY29udHJvbC1sZWF2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLy8gQXZvaWQgYmFja2dyb3VuZCBzY3JvbGxpbmcgd2hlbiB6ZW4gaXMgaW4gZnVsbHNjcmVlblxuLnplbi1tb2RlLWZ1bGxzY3JlZW4ge1xuICBvdmVyZmxvdy15OiBjbGlwO1xufVxuXG4uemVuLWNvbnRyb2wge1xuICBwYWRkaW5nOiAwO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcbn1cblxuLnplbi1jb250cm9sLWxlYXZlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBAYXBwbHkgc206Z2wtcC0zICN7IWltcG9ydGFudH07XG4gIEBhcHBseSBzbTpnbC10ZXh0LWJhc2UgI3shaW1wb3J0YW50fTtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMCAjeyFpbXBvcnRhbnR9O1xuICBAYXBwbHkgZ2wtcmlnaHQtMztcbiAgQGFwcGx5IGdsLXRvcC0zO1xufVxuIiwiLmluZm8td2VsbCB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC1ib3JkZXItc2VjdGlvbjtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtbGc7XG5cbiAgLmljb24tY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDAuNXJlbSAwIDAuMjVyZW07XG5cbiAgICBzdmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiAycHg7XG4gICAgICBoZWlnaHQ6IDE2cHg7XG4gICAgICB3aWR0aDogMTZweDtcbiAgICB9XG5cbiAgICAmLmNvbW1pdC1pY29uIHtcbiAgICAgIHN2ZyB7XG4gICAgICAgIHBhdGgge1xuICAgICAgICAgIEBhcHBseSBnbC1maWxsLWljb24tZGVmYXVsdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5icmFuY2hlcyB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICB9XG5cbiAgc3ZnIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC10b3A7XG4gIH1cbn1cbiIsIi5wYWdlLWNvbnRlbnQtaGVhZGVyIHtcbiAgbGluZS1oZWlnaHQ6IDM0cHg7XG4gIHBhZGRpbmc6IDEwcHggMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20sIHBhbmVsKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmhlYWRlci1tYWluLWNvbnRlbnQge1xuICAgICAgZmxleDogMTtcbiAgICB9XG4gIH1cblxuICAuYXZhdGFyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICBmbGV4LXNocmluazogMDtcblxuICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChzbSwgcGFuZWwpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgfVxuXG4gICAgJi5zMjQge1xuICAgICAgbWFyZ2luLXRvcDogLTJweDtcbiAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgIH1cbiAgfVxuXG4gIC5jb21taXQtY29tbWl0dGVyLWxpbmssXG4gIC5jb21taXQtYXV0aG9yLWxpbmsge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gICAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLmNvbW1pdC1pbmZvIHtcbiAgICAmLmJyYW5jaGVzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cHg7XG4gICAgfVxuICB9XG59XG5cbi5wYWdlLWhlYWRpbmctYWN0aW9ucyB7XG4gID4gLmdsLWJ1dHRvbixcbiAgPiAuZ2wtZGlzY2xvc3VyZS1kcm9wZG93biB7XG4gICAgQGFwcGx5IGdsLXctZnVsbDtcbiAgICBAYXBwbHkgc206Z2wtdy1hdXRvO1xuICB9XG59XG4iLCIucGFnZS10aXRsZS1ob2xkZXIge1xuICAucGFnZS10aXRsZSB7XG4gICAgbWFyZ2luOiAkZ2wtc3BhY2luZy1zY2FsZS00IDA7XG4gICAgQGFwcGx5IGdsLXRleHQtaGVhZGluZztcbiAgfVxuXG4gIC5wYWdlLXRpdGxlLWNvbnRyb2xzIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuIiwiLmF3YXJkcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcblxuICAuZW1vamktaWNvbiB7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICB9XG5cbiAgLy8gU2hvdyBhY3RpdmUgc3RhdGUuXG4gIC5nbC1idXR0b24uc2VsZWN0ZWQge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQgI3shaW1wb3J0YW50fTtcbiAgICBAYXBwbHkgZ2wtYmctYmx1ZS01MCAjeyFpbXBvcnRhbnR9O1xuICAgIEBhcHBseSBnbC1ib3JkZXItYmx1ZS01MDAgI3shaW1wb3J0YW50fTtcbiAgICBAYXBwbHkgZ2wtc2hhZG93LW5vbmUgI3shaW1wb3J0YW50fTtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLTIgI3shaW1wb3J0YW50fTtcbiAgfVxufVxuXG4uZW1vamktbWVudSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBtYXJnaW4tdG9wOiAzcHg7XG4gIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duLW1lbnU7XG4gIHdpZHRoOiAkYXdhcmQtZW1vamktd2lkdGg7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tYmFja2dyb3VuZC1jb2xvcik7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIGJveC1zaGFkb3c6IDAgNnB4IDEycHggJGF3YXJkLWVtb2ppLW1lbnUtc2hhZG93O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjIpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIC00NXB4O1xuICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjY3LCAwLjA2LCAwLjE5LCAxLjQ0KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuXG4gICYuaXMtcmVuZGVyZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1hbGlnbmVkLXJpZ2h0IHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIC00NXB4O1xuICB9XG5cbiAgJi5pcy12aXNpYmxlIHtcbiAgICBwb2ludGVyLWV2ZW50czogYWxsO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIC5lbW9qaS1tZW51LWNvbnRlbnQge1xuICAgIGhlaWdodDogMzAwcHg7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB9XG5cbiAgLmRpc2FibGVkIHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgb3BhY2l0eTogMC41O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gICAgd2lkdGg6ICRhd2FyZC1lbW9qaS13aWR0aC14cztcbiAgfVxufVxuXG4uZW1vamktc2VhcmNoIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJ3QUFBQWNDQVlBQUFCeURkK1VBQUFGdTBsRVFWUklpYTFXVGFoa1Z4SCtxdXFjZTd2ZjZ6ZHZKcEhvSWxrWUoyU2lKaUlva21RamdvR2dJQWFFSVl1WVhXSUNnb2ppd2ttQzR0YUZ3aGpjeUlEdXNvZ0VJd3dpU1NDS1B3c2R3ekFnMFNqSjlJenprNW4zK25YZmU4K3BxaXpPdmQzOTVzY2ZzSnFpNmRQbm5EcjExVmMvTkoxT3dVVG9zcUpMQ21ZQ0hDQUMybVNIcytvalp2NkFPNDZZKzIwQWhJbmVKc2FmaFBoWFZaU1hEazdxaSthT0xodFFOdUJtUXRjYXJBS2pUWHBuMitsM3UyeVB1bnZaU0FCUnVjamNBVi9lTVp1TTQ4L0dvL2cxZDE5a2M0d3ErZThNWmpXa2JJL1A1dDJQM1JGRmJ2N1NRZHlCbEJVeDhOOE9UdXFqTWNvZitOOTR5TVByWTJETW0veXRuYjMySjBRclkrNkFxc0hNNFE2NE85U0tEbWVyS0REM095L3ROTDl2azM0MkNDOFJ1VTZuMHltQ01IYjIyc2N1N3pRbmd0QVNPalVIRTFCWDRVVUF2NGI3T3c2cWlYQ1h1ei9VZHZvZ0FBd2VEWTk0My9iNGNBejBabFlIWGVNc25UMDdSVmI3d01Vcjh5a0k0SDVIVmtNZDVSY2I0L2pOVVJWT0w1cUVyQWFBVVVkQ0NJSjVreDVxMm53OG0zOUltRUFBc2pwRTZQU3RCMFlmTWNkMXdxcUczWG43QTNQZlp5eUtuTmphcUQ0Zm1FL2ZDTktzaGlySXlZMXh2SStBdjZnNVFJQUlJV1g3Y0pQc3Nib1NpQkJFZUttc1puZTBTYjhrekFVV05ZeXE4TnZiRG8wZlo2YmVxeHVMbXFPT01yL2x3T2grWVhwWHRiakVSR2phOUp5WjkrSHhwWEtiOUdqNW95d1JFU2JqK0NqMUVORzFRVmlUR0JsMUZiQzFXZTF0YlZSZkhXSW9Ra2hxSDl4YnBFOTJYVWJiNlZKWjFSNGNyalJ6MUpXY0RNSnZMZG9NY3lBRWhqdXdIbzhCZm5kZzNtYnN6aE9ZK2FkVmxNdEQzcG81MU93eklRaUVhYW1zN29lSmh4UncxRkZPVnBGUlJVWUloTUJBRlJuak9zQzhJRkhIVUE0VFFRaGdBcXBBaUlGZkdieGtJcWo1NGF5R2JMN1VvT3FIQ25pQUVLSExOcjI2bCtEOXdRSnplVXdNQW5mSHZFbkxFQ3paUndSVisrZDYwcHRqVzlWTFplb2xFSkc2R3dDQ0UwQ0ZWTkIrQXkwTkVxb1FZRzRZWUZ1N0I4SUVWUnQzdVJ6eS9vc0lvTFY5UVppbVdYR0hVTUZkbUk2TTY0RFVGMkplODhSOVZacUNTUCtRbGNGNWsrNHRDelNzWGFxaklOdUs2VXlFMCtzL21rNi9xRnE4b0FJTDlwcU1MaGtHc05yT3lvT0lsc3p1c3QzYUp2MFU5K2tGZHdqVEd3V2wxWWRGK0tXbFFTWjBTZS9wc2o4eUdWZGc1dEp5Zkg5NkVCV21MdG9FTXdNek1GdDAzMU56R1dMTHpLaEMrS1Y3SDVaZWVhTU9QeGVtbWEyeDY4cHVjMExOMysvdTZMSmllUFM2TUtIdm40d3U2Y1B6SmowaHNpb2VNZkRyRXZqdjVyNlc5Z0J2aktKdWp1S3pRMFVSSVpqNzVOeWx2VCttYkhmWFFhNHJ3QU1hVlJUTW0vU0Z5enZOeTB5RjYrNEFNKzF1YmNTbnFrQUlValFLbDFSS1NiRTVqdCt2b3Z4MU1CcUYwV1c3L2QxWjgwYWI5QnRtdUozWGs1Y0pLZHM5VFp0L3VMUFh2dGlUclErZEl3cWZBZWpVdk0xb3M2Rk5pa1hLVUhmUStla1VzWFQ1dTg1ZW5KMENhQlNra0dFbzFzeVVRK0RmTWRFLzRHQTF1enVwZjl6ZGJ6aE9tTHNGNGVmSFZYamFISEF6bUR0R2RRUmQvTmM1d0FFSmpOa2kzWGZoeXZ3Vk56ODB4QU5yaHQzTHNFTlk5Y0JCZE4xTDlHVXl5dkZSRlo0MnQ3NXNCdkNRUnlrYlJsVTR0VDJwUHhvQ3Z6eDA5ZDRHbVBzMjAwTTZ3S2RXU0RHSzhtcHBZU1dkaEFsdDBxZWFMditJYWRYVTkvRXZxNEZBWjhlaitMbXRjVHhhUlg0TldJMFVhZzVWZzFwNU1ZZzhCbmxoWElkUEhEb3crdlRXWnZWTVZ0dFhETHFrVHpaZFBqNlFpaTZjUDFjU3ZJZGwzaVFrTll5aTlISDBJMjJ5KzkzdFkzRGNRa1RaZ1F0TStQT29Dcjh4OTdleWxrbXRyZ0t1enRydlhKMjF4L2FOS3VxSWtaL2ZudFJmQ2RjVGZoVVRBSWhSem9Eb2pKRDBhU05MTHdNem1wVDcrSmFMdHlmMU13RG82cXo5ZGpGYVVxM3Q5TWxGbXkvYzFPQ1NjZVk5Zk1zVmFMOW12SDlvY1hka2RXeHYxc2NBZVBHMFRIQWhNT2FMZE93L0d2eGZ4YjF3NGVDYXB5SUVOVWNWNU0zL3U4Rml0QXhaMjVQNkdBSFQzVVgzOVNydytRT2IxWmZmQTk4RGwyV3kxQllrQUFBQUFFbEZUa1N1UW1DQycpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCA1cHggY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2cHg7XG59XG5cbi5lbW9qaS1tZW51LWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi5lbW9qaS1tZW51LWxpc3QtaXRlbSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiAxcHg7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuXG4uZW1vamktbWVudS1idG4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB3aWR0aDogMzBweDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBjdWJpYy1iZXppZXIoMC4zLCAwLCAwLjIsIDIpO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIG91dGxpbmU6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjMpO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlLFxuICAmOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gIC5lbW9qaS1pY29uIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogM3B4O1xuICB9XG5cbiAgPiBnbC1lbW9qaSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgfVxufVxuXG4uYXdhcmQtbWVudS1ob2xkZXIge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgLnRvb2x0aXAge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbn1cblxuLmdsLWJ1dHRvbi5idG4uYXdhcmQtY29udHJvbCB7XG4gICYuYWN0aXZlLFxuICAmOmhvdmVyLFxuICAmOmFjdGl2ZSxcbiAgJi5pcy1hY3RpdmUge1xuICAgIC5hd2FyZC1jb250cm9sLWljb24tbmV1dHJhbCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIC5hd2FyZC1jb250cm9sLWljb24tcG9zaXRpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xNSk7XG4gICAgfVxuICB9XG5cbiAgJi5hY3RpdmUsXG4gICYuaXMtYWN0aXZlLFxuICAmOmFjdGl2ZSB7XG4gICAgQGFwcGx5IGdsLWJnLWJsdWUtNTA7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1ibHVlLTIwMDtcbiAgfVxuXG4gICYuaXMtYWN0aXZlIHtcbiAgICAuYXdhcmQtY29udHJvbC1pY29uLXBvc2l0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cblxuICAgIC5hd2FyZC1jb250cm9sLWljb24tc3VwZXItcG9zaXRpdmUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxuICB9XG5cbiAgJi5idG4ge1xuICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtbG9hZGluZyB7XG4gICAgLmVtb2ppLWljb24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuaWNvbixcbiAgZ2wtZW1vamkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6IDAuNWVtO1xuICB9XG5cbiAgLmF3YXJkLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSxcbiAgLmF3YXJkLWNvbnRyb2wtaWNvbi1zdXBlci1wb3NpdGl2ZSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5LCB0cmFuc2Zvcm0pO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgcGF0aCB7XG4gICAgICBmaWxsOiAkYXdhcmQtZW1vamktcG9zaXRpdmUtYWRkLWxpbmVzO1xuICAgIH1cbiAgfVxuXG4gIC5hd2FyZC1jb250cm9sLXRleHQge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cblxuXG4vLyBUaGUgZm9sbG93aW5nIGVuY29tcGFzc2VzIHRoZSBcImFkZCByZWFjdGlvblwiIGJ1dHRvbiByZWRlc2lnbiB0b1xuLy8gYWxpZ24gcHJvcGVybHkgd2l0aGluIEdpdExhYiBVSSdzIGdsLWJ1dHRvbi4gVGhlIGltcGxlbWVudGF0aW9uXG4vLyBhYm92ZSB3aWxsIGJlIGRlcHJlY2F0ZWQgb25jZSBhbGwgaW5zdGFuY2VzIG9mIFwiYXdhcmQgZW1vamlcIiBhcmVcbi8vIG1pZ3JhdGVkIHRvIFZ1ZS5cblxuLmdsLWJ1dHRvbiAuYXdhcmQtZW1vamktYmxvY2sge1xuICBkaXNwbGF5OiBjb250ZW50cztcblxuICBnbC1lbW9qaSB7XG4gICAgbWFyZ2luLWJsb2NrOiAtMC4xZW07XG5cbiAgICBpbWcge1xuICAgICAgdG9wOiAtMC4wMjVlbTtcbiAgICB9XG4gIH1cbn1cblxuLmFkZC1yZWFjdGlvbi1idXR0b24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLy8gVGhpcyBmb3JjZXMgdGhlIGhlaWdodCBhbmQgd2lkdGggb2YgdGhlIGlubmVyIGNvbnRlbnQgdG8gbWF0Y2hcbiAgLy8gb3RoZXIgZ2wtYnV0dG9ucyBkZXNwaXRlIGFsbCBjaGlsZCBlbGVtZW50cyBiZWluZyBzZXQgdG9cbiAgLy8gYHBvc2l0aW9uOmFic29sdXRlYFxuXG4gIC5yZWFjdGlvbi1jb250cm9sLWljb24ge1xuICAgIC5nbC1pY29uIHtcbiAgICAgIGhlaWdodDogJGRlZmF1bHQtaWNvbi1zaXplO1xuICAgICAgd2lkdGg6ICRkZWZhdWx0LWljb24tc2l6ZTtcbiAgICB9XG4gIH1cblxuICAucmVhY3Rpb24tY29udHJvbC1pY29uLW5ldXRyYWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cblxuICAucmVhY3Rpb24tY29udHJvbC1pY29uLXBvc2l0aXZlLFxuICAucmVhY3Rpb24tY29udHJvbC1pY29uLXN1cGVyLXBvc2l0aXZlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJjpob3ZlcixcbiAgJi5hY3RpdmUsXG4gICY6YWN0aXZlLFxuICAmLmlzLWFjdGl2ZSB7XG4gICAgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1uZXV0cmFsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1wb3NpdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cbiAgfVxuXG4gICYuYWN0aXZlLFxuICAmOmFjdGl2ZSxcbiAgJi5pcy1hY3RpdmUge1xuICAgIC5yZWFjdGlvbi1jb250cm9sLWljb24tcG9zaXRpdmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAucmVhY3Rpb24tY29udHJvbC1pY29uLXN1cGVyLXBvc2l0aXZlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG5cbiAgJi5kaXNhYmxlZCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLXZpc2libGUsXG4gICAgJjphY3RpdmUge1xuICAgICAgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbiAuZ2wtaWNvbiB7XG4gICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgfVxuXG4gICAgICAucmVhY3Rpb24tY29udHJvbC1pY29uLW5ldXRyYWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgfVxuXG4gICAgICAucmVhY3Rpb24tY29udHJvbC1pY29uLXBvc2l0aXZlLFxuICAgICAgLnJlYWN0aW9uLWNvbnRyb2wtaWNvbi1zdXBlci1wb3NpdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hZGQtcmVhY3Rpb24tc2VhcmNoIHtcbiAgJGlucHV0LWZvY3VzLXJpbmctYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI7XG5cbiAgaW5wdXQge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRpbnB1dC1mb2N1cy1yaW5nLWJvcmRlci1yYWRpdXMgIWltcG9ydGFudDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGlucHV0LWZvY3VzLXJpbmctYm9yZGVyLXJhZGl1cyAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5kZXNpZ24tbm90ZS5ub3RlLWZvcm0gLmVtb2ppLXBpY2tlciAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsIHtcbiAgbGVmdDogMCAhaW1wb3J0YW50O1xufVxuIiwiLmFwcGVhcmFuY2UtbG9nby1wcmV2aWV3LFxuLmFwcGVhcmFuY2UtcHdhLWljb24tcHJldmlldyB7XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5hcHBlYXJhbmNlLWxpZ2h0LWxvZ28tcHJldmlldyB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIG1heC13aWR0aDogNzJweDtcbiAgcGFkZGluZzogMTBweDtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLnN2Zy1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAkZ2wtcGFkZGluZztcblxuICBzdmcsXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiA0MjVweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICRpbWFnZS13aWR0aHM6IDgwIDEzMCAxNTAgMjI1IDI1MCAzMDYgMzk0IDQzMDtcbiAgQGVhY2ggJHdpZHRoIGluICRpbWFnZS13aWR0aHMge1xuICAgICYuc3ZnLSN7JHdpZHRofSB7XG4gICAgICBpbWcsXG4gICAgICBzdmcge1xuICAgICAgICBtYXgtd2lkdGg6ICN7JHdpZHRoICsgJ3B4J307XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbnN2ZyB7XG4gIGZpbGw6IGN1cnJlbnRDb2xvcjtcbn1cblxuc3ZnOmlzKFtpZCo9XCItc21cIl0sIFtpZCo9XCItbWRcIl0sIFtpZCo9XCItbGdcIl0pIHtcbiAgZmlsbDogbm9uZTtcbn1cblxuLnNxdWFyZSxcbnN2ZyB7XG4gICRzdmctc2l6ZXM6IDggMTAgMTIgMTQgMTYgMTggMjQgMzIgNDggNzI7XG4gIEBlYWNoICRzdmctc2l6ZSBpbiAkc3ZnLXNpemVzIHtcbiAgICAmLnMjeyRzdmctc2l6ZX0ge1xuICAgICAgd2lkdGg6ICN7JHN2Zy1zaXplfXB4O1xuICAgICAgaGVpZ2h0OiAjeyRzdmctc2l6ZX1weDtcbiAgICB9XG4gIH1cblxuICAmLnMxMiB7XG4gICAgdmVydGljYWwtYWxpZ246IC0xcHg7XG4gIH1cblxuICAmLnMxNiB7XG4gICAgdmVydGljYWwtYWxpZ246IC0zcHg7XG4gIH1cbn1cblxuLmludGVncmF0aW9uLWxvZ28ge1xuICAmW2FsdD0nRGlmZmJsdWUgQ292ZXInXSxcbiAgJlthbHQ9J0Ryb25lJ10sXG4gICZbYWx0PSdHaXRIdWInXSxcbiAgJlthbHQ9J01hdHRlcm1vc3Qgbm90aWZpY2F0aW9ucyddLFxuICAmW2FsdD0nTWF0dGVybW9zdCBzbGFzaCBjb21tYW5kcyddLFxuICAmW2FsdD0nUGhvcmdlJ10ge1xuICAgIC5nbC1kYXJrICYge1xuICAgICAgZmlsdGVyOiBpbnZlcnQoMSkgYnJpZ2h0bmVzcygyKTtcbiAgICB9XG4gIH1cbn1cblxuYm9keS5pbWFnZS1saWdodGJveC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbiIsIkB1c2UgXCJzYXNzOm1hdGhcIjtcblxuZ2wtZW1vamkge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBmb250LWZhbWlseTogJ0FwcGxlIENvbG9yIEVtb2ppJywgJ1NlZ29lIFVJIEVtb2ppJywgJ1NlZ29lIFVJIFN5bWJvbCcsICdOb3RvIENvbG9yIEVtb2ppJztcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMWVtO1xuICAgIG9iamVjdC1maXQ6IHNjYWxlLWRvd247XG4gICAgaGVpZ2h0OiAxZW07XG4gIH1cbn1cblxuLnVzZXItc3RhdHVzLWVtb2ppIHtcbiAgbWFyZ2luLWxlZnQ6ICRnbC1wYWRkaW5nLTQ7XG4gIG1hcmdpbi1yaWdodDogJGdsLXBhZGRpbmctNDtcblxuICBnbC1lbW9qaSB7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG59XG5cbi5kYXNoYm9hcmQtc3RhdHVzLWVtb2ppIHtcbiAgQGFwcGx5IGdsLXRleHQtWzEuNXJlbV07XG4gIEBhcHBseSBnbC1tdC0xO1xufVxuXG4uZ2wtcGxhdGZvcm0td2luZG93cyAuZGFzaGJvYXJkLXN0YXR1cy1lbW9qaSB7XG4gIEBhcHBseSAtZ2wtbXQtWzAuMnJlbV07XG4gIEBhcHBseSAtZ2wtbWwtMjtcbn1cblxuLmdsLXBsYXRmb3JtLWxpbnV4IC5kYXNoYm9hcmQtc3RhdHVzLWVtb2ppIHtcbiAgQGFwcGx5IGdsLXRleHQtWzEuMTI1cmVtXTtcbiAgQGFwcGx5IC1nbC1tdC0xO1xufVxuXG4uZW1vamktcGlja2VyLWNhdGVnb3J5LWhlYWRlciB7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3Itb3ZlcmxhcCkgNTAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbn1cblxuLmVtb2ppLXBpY2tlci1lbW9qaSB7XG4gIGhlaWdodDogMzBweDtcbiAgLy8gQ3JlYXRlIGEgd2lkdGggdGhhdCBmaXRzIDkgZW1vamlzIHBlciByb3dcbiAgd2lkdGg6IG1hdGguZGl2KDEwMCwgOSkgKiAxJTtcbiAgbWl4LWJsZW5kLW1vZGU6IG5vcm1hbCAhaW1wb3J0YW50O1xuXG4gIGdsLWVtb2ppIHtcbiAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgZ2wtZW1vamkgaW1nIHtcbiAgICB0b3A6IGF1dG87XG4gICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgfVxufVxuXG4uZW1vamktcGlja2VyIC5nbC1kcm9wZG93biAuZHJvcGRvd24tbWVudSxcbi5lbW9qaS1waWNrZXIgLmdsLW5ldy1kcm9wZG93biAuZ2wtbmV3LWRyb3Bkb3duLXBhbmVsIHtcbiAgd2lkdGg6IDM1NHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5lbW9qaS1waWNrZXIgLmdsLW5ldy1kcm9wZG93bi1jb250ZW50cyB7XG4gIG1heC1oZWlnaHQ6IG5vbmUgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3cteTogaGlkZGVuICFpbXBvcnRhbnQ7XG59XG5cbi5lbW9qaS1waWNrZXItY2F0ZWdvcnktdGFiIHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgJjpob3ZlciB7XG4gICAgJjpub3QoLmVtb2ppLXBpY2tlci1jYXRlZ29yeS1hY3RpdmUpIHtcbiAgICAgIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgICB9XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cblxuLmVtb2ppLXBpY2tlci1jYXRlZ29yeS1hY3RpdmUge1xuICBib3JkZXItYm90dG9tLWNvbG9yOiAkZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCAhaW1wb3J0YW50O1xufVxuXG4uZW1vamktcGlja2VyIC5nbC1kcm9wZG93bi1jb250ZW50cyA+IDpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cbiIsIkBtaXhpbiBpY29uLXN0eWxlcygkY29sb3IpIHtcbiAgc3ZnLFxuICAuZ2wtaWNvbiB7XG4gICAgZmlsbDogJGNvbG9yO1xuICB9XG59XG5cbi5jaS1zdGF0dXMtaWNvbi1zdWNjZXNzLFxuLmNpLXN0YXR1cy1pY29uLXBhc3NlZCB7XG4gIHN2ZyxcbiAgLmdsLWljb24ge1xuICAgIEBhcHBseSBnbC1maWxsLWljb24tc3VjY2VzcztcbiAgfVxufVxuXG4uY2ktc3RhdHVzLWljb24tZXJyb3IsXG4uY2ktc3RhdHVzLWljb24tZmFpbGVkIHtcbiAgQGluY2x1ZGUgaWNvbi1zdHlsZXMoJHJlZC01MDApO1xufVxuXG4uY2ktc3RhdHVzLWljb24tcGVuZGluZyxcbi5jaS1zdGF0dXMtaWNvbi13YWl0aW5nLWZvci1yZXNvdXJjZSxcbi5jaS1zdGF0dXMtaWNvbi13YWl0aW5nLWZvci1jYWxsYmFjayxcbi5jaS1zdGF0dXMtaWNvbi1mYWlsZWQtd2l0aC13YXJuaW5ncyxcbi5jaS1zdGF0dXMtaWNvbi1zdWNjZXNzLXdpdGgtd2FybmluZ3Mge1xuICBAaW5jbHVkZSBpY29uLXN0eWxlcygkb3JhbmdlLTUwMCk7XG59XG5cbi5jaS1zdGF0dXMtaWNvbi1ydW5uaW5nIHtcbiAgQGluY2x1ZGUgaWNvbi1zdHlsZXMoJGJsdWUtNTAwKTtcbn1cblxuLmNpLXN0YXR1cy1pY29uLWNhbmNlbGVkLFxuLmNpLXN0YXR1cy1pY29uLWRpc2FibGVkLFxuLmNpLXN0YXR1cy1pY29uLXNjaGVkdWxlZCxcbi5jaS1zdGF0dXMtaWNvbi1tYW51YWwge1xuICBAaW5jbHVkZSBpY29uLXN0eWxlcygkZ3JheS05MDApO1xufVxuXG4uY2ktc3RhdHVzLWljb24tbm90aWZpY2F0aW9uLFxuLmNpLXN0YXR1cy1pY29uLXByZXBhcmluZyxcbi5jaS1zdGF0dXMtaWNvbi1jcmVhdGVkLFxuLmNpLXN0YXR1cy1pY29uLXNraXBwZWQsXG4uY2ktc3RhdHVzLWljb24tbm90Zm91bmQge1xuICBAaW5jbHVkZSBpY29uLXN0eWxlcygkZ3JheS01MDApO1xufVxuXG5hLmNpLWljb246Zm9jdXMtdmlzaWJsZSB7XG4gIEBhcHBseSBnbC1mb2N1cztcbn1cblxuLmNpLWljb24ge1xuICBib3JkZXItcmFkaXVzOiAyMHB4O1xuXG4gIC8vIC5jaS1pY29uIGNsYXNzIGlzIHVzZWQgYXRcbiAgLy8gLSBhcHAvYXNzZXRzL2phdmFzY3JpcHRzL3Z1ZV9zaGFyZWQvY29tcG9uZW50cy9jaV9pY29uL2NpX2ljb24udnVlXG4gIC8vIC0gYXBwL2hlbHBlcnMvY2kvc3RhdHVzX2hlbHBlci5yYlxuICAuY2ktaWNvbi1nbC1pY29uLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1mdWxsO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZXMgdGhlIGJvcmRlcmxlc3MgQ0kgaWNvbnMgYXBwZWFyIHNsaWdodGx5IGJpZ2dlciB0aGFuIHRoZSBkZWZhdWx0IDE2cHguXG4gIC8vIENvdWxkIGJlIGZpeGVkIGJ5IG1ha2luZyB0aGUgU1ZHIGZpbGwgdXAgdGhlIGNhbnZhcyBpbiBhIGZvbGxvdyB1cCBpc3N1ZS5cbiAgLmdsLWljb24ge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW46IC0ycHg7XG4gIH1cblxuICBAbWl4aW4gY2ktaWNvbi1zdHlsZShcbiAgICAkYmFja2dyb3VuZC1jb2xvcixcbiAgICAkdGV4dC1jb2xvcixcbiAgICAkaWNvbi1jb2xvcixcbiAgICAkaWNvbi1iYWNrZ3JvdW5kLWNvbG9yLFxuICApIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3IgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcblxuICAgIC5jaS1pY29uLWdsLWljb24td3JhcHBlciB7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLWJhY2tncm91bmQtY29sb3I7XG4gICAgICBjb2xvcjogJGljb24tY29sb3I7XG5cbiAgICAgIC5nbC1kYXJrICYge1xuICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYuY2ktaWNvbi12YXJpYW50LXN1Y2Nlc3Mge1xuICAgIEBpbmNsdWRlIGNpLWljb24tc3R5bGUoXG4gICAgICAkYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2ktaWNvbi1zdWNjZXNzLWJhY2tncm91bmQtY29sb3IpLFxuICAgICAgJHRleHQtY29sb3I6IHZhcigtLWNpLWljb24tc3VjY2Vzcy10ZXh0LWNvbG9yKSxcbiAgICAgICRpY29uLWNvbG9yOiB2YXIoLS1jaS1pY29uLXN1Y2Nlc3MtaWNvbi1jb2xvciksXG4gICAgICAkaWNvbi1iYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jaS1pY29uLXN1Y2Nlc3MtaWNvbi1iYWNrZ3JvdW5kLWNvbG9yKSxcbiAgICApXG4gIH1cblxuICAmLmNpLWljb24tdmFyaWFudC13YXJuaW5nIHtcbiAgICBAaW5jbHVkZSBjaS1pY29uLXN0eWxlKFxuICAgICAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNpLWljb24td2FybmluZy1iYWNrZ3JvdW5kLWNvbG9yKSxcbiAgICAgICR0ZXh0LWNvbG9yOiB2YXIoLS1jaS1pY29uLXdhcm5pbmctdGV4dC1jb2xvciksXG4gICAgICAkaWNvbi1jb2xvcjogdmFyKC0tY2ktaWNvbi13YXJuaW5nLWljb24tY29sb3IpLFxuICAgICAgJGljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2ktaWNvbi13YXJuaW5nLWljb24tYmFja2dyb3VuZC1jb2xvciksXG4gICAgKVxuICB9XG5cbiAgJi5jaS1pY29uLXZhcmlhbnQtZGFuZ2VyIHtcbiAgICBAaW5jbHVkZSBjaS1pY29uLXN0eWxlKFxuICAgICAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNpLWljb24tZGFuZ2VyLWJhY2tncm91bmQtY29sb3IpLFxuICAgICAgJHRleHQtY29sb3I6IHZhcigtLWNpLWljb24tZGFuZ2VyLXRleHQtY29sb3IpLFxuICAgICAgJGljb24tY29sb3I6IHZhcigtLWNpLWljb24tZGFuZ2VyLWljb24tY29sb3IpLFxuICAgICAgJGljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2ktaWNvbi1kYW5nZXItaWNvbi1iYWNrZ3JvdW5kLWNvbG9yKSxcbiAgICApXG4gIH1cblxuICAmLmNpLWljb24tdmFyaWFudC1pbmZvIHtcbiAgICBAaW5jbHVkZSBjaS1pY29uLXN0eWxlKFxuICAgICAgJGJhY2tncm91bmQtY29sb3I6IHZhcigtLWNpLWljb24taW5mby1iYWNrZ3JvdW5kLWNvbG9yKSxcbiAgICAgICR0ZXh0LWNvbG9yOiB2YXIoLS1jaS1pY29uLWluZm8tdGV4dC1jb2xvciksXG4gICAgICAkaWNvbi1jb2xvcjogdmFyKC0tY2ktaWNvbi1pbmZvLWljb24tY29sb3IpLFxuICAgICAgJGljb24tYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY2ktaWNvbi1pbmZvLWljb24tYmFja2dyb3VuZC1jb2xvciksXG4gICAgKVxuICB9XG5cbiAgJi5jaS1pY29uLXZhcmlhbnQtbmV1dHJhbCB7XG4gICAgQGluY2x1ZGUgY2ktaWNvbi1zdHlsZShcbiAgICAgICRiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1jaS1pY29uLW5ldXRyYWwtYmFja2dyb3VuZC1jb2xvciksXG4gICAgICAkdGV4dC1jb2xvcjogdmFyKC0tY2ktaWNvbi1uZXV0cmFsLXRleHQtY29sb3IpLFxuICAgICAgJGljb24tY29sb3I6IHZhcigtLWNpLWljb24tbmV1dHJhbC1pY29uLWNvbG9yKSxcbiAgICAgICRpY29uLWJhY2tncm91bmQtY29sb3I6IHZhcigtLWNpLWljb24tbmV1dHJhbC1pY29uLWJhY2tncm91bmQtY29sb3IpLFxuICAgIClcbiAgfVxufVxuXG4udXNlci1hdmF0YXItbGluayB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmNpcmNsZS1pY29uLWNvbnRhaW5lciB7XG4gICRib3JkZXItc2l6ZTogMXB4O1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuIiwiLnNuaXBwZXQtZmlsZS1jb250ZW50IHtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuXG4gICsgLnNuaXBwZXQtZmlsZS1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS01O1xuICB9XG5cbiAgJjpsYXN0LW9mLXR5cGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiIsIkBtaXhpbiBmbGV4LW1heC13aWR0aCgkbWF4KSB7XG4gIGZsZXg6IDAgMCAjeyRtYXggKyAnJSd9O1xuICBtYXgtd2lkdGg6ICN7JG1heCArICclJ307XG59XG5cbi5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdyxcbi5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdy1sYXlvdXQge1xuICB3aWR0aDogMTAwJTtcblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgJiA+ICY6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXRvcDogJGdsLXBhZGRpbmc7XG4gICAgfVxuICB9XG59XG5cbi5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdyB7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIEBhcHBseSBnbC1ib3JkZXI7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcblxuICAmLmdsLXJlc3BvbnNpdmUtdGFibGUtcm93LWNsaWNrYWJsZSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuXG4gICAgICAudW5kZXJsaW5lIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kLCBwYW5lbCkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAkZ2wtcGFkZGluZyAwO1xuICAgIGJvcmRlcjogMDtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktNTA7XG4gICAgfVxuICB9XG59XG5cbi5nbC1yZXNwb25zaXZlLXRhYmxlLXJvdy1jb2wtc3BhbiB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cblxuLnRhYmxlLXNlY3Rpb24ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICRzZWN0aW9uLXdpZHRoczogNSAxMCAxNSAyMCAyNSAzMCA0MCA1MCA2MCA3MCA4MCAxMDA7XG4gIEBlYWNoICR3aWR0aCBpbiAkc2VjdGlvbi13aWR0aHMge1xuICAgICYuc2VjdGlvbi0jeyR3aWR0aH0ge1xuICAgICAgZmxleDogMCAwICN7JHdpZHRoICsgJyUnfTtcblxuICAgICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kLCBwYW5lbCkge1xuICAgICAgICBtYXgtd2lkdGg6ICN7JHdpZHRoICsgJyUnfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihtZCwgcGFuZWwpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDYycHg7XG5cbiAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JheS01MDtcbiAgICB9XG4gIH1cblxuICAmLnNlY3Rpb24td3JhcCB7XG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcblxuICAgIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKG1kLCBwYW5lbCkge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxufVxuXG4udGFibGUtYnV0dG9uLWZvb3RlciB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChtZCwgcGFuZWwpIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKG1kLCBwYW5lbCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgbWluLWhlaWdodDogMDtcbiAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICAgIEBhcHBseSBnbC1ib3JkZXItdDtcblxuICAgIC50YWJsZS1hY3Rpb24tYnV0dG9ucyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAuYnRuIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgfVxuXG4gICAgICA+IC5idG4tZ3JvdXAsXG4gICAgICA+IC5leHRlcm5hbC11cmwsXG4gICAgICA+IC5idG4ge1xuICAgICAgICBmbGV4OiAxIDEgMjhweDtcblxuICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZHJvcGRvd24tbmV3IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgbWluLXdpZHRoOiBpbml0aWFsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFibGUtcm93LWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMTNweDtcblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihtZCwgcGFuZWwpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi50YWJsZS1tb2JpbGUtaGVhZGVyIHtcbiAgQGluY2x1ZGUgZmxleC1tYXgtd2lkdGgoNDApO1xuICBAYXBwbHkgZ2wtdGV4dC1zdHJvbmc7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKG1kLCBwYW5lbCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLnRhYmxlLW1vYmlsZS1jb250ZW50IHtcbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gICAgQGluY2x1ZGUgZmxleC1tYXgtd2lkdGgoNjApO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG4iLCIuc3RhY2tlZC1wcm9ncmVzcy1iYXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTEwMDtcblxuICAuc3RhdHVzLXVuYXZhaWxhYmxlLFxuICAuc3RhdHVzLWdyZWVuLFxuICAuc3RhdHVzLW5ldXRyYWwsXG4gIC5zdGF0dXMtcmVkIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLXdpZHRoOiA0MHB4O1xuICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgIGZvbnQtc2l6ZTogJHRvb2x0aXAtZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBsaW5lLWhlaWdodDogMTZweDtcblxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC5zdGF0dXMtdW5hdmFpbGFibGUge1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIH1cblxuICAuc3RhdHVzLWdyZWVuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4tNTAwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JlZW4tNjAwO1xuICAgIH1cbiAgfVxuXG4gIC5zdGF0dXMtbmV1dHJhbCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgIGNvbG9yOiAkZ3JheS05MDA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5LTIwMDtcbiAgICB9XG4gIH1cblxuICAuc3RhdHVzLXJlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlZC01MDA7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQtNjAwO1xuICAgIH1cbiAgfVxufVxuIiwiLnNvcnRhYmxlLWNvbnRhaW5lciB7XG4gIC5mbGV4LWxpc3Qge1xuICAgIHBhZGRpbmc6IDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5zb3J0YWJsZS1yb3cge1xuICAuZmxleC1yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAmLmlzc3VhYmxlLWluZm8tY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLnNvcnRhYmxlLWxpbmsge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cbn1cblxuLmlzLWRyYWdnaW5nIHtcbiAgLy8gSW1wb3J0YW50IGJlY2F1c2UgcGx1Z2luIHNldHMgaW5saW5lIENTU1xuICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG5cbiAgKiB7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAvLyAhaW1wb3J0YW50IHRvIG1ha2Ugc3VyZSBubyBzdHlsZSBjYW4gb3ZlcnJpZGUgdGhpcyB3aGVuIGRyYWdnaW5nXG4gICAgY3Vyc29yOiBncmFiYmluZyAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi5uby1kcm9wICoge1xuICAgIGN1cnNvcjogbm8tZHJvcCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi50cmVlLWl0ZW0sXG4ubGlua2VkLWl0ZW0ge1xuICAmLmlzLWRyYWdnaW5nIHtcbiAgICBib3JkZXItdG9wOiAwO1xuXG4gICAgLml0ZW0tYm9keSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkZ3JheS0yMDA7XG4gICAgfVxuICB9XG59XG4iLCIucmVhZC1tb3JlLWNvbnRhaW5lciB7XG4gICRzY3JpbTogMnJlbTtcbiAgJGZhbGxiYWNrOiAzMjBweDtcbiAgJGhlaWdodDogMzlweDtcblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gcmVhZC1tb3JlLWNvbnRhaW5lclxuICAmOm5vdCg6aGFzKC5yZWFkLW1vcmUtY29udGVudCkpIHtcbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihsZywgcGFuZWwpIHtcbiAgICAgICY6bm90KC5pcy1leHBhbmRlZCkge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcblxuICAgICAgICA+ICoge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byByZWFkLW1vcmUtY29udGFpbmVyXG4gICY6aGFzKC5yZWFkLW1vcmUtY29udGVudDpub3QoLmlzLWV4cGFuZGVkKSkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtaGVpZ2h0OiB2YXIoLS1yZWFkLW1vcmUtaGVpZ2h0LCAjeyRmYWxsYmFjayAtICRoZWlnaHR9KTtcbiAgICBzY3JvbGwtcGFkZGluZy10b3A6IDEwMDB2aDsgLy8gRml4IGFuY2hvciBzY3JvbGwsIGtlZXAgaXQgdXAgdG9wXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIG9ubHkgYXBwZWFycyB3aGVuIHNpemUgaXMgPiAkaGVpZ2h0LlxuICAucmVhZC1tb3JlLWNvbnRlbnQtLWhhcy1zY3JpbTpub3QoLmlzLWV4cGFuZGVkKTo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHRvcDogY2FsYyh2YXIoLS1yZWFkLW1vcmUtaGVpZ2h0LCAjeyRmYWxsYmFja30pIC0gI3skc2NyaW19IC0gI3skaGVpZ2h0fSk7XG4gICAgaGVpZ2h0OiAkc2NyaW07XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgdHJhbnNwYXJlbnQsIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCkpO1xuICB9XG59XG5cbi5kZXNjcmlwdGlvbi1tb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAzcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHRyYW5zcGFyZW50IDAlLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpIDEwMCUpO1xuICB9XG5cbiAgLnNob3ctYWxsLWJ0biB7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcblxuICAgICY6OmJlZm9yZSwgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBoZWlnaHQ6IDFweDtcbiAgICAgIGZsZXg6IDE7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLXN1YnRsZSk7XG4gICAgfVxuICB9XG59XG5cbi8vIFRhYmxlIHNjcm9sbCBzaGFkb3dzIGFyZSBoaWdoLWNvbnRyYXN0IGFuZCB3b3VsZCBibGVlZCB0aHJvdWdoIHRoZSB0cmFuc2x1Y2VudFxuLy8gLmRlc2NyaXB0aW9uLW1vcmUgZ3JhZGllbnQsIHNvIHN1cHByZXNzIHRoZW0gd2hpbGUgdGhlIGRlc2NyaXB0aW9uIGlzIHRydW5jYXRlZC5cbi53b3JrLWl0ZW0tZGVzY3JpcHRpb24gLnRydW5jYXRlZCB7XG4gIC5nbC10YWJsZS1zaGFkb3ctb3ZlcmxheTo6YmVmb3JlLFxuICAuZ2wtdGFibGUtc2hhZG93LW92ZXJsYXk6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmdsLXRhYmxlLXNoYWRvdyB7XG4gICAgYW5pbWF0aW9uOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cbiIsIi5oZWFkZXItbWVzc2FnZSxcbi5mb290ZXItbWVzc2FnZSB7XG4gIHBhZGRpbmc6IDAgMTVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgei1pbmRleDogMTAwMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBwIHtcbiAgICBAaW5jbHVkZSBzdHItdHJ1bmNhdGVkKDEwMCUpO1xuICAgIG1hcmdpbi10b3A6IC0xcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6ICRnbC1mb250LXNpemUtc21hbGw7XG4gIH1cbn1cblxuLmhlYWRlci1tZXNzYWdlIHtcbiAgaGVpZ2h0OiAkc3lzdGVtLWhlYWRlci1oZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkc3lzdGVtLWhlYWRlci1oZWlnaHQ7XG59XG5cbi5mb290ZXItbWVzc2FnZSB7XG4gIGhlaWdodDogJHN5c3RlbS1mb290ZXItaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogJHN5c3RlbS1mb290ZXItaGVpZ2h0O1xufVxuIiwiLmNhcmQtaGVhZGVyIHtcbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgLy8gaW50ZW5kZWQgdXNlIGNhc2U6IGNhcmQgd2l0aCBvbmx5IGEgaGVhZGVyIChmb3IgZXhhbXBsZSBlbXB0eSByZWxhdGVkIGlzc3VlcylcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkY2FyZC1pbm5lci1ib3JkZXItcmFkaXVzKTtcbiAgICB9XG4gIH1cbn1cblxuLmV4cGFuZGFibGUtY2FyZC5pcy1jb2xsYXBzZWQge1xuICBAYXBwbHkgZ2wtcGItMDtcblxuICAuY3J1ZC1ib2R5IHtcbiAgICBAYXBwbHkgZ2wtcC0wO1xuICAgIEBhcHBseSBnbC1tLTA7XG4gIH1cbn1cbiIsIkBrZXlmcmFtZXMgc291cmNlLWVkaXRvci1zcGlubmVyLXJvdGF0ZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuW2RhdGEtZWRpdG9yLWxvYWRpbmddIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgei1pbmRleDogMDtcblxuICA+ICoge1xuICAgIGZpbHRlcjogYmx1cig1cHgpO1xuICB9XG5cbiAgJjo6YmVmb3JlIHtcbiAgICAkc2l6ZTogMzJweDtcbiAgICAkYm9yZGVyLXdpZHRoOiAzcHg7XG4gICAgJGNvbG9yOiAkZ3JheS03MDA7XG5cbiAgICBjb250ZW50OiAnJztcbiAgICBAaW5jbHVkZSB3ZWJraXQtcHJlZml4KHRyYW5zZm9ybS1vcmlnaW4sIDUwJSA1MCUgY2FsYygoI3skc2l6ZX0gLyAyKSArICN7JGJvcmRlci13aWR0aH0pKTtcbiAgICB3aWR0aDogJHNpemU7XG4gICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICBib3JkZXItd2lkdGg6ICRib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLWNvbG9yOiByZ2JhKCRjb2xvciwgMC4yNSk7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBhbmltYXRpb24tbmFtZTogc291cmNlLWVkaXRvci1zcGlubmVyLXJvdGF0ZTtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNnM7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cblxuICBwcmUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuW2lkXj0nc291cmNlLWVkaXRvci0nXSB7XG4gIGhlaWdodDogNTAwcHg7XG59XG5cbi5zb3VyY2UtZWRpdG9yLXByZXZpZXcge1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC5tZCB7XG4gICAgb3ZlcmZsb3c6IHNjcm9sbDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTY7XG4gICAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtNjtcbiAgICBwYWRkaW5nLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5nbC1zb3VyY2UtZWRpdG9yIHtcbiAgICBvcmRlcjogLTE7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbC1ib3JkZXItcmFkaXVzLWJhc2UgJGdsLWJvcmRlci1yYWRpdXMtYmFzZTtcbiAgfVxufVxuXG4ubW9uYWNvLWVkaXRvci5nbC1zb3VyY2UtZWRpdG9yIHtcbiAgLy8gRml4IHVucmVhZGFibGUgaGVhZGluZ3MgaW4gdG9vbHRpcHMgZm9yIHN5bnRheCBoaWdobGlnaHRpbmcgdGhlbWVzIHRoYXQgZG9uJ3QgbWF0Y2ggZ2VuZXJhbCB0aGVtZVxuICAmLnZzLWRhcmsgLm1hcmtkb3duLWhvdmVyIHtcbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNiB7XG4gICAgICBjb2xvcjogJHNvdXJjZS1lZGl0b3ItaG92ZXItbGlnaHQtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAmLnZzIC5tYXJrZG93bi1ob3ZlciB7XG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYge1xuICAgICAgY29sb3I6ICRzb3VyY2UtZWRpdG9yLWhvdmVyLWRhcmstdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubWFyZ2luLXZpZXctb3ZlcmxheXMge1xuICAgIC5saW5lLW51bWJlcnMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS00MDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgICAgICAgd2lkdGg6ICRnbC1zcGFjaW5nLXNjYWxlLTQ7XG4gICAgICAgIGhlaWdodDogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiAgICAgICAgbWFzay1pbWFnZTogdXJsKCdAZ2l0bGFiL3N2Z3MvZGlzdC9pY29ucy1zdGFja2VkLnN2ZyNsaW5rJyk7XG4gICAgICAgIG1hc2stcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIG1hc2stc2l6ZTogY292ZXI7XG4gICAgICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyICFpbXBvcnRhbnQ7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXI6OmJlZm9yZSB7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZTo6YmVmb3JlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgb3V0bGluZTogYXV0bztcbiAgICAgIH1cblxuICAgICAgLmxpbmstYW5jaG9yIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBSZW1vdmUgY3VzdG9tIGZvY3VzIGZyb20gZWxlbWVudFxuICAuaW5wdXRhcmVhIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi5hY3RpdmUtbGluZS10ZXh0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZS02MDA7XG4gIG9wYWNpdHk6IDAuMztcbn1cbiIsIi8qKlxuKiBMaW5lIG5vdGUgYnV0dG9uIG9uIHRoZSBzaWRlIG9mIGRpZmZzXG4qL1xuLmRpZmYtZ3JpZC1sZWZ0OmhvdmVyLFxuLmRpZmYtZ3JpZC1yaWdodDpob3Zlcixcbi5saW5lX2hvbGRlciAuaXMtb3Zlcjpub3QoLm5vLWNvbW1lbnQtYnRuKSB7XG4gIC5hZGQtZGlmZi1ub3RlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDEwMTtcbiAgfVxufVxuXG4udG9vbHRpcC13cmFwcGVyLmFkZC1kaWZmLW5vdGUge1xuICBtYXJnaW4tbGVmdDogLTUycHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgei1pbmRleDogMTA7XG59XG5cbi5ub3RlLWJ1dHRvbi5hZGQtZGlmZi1ub3RlIHtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC10ZXh0LWZlZWRiYWNrLWluZm87XG4gIG9wYWNpdHk6IDA7XG4gIHdpbGwtY2hhbmdlOiBvcGFjaXR5O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBhZGRpbmc6IDFweDtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1mZWVkYmFjay1pbmZvLWljb24tY29sb3IpO1xuICB3aWR0aDogMjRweDtcbiAgaGVpZ2h0OiAyNHB4O1xuXG4gICY6aG92ZXIsXG4gICYuaW52ZXJ0ZWQge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tZ2wtZmVlZGJhY2staW5mby1pY29uLWNvbG9yKTtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8taWNvbi1jb2xvcik7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxuXG4gICZbZGlzYWJsZWRdIHtcbiAgICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kaXNhYmxlZDtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3ItZGlzYWJsZWQpO1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIH1cbn1cblxuLnVuaWZpZWQtZGlmZi1jb21wb25lbnRzLWRpZmYtbm90ZS1idXR0b24ge1xuICAmOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8taWNvbi1jb2xvcik7XG4gICAgbWFzay1pbWFnZTogdXJsKCdAZ2l0bGFiL3N2Z3MvZGlzdC9pY29ucy1zdGFja2VkLnN2ZyNjb21tZW50Jyk7XG4gICAgbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBtYXNrLXNpemU6IGNvdmVyO1xuICAgIG1hc2stcG9zaXRpb246IGNlbnRlcjtcbiAgICBjb250ZW50OiAnJztcbiAgICB3aWR0aDogMTJweDtcbiAgICBoZWlnaHQ6IDEycHg7XG4gIH1cblxuICAmOmhvdmVyOm5vdChbZGlzYWJsZWRdKSxcbiAgJi5pbnZlcnRlZCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICAgIH1cbiAgfVxufVxuXG4uZGlzYWJsZWQtY29tbWVudCB7XG4gIEBhcHBseSBnbC10ZXh0LWRpc2FibGVkO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1sZztcbiAgQGFwcGx5IGdsLXB5LTM7XG4gIEBhcHBseSBnbC1weC0wO1xuXG4gIGE6bm90KC5sZWFybi1tb3JlKSB7XG4gICAgQGFwcGx5IGdsLXRleHQtbGluaztcbiAgfVxufVxuXG4vLyBWdWUgcmVmYWN0b3JlZCBkaWZmIGRpc2N1c3Npb24gYWRqdXN0bWVudHNcbi5maWxlcyB7XG4gIC5kaWZmLWRpc2N1c3Npb25zIHtcbiAgICAubm90ZS1kaXNjdXNzaW9uLnRpbWVsaW5lLWVudHJ5IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgdWwubm90ZXMgbGkubm90ZS13cmFwcGVyIHtcbiAgICAgICAgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgICAgICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nLTggJGdsLXBhZGRpbmctOCAkZ2wtcGFkZGluZy04ICRnbC1wYWRkaW5nO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpbWVsaW5lLWF2YXRhciB7XG4gICAgICAgICAgbWFyZ2luOiAkZ2wtcGFkZGluZy04IDAgMCAkZ2wtcGFkZGluZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB1bC5ub3RlcyB7XG4gICAgICAgIGxpLnRvZ2dsZS1yZXBsaWVzLXdpZGdldCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgPiAudGltZWxpbmUtZW50cnktaW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgID4gLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAudGltZWxpbmUtaWNvbiB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGlzY3Vzc2lvbi1ib2R5IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgLmRpc2N1c3Npb24td3JhcHBlciB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmRpZmYtY29tbWVudC1mb3JtIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4uZGlzY3Vzc2lvbi1maWx0ZXItY29udGFpbmVyIHtcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIG1hcmdpbi1ib3R0b206ICRnbC1wYWRkaW5nLTQ7XG4gIH1cbn1cblxuLy8gRGlmZiBjb2RlIG9uIG92ZXJ2aWV3IHRhYlxuLmRpc2N1c3Npb24tYm9keSAuZGlmZi1maWxlIHtcbiAgLmZpbGUtdGl0bGUge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgbWFyZ2luLWxlZnQ6ICRub3RlLXNwYWNpbmctbGVmdDtcblxuICAgICY6aG92ZXIge1xuICAgICAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgICB9XG4gIH1cblxuICAubGluZV9jb250ZW50IHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gIH1cblxuICAuZGlmZi1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogJG5vdGUtc3BhY2luZy1sZWZ0O1xuXG4gICAgLmxpbmVfaG9sZGVyIHRkOmZpcnN0LW9mLXR5cGUge1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1sO1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1sLXNlY3Rpb247XG4gICAgfVxuXG4gICAgLmxpbmVfaG9sZGVyIHRkOmxhc3Qtb2YtdHlwZSB7XG4gICAgICBAYXBwbHkgZ2wtYm9yZGVyLXI7XG4gICAgICBAYXBwbHkgZ2wtYm9yZGVyLXItc2VjdGlvbjtcbiAgICB9XG5cbiAgICAuZGlzY3Vzc2lvbi1ub3RlcyB7XG4gICAgICBtYXJnaW4tbGVmdDogLSRub3RlLXNwYWNpbmctbGVmdDtcblxuICAgICAgLm5vdGVzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG5cbiAgICAgIC5ub3Rlcy1jb250ZW50IHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgfVxuXG4gICAgICAudGltZWxpbmUtY29udGVudCB7XG4gICAgICAgIGJvcmRlci10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udGFiLXBhbmUubm90ZXMge1xuICAuZGlmZi1maWxlIC5ub3RlcyAuc3lzdGVtLW5vdGUge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4udGFiLXBhbmUuZGlmZnMge1xuICAuc3lzdGVtLW5vdGUge1xuICAgIHBhZGRpbmc6IDAgJGdsLXBhZGRpbmc7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIH1cblxuICAubm90ZXMgPiAubm90ZS1kaXNjdXNzaW9uIGxpLm5vdGUuc3lzdGVtLW5vdGUge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4uZGlmZi1maWxlIHtcbiAgLmRpZmYtZ3JpZC1sZWZ0OmhvdmVyLFxuICAuZGlmZi1ncmlkLXJpZ2h0OmhvdmVyLFxuICAuaXMtb3ZlciB7XG4gICAgLmFkZC1kaWZmLW5vdGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLmRpc2N1c3Npb24tbm90ZXMge1xuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC5zeXN0ZW0tbm90ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTWVyZ2UgcmVxdWVzdCBub3RlcyBpbiBkaWZmc1xuICAvLyBEaWZmIGlzIGlubGluZVxuICAubm90ZXMtY29udGVudCAubm90ZS1oZWFkZXIgLm5vdGUtaGVhZGxpbmUtbGlnaHQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAubm90ZXNfaG9sZGVyIHtcbiAgICBmb250LWZhbWlseTogJHJlZ3VsYXItZm9udDtcblxuICAgIC5kaWZmLXRkLFxuICAgIHRkIHtcbiAgICAgIEBhcHBseSBnbC1ib3JkZXI7XG4gICAgICBib3JkZXItbGVmdDogMDtcblxuICAgICAgLmRpc2N1c3Npb24tbm90ZXMgLnRpbWVsaW5lLWVudHJ5OmZpcnN0LW9mLXR5cGUgPiAudGltZWxpbmUtZW50cnktaW5uZXIge1xuICAgICAgICBAYXBwbHkgZ2wtYmctc2VjdGlvbjtcbiAgICAgICAgQGFwcGx5IGRhcms6Z2wtYm9yZGVyLWItc2VjdGlvbjtcblxuICAgICAgICAudG9nZ2xlLXJlcGxpZXMtd2lkZ2V0IHtcbiAgICAgICAgICBAYXBwbHkgZ2wtYm9yZGVyLWItc3VidGxlO1xuICAgICAgICAgIEBhcHBseSBkYXJrOmdsLWJvcmRlci1iLXNlY3Rpb247XG4gICAgICAgIH1cblxuICAgICAgICAudG9nZ2xlLXJlcGxpZXMtd2lkZ2V0W2FyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiXSB7XG4gICAgICAgICAgQGFwcGx5IGdsLWJvcmRlci1iLTA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm5vdGVzID4gLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6ICRnbC1wYWRkaW5nLTEyO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubm90ZXMtY29udGVudCB7XG4gICAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgICAgICAgJi5wYXJhbGxlbCB7XG4gICAgICAgICAgYm9yZGVyLXdpZHRoOiAxcHg7XG5cbiAgICAgICAgICAmLm5ldyB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLm5vdGUtaGVhZGVyIHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLm5vdGVzIHtcbiAgICAgICAgICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmRpZmYtZ3JpZC1jb21tZW50czpsYXN0LWNoaWxkIHtcbiAgICAubm90ZXMtY29udGVudCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI7XG4gICAgfVxuICB9XG59XG5cbi5kaWZmLWZpbGVzLWhvbGRlciB7XG4gIC5kaXNjdXNzaW9uLW5vdGVzIC50aW1lbGluZS1lbnRyeTpmaXJzdC1vZi10eXBlID4gLnRpbWVsaW5lLWVudHJ5LWlubmVyIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbiAgICBAYXBwbHkgZGFyazpnbC1ib3JkZXItYi1zZWN0aW9uO1xuXG4gICAgLnRpbWVsaW5lLWVudHJ5Omxhc3QtY2hpbGQgLnRpbWVsaW5lLWVudHJ5LWlubmVyIHtcbiAgICAgIEBhcHBseSBnbC1ib3JkZXItYi0wO1xuICAgIH1cbiAgfVxuXG59XG5cbi5kaWZmcyB7XG4gIC5kaXNjdXNzaW9uLW5vdGVzIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxuXG4gIC5ub3RlLXdyYXBwZXIge1xuICAgICYuc3lzdGVtLW5vdGUge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgfVxuICB9XG5cbiAgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLXQtbGc7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLmRpc2N1c3Npb24tZm9ybSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5kaXNhYmxlZC1jb21tZW50IHtcbiAgICAgIHBhZGRpbmc6ICRnbC12ZXJ0LXBhZGRpbmcgMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4uY29kZS1jb21taXQgLm5vdGVzLWNvbnRlbnQsXG4uZGlmZi12aWV3ZXIgPiAuaW1hZ2UgfiAubm90ZS1jb250YWluZXIge1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iLWxnO1xuXG4gIGxpLm5vdGUtY29tbWVudCB7XG4gICAgcGFkZGluZzogJGdsLXBhZGRpbmctOCAkZ2wtcGFkZGluZy04ICRnbC1wYWRkaW5nLTggJGdsLXBhZGRpbmc7XG5cbiAgICAuYXZhdGFyIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG5cbiAgICAubm90ZS1ib2R5IHtcbiAgICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nLTQgMCAkZ2wtcGFkZGluZy04O1xuICAgICAgQGFwcGx5IC1nbC1tdC00O1xuICAgICAgbWFyZ2luLWxlZnQ6ICRub3RlLXNwYWNpbmctbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLmRpZmYtdmlld2VyID4gLmltYWdlIH4gLm5vdGUtY29udGFpbmVyIGZvcm0ubmV3LW5vdGUge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLy8gRGlmZiBub3RlcyBvbiBvdmVydmlldyB0YWJcbi5ub3Rlcy50aW1lbGluZSA+IC50aW1lbGluZS1lbnRyeS5ub3RlLWRpc2N1c3Npb24gLnRpbWVsaW5lLWNvbnRlbnQgLmRpZmYtY29udGVudCB1bCBsaTpmaXJzdC1vZi10eXBlIHtcbiAgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLnRpbWVsaW5lLWVudHJ5LWlubmVyIHtcbiAgICBtYXJnaW4tbGVmdDogJG5vdGUtc3BhY2luZy1sZWZ0O1xuICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1sO1xuICAgIEBhcHBseSBnbC1ib3JkZXItbC1zZWN0aW9uO1xuICAgIEBhcHBseSBnbC1ib3JkZXItcjtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXItc2VjdGlvbjtcblxuICAgIC50aW1lbGluZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nLTggJGdsLXBhZGRpbmctOCAkZ2wtcGFkZGluZy04ICRnbC1wYWRkaW5nO1xuICAgICAgQGFwcGx5IGdsLWJnLXNlY3Rpb247XG5cbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgICAgICAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbiAgICAgICAgQGFwcGx5IGRhcms6Z2wtYm9yZGVyLWItc2VjdGlvbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGltZWxpbmUtYXZhdGFyIHtcbiAgICAgIG1hcmdpbjogJGdsLXBhZGRpbmctOCAwIDAgJGdsLXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLnRpbWVsaW5lLWRpc2N1c3Npb24tYm9keSB7XG4gICAgICBtYXJnaW4tbGVmdDogJG5vdGUtc3BhY2luZy1yZXBseS1sZWZ0O1xuICAgIH1cbiAgfVxufVxuIiwiLmZyYW1lLmNsaWNrLXRvLWNvbW1lbnQsXG4uaW1hZ2UtZGlmZi1vdmVybGF5IC5pbWFnZS1kaWZmLW92ZXJsYXktYWRkLWNvbW1lbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGN1cnNvcjogdXJsKCdpbGx1c3RyYXRpb25zL2ltYWdlX2NvbW1lbnRfbGlnaHRfY3Vyc29yLnN2ZycpICRpbWFnZS1jb21tZW50LWN1cnNvci1sZWZ0LW9mZnNldCAkaW1hZ2UtY29tbWVudC1jdXJzb3ItdG9wLW9mZnNldCxcbiAgICBhdXRvO1xuXG4gIC8vIFJldGluYSBjdXJzb3JcbiAgY3Vyc29yOiBpbWFnZS1zZXQodXJsKCdpbGx1c3RyYXRpb25zL2ltYWdlX2NvbW1lbnRfbGlnaHRfY3Vyc29yLnN2ZycpIDF4LFxuICB1cmwoJ2lsbHVzdHJhdGlvbnMvaW1hZ2VfY29tbWVudF9saWdodF9jdXJzb3JAMnguc3ZnJykgMngpICRpbWFnZS1jb21tZW50LWN1cnNvci1sZWZ0LW9mZnNldCAkaW1hZ2UtY29tbWVudC1jdXJzb3ItdG9wLW9mZnNldCxcbiAgICBhdXRvO1xuXG4gIC5jb21tZW50LWluZGljYXRvciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6ICgycHggKiAkaW1hZ2UtY29tbWVudC1jdXJzb3ItbGVmdC1vZmZzZXQpO1xuICAgIGhlaWdodDogKDJweCAqICRpbWFnZS1jb21tZW50LWN1cnNvci10b3Atb2Zmc2V0KTtcbiAgICBjb2xvcjogJGJsdWUtNDAwO1xuICAgIC8vIGNlbnRlciB0aGUgaW5kaWNhdG9yIHRvIG1hdGNoIHRoZSB0b3AgbGVmdCBjbGljayByZWdpb25cbiAgICBtYXJnaW4tdG9wOiAoLTFweCAqICRpbWFnZS1jb21tZW50LWN1cnNvci10b3Atb2Zmc2V0KSArIDI7XG4gICAgbWFyZ2luLWxlZnQ6ICgtMXB4ICogJGltYWdlLWNvbW1lbnQtY3Vyc29yLWxlZnQtb2Zmc2V0KSArIDE7XG5cbiAgICBzdmcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5mcmFtZSAuaW1hZ2UtY29tbWVudC1iYWRnZSxcbi5mcmFtZSAuY29tbWVudC1pbmRpY2F0b3Ige1xuICAvLyBDZW50ZXIgYWxpZ24gYmFkZ2VzIG9uIHRoZSBmcmFtZVxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbn1cblxuLmltYWdlLWNvbW1lbnQtYmFkZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyNHB4O1xuICBoZWlnaHQ6IDI0cHg7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogMDtcblxuICA+IHN2ZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbi5pbWFnZS1kaWZmLWF2YXRhci1saW5rLFxuLnVzZXItYXZhdGFyLWxpbmsge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmJhZGdlLmJhZGdlLXBpbGwsXG4gIC5pbWFnZS1jb21tZW50LWJhZGdlIHtcbiAgICB0b3A6IDI1cHg7XG4gICAgcmlnaHQ6IDhweDtcbiAgfVxufVxuXG4uaW1hZ2UtZGlmZi1vdmVybGF5LFxuLmltYWdlLWRpZmYtb3ZlcmxheS1hZGQtY29tbWVudCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG4iLCJAaW1wb3J0ICcuL3BhZ2VfYnVuZGxlcy9ub3Rlcy9kaWZmX2NvbW1lbnRzJztcbkBpbXBvcnQgJy4vcGFnZV9idW5kbGVzL25vdGVzL2ltYWdlX2NvbW1lbnRzJztcblxuJGRpZmYtZmlsZS1oZWFkZXI6IDQxcHg7XG5cbi8vIENvbW1vblxuLmRpZmYtZmlsZSB7XG4gIG1hcmdpbi1ib3R0b206ICRnbC1wYWRkaW5nO1xuXG4gIC5jb2RlLm1kLXN1Z2dlc3Rpb24tZGlmZiB7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWxnLWlubmVyO1xuICB9XG5cbiAgLmZpbGUtdGl0bGUsXG4gIC5maWxlLXRpdGxlLWZsZXgtcGFyZW50IHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBAc3VwcG9ydHMgKGNvbnRhaW5lci10eXBlOiBzY3JvbGwtc3RhdGUpIHtcbiAgICAgIGNvbnRhaW5lci10eXBlOiBzY3JvbGwtc3RhdGU7XG4gICAgICBjb250YWluZXItbmFtZTogZmlsZS1ob2xkZXItd3JhcHBlcjtcblxuICAgICAgQGNvbnRhaW5lciBmaWxlLWhvbGRlci13cmFwcGVyIHNjcm9sbC1zdGF0ZShzdHVjazogdG9wKSB7XG4gICAgICAgICY6OmJlZm9yZSxcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgICAgICAgICBAYXBwbHkgZ2wtdG9wLTA7XG4gICAgICAgICAgQGFwcGx5IGdsLXctNDtcbiAgICAgICAgICBAYXBwbHkgZ2wtaC00O1xuICAgICAgICAgIEBhcHBseSBnbC1iZy1pbmhlcml0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBAYXBwbHkgZ2wtbGVmdC0wO1xuICAgICAgICB9XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIEBhcHBseSBnbC1yaWdodC0wO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgY3Vyc29yOiBhdXRvO1xuICAgIH1cblxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byBkaWZmIGZpbGUgaGVhZGVyXG4gICAgJjpoYXMoLmdsLW5ldy1kcm9wZG93bi10b2dnbGVbYXJpYS1leHBhbmRlZD1cInRydWVcIl0pIHtcbiAgICAgIHotaW5kZXg6ICR6aW5kZXgtZHJvcGRvd24tbWVudTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihzbSwgcGFuZWwpIHtcbiAgICAgIC5maWxlLWhlYWRlci1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGZsZXg6IDE7XG4gICAgICB9XG5cbiAgICAgIC5maWxlLWFjdGlvbnMge1xuICAgICAgICBtYXJnaW4tbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gICAgICBwb3NpdGlvbjogc3RpY2t5O1xuICAgICAgdG9wOiBjYWxjKCN7JGNhbGMtYXBwbGljYXRpb24taGVhZGVyLWhlaWdodH0gKyAjeyRtci1zdGlja3ktaGVhZGVyLWhlaWdodH0gLSAjeyRnbC1ib3JkZXItc2l6ZS0xfSk7XG4gICAgICB6LWluZGV4OiAxMjA7XG5cbiAgICAgICsuZGlmZi1jb250ZW50IC5tZC1oZWFkZXItcHJldmlldyB7XG4gICAgICAgIHRvcDogY2FsYygjeyRjYWxjLWFwcGxpY2F0aW9uLWhlYWRlci1oZWlnaHR9ICsgI3skbXItc3RpY2t5LWhlYWRlci1oZWlnaHR9ICsgI3skZGlmZi1maWxlLWhlYWRlcn0gLSAjeyRnbC1ib3JkZXItc2l6ZS0xfSk7XG4gICAgICB9XG5cbiAgICAgICYuaXMtY29tbWl0LFxuICAgICAgJi5pcy1jb21wYXJlLFxuICAgICAgJi5pcy13aWtpIHtcbiAgICAgICAgdG9wOiBjYWxjKCN7JGNhbGMtYXBwbGljYXRpb24taGVhZGVyLWhlaWdodH0pO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgICB9XG5cbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHRvcDogLTFweDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gICAgJi5jb25mbGljdCAuZmlsZS10aXRsZSxcbiAgICAmLmNvbmZsaWN0IC5maWxlLXRpdGxlLWZsZXgtcGFyZW50IHtcbiAgICAgIHRvcDogJGNhbGMtYXBwbGljYXRpb24taGVhZGVyLWhlaWdodDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsLCBmYWxzZSkge1xuICAgICYuY29uZmxpY3QgLmZpbGUtdGl0bGUsXG4gICAgJi5jb25mbGljdCAuZmlsZS10aXRsZS1mbGV4LXBhcmVudCB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgLmRpZmYtY29udGVudCB7XG4gICAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcblxuICAgIC51bmZvbGQge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgIC5zdXBwcmVzc2VkLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDVweCkgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAvLyBcIkNoYW5nZXMgc3VwcHJlc3NlZC4gQ2xpY2sgdG8gc2hvdy5cIiBsaW5rXG4gICAgICAuc2hvdy1zdXBwcmVzc2VkLWRpZmYge1xuICAgICAgICBmb250LXNpemU6IDExMCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGlmZi1sb2FkaW5nLWVycm9yLWJsb2NrIHtcbiAgICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nICogMiAkZ2wtcGFkZGluZztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAuaW1hZ2Uge1xuICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6IHZhcigtLWRpZmYtZmlsZS1pbWFnZS12aWV3ZXItYm9yZGVyLXJhZGl1cyk7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gaW1hZ2UgZGlmZiB2aWV3ZXIgY29udGFpbmVyXG4gICAgJjpoYXMoPiAudmlldykge1xuICAgICAgcGFkZGluZy1ib3R0b206ICRnbC1wYWRkaW5nLTMyO1xuICAgIH1cblxuICAgIC53cmFwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAuZnJhbWUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gICAgICBsaW5lLWhlaWdodDogMDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICAgICAgQGluY2x1ZGUgY2hlY2tlcmJvYXJkLWJnO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgICYuZGVsZXRlZCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdsLXN0YXR1cy1kYW5nZXItaWNvbi1jb2xvcik7XG4gICAgICB9XG5cbiAgICAgICYuYWRkZWQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1zdGF0dXMtc3VjY2Vzcy1pY29uLWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaW1hZ2UtaW5mbyB7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBtYXJnaW46IDVweCAwIDA7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgfVxuXG4gICAgLnZpZXcuc3dpcGUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAuc3dpcGUtZnJhbWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgIC5zd2lwZS13cmFwIHtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyYXktMzAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0b3A6IDEzcHg7XG4gICAgICAgIHJpZ2h0OiA3cHg7XG5cbiAgICAgICAgJi5sZWZ0LW9yaWVudGVkIHtcbiAgICAgICAgICAvKiBvbmx5IGZvciBjb21taXQgdmlldyAoZGlmZmVyZW50IHN3aXBlIHZpZXdlcikgKi9cbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAkZ3JheS0zMDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmZyYW1lIHtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcblxuICAgICAgICAmLm9sZC1kaWZmIHtcbiAgICAgICAgICAvKiBvbmx5IGZvciBjb21taXQgLyBjb21wYXJlIHZpZXcgKi9cbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIH1cblxuICAgICAgICAmLmRlbGV0ZWQge1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0b3A6IDEzcHg7XG4gICAgICAgICAgcmlnaHQ6IDdweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc3dpcGUtYmFyIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgLnRvcC1oYW5kbGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTE1cHggM3B4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5ib3R0b20taGFuZGxlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNXB4IC0xMXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50b3AtaGFuZGxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3N3aXBlbW9kZV9zcHJpdGVzLmdpZicpIDAgM3B4IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3R0b20taGFuZGxlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgICAgd2lkdGg6IDE1cHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJ3N3aXBlbW9kZV9zcHJpdGVzLmdpZicpIDAgLTExcHggbm8tcmVwZWF0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8udmlldy5zd2lwZVxuICAgIC52aWV3Lm9uaW9uLXNraW4ge1xuICAgICAgLm9uaW9uLXNraW4tZnJhbWUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgIC5mcmFtZS5hZGRlZCxcbiAgICAgIC5mcmFtZS5kZWxldGVkIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAuY29udHJvbHMge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xNTBweDtcblxuICAgICAgICAuZHJhZy10cmFjayB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAxMnB4O1xuICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICB3aWR0aDogMjc2cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCdvbmlvbl9za2luX3Nwcml0ZXMuZ2lmJykgLTRweCAtMjBweCByZXBlYXQteDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kcmFnZ2VyIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnb25pb25fc2tpbl9zcHJpdGVzLmdpZicpIDAgLTM0cHggcmVwZWF0LXg7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRyYW5zcGFyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnb25pb25fc2tpbl9zcHJpdGVzLmdpZicpIC0ycHggMCBuby1yZXBlYXQ7XG4gICAgICAgIH1cblxuICAgICAgICAub3BhcXVlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKCdvbmlvbl9za2luX3Nwcml0ZXMuZ2lmJykgLTJweCAtMTBweCBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLy52aWV3Lm9uaW9uLXNraW5cbiAgfVxuXG4gIC52aWV3LW1vZGVzIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuXG4gICAgdWwsXG4gICAgbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci1sO1xuICAgICAgcGFkZGluZzogMCAxMnB4IDAgMTZweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgICAgICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmRpc2FibGVkIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGlmZi1maWxlLWNvbnRhaW5lciB7XG4gICAgLmZyYW1lLmRlbGV0ZWQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtc3RhdHVzLWRhbmdlci1pY29uLWNvbG9yKTtcbiAgICB9XG5cbiAgICAuZnJhbWUuYWRkZWQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ2wtc3RhdHVzLXN1Y2Nlc3MtaWNvbi1jb2xvcik7XG4gICAgfVxuXG4gICAgLnN3aXBlLnZpZXcsXG4gICAgLm9uaW9uLXNraW4udmlldyB7XG4gICAgICAuc3dpcGUtd3JhcCB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cblxuICAgICAgLmZyYW1lLmRlbGV0ZWQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgfVxuXG4gICAgICAuc3dpcGUtYmFyIHtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIC50b3AtaGFuZGxlIHtcbiAgICAgICAgICB0b3A6IC0xNHB4O1xuICAgICAgICAgIGxlZnQ6IC03cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYm90dG9tLWhhbmRsZSB7XG4gICAgICAgICAgYm90dG9tOiAtMTRweDtcbiAgICAgICAgICBsZWZ0OiAtN3B4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5maWxlLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAuZmlsZS1jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAub25pb24tc2tpbi52aWV3IC5jb250cm9scyB7XG4gICAgICBib3R0b206IC0yNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5kaXNjdXNzaW9uLW5vdGVzIC5kaXNjdXNzaW9uLW5vdGVzIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXItbGVmdDogMDtcbiAgfVxufVxuXG4uY29kZSAuZGlmZi1ncmlkLXJvdy5saW5lX2hvbGRlci5kaWZmLXRyIC5kaWZmLXRkLmNvbW1lbnRlZDpub3QoLmhsbCkge1xuICAtLWhpZ2hsaWdodC1ib3JkZXItY29sb3I6ICN7JGdsLWNvbG9yLWJsdWUtMzAwfTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdsLWNvbG9yLWJsdWUtNTA7XG59XG5cbi5kaWZmLXRhYmxlLmNvZGUsXG50YWJsZS5jb2RlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtZmFtaWx5OiAkbW9ub3NwYWNlLWZvbnQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0YWJsZS1sYXlvdXQ6IGZpeGVkO1xuICBib3JkZXItcmFkaXVzOiAwIDAgJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXIgJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI7XG5cbiAgLmRpZmYtdGQuaGlnaGxpZ2h0LXRvcCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggdmFyKC0taGlnaGxpZ2h0LWJvcmRlci1jb2xvciwgJGJsdWUtMzAwKTtcbiAgfVxuXG4gIC5kaWZmLXRkLmhpZ2hsaWdodC1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCB2YXIoLS1oaWdobGlnaHQtYm9yZGVyLWNvbG9yLCAkYmx1ZS0zMDApO1xuICB9XG5cbiAgLmRpZmYtdGQuaGlnaGxpZ2h0LXRvcC5oaWdobGlnaHQtYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0xcHggdmFyKC0taGlnaGxpZ2h0LWJvcmRlci1jb2xvciwgJGJsdWUtMzAwKSwgaW5zZXQgMCAxcHggdmFyKC0taGlnaGxpZ2h0LWJvcmRlci1jb2xvciwgJGJsdWUtMzAwKTtcbiAgfVxuXG4gIC5kaWZmLXRyLmxpbmVfaG9sZGVyIC5kaWZmLXRkLFxuICB0ci5saW5lX2hvbGRlciB0ZCB7XG4gICAgbGluZS1oZWlnaHQ6ICRjb2RlLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gICAgc3BhbiB7XG4gICAgICB3aGl0ZS1zcGFjZTogYnJlYWstc3BhY2VzO1xuICAgIH1cblxuICAgICYuZGlmZi1saW5lLW51bSB7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAgMTBweCAwIDVweDtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICAmOm50aC1vZi10eXBlKDIpIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAxcHg7XG4gICAgICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ub3JtYWw7XG5cbiAgICAgICAgJltkaXNhYmxlZF0ge1xuICAgICAgICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjphY3RpdmUge1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOm5vdCguanMtdW5mb2xkLWJvdHRvbSkgYSB7IC8vIHN0eWxlbGludC1kaXNhYmxlLWxpbmUgZ2l0bGFiL25vLWpzLWNsYXNzXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIC8vIGRvIG5vdCBwb3NpdGlvbiB0aGlzIGVsZW1lbnQgYWJzb2x1dGVseSwgb3RoZXJ3aXNlIGVtcHR5IGxpbmVzIHdpbGwgY29sbGFwc2VcbiAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtbGluZW51bWJlcik7XG4gICAgICAgIH1cblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAtNXB4O1xuICAgICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5saW5lX2NvbnRlbnQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwIDEuNWVtO1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xuXG4gICAgICAmLnBhcmFsbGVsIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgICAgd2lkdGg6IDQ2JTtcbiAgICAgIH1cblxuICAgICAgJi5vbGQge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICctJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDogMC41ZW07XG4gICAgICAgIH1cblxuICAgICAgICAmLndpdGgtY292ZXJhZ2U6OmJlZm9yZSB7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm5ldyB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJysnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAwLjVlbTtcbiAgICAgICAgfVxuXG4gICAgICAgICYud2l0aC1jb3ZlcmFnZTo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubGluZV9ob2xkZXI6bGFzdC1vZi10eXBlIHtcbiAgICAuZGlmZi1ncmlkLWxlZnQge1xuICAgICAgLmRpZmYtdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWxnLWlubmVyO1xuXG4gICAgICAgIC5kaWZmLWxpbmUtZXhwYW5kLWJ1dHRvbiB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGlmZi10ZDpsYXN0LWNoaWxkOm5vdCgubGVmdC1zaWRlLnBhcmFsbGVsKSxcbiAgICB0ZDpsYXN0LWNoaWxkOm5vdCgubGVmdC1zaWRlLnBhcmFsbGVsKSB7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtbGctaW5uZXI7XG4gICAgfVxuICB9XG5cbiAgLmxpbmVfaG9sZGVyOmxhc3Qtb2YtdHlwZSB7XG4gICAgLmRpZmYtZ3JpZC1sZWZ0LmxlZnQtc2lkZS5wYXJhbGxlbCB7XG4gICAgICAuZGlmZi10ZDpsYXN0LWNoaWxkLFxuICAgICAgdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYubGVmdC1zaWRlLXNlbGVjdGVkIHtcbiAgICAuZGlmZi10ZC5saW5lX2NvbnRlbnQucGFyYWxsZWwucmlnaHQtc2lkZSxcbiAgICB0ZC5saW5lX2NvbnRlbnQucGFyYWxsZWwucmlnaHQtc2lkZSB7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICAmLnJpZ2h0LXNpZGUtc2VsZWN0ZWQge1xuICAgIC5kaWZmLXRkLmxpbmVfY29udGVudC5wYXJhbGxlbC5sZWZ0LXNpZGUsXG4gICAgdGQubGluZV9jb250ZW50LnBhcmFsbGVsLmxlZnQtc2lkZSB7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmRpZmYtc3RhdHMge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwIDFyZW07XG5cbiAgLmRpZmYtc3RhdHMtY29udGVudHMge1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICB9XG5cbiAgLmRpZmYtc3RhdHMtZ3JvdXAge1xuICAgIHBhZGRpbmc6IDAgMC4yNXJlbTtcbiAgfVxuXG4gIHN2Zy5kaWZmLXN0YXRzLWljb24ge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LWJvdHRvbTtcbiAgfVxuXG4gICYuaXMtY29tcGFyZS12ZXJzaW9ucy1oZWFkZXIge1xuICAgIC5kaWZmLXN0YXRzLWdyb3VwIHtcbiAgICAgIHBhZGRpbmc6IDAgMC4yNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmZpbGUtY29udGVudCAuZGlmZi1maWxlIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5kaWZmLXdyYXAtbGluZXMgLmxpbmVfY29udGVudCB7XG4gIGZvbnQtc2l6ZTogJGNvZGUtZm9udC1zaXplLWZpeGVkO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG59XG5cbi5pbmxpbmUtcGFyYWxsZWwtYnV0dG9ucyB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLm1lcmdlLXJlcXVlc3QtZGV0YWlscyAuZmlsZS1jb250ZW50LmltYWdlX2ZpbGUgaW1nIHtcbiAgbWF4LWhlaWdodDogNTB2aDtcbn1cblxuLmRpZmYtY29tbWVudHMtbW9yZS1jb3VudCxcbi5kaWZmLW5vdGVzLWNvbGxhcHNlLFxuLmlubGluZS1maW5kaW5ncy1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGF2YXRhci1jb3VudGVyKDUwJSk7XG59XG5cbi5kaWZmLW5vdGVzLWNvbGxhcHNlLFxuLmlubGluZS1maW5kaW5ncy1jb2xsYXBzZSB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwYWRkaW5nOiAwO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xcyBlYXNlLW91dDtcbiAgei1pbmRleDogMTAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgQGluY2x1ZGUgY29kZS1pY29uLXNpemUoKTtcblxuICAuY29sbGFwc2UtaWNvbiB7XG4gICAgaGVpZ2h0OiA1MCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBzdmcge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cblxuICAuY29sbGFwc2UtaWNvbixcbiAgcGF0aCB7XG4gICAgZmlsbDogJHdoaXRlO1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG59XG5cbi5ub3RlLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgQGFwcGx5IGdsLWJvcmRlci10LXN1YnRsZTtcblxuICAvLyBkb3VibGUgamFnZ2VkIGxpbmUgZGl2aWRlclxuICAuZGlzY3Vzc2lvbi1ub3RlcyArIC5kaXNjdXNzaW9uLW5vdGVzOjpiZWZvcmUsXG4gIC5kaWZmLWZpbGUtZGlzY3Vzc2lvbnMgKyAuZGlzY3Vzc2lvbi1mb3JtOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwcHg7XG4gICAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoNDVkZWcsXG4gICAgdHJhbnNwYXJlbnQsXG4gICAgdHJhbnNwYXJlbnQgNzMlLFxuICAgICRkaWZmLWphZ2dlZC1ib3JkZXItZ3JhZGllbnQtY29sb3IgNzUlLFxuICAgICRkaWZmLWphZ2dlZC1iZy1jb2xvciA4MCUpLFxuICAgICAgbGluZWFyLWdyYWRpZW50KDIyNWRlZyxcbiAgICB0cmFuc3BhcmVudCxcbiAgICB0cmFuc3BhcmVudCA3MyUsXG4gICAgJGRpZmYtamFnZ2VkLWJvcmRlci1ncmFkaWVudC1jb2xvciA3NSUsXG4gICAgJGRpZmYtamFnZ2VkLWJnLWNvbG9yIDgwJSksXG4gICAgICBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLFxuICAgIHRyYW5zcGFyZW50LFxuICAgIHRyYW5zcGFyZW50IDczJSxcbiAgICAkZGlmZi1qYWdnZWQtYm9yZGVyLWdyYWRpZW50LWNvbG9yIDc1JSxcbiAgICAkZGlmZi1qYWdnZWQtYmctY29sb3IgODAlKSxcbiAgICAgIGxpbmVhci1ncmFkaWVudCgtNDVkZWcsXG4gICAgdHJhbnNwYXJlbnQsXG4gICAgdHJhbnNwYXJlbnQgNzMlLFxuICAgICRkaWZmLWphZ2dlZC1ib3JkZXItZ3JhZGllbnQtY29sb3IgNzUlLFxuICAgICRkaWZmLWphZ2dlZC1iZy1jb2xvciA4MCUpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDVweCA1cHgsIDAgNXB4LCAwIDVweCwgNXB4IDVweDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDEwcHggMTBweDtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0O1xuICB9XG5cbiAgLmRpZmYtZmlsZS1kaXNjdXNzaW9ucyArIC5kaXNjdXNzaW9uLWZvcm0ge1xuICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kZ2wtcGFkZGluZztcbiAgICAgIG1hcmdpbi1yaWdodDogLSRnbC1wYWRkaW5nO1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsLXBhZGRpbmc7XG4gICAgfVxuICB9XG5cbiAgLm5vdGVzIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAuZGlmZi1ub3Rlcy1jb2xsYXBzZSxcbiAgLmlubGluZS1maW5kaW5ncy1jb2xsYXBzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC0xMnB4O1xuICB9XG59XG5cbi5kaWZmLWZpbGUgLm5vdGUtY29udGFpbmVyID4gLm5ldy1ub3RlLFxuLm5vdGUtY29udGFpbmVyIC5kaXNjdXNzaW9uLW5vdGVzLmRpZmYtZGlzY3Vzc2lvbnMge1xuICAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIge1xuICAgIHBhZGRpbmctdG9wOiAkZ2wtcGFkZGluZy0xMjtcbiAgICBtYXJnaW4tYm90dG9tOiAtMXB4O1xuICB9XG59XG5cbi5ub3Rlcy5hY3RpdmUge1xuICAuZGlmZi1maWxlIC5ub3RlLWNvbnRhaW5lciA+IC5uZXctbm90ZSxcbiAgLm5vdGUtY29udGFpbmVyIC5kaXNjdXNzaW9uLW5vdGVzIHtcbiAgICAvLyBPdmVycmlkZSBvdXIgbWFyZ2luIGFuZCBib3JkZXIgKHNldCBmb3IgZGlmZiB0YWIpXG4gICAgLy8gd2hlbiB1c2VyIGlzIG9uIHRoZSBkaXNjdXNzaW9uIHRhYiBmb3IgTVJcbiAgICBtYXJnaW4tbGVmdDogaW5oZXJpdDtcbiAgICBib3JkZXItbGVmdDogaW5oZXJpdDtcbiAgfVxufVxuXG4uZmlsZXM6bm90KFtkYXRhLWNhbi1jcmVhdGUtbm90ZV0pIC5mcmFtZSB7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLmRpc2N1c3Npb24tbm90ZXMge1xuICBtaW4taGVpZ2h0OiAzNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICAvLyBGaXJzdCBjaGlsZCBkb2VzIG5vdCBoYXZlIHRoZSBqYWdnZWQgYm9yZGVyc1xuICAgIG1pbi1oZWlnaHQ6IDI1cHg7XG4gIH1cblxuICAuZGlmZi1ub3Rlcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAmLmNvbGxhcHNlZCB7XG4gICAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG5cbiAgICAuZGlmZi1ub3Rlcy1leHBhbmQge1xuICAgICAgZGlzcGxheTogaW5pdGlhbDtcbiAgICB9XG5cbiAgICAuZGlmZi1ub3Rlcy1jb2xsYXBzZSxcbiAgICAuaW5saW5lLWZpbmRpbmdzLWNvbGxhcHNlLFxuICAgIC5ub3RlLFxuICAgIC5kaXNjdXNzaW9uLXJlcGx5LWhvbGRlciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHVsLm5vdGVzIHtcbiAgICBsaS50b2dnbGUtcmVwbGllcy13aWRnZXQsXG4gICAgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkbm90ZS1zcGFjaW5nLWxlZnQ7XG5cbiAgICAgICZbYXJpYS1leHBhbmRlZD1cImZhbHNlXCJdIHtcbiAgICAgICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICAgICAgICBAYXBwbHkgZ2wtYm9yZGVyLWItc2VjdGlvbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmRpc2N1c3Npb24tYm9keSAuaW1hZ2UgLmZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZGlzY3Vzc2lvbi1jb2xsYXBzaWJsZSB7XG4gIG1hcmdpbjogMCAkZ2wtcGFkZGluZyAkZ2wtcGFkZGluZztcblxuICAubm90ZXMge1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xuICB9XG59XG5cbi5kaWZmLXN1Z2dlc3QtcG9wb3ZlciB7XG4gICYucG9wb3ZlciB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgei1pbmRleDogNjEwO1xuICB9XG5cbiAgLnBvcG92ZXItaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKGxnLCBwYW5lbCkge1xuICAuZGlmZnMgLmZpbGVzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG5cbiAgLmRpc2N1c3Npb24tY29sbGFwc2libGUge1xuICAgIG1hcmdpbjogJGdsLXBhZGRpbmc7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4vLyBOb3RlOiBQcmV2ZW50cyB0YWxsIGZpbGVzIGZyb20gYXBwZWFyaW5nIGFib3ZlIHN0aWNreSB0YWJzXG4uZGlmZi1maWxlcy1ob2xkZXIgLnZ1ZS1yZWN5Y2xlLXNjcm9sbGVyX19pdGVtLXZpZXcgPiBkaXY6bm90KC5hY3RpdmUpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDEwMHZoO1xufVxuXG4uZGlmZi1ncmlkLXJvdy5leHBhbnNpb24ubWF0Y2gge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgdmFyKC0tZGlmZi1leHBhbnNpb24tYmFja2dyb3VuZC1jb2xvcik7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1kaWZmLWV4cGFuc2lvbi1iYWNrZ3JvdW5kLWNvbG9yKTtcblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICB9XG59XG5cbi50b29sdGlwIHtcbiAgJi5jb3ZlcmFnZSB7XG4gICAgbGVmdDogLTNweCAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi5uby1jb3ZlcmFnZSB7XG4gICAgbGVmdDogLTJweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5kaWZmLWZpbGUubGlua2VkLWZpbGUge1xuICBib3JkZXItY29sb3I6IHZhcigtLWJsdWUtMjAwKTtcblxuICAuZmlsZS10aXRsZSB7XG4gICAgQGFwcGx5IGdsLWJnLWZlZWRiYWNrLWluZm87XG4gIH1cbn1cblxuLmNvbGxhcHNlZC1maWxlLXdhcm5pbmcge1xuICBjb2xvcjogdmFyKC0tZGlmZi13YXJuaW5nLXRleHQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kaWZmLXdhcm5pbmctYmFja2dyb3VuZC1jb2xvcik7XG59XG4iLCJAaW1wb3J0ICdmcmFtZXdvcmsvdmFyaWFibGVzJztcbkBpbXBvcnQgJ2ZyYW1ld29yay92YXJpYWJsZXNfb3ZlcnJpZGVzJztcblxuLyoqXG4gKiBDU1MgQ3VzdG9tIHByb3BlcnRpZXNcbiAqL1xuOnJvb3Qge1xuICAtLWR1by1jaGF0LWJ1YmJsZS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtODAwKTtcbiAgLS1kdW8tY2hhdC1idWJibGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTUwKTtcbn1cblxuOnJvb3QuZ2wtZGFyayB7XG4gIC0tZHVvLWNoYXQtYnViYmxlLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7XG4gIC0tZHVvLWNoYXQtYnViYmxlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApO1xufVxuXG46cm9vdC51aS1uZXV0cmFsIHtcbiAgLS1kdW8tY2hhdC1idWJibGUtZm9yZWdyb3VuZC1jb2xvci1kZWZhdWx0OiB2YXIoLS1nbC1jb2xvci1ibHVlLTgwMCk7XG4gIC0tZHVvLWNoYXQtYnViYmxlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MCk7XG59XG5cbjpyb290LnVpLW5ldXRyYWwuZ2wtZGFyayB7XG4gIC0tZHVvLWNoYXQtYnViYmxlLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS01MCk7XG4gIC0tZHVvLWNoYXQtYnViYmxlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItYmx1ZS04MDApO1xufVxuXG4uZHVvLWNoYXQtbGF5b3V0IHtcbiAgei1pbmRleDogI3skemluZGV4LW1vZGFsLWJhY2tkcm9wIC0gMX07XG59XG5cbi8vIGR1by11aSBvdmVycmlkZXMgdGhlIGJsb2NrIGJhY2tncm91bmQgdG8gbWF0Y2ggdGhlIGFwcCBjb2xvciBtb2RlIHdoaWxlXG4vLyB0b2tlbiBjb2xvcnMgc3RpbGwgY29tZSBmcm9tIHRoZSB1c2VyJ3Mgc3ludGF4IGhpZ2hsaWdodGluZyBzY2hlbWUsIHdoaWNoXG4vLyBjYW4gbWlzbWF0Y2ggKGUuZy4gbGlnaHQgc2NoZW1lIHRva2VucyBvbiBhIGRhcmsgcGFuZWwpLiBGb3JjZSB0aGVcbi8vIHNjaGVtZSdzIG93biBiYWNrZ3JvdW5kL2ZvcmVncm91bmQgcGFpciBpbnN0ZWFkLCBsaWtlIGJsb2Igdmlld2VycyBkby5cbnByZS5kdW8tbWVzc2FnZS1wcmUtYmxvY2suY29kZS1zeW50YXgtaGlnaGxpZ2h0LXRoZW1lIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tY29kZS1iYWNrZ3JvdW5kLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXByZWZvcm1hdCkpO1xuICBjb2xvcjogdmFyKC0tY29kZS10ZXh0LWNvbG9yLCB2YXIoLS1nbC10ZXh0LWNvbG9yLXN0cm9uZykpO1xuXG4gIC8vIGR1by11aSBzZXRzIGNvbG9yIGRpcmVjdGx5IG9uIHRoZSBjb2RlIGNoaWxkICguZHVvLWNoYXQtbWFya2Rvd24gcHJlIGNvZGUpLFxuICAvLyB3aGljaCB3b3VsZCBieXBhc3MgdGhlIGluaGVyaXRlZCBjb2xvciBhYm92ZSBvbiB0aGUgbWFya2Rvd24gcGF0aC5cbiAgY29kZSB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLmR1by1jaGF0LW1lc3NhZ2UgYS5hbmNob3Ige1xuIEBhcHBseSBnbC1oaWRkZW47XG59XG5cbi5kdW8tY2hhdC1tZXNzYWdlLWNvbnRhaW5lciB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byBjaGF0IG1lc3NhZ2UgZWxlbWVudFxuICAuZHVvLWNoYXQtbWVzc2FnZTpoYXMoLmVycm9yLWljb24pIHtcbiAgICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICB9XG59XG5cbi8qKlxuICogWW91ciBtZXNzYWdlcyBzdHlsZXNcbiAqL1xuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gY2hhdCBtZXNzYWdlIGNvbnRhaW5lclxuLmR1by1jaGF0LW1lc3NhZ2UtY29udGFpbmVyOmhhcyguZHVvLWNoYXQtbWVzc2FnZSAuZ2wtYXZhdGFyKSB7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LWVuZDtcblxuICAuZHVvLWNoYXQtbWVzc2FnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZHVvLWNoYXQtYnViYmxlLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCk7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtYmwtWzFyZW1dO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWJyLW5vbmU7XG4gIH1cbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGNoYXQgbWVzc2FnZSBjb250YWluZXJcbi5kdW8tY2hhdC1tZXNzYWdlLWNvbnRhaW5lcjpoYXMoLmR1by1jaGF0LW1lc3NhZ2UuZ2wtdGV4dC1mZWVkYmFjay1pbmZvKSB7XG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byBjaGF0IG1lc3NhZ2UgZWxlbWVudFxuICAuZHVvLWNoYXQtbWVzc2FnZTpub3QoOmhhcyguZXJyb3ItaWNvbikpIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kdW8tY2hhdC1idWJibGUtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcblxuICAgIHAge1xuICAgICAgY29sb3I6IHZhcigtLWR1by1jaGF0LWJ1YmJsZS1mb3JlZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqIFF1ZXVlZCBtZXNzYWdlIHN0eWxlcyDigJQgcGVuZGluZyB1c2VyIHByb21wdHMsIG1hdGNoaW5nIHlvdXIgbWVzc2FnZSBidWJibGVzXG4gKi9cbi5kdW8tY2hhdC1xdWV1ZWQtbWVzc2FnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWR1by1jaGF0LWJ1YmJsZS1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpO1xuICBjb2xvcjogdmFyKC0tZHVvLWNoYXQtYnViYmxlLWZvcmVncm91bmQtY29sb3ItZGVmYXVsdCk7XG59XG4iLCIvLyBEZWZpbmVzIG1pbiBoZWlnaHQgb2YgdGhlIGhlYWRlclxuLy8gdG8gYXZvaWQgYSAxcHggZmxpY2tlcmluZyBiZXR3ZWVuXG4vLyBleHBhbmRlZC9jb2xsYXBzZWQgbW9kZVxuLy8gYW5kIHdpdGgvd2l0aG91dCBhY3Rpb25zXG4kY3J1ZC1oZWFkZXItbWluLWhlaWdodDogcHgtdG8tcmVtKDQwcHgpO1xuXG4uY3J1ZC1oZWFkZXIge1xuICBtaW4taGVpZ2h0OiAkY3J1ZC1oZWFkZXItbWluLWhlaWdodDtcbn1cblxuLmNydWQtY291bnQgLmdsLWJhZGdlIHtcbiAgQGFwcGx5IC1nbC1tbC0yO1xuICBAYXBwbHkgLWdsLW15LTE7XG4gIEBhcHBseSBnbC1weC0yO1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gIEBhcHBseSBnbC1iZy10cmFuc3BhcmVudDtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGNydWQtYm9keSBlbGVtZW50XG4uY3J1ZC1ib2R5OmhhcyguZ2wtdGFibGUpIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIC8vIFRhYmxlIGFkanVzdG1lbnRzXG4gIEBtaXhpbiBuZXctY2FyZC10YWJsZS1hZGp1c3RtZW50cyB7XG4gICAgdGJvZHkgPiB0ciB7XG4gICAgICAmOmZpcnN0LW9mLXR5cGUgPiB0ZFtkYXRhLWxhYmVsXSxcbiAgICAgICY6Zmlyc3Qtb2YtdHlwZSA+IHRkOmZpcnN0LW9mLXR5cGU6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LW9mLXR5cGUgdGQ6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogJGdsLWJvcmRlci1zaXplLTE7XG4gICAgICB9XG5cbiAgICAgID4gdGRbZGF0YS1sYWJlbF0ge1xuICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQtc3R5bGU6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBub25lO1xuICAgICAgfVxuXG4gICAgICA+IFtkYXRhLWxhYmVsXTo6YmVmb3JlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cblxuICAgICAgPiB0aCB7XG4gICAgICAgIGJvcmRlci10b3Atd2lkdGg6ICRnbC1ib3JkZXItc2l6ZS0xO1xuICAgICAgfVxuXG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGFibGUuYi10YWJsZS1maXhlZCxcbiAgdGFibGUuYi10YWJsZS1zdGFja2VkLXNtLFxuICB0YWJsZS5iLXRhYmxlLXN0YWNrZWQtbWQsXG4gIHRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIHRyOmZpcnN0LW9mLXR5cGUgdGgge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICB9XG5cbiAgICB0cjpsYXN0LW9mLXR5cGUgdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1zbSB7XG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gICAgICBAaW5jbHVkZSBuZXctY2FyZC10YWJsZS1hZGp1c3RtZW50cztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1tZCB7XG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obWQsIHBhbmVsKSB7XG4gICAgICBAaW5jbHVkZSBuZXctY2FyZC10YWJsZS1hZGp1c3RtZW50cztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5nbC10YWJsZS5iLXRhYmxlLmItdGFibGUtc3RhY2tlZC1sZyB7XG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24obGcsIHBhbmVsKSB7XG4gICAgICBAaW5jbHVkZSBuZXctY2FyZC10YWJsZS1hZGp1c3RtZW50cztcbiAgICB9XG4gIH1cbn1cblxuLy8gR0xRTDogVGhpcyBwcmV2ZW50cyBkb3VibGUgYm9yZGVycy5cbi8vIFRoZSBib2R5IGNvbnRhaW5zIGEgc2Nyb2xsYWJsZSB0YWJsZS5cbi8vIFJlbW92ZSBsZWZ0IGFuZCByaWdodCB0YWJsZSBib3JkZXJzLFxuLy8gYXMgQ3J1ZCBhbHJlYWR5IHJlbmRlcnMgb3V0ZXIgYm9yZGVycy5cbi5jcnVkLWJvZHkgLmdsLXRhYmxlLXNoYWRvdyA+IHRhYmxlIHtcbiAgdGQ6Zmlyc3Qtb2YtdHlwZSxcbiAgdGg6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1sLTA7XG4gIH1cblxuICB0ZDpsYXN0LW9mLXR5cGUsXG4gIHRoOmxhc3Qtb2YtdHlwZSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1yLTAgI3shaW1wb3J0YW50fTtcbiAgfVxuXG4gIHRyOmZpcnN0LW9mLXR5cGUgdGgge1xuICAgIEBhcHBseSBnbC1ib3JkZXItdC0wO1xuICB9XG5cbiAgdHI6bGFzdC1vZi10eXBlIHRkIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWItMDtcbiAgfVxuXG4gIHRyOmhvdmVyIHRkIHtcbiAgICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byBjcnVkLWJvZHkgZWxlbWVudFxuLmNydWQtYm9keTpoYXMoLmNvbnRlbnQtbGlzdCkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgLmNvbnRlbnQtbGlzdCA+IGxpIHtcbiAgICBAYXBwbHkgZ2wtbXgtMjtcbiAgICBAYXBwbHkgZ2wtcHgtMztcbiAgfVxufVxuXG4uY3J1ZC1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLXRvcDogLTFweDtcblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gY3J1ZC1wYWdpbmF0aW9uIGVsZW1lbnRcbiAgJjpub3QoOmhhcyg+IC5nbC1wYWdpbmF0aW9uLCA+IC5jcnVkLXBhZ2luYXRpb24tY29udGFpbmVyKSkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZ2wtcGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gIC5nbC1wYWdpbmF0aW9uIHVsLFxuICAucGFnaW5hdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuIiwiLnNldmVyaXR5LXRleHQtY3JpdGljYWwge1xuICBjb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItY3JpdGljYWwpO1xufVxuXG4uc2V2ZXJpdHktdGV4dC1oaWdoIHtcbiAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWhpZ2gpO1xufVxuXG4uc2V2ZXJpdHktdGV4dC1tZWRpdW0ge1xuICBjb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItbWVkaXVtKTtcbn1cblxuLnNldmVyaXR5LXRleHQtbG93IHtcbiAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWxvdyk7XG59XG5cbi5zZXZlcml0eS10ZXh0LWluZm8ge1xuICBjb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItaW5mbyk7XG59XG5cbi5zZXZlcml0eS10ZXh0LXVua25vd24ge1xuICBjb2xvcjogdmFyKC0tc2V2ZXJpdHktY29sb3ItdW5rbm93bik7XG59XG5cbi5zZXZlcml0eS1iZy1jcml0aWNhbCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWNyaXRpY2FsKTtcbn1cblxuLnNldmVyaXR5LWJnLWhpZ2gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1oaWdoKTtcbn1cblxuLnNldmVyaXR5LWJnLW1lZGl1bSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLW1lZGl1bSk7XG59XG5cbi5zZXZlcml0eS1iZy1sb3cge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1sb3cpO1xufVxuXG4uc2V2ZXJpdHktYmctaW5mbyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWluZm8pO1xufVxuXG4uc2V2ZXJpdHktYmctdW5rbm93biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLXVua25vd24pO1xufVxuIiwiQHVzZSBcInNhc3M6bWF0aFwiO1xuXG4uc3VnZ2VzdC1jb2xvcnMge1xuICBwYWRkaW5nLXRvcDogM3B4O1xuXG4gIGEge1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICY6Zm9jdXMtdmlzaWJsZSxcbiAgICAmOmZvY3VzLXZpc2libGU6YWN0aXZlIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gICAgfVxuICB9XG5cbiAgJi5zdWdnZXN0LWNvbG9ycy1kcm9wZG93biB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgd2lkdGg6IG1hdGguZGl2KDEwMCUsIDcpO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTVweDtcblxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICAgIH1cblxuICAgICAgJjpudGgtb2YtdHlwZSg3KSB7XG4gICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlO1xuICAgICAgfVxuXG4gICAgICAmOm50aC1sYXN0LWNoaWxkKDcpIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtYmFzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5cbi5icmFuY2gtaW5mbyAuY29tbWl0LWljb24ge1xuICBzdmcge1xuICAgIHRvcDogM3B4O1xuICB9XG59XG5cbi8qXG4gKiBDb21taXQgbWVzc2FnZSB0ZXh0YXJlYSBmb3Igd2ViIGVkaXRvciBhbmRcbiAqIGN1c3RvbSBtZXJnZSByZXF1ZXN0IG1lc3NhZ2VcbiAqL1xuLmNvbW1pdC1tZXNzYWdlLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtZmFtaWx5OiAkbW9ub3NwYWNlLWZvbnQ7XG4gICRsZWZ0OiAxMnB4O1xuXG4gIC5tYXgtd2lkdGgtbWFya2VyIHtcbiAgICB3aWR0aDogNzJjaDtcbiAgICBjb2xvcjogJGNvbW1pdC1tYXgtd2lkdGgtbWFya2VyLWNvbG9yO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIGxlZnQ6ICRsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBjb2xvci5taXgoJGlucHV0LWJvcmRlciwgJHdoaXRlKTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogMTtcbiAgfVxuXG4gIHRleHRhcmVhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29tbWl0LW1lc3NhZ2UtdGV4dC1hcmVhLWJnO1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgIHBhZGRpbmctbGVmdDogJGxlZnQ7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbn1cblxuLmNvbW1pdC1yb3ctdGl0bGUge1xuICAuc3RyLXRydW5jYXRlZCB7XG4gICAgbWF4LXdpZHRoOiA3MCU7XG4gIH1cbn1cblxuLmNvbW1pdC1jb250ZW50IHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgbWluLXdpZHRoOiAwO1xuXG4gIC5jb21taXQtdGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxuXG4gIC5jb21taXR0ZXIge1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcblxuICAgIC5jb21taXQtYXV0aG9yLWxpbmsge1xuICAgICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzXG4gICAgJi5nbC1pbmxpbmUtZmxleCB7XG4gICAgICBnYXA6IDAuNWNoO1xuICAgIH1cblxuICAgIC5jb21taXQtYXV0aG9yLWxpbmsge1xuICAgICAgbWF4LXdpZHRoOiAxOWNoO1xuICAgIH1cbiAgfVxufVxuXG4uY29tbWl0LW5hdi1idXR0b25zIHtcbiAgbWFyZ2luOiAwIDAuNXJlbTtcblxuICBhLmJ0bixcbiAgYnV0dG9uIHtcbiAgICAvLyBTZWU6IGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi1zZXJ2aWNlcy9kZXNpZ24uZ2l0bGFiLmNvbS8tL2lzc3Vlcy8yNTY5XG4gICAgJjpsYXN0LWNoaWxkID4gc3ZnIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuXG4uY29tbWl0LFxuLmdlbmVyaWMtY29tbWl0LXN0YXR1cyB7XG4gIGEge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIH1cblxuICAuY29tbWl0LXJvdy1kZXNjcmlwdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBmbGV4OiAxO1xuXG4gICAgYSB7XG4gICAgICBjb2xvcjogJGJsdWUtNjAwO1xuICAgIH1cbiAgfVxuXG4gICYuaW5saW5lLWNvbW1pdCB7XG4gICAgLmNvbW1pdC1yb3ctdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemUtZml4ZWQ7XG4gICAgfVxuICB9XG59XG5cbi5icmFuY2gtY29tbWl0IHtcbiAgLmNvbW1pdC1pY29uIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgc3ZnIHtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xuICAgIH1cbiAgfVxufVxuXG4uY29tbWl0LFxuLmdlbmVyaWMtY29tbWl0LXN0YXR1cyxcbi5icmFuY2gtY29tbWl0IHtcbiAgLmNvbW1pdC1zaGEge1xuICAgIEBhcHBseSBnbC10ZXh0LWxpbms7XG4gIH1cbn1cblxuLnNpZ25hdHVyZS1iYWRnZSB7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5oZWFkZXItbWFpbi1jb250ZW50ICYge1xuICAgIG1hcmdpbi1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgfVxufVxuXG4uZ3BnLXBvcG92ZXItY2VydGlmaWNhdGUtZGV0YWlscyB7XG4gIHVsIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRnbC1wYWRkaW5nO1xuICB9XG5cbiAgbGkudW5zdHlsZWQge1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgfVxufVxuXG4uc2lnbmF0dXJlLXBvcG92ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LW5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cbiIsIi8qKlxuICogRGFzaGJvYXJkIGV2ZW50cyBmZWVkXG4gKlxuICovXG4uZXZlbnQtaXRlbSB7XG4gIGZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZTtcbiAgcGFkZGluZzogJGdsLXBhZGRpbmcgMCAkZ2wtcGFkZGluZyAkZ2wtc3BhY2luZy1zY2FsZS04O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXktNTA7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsaW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LTIwO1xuXG4gIC5zeXN0ZW0tbm90ZS1pbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBzdmcge1xuICAgICAgQGFwcGx5IGdsLWZpbGwtaWNvbi1zdWJ0bGU7XG4gICAgfVxuICB9XG5cbiAgLnN5c3RlbS1ub3RlLWltYWdlLWlubGluZSB7XG4gICAgc3ZnIHtcbiAgICAgIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xuICAgIH1cbiAgfVxuXG4gIC5zeXN0ZW0tbm90ZS1pbWFnZSxcbiAgLnN5c3RlbS1ub3RlLWltYWdlLWlubGluZSB7XG4gICAgJi5vcGVuZWQtaWNvbixcbiAgICAmLmNyZWF0ZWQtaWNvbixcbiAgICAmLnRyYW5zZmVycmVkLWljb24ge1xuICAgICAgc3ZnIHtcbiAgICAgICAgQGFwcGx5IGdsLWZpbGwtc3RhdHVzLXN1Y2Nlc3M7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5jbG9zZWQtaWNvbiBzdmcge1xuICAgICAgQGFwcGx5IGdsLWZpbGwtc3RhdHVzLWRhbmdlcjtcbiAgICB9XG5cbiAgICAmLmFjY2VwdGVkLWljb24gc3ZnLFxuICAgICYuY29tbWVudGVkLW9uLWljb24gc3ZnIHtcbiAgICAgIEBhcHBseSBnbC1maWxsLXN0YXR1cy1pbmZvO1xuICAgIH1cbiAgfVxuXG4gIC5ldmVudC11c2VyLWluZm8ge1xuICAgIG1hcmdpbi1ib3R0b206ICRnbC1wYWRkaW5nLTQ7XG5cbiAgICAuYXV0aG9yLW5hbWUge1xuICAgICAgYSB7XG4gICAgICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZXZlbnQtdGl0bGUge1xuICAgIEBhcHBseSBnbC13cmFwLWFueXdoZXJlO1xuXG4gICAgLmV2ZW50LXRpdGxlLWJsb2NrOjpmaXJzdC1sZXR0ZXIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgfVxuICB9XG5cblxuICAuZXZlbnQtYm9keSB7XG4gICAgbWFyZ2luLXRvcDogJGdsLXBhZGRpbmctNDtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuXG4gICAgLmV2ZW50LW5vdGUge1xuICAgICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gICAgICAubWQge1xuICAgICAgICBmb250LXNpemU6ICRnbC1mb250LXNpemU7XG4gICAgICB9XG5cbiAgICAgIGNvZGUge1xuICAgICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgICB9XG5cbiAgICAgIHByZSB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICAgICAgICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgfVxuXG4gICAgICAubm90ZS1pbWFnZS1hdHRhY2gge1xuICAgICAgICBtYXJnaW4tdG9wOiAkZ2wtcGFkZGluZy00O1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAyMDBweDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIHA6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICAuZXZlbnQtY29tbWl0cyB7XG4gICAgbGkge1xuICAgICAgJi5jb21taXQge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgIC5jb21taXQtcm93LXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6ICRnbC1mb250LXNpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5jb21taXRzLXN0YXQge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMCAzcHggMCAwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICBAYXBwbHkgZ2wtdGV4dC1saW5rO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmV2ZW50LWl0ZW0tdGltZXN0YW1wIHtcbiAgICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20sIHBhbmVsKSB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG5cbi8vIGhpZGUgZXZlbnQgc2NvcGUgKG5hbWVzcGFjZSArIHByb2plY3QpIHdoZXJlIGl0IGlzIG5vdCBuZWNlc3Nhcnlcbi5wcm9qZWN0LWFjdGl2aXR5IHtcbiAgLmV2ZW50LXNjb3BlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi5wcm9qZWN0LWFjdGl2aXR5LWl0ZW06bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgLy8gQXZhdGFyIHdpZHRoIGlzIDMycHgsIGNvbm5lY3RpbmcgbGluZSB3aWR0aCBpcyAycHguXG4gICAgLy8gVG8gY2VudGVyIHRoZSBsaW5lIHJlbGF0aXZlbHkgdG8gdGhlIGF2YXRhciBpdCBzaG91bGQgYmUgcG9zaXRpb25lZCAxNXB4IGZyb20gdGhlIGxlZnQ6XG4gICAgLy8gKDMycHggKGF2YXRhciBzaXplKSAtIDJweCAobGluZSB0aGlja25lc3MpKSAvIDIgPSAxNXB4XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUgbGVuZ3RoLXplcm8tbm8tdW5pdFxuICAgIEBpbmNsdWRlIHZlcnRpY2FsLWxpbmUoMHB4LCAxNXB4KTtcbiAgICB0b3A6IGF1dG87IC8vIE92ZXJyaWRlIHRvcCB0byBhdXRvIGFsaWduXG4gICAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgfVxufVxuIiwiLmRhc2hib2FyZCAuc2lkZSAuY2FyZCAuY2FyZC1oZWFkZXIgLmlucHV0LWdyb3VwIHtcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgaGVpZ2h0OiA0MnB4O1xuICB9XG59XG5cbi5ncm91cHMtbGlzdCB7XG4gIEBpbmNsdWRlIGJhc2ljLWxpc3Q7XG59XG5cbi5ncm91cC1yb290LXBhdGgge1xuICBtYXgtd2lkdGg6IDQwdnc7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3b3JkLXdyYXA6IG5vd3JhcDtcbn1cblxuLmdyb3VwLXJvdyB7XG4gIC5kZXNjcmlwdGlvbiBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgfVxufVxuXG4uc2F2ZS1ncm91cC1sb2FkZXIge1xuICBtYXJnaW4tdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS05O1xuICBtYXJnaW4tYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS05O1xuICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG59XG4iLCIuaXNzdWUtdG9rZW4tbGluayB7XG4gICZbaHJlZl0ge1xuICAgIGNvbG9yOiAkYmx1ZS02MDA7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG5cbi5pc3N1ZS10b2tlbi1yZWZlcmVuY2Uge1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkZ2VuZXJhbC1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uICRnZW5lcmFsLWhvdmVyLXRyYW5zaXRpb24tY3VydmUsIGNvbG9yICRnZW5lcmFsLWhvdmVyLXRyYW5zaXRpb24tZHVyYXRpb24gJGdlbmVyYWwtaG92ZXItdHJhbnNpdGlvbi1jdXJ2ZTtcblxuICAuaXNzdWUtdG9rZW46aG92ZXIgJixcbiAgLmlzc3VlLXRva2VuLWxpbms6Zm9jdXMtdmlzaWJsZSA+ICYge1xuICAgIEBhcHBseSBnbC1iZy1zdHJvbmc7XG4gICAgY29sb3I6ICRibHVlLTgwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLmlzc3VlLXRva2VuLXRpdGxlIHtcbiAgQGFwcGx5IGdsLWJnLXN0cm9uZztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAkZ2VuZXJhbC1ob3Zlci10cmFuc2l0aW9uLWR1cmF0aW9uICRnZW5lcmFsLWhvdmVyLXRyYW5zaXRpb24tY3VydmU7XG5cbiAgLmlzc3VlLXRva2VuOmhvdmVyICYsXG4gIC5pc3N1ZS10b2tlbi1saW5rOmZvY3VzLXZpc2libGUgPiAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0xMDA7XG4gIH1cbn1cblxuLmlzc3VlLXRva2VuLXJlbW92ZS1idXR0b24ge1xuICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kICRnZW5lcmFsLWhvdmVyLXRyYW5zaXRpb24tZHVyYXRpb24gJGdlbmVyYWwtaG92ZXItdHJhbnNpdGlvbi1jdXJ2ZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUsXG4gIC5pc3N1ZS10b2tlbjpob3ZlciAmLFxuICAuaXNzdWUtdG9rZW4tbGluazpmb2N1cy12aXNpYmxlICsgJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLmlzc3VlLXJlYWx0aW1lLXByZS1wdWxzZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5pc3N1ZS1yZWFsdGltZS10cmlnZ2VyLXB1bHNlIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAkZmFkZS1pbi1kdXJhdGlvbiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG59XG5cbnVsLnJlbGF0ZWQtbWVyZ2UtcmVxdWVzdHMgPiBsaSBnbC1lbW9qaSB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4ubWVyZ2UtcmVxdWVzdC1zdGF0dXMge1xuICAmLm1lcmdlZCB7XG4gICAgY29sb3I6ICRibHVlLTUwMDtcbiAgfVxuXG4gICYuY2xvc2VkIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kYW5nZXI7XG4gIH1cblxuICAmLm9wZW4ge1xuICAgIEBhcHBseSBnbC10ZXh0LXN1Y2Nlc3M7XG4gIH1cbn1cblxuLm1lcmdlLXJlcXVlc3QsXG4uaXNzdWUge1xuICAmLmNsb3NlZCxcbiAgJi5tZXJnZWQge1xuICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIH1cbn1cblxuQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gIC5kZXRhaWwtcGFnZS1oZWFkZXIge1xuICAgIC5pc3N1YWJsZS1tZXRhIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIH1cbiAgfVxufVxuXG4ucmVjYXB0Y2hhIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLm5ldy1icmFuY2gtY29sIHtcbiAgLmRpc2N1c3Npb24tZmlsdGVyLWNvbnRhaW5lciB7XG4gICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgIG1hcmdpbi1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihzbSwgcGFuZWwpIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgID4gZGl2Om5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgICB9XG4gIH1cbn1cblxuLmNyZWF0ZS1tci1kcm9wZG93bi13cmFwIHtcbiAgLnJlZjo6c2VsZWN0aW9uIHtcbiAgICBjb2xvcjogJGdsLXRleHQtY29sb3ItdGVydGlhcnk7XG4gIH1cblxuICAuZHJvcGRvd24ge1xuICAgIC5kcm9wZG93bi1tZW51LXRvZ2dsZSB7XG4gICAgICBtaW4td2lkdGg6IDI4NXB4O1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1zZWxlY3Qge1xuICAgICAgd2lkdGg6IDI4NXB4O1xuICAgIH1cbiAgfVxuXG4gIC5idG4tZ3JvdXA6bm90KC5oaWRkZW4pIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gICAgICAuYnRuLmJ0bi1jb25maXJtIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWpzLWNsYXNzXG4gIC5qcy1jcmVhdGUtbWVyZ2UtcmVxdWVzdCB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG5cbiAgLmNyZWF0ZS1tZXJnZS1yZXF1ZXN0LWRyb3Bkb3duLW1lbnUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gIH1cbn1cblxuLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyLFxuLm5vdGUtZWRpdC1mb3JtIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChzbSwgcGFuZWwpIHtcbiAgLmVtb2ppLWJsb2NrIC5yb3cge1xuICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAubmV3LWJyYW5jaC1jb2wge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICB9XG4gIH1cblxuICAuY3JlYXRlLW1yLWRyb3Bkb3duLXdyYXAge1xuICAgIC5idG4tZ3JvdXA6bm90KC5oaWRkZW4pIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobGcsIHBhbmVsKSB7XG4gIC5uZXctYnJhbmNoLWNvbCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLmlzc3VlLXN0aWNreS1oZWFkZXIge1xuICBsZWZ0OiAwO1xuICByaWdodDogdmFyKC0tYXBwbGljYXRpb24tYmFyLXJpZ2h0KTtcbiAgd2lkdGg6IGF1dG87XG4gIHRvcDogMDtcblxuICAucmlnaHQtc2lkZWJhci1jb2xsYXBzZWQgJiB7XG4gICAgcGFkZGluZy1yaWdodDogJHJpZ2h0LXNpZGViYXItY29sbGFwc2VkLXdpZHRoO1xuICB9XG5cbiAgLnJpZ2h0LXNpZGViYXItZXhwYW5kZWQgJiB7XG4gICAgcGFkZGluZy1yaWdodDogJHJpZ2h0LXNpZGViYXItd2lkdGg7XG4gIH1cbn1cblxuLmxpbWl0LWNvbnRhaW5lci13aWR0aCB7XG4gIC5pc3N1ZS1zdGlja3ktaGVhZGVyLXRleHQge1xuICAgIG1heC13aWR0aDogJGxpbWl0ZWQtbGF5b3V0LXdpZHRoO1xuICB9XG59XG5cbi5pc3N1ZS1zdGlja3ktaGVhZGVyLXRleHQge1xuICBwYWRkaW5nOiAwIHZhcigtLWNvbnRhaW5lci1wYWRkaW5nLXgpO1xufVxuXG4vLyBUaGVzZSBhcmUgY29tcG9zaXRlIGNsYXNzZXMgZm9yIHVzZSB3aXRoIFZ1ZSBUcmFuc2l0aW9uXG4vLyBodHRwczovL3Z1ZWpzLm9yZy9ndWlkZS9idWlsdC1pbnMvdHJhbnNpdGlvblxuLmlzc3VhYmxlLWhlYWRlci1zbGlkZS1lbnRlci1hY3RpdmUsXG4uaXNzdWFibGUtaGVhZGVyLXNsaWRlLWxlYXZlLWFjdGl2ZSB7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLWFsbDtcbn1cblxuLmlzc3VhYmxlLWhlYWRlci1zbGlkZS1lbnRlcixcbi5pc3N1YWJsZS1oZWFkZXItc2xpZGUtbGVhdmUtdG8ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG4uaXNzdWFibGUtc3RpY2t5LWhlYWRlci12aXNpYmxlIHtcbiAgLS1pc3N1YWJsZS1zdGlja3ktaGVhZGVyLWhlaWdodDogNDBweDtcbn1cblxuLm1kLWhlYWRlci1wcmV2aWV3IHtcbiAgei1pbmRleDogMTtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgLy8gbm90ZTogb25seSBlaXRoZXIgLS1sYXlvdXQtc3RpY2t5LWhlYWRlci1oZWlnaHQgb3JcbiAgLy8gLS1pc3N1YWJsZS1zdGlja3ktaGVhZGVyLWhlaWdodCB3aWxsIGJlIGRlZmluZWQuXG4gIC8vIC0taXNzdWFibGUtc3RpY2t5LWhlYWRlci1oZWlnaHQgaXMgbWFpbnRhaW5lZCBmb3IgaW5jaWRlbnRzLCBhbGwgb3RoZXJcbiAgLy8gd29yayBpdGVtcyB1c2UgLS1sYXlvdXQtc3RpY2t5LWhlYWRlci1oZWlnaHQuXG4gIHRvcDogY2FsYygjeyRjYWxjLWFwcGxpY2F0aW9uLWhlYWRlci1oZWlnaHR9ICsgdmFyKC0tbGF5b3V0LXN0aWNreS1oZWFkZXItaGVpZ2h0LCAwcHgpICsgdmFyKC0taXNzdWFibGUtc3RpY2t5LWhlYWRlci1oZWlnaHQsIDBweCkgLSAycHgpO1xuICBtYXJnaW4tbGVmdDogMXB4O1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbn1cblxuLmRldGFpbC1wYWdlLWRlc2NyaXB0aW9uIC5tZC1oZWFkZXIge1xuICB0b3A6ICRjYWxjLWFwcGxpY2F0aW9uLWhlYWRlci1oZWlnaHQ7XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3Ncbi5nbC1kcmF3ZXIgLm1kLWhlYWRlciB7XG4gIHRvcDogMDtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuLmdsLW1vZGFsIC5tZC1oZWFkZXIge1xuICB0b3A6IC0kZ2wtcGFkZGluZy04O1xufVxuXG4vLyBJc3N1ZSBtYXJrZG93biBoZWFkZXIgaWYgbm8gc3RpY2t5IGhlYWRlciBpcyBwcmVzZW50XG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gd29yay1pdGVtLWRldGFpbCBlbGVtZW50XG4ud29yay1pdGVtLWRldGFpbDpub3QoOmhhcyguaXNzdWUtc3RpY2t5LWhlYWRlcikpIC5tZC1oZWFkZXIge1xuICB0b3A6IDA7XG59XG4iLCJAdXNlIFwic2FzczptYXBcIjtcbi8qKlxuICogTm90ZSBGb3JtXG4gKi9cbi5kaWZmLWZpbGUsXG4uZGlzY3Vzc2lvbiB7XG4gIC5uZXctbm90ZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG4ubmV3LW5vdGUsXG4ubm90ZS1lZGl0LWZvcm0ge1xuICAubm90ZS1mb3JtLWFjdGlvbnMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46ICRnbC1wYWRkaW5nIDAgMDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi5ub3RlLXRleHRhcmVhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEwcHggMTZweDtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgZm9udC1mYW1pbHk6ICRyZWd1bGFyLWZvbnQ7XG4gIGJvcmRlcjogMDtcblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLmdmbS1mb3JtIC5ub3RlLXRleHRhcmVhLCAubWQgLlByb3NlTWlycm9yIHtcbiAgb3ZlcmZsb3cteTogYXV0byAhaW1wb3J0YW50O1xuICByZXNpemU6IHZlcnRpY2FsICFpbXBvcnRhbnQ7XG4gIG1heC1oZWlnaHQ6IDcwdmggIWltcG9ydGFudDtcbn1cblxuLm5vdGUtaW1hZ2UtYXR0YWNoIHtcbiAgbWFyZ2luLWxlZnQ6IDQ1cHg7XG4gIGZsb2F0OiBub25lO1xufVxuXG4uY29tbW9uLW5vdGUtZm9ybSB7XG4gIC5tZC1hcmVhLXdyYXBwZXIge1xuICAgIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICB9XG5cbiAgLm1kLWFyZWEge1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgMC4xNXMsXG4gICAgYm94LXNoYWRvdyBlYXNlLWluLW91dCAwLjE1cztcblxuICAgICYuaXMtZHJvcHpvbmUtaG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAkZ3JlZW4tNTAwO1xuICAgICAgYm94LXNoYWRvdzogMCAwIDJweCB2YXIoLS1nbC1jb2xvci1hbHBoYS1kYXJrLTI0KSxcbiAgICAgICAgMCAwIDRweCAkZ3JlZW4tNTAwLWZvY3VzO1xuXG4gICAgICAuY29tbWVudC10b29sYmFyLFxuICAgICAgLm5hdi1saW5rcyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyZWVuLTUwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMtd2l0aGluIHtcbiAgICAgIEBhcHBseSBnbC1zaGFkb3ctbWQ7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS01MDA7XG4gICAgfVxuXG4gICAgJjpmb2N1cy13aXRoaW4ge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktOTAwO1xuICAgIH1cblxuICAgIC8vIEFkZCBmb2N1c1xuICAgIC56ZW4tYmFja2Ryb3A6bm90KC5mdWxsc2NyZWVuKSB0ZXh0YXJlYSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNHB4KTtcbiAgICAgIG1hcmdpbjogMnB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKCN7JGdsLXNwYWNpbmctc2NhbGUtNX0gLSAycHgpO1xuXG4gICAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzXG4gICAgICAuZ2wtZGFyayAmIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDZweCk7XG4gICAgICAgIG1hcmdpbjogMnB4IDNweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiBjYWxjKCN7JGdsLXNwYWNpbmctc2NhbGUtNX0gLSAzcHgpO1xuXG4gICAgICAgIC8vIGNmLiBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9tZXJnZV9yZXF1ZXN0cy8xNDc0NzZcbiAgICAgICAgJi5ub3RlLXRleHRhcmVhLXJvdW5kZWQtYm90dG9tIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAgICAgQGFwcGx5IGdsLXJvdW5kZWQtYi1iYXNlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMtdmlzaWJsZSB7XG4gICAgICAgIEBhcHBseSBnbC1mb2N1cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubm90ZS10ZXh0YXJlYS1yb3VuZGVkLWJvdHRvbSB7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiBjYWxjKCN7JGJvcmRlci1yYWRpdXMtbGFyZ2V9IC0gM3B4KTtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiBjYWxjKCN7JGJvcmRlci1yYWRpdXMtbGFyZ2V9IC0gM3B4KTtcbiAgICB9XG4gIH1cblxuICAmLmlzLWludmFsaWQge1xuICAgIC5tZC1hcmVhIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdmFyKC0tcmVkLTUwMCwgJHJlZC01MDApO1xuICAgIH1cbiAgfVxufVxuXG4ubWQtaGVhZGVyIHtcbiAgbWluLWhlaWdodDogMzJweDtcbn1cblxuLm1kLWhlYWRlciAubmF2LWxpbmtzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAuZ2wtZmxvYXQtcmlnaHQge1xuICAgIC8vIEZsZXhib3ggcXVpcmsgdG8gbWFrZSBzdXJlIHJpZ2h0LWFsaWduZWQgaXRlbXMgc3RheSByaWdodC1hbGlnbmVkLlxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG59XG5cbi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3Ncbi5tZC1oZWFkZXIgLmdsLXRhYnMtbmF2IHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbn1cblxuLmlzc3VhYmxlLW5vdGUtd2FybmluZyB7XG4gIGNvbG9yOiAkb3JhbmdlLTYwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYW5nZS01MDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdC1sZztcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYi1ub25lO1xuICBwYWRkaW5nOiAzcHggMTJweDtcbiAgbWFyZ2luOiBhdXRvO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gIGEge1xuICAgIGNvbG9yOiAkb3JhbmdlLTYwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuXG4gIC5pY29uIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRnbC1wYWRkaW5nLTQ7XG4gICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICAgIGZpbGw6ICRvcmFuZ2UtNjAwO1xuICB9XG5cbiAgKyAubWQtYXJlYSB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci10LTA7XG4gIH1cblxuICAuZGlzYWJsZWQtY29tbWVudCB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRsYWJlbC1ib3JkZXItcmFkaXVzO1xuICAgIHBhZGRpbmctdG9wOiAkZ2wtdmVydC1wYWRkaW5nO1xuICAgIHBhZGRpbmctYm90dG9tOiAkZ2wtdmVydC1wYWRkaW5nO1xuICB9XG59XG5cbi5zaWRlYmFyLWl0ZW0taWNvbiB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWJhc2U7XG4gIG1hcmdpbjogMCA1cHggMCAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIGZpbGw6ICRvcmFuZ2UtNjAwO1xuICB9XG5cbiAgLnNpZGViYXItY29sbGFwc2VkLWljb24gJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLnNpZGViYXItaXRlbS12YWx1ZSAmIHtcbiAgICBAYXBwbHkgZ2wtZmlsbC1pY29uLXN1YnRsZTtcbiAgfVxufVxuXG4uc2lkZWJhci1pdGVtLXdhcm5pbmctbWVzc2FnZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHBhZGRpbmc6IDE2cHg7XG5cbiAgLnRleHQge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIH1cblxuICAuc2lkZWJhci1pdGVtLXdhcm5pbmctbWVzc2FnZS1hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgLmJ0biB7XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuICB9XG59XG5cbi5kaXNjdXNzaW9uLWZvcm0ge1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihzbSwgcGFuZWwpIHtcbiAgICAudXNlci1hdmF0YXItbGluayB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ub3RlLWVkaXQtZm9ybSB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxudGFibGUge1xuICAuZGlzY3Vzc2lvbi1mb3JtLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogJGdsLXBhZGRpbmc7XG4gIH1cbn1cblxuLmRpc2N1c3Npb24tbm90ZXMgLmRpc2FibGVkLWNvbW1lbnQge1xuICBAYXBwbHkgZ2wtcC0wO1xufVxuXG4ubm90ZXMubm90ZXMtZm9ybSA+IGxpLnRpbWVsaW5lLWVudHJ5IHtcbiAgQGluY2x1ZGUgbm90ZXMtbWVkaWEoJ21kJykge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAudGltZWxpbmUtY29udGVudCB7XG4gICAgQGluY2x1ZGUgbm90ZXMtbWVkaWEoJ21kJykge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC50aW1lbGluZS1lbnRyeS1pbm5lciB7XG4gICAgYm9yZGVyOiAwO1xuICB9XG59XG5cbi8vIFNuaXBwZXRzIGFyZSB0aGUgb25seSBub24tdnVlIGZvcm0gbGVmdFxuLnNuaXBwZXRzLm5vdGUtZWRpdC1mb3JtIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm5vdGUtZWRpdC1mb3JtIHtcbiAgZm9udC1zaXplOiAxNHB4O1xuXG4gIC5tZC1hcmVhLXdyYXBwZXIge1xuICAgIEBhcHBseSBnbC1iZy1zdWJ0bGU7XG4gIH1cbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1qcy1jbGFzc1xuLmpzLW5vdGUtYXR0YWNobWVudC1kZWxldGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZXJyb3ItYWxlcnQgPiAuYWxlcnQge1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcblxuICAmLmFsZXJ0LWRpc21pc3NhYmxlIHtcbiAgICAuY2xvc2Uge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIG9wYWNpdHk6IDAuODU7XG4gICAgICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LW5vcm1hbDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5kaXNjdXNzaW9uLWJvZHkgLm5vdGVzIC50aW1lbGluZS1lbnRyeTpmaXJzdC1vZi10eXBlICsgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgcGFkZGluZy10b3A6ICRnbC1wYWRkaW5nICFpbXBvcnRhbnQ7XG59XG5cbi5kaXNjdXNzaW9uLWJvZHksXG4uZGlmZi1maWxlLFxuLmNvbW1pdC1kaWZmIHtcbiAgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgICBwYWRkaW5nOiAwICRnbC1wYWRkaW5nICRnbC1wYWRkaW5nLTEyICRnbC1wYWRkaW5nO1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLXQtbm9uZTtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1iLWxnO1xuXG4gICAgKyAubmV3LW5vdGUge1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci10O1xuICAgICAgQGFwcGx5IGdsLWJvcmRlci10LXN1YnRsZTtcbiAgICB9XG5cbiAgICAmLmludGVybmFsLW5vdGUsXG4gICAgJi5pbnRlcm5hbC1ub3RlLmlzLXJlcGx5aW5nIHtcbiAgICAgIHBhZGRpbmctdG9wOiAkZ2wtcGFkZGluZy0xMiAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC51c2VyLWF2YXRhci1saW5rIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jb2RlLWNvbW1pdCAuZGlzY3Vzc2lvbi1ub3RlcyAubm90ZXMgLm5vdGUtY29tbWVudDpmaXJzdC1jaGlsZCB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIEBhcHBseSBnbC1ib3JkZXItYi1zdWJ0bGU7XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAuZ2wtZGFyayAmIHtcbiAgICBAYXBwbHkgZ2wtYmctc3Ryb25nO1xuICAgIEBhcHBseSBnbC1ib3JkZXItYi1kZWZhdWx0O1xuICB9XG59XG5cbi5jb2RlLWNvbW1pdCAuZGlzY3Vzc2lvbi1ub3RlcyAubm90ZXMgLm5vdGUtY29tbWVudDpmaXJzdC1jaGlsZCB7XG4gICsgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgICAmLFxuICAgICsgLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgICAgIG1hcmdpbi10b3A6ICRnbC1wYWRkaW5nO1xuICAgIH1cbiAgfVxufVxuXG5cbi5jb2RlLWNvbW1pdCAuZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIsXG4uZGlmZi10ZCA+IC5jb250ZW50ID4gLmRpc2N1c3Npb24tcmVwbHktaG9sZGVyIHtcbiAgcGFkZGluZy10b3A6ICRnbC1wYWRkaW5nLTEyO1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xuICBAYXBwbHkgZ2wtcm91bmRlZC1iLW5vbmU7XG59XG5cbi5kaXNjdXNzaW9uLXdpdGgtcmVzb2x2ZS1idG4ge1xuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoc20sIHBhbmVsKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuXG4gIC5kaXNjdXNzaW9uLWFjdGlvbnMge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuXG4gICAgLmJ0bi1ncm91cCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpID4gZGl2IHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZGlzY3Vzc2lvbi1yZXBseS1ob2xkZXIge1xuICAucmVwbHktcGxhY2Vob2xkZXItdGV4dC1maWVsZCB7XG4gICAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICByZXNpemU6IG5vbmU7XG4gICAgcGFkZGluZzogJGdsLXBhZGRpbmctOCAkZ2wtcGFkZGluZy0xMjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheS0yMDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgMC4xNXMsXG4gICAgICBib3gtc2hhZG93IGVhc2UtaW4tb3V0IDAuMTVzO1xuXG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2wtcGFkZGluZy04O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktNTAwO1xuICAgIH1cbiAgfVxuXG4gIC5yZXBseS1wbGFjZWhvbGRlci1pbnB1dC1maWVsZCB7XG4gICAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2wtcGFkZGluZy04O1xuICAgIH1cbiAgfVxufVxuXG4uY29tbWVudC10b29sYmFyIHtcbiAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xufVxuXG4udG9vbGJhci1idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDE2cHg7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1saW5rO1xuICAgIG91dGxpbmU6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkZ2wtcGFkZGluZztcblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi50b29sYmFyLXRleHQge1xuICBmb250LXNpemU6IDE0cHg7XG4gIGxpbmUtaGVpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS03O1xufVxuXG4ubm90ZS1mb3JtLWFjdGlvbnMge1xuICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgIC5idG4ge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLmNvbW1lbnQtdHlwZS1kcm9wZG93biB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcblxuICAgIC5kcm9wZG93bi10b2dnbGUge1xuICAgICAgZmxleC1ncm93OiAwO1xuICAgICAgZmxleC1zaHJpbms6IDE7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuLnVwbG9hZGluZy1jb250YWluZXIge1xuICBmbG9hdDogcmlnaHQ7XG5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICB9XG5cbiAgYnV0dG9uIHtcbiAgICBmb250LXNpemU6ICRnbC1mb250LXNpemUtc20gIWltcG9ydGFudDtcbiAgfVxufVxuXG4udXBsb2FkaW5nLWVycm9yLWljb24sXG4udXBsb2FkaW5nLWVycm9yLW1lc3NhZ2Uge1xuICBAYXBwbHkgZ2wtdGV4dC1kYW5nZXI7XG59XG5cbi51cGxvYWRpbmctZXJyb3ItbWVzc2FnZSB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICdcXGEnO1xuICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB9XG4gIH1cbn1cblxuLnVwbG9hZGluZy1wcm9ncmVzcyB7XG4gIG1hcmdpbi1yaWdodDogNXB4O1xufVxuXG4ubWFya2Rvd24tc2VsZWN0b3Ige1xuICBAYXBwbHkgZ2wtdGV4dC1saW5rO1xufVxuXG4uY29tbWVudC13YXJuaW5nLXdyYXBwZXIge1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgMC4xNXMsXG4gICAgYm94LXNoYWRvdyBlYXNlLWluLW91dCAwLjE1cztcbn1cblxuLnRleHQtZmlsZSAubm90ZXMtY29udGVudCB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWItbm9uZTtcbn1cblxuLmltbWVyc2l2ZSB7XG4gIC5nZm0tZm9ybSAubm90ZS10ZXh0YXJlYTpmb2N1cy12aXNpYmxlIHtcbiAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmdmbS1mb3JtIC5ub3RlLXRleHRhcmVhIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1hcmdpbi1yaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIG1heC13aWR0aDogdmFyKC0taW1tZXJzaXZlLWVkaXRvci10ZXh0LXdpZHRoKTtcbiAgICByZXNpemU6IG5vbmUgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbiIsIi8qKlxuICogISEgTk9URTogRG8gbm90IGFkZCBtb3JlIGNvZGUgaW4gdGhpcyBmaWxlOlxuICpcbiAqIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL2lzc3Vlcy8yNjc2MDJcbiAqXG4gKiBGb3IgbmV3IHBpcGVsaW5lIENTUyBwbGVhc2UgY29uc2lkZXI6XG4gKlxuICogRm9yIHBpcGVsaW5lcyB0YWJsZXMgYW5kIGxpc3RzOlxuICogLSBgYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9wYWdlX2J1bmRsZXMvcGlwZWxpbmVzLnNjc3NgXG4gKlxuICogRm9yIGluZGl2aWR1YWwgcGlwZWxpbmVzIGFuZCBtaW5pLXBpcGVsaW5lczpcbiAqIC0gYGFwcC9hc3NldHMvc3R5bGVzaGVldHMvcGFnZV9idW5kbGVzL3BpcGVsaW5lLnNjc3NgXG4gKlxuKiovXG5cbi5jaS10YWJsZSB7XG4gIC5hdmF0YXIge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLmJyYW5jaC1jb21taXQge1xuICAgIC5yZWYtbmFtZSB7XG4gICAgICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgfVxuXG4gICAgc3ZnIHtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIEBhcHBseSBnbC1maWxsLWljb24tc3VidGxlO1xuICAgIH1cblxuICAgIC5zcHJpdGUge1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBAYXBwbHkgZ2wtZmlsbC1pY29uLWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgLmNvbW1pdC1zaGEge1xuICAgICAgY29sb3I6ICRibHVlLTYwMDtcbiAgICB9XG5cbiAgICAuYmFkZ2Uge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgfVxuICB9XG5cbiAgLmR1cmF0aW9uLFxuICAuZmluaXNoZWQtYXQge1xuICAgIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIC5idWlsZC1saW5rIGEge1xuICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIH1cbn1cbiIsIi52aXNpYmlsaXR5LWxldmVsLXNldHRpbmcge1xuICAub3B0aW9uLWRpc2FibGVkLXJlYXNvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5kaXNhYmxlZCB7XG4gICAgc3ZnIHtcbiAgICAgIG9wYWNpdHk6IDAuNTtcbiAgICB9XG5cbiAgICAub3B0aW9uLWRlc2NyaXB0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm9wdGlvbi1kaXNhYmxlZC1yZWFzb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbi5zYW1sLXNldHRpbmdzLmluZm8td2VsbCB7XG4gIC5mb3JtLWNvbnRyb2xbcmVhZG9ubHldIHtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS13aGl0ZSwgJHdoaXRlKTtcbiAgfVxufVxuXG4vLyBkb29ya2VlcGVyLWF1dGhvcml6ZSByZWZlcnMgdG8gYW4gZWxlbWVudCByZW5kZXJlZCBieSAnZG9vcmtlZXBlcicgZ2VtLCBkbyBub3QgcmVtb3ZlIHVubGVzcyByZW1vdmluZyBkb29ya2VlcGVyIGdlbVxuLmRvb3JrZWVwZXItYXV0aG9yaXplIHtcbiAgbWF4LXdpZHRoOiBweC10by1yZW0oNTAwcHgpO1xufVxuXG4uc2V0dGluZ3Mtc2VjdGlvbjo6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS03O1xufVxuXG4uc2V0dGluZ3Mtc2VjdGlvbixcbi5zZXR0aW5ncy1zZWN0aW9uLW5vLWJvdHRvbSB+IC5zZXR0aW5ncy1zZWN0aW9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG59XG5cbi8vIEZpeCBmb3Igc3RpY2t5IGhlYWRlciB3aGVuIHRoZXJlIGlzIG5vIHNlYXJjaCBiYXIuXG4uZmxhc2gtY29udGFpbmVyICsgLnNldHRpbmdzLXNlY3Rpb24ge1xuICBAYXBwbHkgZ2wtcHQtMTtcbn1cblxuLnNldHRpbmdzLXNlY3Rpb246bm90KC5zZXR0aW5ncy1zZWN0aW9uLW5vLWJvdHRvbSkgfiAuc2V0dGluZ3Mtc2VjdGlvbiB7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbiAgQGFwcGx5IGdsLXB0LTY7XG59XG5cbi5zZXR0aW5ncy1zZWN0aW9uLW5vLWJvdHRvbTo6YWZ0ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChzbSwgcGFuZWwpIHtcbiAgICBAYXBwbHkgZ2wtcGItNTtcbiAgfVxufVxuXG4uc2V0dGluZ3Mtc3RpY2t5LWhlYWRlciB7XG4gIHotaW5kZXg6ICRzZXR0aW5ncy1zdGlja3ktaGVhZGVyLXotaW5kZXg7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIHRvcDogJGNhbGMtYXBwbGljYXRpb24taGVhZGVyLWhlaWdodDtcbiAgbWluLWhlaWdodDogJHNldHRpbmdzLXN0aWNreS1oZWFkZXItaGVpZ2h0O1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXB5LTM7XG5cbiAgJjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICB6LWluZGV4OiAtMTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxcHgpO1xuICAgIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHotaW5kZXg6IC0yO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBzdGlja3k7XG4gICAgdG9wOiBjYWxjKCN7JGNhbGMtYXBwbGljYXRpb24taGVhZGVyLWhlaWdodH0gKyAjeyRzZXR0aW5ncy1zdGlja3ktaGVhZGVyLWhlaWdodCAtICRnbC1zcGFjaW5nLXNjYWxlLTN9KTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0ycHg7IC8vIEZpeCByZXRpbmEgaXNzdWUgd2l0aCBoYWxmIHBpeGVsIHJlbmRlcmluZ1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMXB4O1xuICAgIGJveC1zaGFkb3c6IDAgI3skZ2wtc3BhY2luZy1zY2FsZS0zfSAwIHZhcigtLWdsLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcbiAgfVxufVxuXG4uc2V0dGluZ3Mtc3RpY2t5LWZvb3RlciB7XG4gIHotaW5kZXg6ICRzZXR0aW5ncy1zdGlja3ktZm9vdGVyLXotaW5kZXg7XG4gIHBvc2l0aW9uOiBzdGlja3k7XG4gIGJvdHRvbTogMDtcbiAgbWluLWhlaWdodDogJHNldHRpbmdzLXN0aWNreS1mb290ZXItaGVpZ2h0O1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLXB0LTM7XG4gIEBhcHBseSBnbC1ib3JkZXItdDtcbn1cblxuLy8gSGVhZGVyIHNob3VsZG4ndCBiZSBzdGlja3kgaWYgb25seSBvbmUgc2VjdGlvbiBvbiBwYWdlXG4uc2V0dGluZ3Mtc3RpY2t5LWhlYWRlcjpmaXJzdC1vZi10eXBlOmxhc3Qtb2YtdHlwZSB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG59XG4iLCJAdXNlIFwic2FzczpsaXN0XCI7XG5AdXNlIFwic2FzczptYXBcIjtcbiRhdmF0YXItc2l6ZXM6IChcbiAgMTY6IChcbiAgICBmb250LXNpemU6IDEwcHgsXG4gICAgbGluZS1oZWlnaHQ6IDE2cHgsXG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGxcbiAgKSxcbiAgMjA6IChcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbFxuICApLFxuICAyNDogKFxuICAgIGZvbnQtc2l6ZTogMTJweCxcbiAgICBsaW5lLWhlaWdodDogMjRweCxcbiAgICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlXG4gICksXG4gIDI2OiAoXG4gICAgZm9udC1zaXplOiAyMHB4LFxuICAgIGxpbmUtaGVpZ2h0OiAxLjMzLFxuICAgIGJvcmRlci1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWJhc2VcbiAgKSxcbiAgMzI6IChcbiAgICBmb250LXNpemU6IDE0cHgsXG4gICAgbGluZS1oZWlnaHQ6IDMycHgsXG4gICAgYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtYmFzZVxuICApLFxuICA0MDogKFxuICAgIGZvbnQtc2l6ZTogMTZweCxcbiAgICBsaW5lLWhlaWdodDogMzhweCxcbiAgICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlXG4gICksXG4gIDQ4OiAoXG4gICAgZm9udC1zaXplOiAyMHB4LFxuICAgIGxpbmUtaGVpZ2h0OiA0OHB4LFxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlXG4gICksXG4gIDYwOiAoXG4gICAgZm9udC1zaXplOiAzMnB4LFxuICAgIGxpbmUtaGVpZ2h0OiA2MHB4LFxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlXG4gICksXG4gIDY0OiAoXG4gICAgZm9udC1zaXplOiAyOHB4LFxuICAgIGxpbmUtaGVpZ2h0OiA2NHB4LFxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlXG4gICksXG4gIDkwOiAoXG4gICAgZm9udC1zaXplOiAzNnB4LFxuICAgIGxpbmUtaGVpZ2h0OiA5MHB4LFxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlXG4gICksXG4gIDk2OiAoXG4gICAgZm9udC1zaXplOiAzNnB4LFxuICAgIGxpbmUtaGVpZ2h0OiA5NHB4LFxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlXG4gICksXG4gIDEwMDogKFxuICAgIGZvbnQtc2l6ZTogMzZweCxcbiAgICBsaW5lLWhlaWdodDogOThweCxcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZVxuICApLFxuICAxNjA6IChcbiAgICBmb250LXNpemU6IDk2cHgsXG4gICAgbGluZS1oZWlnaHQ6IDE1OHB4LFxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWxhcmdlXG4gIClcbik7XG5cbi5hdmF0YXIsXG4uYXZhdGFyLWNvbnRhaW5lciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6ICRnbC1wYWRkaW5nLTg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcblxuICBAZWFjaCAkc2l6ZSwgJHNpemUtY29uZmlnIGluICRhdmF0YXItc2l6ZXMge1xuICAgICYucyN7JHNpemV9IHtcbiAgICAgIEBpbmNsdWRlIGF2YXRhci1zaXplKCN7JHNpemV9cHgsIGlmKCRzaXplIDwgNDgsIDhweCwgMTZweCkpO1xuICAgIH1cbiAgfVxufVxuXG4uYXZhdGFyIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZTtcbiAgd2lkdGg6IDMycHg7XG4gIGhlaWdodDogMzJweDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogdmFyKC0tZ2wtYmFja2dyb3VuZC1jb2xvci1zdWJ0bGUpO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAxcHggdmFyKC0tZ2wtYXZhdGFyLWJvcmRlci1jb2xvci1kZWZhdWx0KTtcblxuICAmLmF2YXRhci1pbmxpbmUge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgJi5zMTYsXG4gICAgJi5zMjQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgfVxuICB9XG5cbiAgJi5jZW50ZXIge1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICBsaW5lLWhlaWdodDogMS44ZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgJi5hdmF0YXItdGlsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLmlkZW50aWNvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgY29sb3I6IHZhcigtLWdsLXRleHQtY29sb3Itc3Ryb25nKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZ2wtYXZhdGFyLWZhbGxiYWNrLWJhY2tncm91bmQtY29sb3ItbmV1dHJhbCk7XG5cbiAgLy8gU2l6ZXNcbiAgQGVhY2ggJHNpemUsICRzaXplLWNvbmZpZyBpbiAkYXZhdGFyLXNpemVzIHtcbiAgICAka2V5czogbWFwLmtleXMoJHNpemUtY29uZmlnKTtcblxuICAgICYucyN7JHNpemV9IHtcbiAgICAgIEBlYWNoICRrZXkgaW4gJGtleXMge1xuICAgICAgICAvLyBXZSBkb24ndCB3YW50IGBib3JkZXItcmFkaXVzYCB0byBiZSBpbmNsdWRlZCBoZXJlLlxuICAgICAgICBAaWYgKCRrZXkgIT0gJ2JvcmRlci1yYWRpdXMnKSB7XG4gICAgICAgICAgI3ska2V5fTogbWFwLmdldCgkc2l6ZS1jb25maWcsICN7JGtleX0pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQmFja2dyb3VuZCBjb2xvcnNcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsaXN0Lmxlbmd0aCgkZ2wtYXZhdGFyLWlkZW50aWNvbi1iZ3MpIHtcbiAgICAmLmJnI3skaX0ge1xuICAgICAgY29sb3I6IGxpc3QubnRoKCRnbC1hdmF0YXItaWRlbnRpY29uLXRleHRzLCAkaSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaXN0Lm50aCgkZ2wtYXZhdGFyLWlkZW50aWNvbi1iZ3MsICRpKTtcbiAgICB9XG4gIH1cbn1cblxuLmF2YXRhci1jb250YWluZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIGEge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC5hdmF0YXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDA7XG4gICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICB9XG5cbiAgJi5zNDAge1xuICAgIG1pbi13aWR0aDogNDBweDtcbiAgICBtaW4taGVpZ2h0OiA0MHB4O1xuICB9XG5cbiAgJi5zNjQge1xuICAgIG1pbi13aWR0aDogNjRweDtcbiAgICBtaW4taGVpZ2h0OiA2NHB4O1xuICB9XG59XG5cbi5yZWN0LWF2YXRhciB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLXNtYWxsO1xuXG4gIEBlYWNoICRzaXplLCAkc2l6ZS1jb25maWcgaW4gJGF2YXRhci1zaXplcyB7XG4gICAgJi5zI3skc2l6ZX0ge1xuICAgICAgYm9yZGVyLXJhZGl1czogbWFwLmdldCgkc2l6ZS1jb25maWcsICdib3JkZXItcmFkaXVzJyk7XG5cbiAgICAgIC5hdmF0YXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBtYXAuZ2V0KCRzaXplLWNvbmZpZywgJ2JvcmRlci1yYWRpdXMnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmF2YXRhci1jb3VudGVyIHtcbiAgQGluY2x1ZGUgYXZhdGFyLWNvdW50ZXIoKTtcbn1cblxuLnVzZXItcG9wb3ZlciB7XG4gICYudXNlci1wb3BvdmVyLWNhbm5vdC1tZXJnZSB7XG4gICAgLnBvcG92ZXItaGVhZGVyIHtcbiAgICAgIEBhcHBseSBnbC10ZXh0LWZlZWRiYWNrLXdhcm5pbmc7XG4gICAgICBAYXBwbHkgZ2wtYmctZmVlZGJhY2std2FybmluZztcbiAgICB9XG4gIH1cblxuICAmLnVzZXItcG9wb3Zlci1yZWNvbW1lbmRhdGlvbiB7XG4gICAgLnBvcG92ZXItaGVhZGVyIHtcbiAgICAgIEBhcHBseSBnbC10ZXh0LWZlZWRiYWNrLWluZm87XG4gICAgICBAYXBwbHkgZ2wtYmctZmVlZGJhY2staW5mbztcbiAgICB9XG4gIH1cblxuICAmLnVzZXItcG9wb3Zlci1yZWNvbW1lbmRhdGlvbi1idXN5IHtcbiAgICAucG9wb3Zlci1oZWFkZXIge1xuICAgICAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi5hY3Rpb24tY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6ICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gIGJvcmRlci1yYWRpdXM6ICRnbC1ib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtYm9yZGVyO1xuXG4gIC5hY3Rpb24tY2FyZC10aXRsZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGdhcDogJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgICBmb250LXdlaWdodDogJGdsLWZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAgICY6aXMoLmdsLWxpbmspOm5vdCg6aG92ZXIpIHtcbiAgICAgIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gICAgfVxuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAgICY6aXMoLmdsLWxpbmspIHtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWN0aW9uLWNhcmQtYXJyb3cge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNsYXRlOiAtJGdsLXNwYWNpbmctc2NhbGUtMjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSksXG4gICAgICAgICAgdHJhbnNsYXRlIC4ycyBjdWJpYy1iZXppZXIoMC4yMiwgMC42MSwgMC4zNiwgMSk7XG4gIH1cblxuICAuYWN0aW9uLWNhcmQtdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICAgIHRleHQtd3JhcDogYmFsYW5jZTtcbiAgfVxuXG4gIC5hY3Rpb24tY2FyZC1jb250cm9sczpub3QoOmVtcHR5KSB7XG4gICAgbWFyZ2luLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiAgfVxufVxuXG4uYWN0aW9uLWNhcmQtdGl0bGU6aG92ZXIgLmFjdGlvbi1jYXJkLWFycm93IHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNsYXRlOiAwO1xufVxuXG5AbWVkaWEgKHByZWZlcnMtcmVkdWNlZC1tb3Rpb246IHJlZHVjZSkge1xuICAuYWN0aW9uLWNhcmQtdGl0bGUsIC5hY3Rpb24tY2FyZC1hcnJvdyB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogLjAxbXMgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gSGVpZ2h0IGJhbmRzIGZvciBwYW5lbF9zdGF0ZS52dWUuIFRoZSBhbmFseXRpY3MtcGFuZWwtc3RhdGUtKiBjbGFzc2VzIGFyZSBvbmx5IGhvb2tzLFxuLy8gYW5kIHRoZSB0d28tY2xhc3Mgc2VsZWN0b3JzIG91dHJhbmsgdGhlIGlubGluZSB1dGlsaXRpZXMgdGhleSBvdmVycmlkZS4gVGhyZXNob2xkcyBhcmVcbi8vIG1lYXN1cmVkIHN0YXRlIGhlaWdodHMgcGx1cyA4cHggb2Ygc2xhY2sgKHNlZSAhMjU5ODk4KS4gQmVsb3cgdGhlIGNvbXBhY3QgYmFuZCB0aGUgYm9keVxuLy8gc2Nyb2xscyByYXRoZXIgdGhhbiBwdXR0aW5nIHRoZSBhY3Rpb24gYmVzaWRlIHRoZSB0aXRsZSwgYXMgVVggYXNrZWQuXG4kcGFuZWwtc3RhdGUtZGVzY3JpcHRpb24tbWF4OiAxODhweDtcbiRwYW5lbC1zdGF0ZS1jb21wYWN0LW1heDogMTQ4cHg7XG4kcGFuZWwtc3RhdGUtZGVzY3JpcHRpb24tbWluOiA0OHB4O1xuXG4vLyBPbmx5IHN0YXRlcyB3aXRoIGFuIGFjdGlvbiBsb3NlIHRoZWlyIGRlc2NyaXB0aW9uIGhlcmU6IHRoZSBhY3Rpb24gc2F5cyB3aGF0IHRoZVxuLy8gZGVzY3JpcHRpb24gd291bGQuIEEgc3RhdGUgd2l0aG91dCBvbmUgZml0cyBpdHMgZGVzY3JpcHRpb24gZG93biB0byB0aGUgbG93ZXN0IGJhbmQuXG5AY29udGFpbmVyIGRhc2hib2FyZC1wYW5lbC1ib2R5IChoZWlnaHQgPCAjeyRwYW5lbC1zdGF0ZS1kZXNjcmlwdGlvbi1tYXh9KSB7XG4gIC5kYXNoYm9hcmQtcGFuZWwtYm9keSAuYW5hbHl0aWNzLXBhbmVsLXN0YXRlLXdpdGgtYWN0aW9uIC5hbmFseXRpY3MtcGFuZWwtc3RhdGUtZGVzY3JpcHRpb24ge1xuICAgIEBhcHBseSBnbC1oaWRkZW47XG4gIH1cbn1cblxuLy8gVGhlIGNvbXBhY3QgbGF5b3V0LCBhcyB0aGUgY29tcGFjdCBwcm9wIHJlbmRlcnMgaXQ6IGxlZnQtYWxpZ25lZCwgc21hbGxlciB0aXRsZSxcbi8vIGljb24gaW5saW5lIHdpdGggdGhlIHRpdGxlLlxuQGNvbnRhaW5lciBkYXNoYm9hcmQtcGFuZWwtYm9keSAoaGVpZ2h0IDwgI3skcGFuZWwtc3RhdGUtY29tcGFjdC1tYXh9KSB7XG4gIC5kYXNoYm9hcmQtcGFuZWwtYm9keSAuYW5hbHl0aWNzLXBhbmVsLXN0YXRlIHtcbiAgICBAYXBwbHkgZ2wtaC1hdXRvO1xuICAgIEBhcHBseSBnbC1pdGVtcy1zdGFydDtcbiAgICBAYXBwbHkgZ2wtanVzdGlmeS1zdGFydDtcbiAgICBAYXBwbHkgZ2wtcC0wO1xuICAgIEBhcHBseSBnbC10ZXh0LWxlZnQ7XG4gIH1cblxuICAuZGFzaGJvYXJkLXBhbmVsLWJvZHkgLmFuYWx5dGljcy1wYW5lbC1zdGF0ZS1pY29uIHtcbiAgICBAYXBwbHkgZ2wtbXgtMDtcbiAgICBAYXBwbHkgZ2wtbWItMDtcbiAgICBAYXBwbHkgZ2wtbXItMjtcbiAgICBAYXBwbHkgZ2wtaW5saW5lLWJsb2NrO1xuICAgIEBhcHBseSBnbC1hbGlnbi1taWRkbGU7XG4gIH1cblxuICAuZGFzaGJvYXJkLXBhbmVsLWJvZHkgLmFuYWx5dGljcy1wYW5lbC1zdGF0ZS10aXRsZSB7XG4gICAgQGFwcGx5IGdsLXRleHQtbGc7XG4gICAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgICBAYXBwbHkgZ2wtbGVhZGluZy1ub3JtYWw7XG4gIH1cblxuICAuZGFzaGJvYXJkLXBhbmVsLWJvZHkgLmFuYWx5dGljcy1wYW5lbC1zdGF0ZS1hY3Rpb24ge1xuICAgIEBhcHBseSBnbC1tdC0zO1xuICAgIEBhcHBseSBnbC1zZWxmLXN0YXJ0O1xuICB9XG59XG5cbkBjb250YWluZXIgZGFzaGJvYXJkLXBhbmVsLWJvZHkgKGhlaWdodCA8ICN7JHBhbmVsLXN0YXRlLWRlc2NyaXB0aW9uLW1pbn0pIHtcbiAgLmRhc2hib2FyZC1wYW5lbC1ib2R5IC5hbmFseXRpY3MtcGFuZWwtc3RhdGUtZGVzY3JpcHRpb24ge1xuICAgIEBhcHBseSBnbC1oaWRkZW47XG4gIH1cbn1cbiIsIi5Qcm9zZU1pcnJvciB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSA0cHgpO1xuICBwYWRkaW5nLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiAgcGFkZGluZy1sZWZ0OiBjYWxjKCN7JGdsLXNwYWNpbmctc2NhbGUtNX0gLSAycHgpO1xuICBwYWRkaW5nLXJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS01O1xuICBtYXJnaW46IDJweDtcbiAgbWluLWhlaWdodDogMTQwcHg7XG4gIG1heC1oZWlnaHQ6IDU1dmg7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgMC4xNXM7XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAuZ2wtZGFyayAmIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gNnB4KTtcbiAgICBwYWRkaW5nLWxlZnQ6IGNhbGMoI3skZ2wtc3BhY2luZy1zY2FsZS01fSAtIDNweCk7XG4gIH1cblxuICA6OnNlbGVjdGlvbiB7XG4gICAgQGFwcGx5IGdsLWJnLWJsdWUtMTAwO1xuICB9XG5cbiAgZ2wtZW1vamkge1xuICAgIHVzZXItc2VsZWN0OiB0ZXh0O1xuICB9XG5cbiAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gIH1cblxuICAuY29udGVudC1lZGl0b3Itc2VsZWN0aW9uLFxuICAuUHJvc2VNaXJyb3Itc2VsZWN0ZWRub2RlIHtcbiAgICBAYXBwbHkgZ2wtYmctYmx1ZS0xMDA7XG5cbiAgICAmLmdmbS1wcm9qZWN0X21lbWJlciwgLmdmbS1wcm9qZWN0X21lbWJlciB7XG4gICAgICAmOm5vdCguY3VycmVudC11c2VyKSB7XG4gICAgICAgIEBhcHBseSBnbC1iZy1ibHVlLTIwMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmdmbS1wcm9qZWN0X21lbWJlciB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0tYmx1ZS0xMDAsICRibHVlLTEwMCk7XG4gICAgfVxuICB9XG5cbiAgaHIuUHJvc2VNaXJyb3Itc2VsZWN0ZWRub2RlIHtcbiAgICBib3gtc2hhZG93OiAwIDAgMCAycHggdmFyKC0tYmx1ZS0xMDAsICRibHVlLTEwMCk7XG4gIH1cblxuICAuc2VsZWN0ZWRDZWxsIHtcbiAgICAuY29udGVudC1lZGl0b3Itc2VsZWN0aW9uLFxuICAgIC5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUge1xuICAgICAgQGFwcGx5IGdsLWJnLXRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuXG4gIHByZSA+IGNvZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgdGhbYWxpZ25dICosIHRkW2FsaWduXSAqIHtcbiAgICB0ZXh0LWFsaWduOiBpbmhlcml0O1xuICB9XG5cbiAgdGQsXG4gIHRoIHtcbiAgICA+IFtkYXRhLW5vZGUtdmlldy1jb250ZW50XSA+IFtkYXRhLW5vZGUtdmlldy13cmFwcGVyXTpvbmx5LWNoaWxkIHtcbiAgICAgIDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBsaSxcbiAgZGQsXG4gIGR0LFxuICBzdW1tYXJ5IHtcbiAgICA6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIGltZy5Qcm9zZU1pcnJvci1zZWxlY3RlZG5vZGUsXG4gIGF1ZGlvLlByb3NlTWlycm9yLXNlbGVjdGVkbm9kZSxcbiAgLlByb3NlTWlycm9yLXNlbGVjdGVkbm9kZSBhdWRpbyxcbiAgdmlkZW8uUHJvc2VNaXJyb3Itc2VsZWN0ZWRub2RlLFxuICAuUHJvc2VNaXJyb3Itc2VsZWN0ZWRub2RlIHZpZGVvIHtcbiAgICBvdXRsaW5lOiAzcHggc29saWQgJGJsdWUtMjAwO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtM3B4O1xuICB9XG5cbiAgLlByb3NlTWlycm9yLXNlbGVjdGVkbm9kZSAuaWZyYW1lLWVtYmVkLFxuICAuY29udGVudC1lZGl0b3Itc2VsZWN0aW9uIC5pZnJhbWUtZW1iZWQge1xuICAgIG91dGxpbmU6IDNweCBzb2xpZCAkYmx1ZS0yMDA7XG4gIH1cblxuICAuc2VsZWN0ZWRDZWxsOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibHVlLTIwMCwgMC4yNSk7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIH1cblxuICAuaW1hZ2UtcmVzaXplLWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmltYWdlLXJlc2l6ZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogOHB4O1xuICAgIGhlaWdodDogOHB4O1xuICAgIGJhY2tncm91bmQ6ICRibHVlLTIwMDtcbiAgICBvdXRsaW5lOiAxcHggc29saWQgJHdoaXRlO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDI0cHg7XG4gICAgICBoZWlnaHQ6IDI0cHg7XG4gICAgICB0b3A6IC04cHg7XG4gICAgICBsZWZ0OiAtOHB4O1xuICAgIH1cbiAgfVxuXG4gIC5pbWFnZS1yZXNpemUtbncge1xuICAgIHRvcDogLTRweDtcbiAgICBsZWZ0OiAtNHB4O1xuICAgIGN1cnNvcjogbnctcmVzaXplO1xuICB9XG5cbiAgLmltYWdlLXJlc2l6ZS1uZSB7XG4gICAgdG9wOiAtNHB4O1xuICAgIHJpZ2h0OiAtNHB4O1xuICAgIGN1cnNvcjogbmUtcmVzaXplO1xuICB9XG5cbiAgLmltYWdlLXJlc2l6ZS1zdyB7XG4gICAgYm90dG9tOiAtNHB4O1xuICAgIGxlZnQ6IC00cHg7XG4gICAgY3Vyc29yOiBzdy1yZXNpemU7XG4gIH1cblxuICAuaW1hZ2UtcmVzaXplLXNlIHtcbiAgICBib3R0b206IC00cHg7XG4gICAgcmlnaHQ6IC00cHg7XG4gICAgY3Vyc29yOiBzZS1yZXNpemU7XG4gIH1cblxuICBpbWcuUHJvc2VNaXJyb3Itc2VsZWN0ZWRub2RlIHtcbiAgICBvdXRsaW5lOiAycHggc29saWQgJGJsdWUtMjAwO1xuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xuICB9XG5cbiAgaW1nLFxuICBpZnJhbWUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG5cbiAgPiB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuXG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBjaXJjbGU7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdWxbZGF0YS10eXBlPSd0YXNrTGlzdCddIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICB1bCxcbiAgICBvbCxcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICA+IGxhYmVsLFxuICAgICAgPiBkaXYge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgICB9XG5cbiAgICAgID4gbGFiZWwge1xuICAgICAgICBwYWRkaW5nOiAkZ2wtc3BhY2luZy1zY2FsZS0xICRnbC1zcGFjaW5nLXNjYWxlLTMgMCAwO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgICZbZGF0YS1pbmFwcGxpY2FibGVdICoge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgb2xbZGF0YS10eXBlPSd0YXNrTGlzdCddIHtcbiAgICB1bCxcbiAgICBvbCxcbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMzJweDtcblxuICAgICAgPiBsYWJlbCxcbiAgICAgID4gZGl2IHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgfVxuXG4gICAgICA+IGxhYmVsIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBpbnNldC1pbmxpbmUtc3RhcnQ6ICRnbC1wYWRkaW5nLTg7XG4gICAgICAgIGluc2V0LWJsb2NrLXN0YXJ0OiAzcHg7XG4gICAgICB9XG5cbiAgICAgICZbZGF0YS1pbmFwcGxpY2FibGVdICoge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgQGFwcGx5IGdsLXRleHQtZGlzYWJsZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnN1Z2dlc3Rpb24tYWRkZWQsXG4gIC5zdWdnZXN0aW9uLWRlbGV0ZWQsXG4gIC5zdWdnZXN0aW9uLWFkZGVkLWlucHV0IHtcbiAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG5cbiAgICA+IGNvZGUge1xuICAgICAgZm9udC1zaXplOiAkY29kZS1mb250LXNpemUtZml4ZWQ7XG4gICAgICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cblxuICAuc3VnZ2VzdGlvbi1hZGRlZC1pbnB1dCB7XG4gICAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICAgIEBhcHBseSBnbC1ib3JkZXItc2VjdGlvbjtcblxuICAgID4gY29kZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMjBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLnN1Z2dlc3Rpb24tYWRkZWQsXG4gIC5zdWdnZXN0aW9uLWRlbGV0ZWQge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBjb2RlIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxMDBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1kaWZmLWFkZGl0aW9uLWNvbG9yKSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgID4gY29kZTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1saW5lLW51bWJlcik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLTEyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIH1cblxuICAgID4gY29kZTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogJysnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xuICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLnN1Z2dlc3Rpb24tYWRkZWQgPiBjb2RlIHtcbiAgICBjb2xvcjogcmdiYSgkd2hpdGUsIDApO1xuICB9XG5cbiAgLnN1Z2dlc3Rpb24tZGVsZXRlZCB7XG4gICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1ub25lO1xuXG4gICAgPiBjb2RlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWRpZmYtZGVsZXRpb24tY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgPiBjb2RlOjpiZWZvcmUge1xuICAgICAgcGFkZGluZy1yaWdodDogNjBweDtcbiAgICB9XG5cbiAgICA+IGNvZGU6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICctJztcbiAgICB9XG4gIH1cblxuICAuY29udGVudC1lZGl0b3ItY29kZS1ibG9jayB7XG4gICAgLmhsanMtYWRkaXRpb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGlmZi1hZGRpdGlvbi1jb2xvcik7XG4gICAgfVxuXG4gICAgLmhsanMtZGVsZXRpb24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tZGlmZi1kZWxldGlvbi1jb2xvcik7XG4gICAgfVxuICB9XG5cbiAgLmRsLWNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICBtYXJnaW4tbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtNTtcblxuICAgICAgJi5kbC10ZXJtIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5kZXRhaWxzLXRvZ2dsZS1pY29uIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiAn4pa2JztcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHdpZHRoOiAkZ2wtc3BhY2luZy1zY2FsZS00O1xuICAgIH1cblxuICAgICYuaXMtb3Blbjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICfilrwnO1xuICAgIH1cbiAgfVxuXG4gIC5kZXRhaWxzLWNvbnRlbnQge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRnbC1zcGFjaW5nLXNjYWxlLTR9KTtcblxuICAgID4gbGkge1xuICAgICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gICAgfVxuXG4gICAgPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmlzLW9wZW4gPiA6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZGlzcGxheTogaW5oZXJpdDtcbiAgICB9XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzXG4gIC5nbC1uZXctZHJvcGRvd24taW5uZXIgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzXG4gICAgJi5nbC1uZXctZHJvcGRvd24taXRlbSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICAgIH1cbiAgfVxuXG4gIC5tYXJrZG93bi1hbGVydCB7XG4gICAgPiAqOmxhc3QtY2hpbGQgKjpvbmx5LWNoaWxkIHtcbiAgICAgIEBhcHBseSBnbC1tYi0wO1xuICAgIH1cbiAgfVxufVxuXG4vLyBGaXhlcyBhIHByb2JsZW0gd2l0aCB0aGUgbGF5b3V0IHNoaWZ0aW5nXG4vLyB3aGVuIHN3aXRjaGluZyBiZXR3ZWVuIE1hcmtkb3duIGFuZCB0aGVcbi8vIFJpY2h0ZXh0IGVkaXRvciBkdWUgdG8gYSBsb29zbHkgZGVmaW5lZFxuLy8gc3R5bGUgaW4gdHlwb2dyYXBoeS5zY3NzXG4ubWQgPiAuUHJvc2VNaXJyb3Ige1xuICBtYXJnaW46IDJweDtcblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzXG4gIC5nbC1kYXJrICYge1xuICAgIG1hcmdpbjogMnB4IDNweDtcbiAgfVxufVxuXG4udGFibGUtY3JlYXRvci1ncmlkLWl0ZW0ge1xuICBtaW4taGVpZ2h0OiAxcmVtICFpbXBvcnRhbnQ7XG4gIG1pbi13aWR0aDogMXJlbSAhaW1wb3J0YW50O1xuXG4gICYuYWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHZhcigtLWdsLWZlZWRiYWNrLWluZm8tdGV4dC1jb2xvcikgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1mZWVkYmFjay1pbmZvLWJhY2tncm91bmQtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIH1cblxuICAmOmZvY3VzLXZpc2libGUge1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uY29udGVudC1lZGl0b3Itc3dpdGNoZXIge1xuICBtaW4taGVpZ2h0OiAzMnB4O1xufVxuXG5cbi5jb250ZW50LWVkaXRvci1jb2xvci1jaGlwOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTFweDtcbiAgaGVpZ2h0OiAxMXB4O1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIG1hcmdpbi1sZWZ0OiA0cHg7XG4gIG1hcmdpbi10b3A6IC0ycHg7XG4gIEBhcHBseSBnbC1ib3JkZXItMTtcbiAgQGFwcGx5IGdsLWJvcmRlci1zb2xpZDtcbiAgQGFwcGx5IGdsLWJvcmRlci1hbHBoYS1kYXJrLTI0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1jb2xvci1jaGlwLWNvbG9yKTtcbn1cblxuLmNvbnRlbnQtZWRpdG9yLXBsYWNlaG9sZGVyIHtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgQGFwcGx5IGdsLWJvcmRlci0xO1xuICBAYXBwbHkgZ2wtYm9yZGVyLWRhc2hlZDtcbiAgQGFwcGx5IGdsLWJvcmRlci1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtcHgtMjtcblxuICAmLmNvbnRlbnQtZWRpdG9yLXBsYWNlaG9sZGVyLXNlbGVjdGVkIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtZm9jdXMtcmluZy1vdXRlci1jb2xvcik7XG4gIH1cbn1cblxuLmNvbnRlbnQtZWRpdG9yLWNvbW1lbnQge1xuICAmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICc8IS0tJztcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBjb250ZW50OiAnLS0+JztcbiAgfVxufVxuXG4vLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzXG4uY29udGVudC1lZGl0b3ItdGFibGUtZHJvcGRvd24gLmdsLW5ldy1kcm9wZG93bi1wYW5lbCB7XG4gIG1pbi13aWR0aDogYXV0bztcbn1cblxuLmNvbnRlbnQtZWRpdG9yLXN1Z2dlc3Rpb25zLWRyb3Bkb3duIHtcbiAgLmNvbnRlbnQtZWRpdG9yLXN1Z2dlc3Rpb25zLXBhbmVsIHtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgbWF4LXdpZHRoOiBtaW4oI3skZ2wtbmV3LWRyb3Bkb3duLW1heC13aWR0aH0sIGNhbGMoMTAwdncgLSAycmVtKSk7XG4gIH1cblxuICAuZm9jdXNlZCAuY29udGVudC1lZGl0b3Itc3VnZ2VzdGlvbnMtaXRlbS1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBnbC1mb2N1cygkaW5zZXQ6IHRydWUpO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWRyb3Bkb3duLW9wdGlvbi1iYWNrZ3JvdW5kLWNvbG9yLXVuc2VsZWN0ZWQtaG92ZXIpO1xuICB9XG59XG5cbi5idWJibGUtbWVudS1mb3JtIHtcbiAgbWluLXdpZHRoOiAzMjBweDtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIFByb3NlTWlycm9yIHBhcmFncmFwaHMgd2l0aCBtYXJrc1xuLlByb3NlTWlycm9yIHA6aGFzKG1hcmspIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xufVxuXG4uaW1tZXJzaXZlIHtcbiAgLnJ0ZS10ZXh0LWJveD4qLCAucGxhY2Vob2xkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgbWF4LXdpZHRoOiB2YXIoLS1pbW1lcnNpdmUtZWRpdG9yLXRleHQtd2lkdGgsICRpbW1lcnNpdmUtZWRpdG9yLXRleHQtd2lkdGgpO1xuICB9XG5cbiAgLnJ0ZS10ZXh0LWJveDpmb2N1cy12aXNpYmxlIHtcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAubWQtYXJlYSwgLm1kLWFyZWE6aG92ZXIge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5ydGUtdGV4dC1ib3gge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXgtaGVpZ2h0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgcmVzaXplOiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmlmcmFtZS1kcmFnLXBsYWNlaG9sZGVyIHtcbiAgYm9yZGVyOiAycHggc29saWQgJGJsdWUtMjAwO1xuICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBiYWNrZ3JvdW5kOiAkZ3JheS00MDA7XG5cbiAgQGFwcGx5IGdsLWFic29sdXRlO1xuICB0b3A6IC05OTk5cHg7XG59XG5cbi5jb2xsYWJvcmF0aW9uLWN1cnNvci1jYXJldCB7XG4gIEBhcHBseSBnbC1wb2ludGVyLWV2ZW50cy1ub25lO1xuICBAYXBwbHkgZ2wtcmVsYXRpdmU7XG4gIEBhcHBseSBnbC1icmVhay1ub3JtYWw7XG4gIC8vIFRoZSBjYXJldCBzaXRzIGJldHdlZW4gdHdvIGNoYXJhY3RlcnMsIHNvIGl0IGlzIHB1bGxlZCBiYWNrIG92ZXIgaXRzIG93blxuICAvLyBib3JkZXIgd2lkdGggdG8gYXZvaWQgbnVkZ2luZyB0aGUgc3Vycm91bmRpbmcgdGV4dC5cbiAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQ7XG59XG5cbi5jb2xsYWJvcmF0aW9uLWN1cnNvci1sYWJlbCB7XG4gIEBhcHBseSBnbC1hYnNvbHV0ZTtcbiAgQGFwcGx5IGdsLXNlbGVjdC1ub25lO1xuICBAYXBwbHkgZ2wtd2hpdGVzcGFjZS1ub3dyYXA7XG4gIEBhcHBseSBnbC1weC0xO1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbiAgQGFwcGx5IGdsLW5vdC1pdGFsaWM7XG4gIEBhcHBseSBnbC10ZXh0LXdoaXRlO1xuICAvLyBTaXRzIGFib3ZlIHRoZSBjYXJldCwgd2l0aCB0aGUgYm90dG9tLWxlZnQgY29ybmVyIHNxdWFyZWQgb2ZmIHNvIHRoZSBsYWJlbFxuICAvLyByZWFkcyBhcyBhIGZsYWcgYXR0YWNoZWQgdG8gaXQuXG4gIHRvcDogLTEuNGVtO1xuICBsZWZ0OiAtMXB4O1xuICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlICRnbC1ib3JkZXItcmFkaXVzLWJhc2UgJGdsLWJvcmRlci1yYWRpdXMtYmFzZSAwO1xuICBsaW5lLWhlaWdodDogMS40O1xufVxuIiwiLy8gU2l6ZSBjb250YWlubWVudCBuZWVkcyBhIGRlZmluaXRlIGhlaWdodCwgd2hpY2ggb25seSBncmlkIHRpbGVzIGdpdmUgdGhlIGJvZHk7IGVsc2V3aGVyZVxuLy8gaXQgd291bGQgY29sbGFwc2UuIEl0IGFsc28gbWFrZXMgdGhlIGJvZHkgdGhlIGNvbnRhaW5pbmcgYmxvY2sgZm9yIGZpeGVkIGRlc2NlbmRhbnRzLlxuLmdyaWQtc3RhY2staXRlbSAuZGFzaGJvYXJkLXBhbmVsLWJvZHkge1xuICBjb250YWluZXItbmFtZTogZGFzaGJvYXJkLXBhbmVsLWJvZHk7XG4gIGNvbnRhaW5lci10eXBlOiBzaXplO1xufVxuIiwiLmRlcGxveW1lbnQtaW5zdGFuY2Uge1xuICB3aWR0aDogJGdsLXBhZGRpbmc7XG4gIGhlaWdodDogJGdsLXBhZGRpbmc7XG4gIG1hcmdpbjogMXB4O1xuICBib3JkZXI6IDFweCBzb2xpZDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtc21hbGw7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmRlcGxveW1lbnQtaW5zdGFuY2Utc3VjY2VlZGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuLTYwMDtcbiAgYm9yZGVyLWNvbG9yOiAkZ3JlZW4tODAwO1xuXG4gICYubGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuLTgwMDtcbiAgICBib3JkZXItY29sb3I6ICRncmVlbi05NTA7XG4gIH1cbn1cblxuLmRlcGxveW1lbnQtaW5zdGFuY2UtcnVubmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmVlbi0zMDA7XG4gIGJvcmRlci1jb2xvcjogJGdyZWVuLTYwMDtcblxuICAmLmxpbms6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbi01MDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkZ3JlZW4tODAwO1xuICB9XG59XG5cbi5kZXBsb3ltZW50LWluc3RhbmNlLWZhaWxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZWQtNjAwO1xuICBib3JkZXItY29sb3I6ICRyZWQtODAwO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgICB0b3A6IC0ycHg7XG4gICAgYm90dG9tOiAtMnB4O1xuICB9XG5cbiAgJi5saW5rOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkLTgwMDtcbiAgICBib3JkZXItY29sb3I6ICRyZWQtOTUwO1xuICB9XG59XG5cbi5kZXBsb3ltZW50LWluc3RhbmNlLXBlbmRpbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0yMDA7XG4gIGJvcmRlci1jb2xvcjogJGdyYXktNTAwO1xuXG4gICYubGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMzAwO1xuICAgIGJvcmRlci1jb2xvcjogJGdyYXktOTAwO1xuICB9XG59XG5cbi5kZXBsb3ltZW50LWluc3RhbmNlLXVua25vd24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIGJvcmRlci1jb2xvcjogJGdyYXktNTAwO1xuXG4gICYubGluazpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlci1jb2xvcjogJGdyYXktOTAwO1xuICB9XG59XG5cbi5kZXBsb3ltZW50LWluc3RhbmNlLmRlcGxveW1lbnQtaW5zdGFuY2UtY2FuYXJ5IHtcbiAgJjo6YWZ0ZXIge1xuICAgIHdpZHRoOiA3cHg7XG4gICAgaGVpZ2h0OiA3cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmFuZ2UtMzAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBjb250ZW50OiAnJztcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi5kZXBsb3ltZW50LWluc3RhbmNlLWNhbmFyeS1pY29uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcblxuICAmOjphZnRlciB7XG4gICAgd2lkdGg6ICRnbC1wYWRkaW5nICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAkZ2wtcGFkZGluZyAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIuZGV0YWlsLXBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTQ7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuXG4gIC5hdXRob3ItbGluayB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKHNtLCBwYW5lbCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi5kZXRhaWwtcGFnZS1oZWFkZXIgYSB7XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG59XG5cbi5kZXRhaWwtcGFnZS1oZWFkZXIgYS5saW5rLFxuLmRldGFpbC1wYWdlLWhlYWRlciAudGl0bGUgYSB7XG4gIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLWxpbmspO1xufVxuXG4uZGV0YWlsLXBhZ2UtaGVhZGVyLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDEgMTtcbiAgbWluLXdpZHRoOiAwO1xuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChzbSwgcGFuZWwpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuXG4uZGV0YWlsLXBhZ2UtaGVhZGVyLWFjdGlvbnMge1xuICBmbGV4OiAwIDAgYXV0bztcbn1cblxuLmRldGFpbC1wYWdlLWRlc2NyaXB0aW9uIHtcbiAgLnRpdGxlIHtcbiAgICBtYXJnaW46IDAgMCAkZ2wtc3BhY2luZy1zY2FsZS00O1xuICAgIEBhcHBseSBnbC10ZXh0LWhlYWRpbmc7XG4gICAgcGFkZGluZzogMCAwIDAuM2VtO1xuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAgIG1hcmdpbi10b3A6IDZweDtcblxuICAgICsgLmVkaXRlZC10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTQ7XG4gICAgfVxuICB9XG5cbiAgLmF1dGhvci1saW5rIHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1kZWZhdWx0O1xuICB9XG59XG4iLCIvLyBGb2N1c0Nhcm91c2VsICh2dWVfc2hhcmVkL2NvbXBvbmVudHMvZm9jdXNfY2Fyb3VzZWwpOiB0aGUgZm9jdXNlZCBpdGVtJ3Ncbi8vIGRpc3BsYXktc2NhbGUgdGl0bGUgYW5kIHRoZSBkaW1tZWQgcmFpbCByb3dzIGFyb3VuZCBpdC5cblxuLy8gVGhlIGNvbXBvbmVudCBpcyBpdHMgb3duIHNpemUgY29udGFpbmVyLCBzbyB0aGUgZmx1aWQgdGl0bGUgc2NhbGVzIHdpdGhcbi8vIHRoZSBzcGFjZSB0aGUgZW1iZWRkZXIgYWN0dWFsbHkgZ3JhbnRzIGl0LCBuZXZlciB0aGUgdmlld3BvcnQuXG4uZm9jdXMtY2Fyb3VzZWwge1xuICBjb250YWluZXItdHlwZTogaW5saW5lLXNpemU7XG59XG5cbi8vIFRoZSBkZXNpZ24ncyBkaXNwbGF5IHNjYWxlIHRvcHMgb3V0IGFib3ZlIHRoZSB0eXBlLXNjYWxlIHRva2VucyAodHJhY2tlZFxuLy8gZGVzaWduLXN5c3RlbSBnYXApLCBzbyB0aGUgc2l6ZSBjbGFtcHMgZmx1aWRseSBhZ2FpbnN0IHRoZSBjb21wb25lbnQnc1xuLy8gb3duIHdpZHRoLlxuLmZvY3VzLWNhcm91c2VsLWl0ZW0tdGl0bGUge1xuICBmb250LXNpemU6IGNsYW1wKDEuNzVyZW0sIDdjcWksIDIuNXJlbSk7XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1ib2xkKTtcbiAgbGluZS1oZWlnaHQ6IDEuMDU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMjVlbTtcbiAgb3ZlcmZsb3ctd3JhcDogYW55d2hlcmU7XG59XG5cbi8vIFJhaWwgcm93cyAocHJldmlvdXMgYW5kIHVwLW5leHQpIGRpbSB0aGVpciB0aXRsZXMgdG93YXJkIHRoZSBjYW52YXMsXG4vLyByZXN0b3JpbmcgbW9zdCBvZiBpdCBvbiBob3ZlciBhbmQga2V5Ym9hcmQgZm9jdXM7IHRoZSB0aW1lc3RhbXAgc3RheXMgYXRcbi8vIGZ1bGwgbXV0ZWQgc3RyZW5ndGguIEhhbGYgYWxwaGEgZmFpbHMgV0NBRydzIDM6MSBsYXJnZS10ZXh0IHRocmVzaG9sZCBvblxuLy8gYm90aCBjYW52YXNlcywgc28gZWFjaCBtb2RlIGxpZnRzIGl0IHRvIHRoZSB2YWx1ZSB0aGF0IGNsZWFycyBpdC5cbi5mb2N1cy1jYXJvdXNlbC1yYWlsLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiB2YXIoLS1nbC1mb250LXdlaWdodC1ib2xkKTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBjb2xvcjogdmFyKC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGUpO1xuICBvcGFjaXR5OiAwLjc1O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYztcblxuICBAaW5jbHVkZSBnbC1wcmVmZXJzLXJlZHVjZWQtbW90aW9uLXRyYW5zaXRpb247XG5cbiAgLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzcyAtLSBtb2RlIGNsYXNzLCBub3QgdXRpbGl0eSAqL1xuICAuZ2wtZGFyayAmIHtcbiAgICBvcGFjaXR5OiAwLjY1O1xuICB9XG5cbiAgLy8gRm9yY2VkIGNvbG9ycyBmbGF0dGVucyB0aGUgcGFsZXR0ZSwgc28gYW4gYWxwaGEgZGltIG9ubHkgZGVncmFkZXMuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uZm9jdXMtY2Fyb3VzZWwtcmFpbC1yb3c6aG92ZXIsXG4uZm9jdXMtY2Fyb3VzZWwtcmFpbC1yb3c6Zm9jdXMtdmlzaWJsZSB7XG4gIGJvcmRlci1jb2xvcjogdmFyKC0tZ2wtYm9yZGVyLWNvbG9yLWRlZmF1bHQpO1xuXG4gIC5mb2N1cy1jYXJvdXNlbC1yYWlsLXRpdGxlIHtcbiAgICBvcGFjaXR5OiAwLjk7XG4gIH1cbn1cblxuLy8gS2V5Ym9hcmQgZm9jdXMsIGFjdGl2ZWRlc2NlbmRhbnQtc3R5bGU6IERPTSBmb2N1cyBsaXZlcyBvbiB0aGUgZ3JvdXAsIGJ1dFxuLy8gdGhlIHZpc2libGUgcmluZyBtYXJrcyB0aGUgc3RhZ2UgKHRoZSBjdXJyZW50IGl0ZW0sIHRoZSB0aGluZyBhcnJvd3MgY2hhbmdlXG4vLyBhbmQgRW50ZXIgb3BlbnMpLCBtYXRjaGluZyBob3cgdGFicywgbGlzdGJveGVzLCBhbmQgZ3JpZHMgaW5kaWNhdGUgdGhlIGl0ZW1cbi8vIHJhdGhlciB0aGFuIHRoZSBjb250YWluZXIuIEZvcmNlZCBjb2xvcnMgc3RyaXBzIGJveC1zaGFkb3cgcmluZ3MgYW5kIGhvbm9yc1xuLy8gb3V0bGluZSBzdXBwcmVzc2lvbiwgc28gdGhlcmUgdGhlIGluZGljYXRvciBzdGF5cyBvbiB0aGUgcmVhbCBmb2N1cyB0YXJnZXRcbi8vIGFzIGEgdHJhbnNwYXJlbnQgb3V0bGluZSB0aGUgc3lzdGVtIHJlcGFpbnRzLlxuLmZvY3VzLWNhcm91c2VsOmZvY3VzLXZpc2libGUge1xuICBvdXRsaW5lOiBub25lO1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLmZvY3VzLWNhcm91c2VsLXN0YWdlIHtcbiAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gIH1cbn1cblxuIiwiLm11bHRpcGxlLWNob2ljZS1zZWxlY3Rvci1pdGVtIHtcbiAgQGluY2x1ZGUgZ2wtcHJlZmVycy1yZWR1Y2VkLW1vdGlvbi10cmFuc2l0aW9uO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgYm9yZGVyLWNvbG9yICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgYm94LXNoYWRvdyAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWM7XG5cbiAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC10LWJhc2U7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQge1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWItYmFzZTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3NcbiAgJi5tdWx0aXBsZS1jaG9pY2Utc2VsZWN0b3ItaXRlbSAuZ2wtZm9ybS1jaGVja2JveC5nbC1mb3JtLWNoZWNrYm94IGxhYmVsLFxuICAmLm11bHRpcGxlLWNob2ljZS1zZWxlY3Rvci1pdGVtIC5nbC1mb3JtLXJhZGlvLmdsLWZvcm0tcmFkaW8gbGFiZWwge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gc2VsZWN0b3IgaXRlbSBlbGVtZW50XG4gICY6aGFzKGlucHV0OmNoZWNrZWQpIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KTtcbiAgICBib3gtc2hhZG93OiAwIC0xcHggMCAwIHZhcigtLWdsLWNvbnRyb2wtYm9yZGVyLWNvbG9yLXNlbGVjdGVkLWRlZmF1bHQpLFxuICAgIGluc2V0IC0xcHggMCAwIDAgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCksXG4gICAgaW5zZXQgMCAtMXB4IDAgMCB2YXIoLS1nbC1jb250cm9sLWJvcmRlci1jb2xvci1zZWxlY3RlZC1kZWZhdWx0KSxcbiAgICBpbnNldCAxcHggMCAwIDAgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3Itc2VsZWN0ZWQtZGVmYXVsdCk7XG4gICAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1iYXNlO1xuICB9XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGFkamFjZW50IHNlbGVjdG9yIGl0ZW1zXG4gICY6aGFzKGlucHV0OmNoZWNrZWQpICsgJjpoYXMoaW5wdXQ6Y2hlY2tlZCkge1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLXQtbm9uZTtcbiAgfVxuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIHNjb3BlZCB0byBhZGphY2VudCBzZWxlY3RvciBpdGVtc1xuICAmOmhhcyhpbnB1dDpjaGVja2VkKTpoYXMoKyAmIGlucHV0OmNoZWNrZWQpIHtcbiAgICBAYXBwbHkgZ2wtcm91bmRlZC1iLW5vbmU7XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gc2VsZWN0b3IgaXRlbSBlbGVtZW50XG4gICY6bm90KDpsYXN0LWNoaWxkKTpoYXMoaW5wdXQ6Y2hlY2tlZCkge1xuICAgIG1hcmdpbjogLTFweCAtMXB4IDA7XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gc2VsZWN0b3IgaXRlbSBlbGVtZW50XG4gICY6bGFzdC1jaGlsZDpoYXMoaW5wdXQ6Y2hlY2tlZCkge1xuICAgIG1hcmdpbjogLTFweDtcbiAgfVxuXG4gIC5jdXN0b20tY29udHJvbCB7XG4gICAgbWluLWhlaWdodDogYXV0bztcbiAgfVxufVxuXG4ubXVsdGlwbGUtY2hvaWNlLXNlbGVjdG9yLWNsaWNrLWFyZWEge1xuICBAYXBwbHkgZ2wtYWJzb2x1dGU7XG4gIEBhcHBseSAtZ2wtdG9wLTU7XG4gIEBhcHBseSAtZ2wtbGVmdC03O1xuICBAYXBwbHkgZ2wtdy1mdWxsO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xuICBAYXBwbHkgZ2wtcC01O1xuICBAYXBwbHkgZ2wtcGwtNztcbiAgQGFwcGx5IGdsLWJveC1jb250ZW50O1xuICBAYXBwbHkgLWdsLXotMTtcbn1cbiIsIi5yZWYtc2VsZWN0b3Ige1xuICAuZHJvcGRvd24tbWVudS5zaG93IHtcbiAgICAvLyBNYWtlIHRoZSBkcm9wZG93biBhIGxpdHRsZSB3aWRlciBhbmQgbG9uZ2VyIHRoYW4gdXN1YWxcbiAgICAvLyBzaW5jZSBpdCBjb250YWlucyBxdWl0ZSBhIGJpdCBvZiBjb250ZW50LlxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDIwcmVtO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAgICYsXG4gICAgLmdsLWRyb3Bkb3duLWlubmVyIHtcbiAgICAgIG1heC1oZWlnaHQ6ICRkcm9wZG93bi1tYXgtaGVpZ2h0LWxnO1xuICAgIH1cbiAgfVxufVxuIiwiJGl0ZW0tcGF0aC1tYXgtd2lkdGg6IDE2MHB4O1xuJGl0ZW0tbWlsZXN0b25lLW1heC13aWR0aDogMTIwcHg7XG4kaXRlbS13ZWlnaHQtbWF4LXdpZHRoOiA0OHB4O1xuJGl0ZW0tcmVtb3ZlLWJ1dHRvbi1zcGFjZTogNDJweDtcblxuLnJlbGF0ZWQtaXRlbXMtbGlzdCB7XG4gIHBhZGRpbmc6ICRnbC1wYWRkaW5nLTQ7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRnbC1ib3JkZXItc2l6ZS0zO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJGdsLWJvcmRlci1zaXplLTM7XG5cbiAgJixcbiAgLmxpc3QtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5pdGVtLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMtd2l0aGluIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN1YnRsZSk7XG4gICAgYm9yZGVyLWNvbG9yOiB2YXIoLS1nbC1ib3JkZXItY29sb3Itc3VidGxlKTtcbiAgfVxuXG4gIC5pc3N1ZS10b2tlbi1zdGF0ZS1pY29uLFxuICAuaXRlbS1taWxlc3RvbmUgLmljb24sXG4gIC5pdGVtLXdlaWdodCAuYm9hcmQtY2FyZC1pbmZvLWljb24ge1xuICAgIG1pbi13aWR0aDogJGdsLXBhZGRpbmc7XG4gICAgY3Vyc29yOiBoZWxwO1xuXG4gICAgJjpmb2N1cy12aXNpYmxlIHtcbiAgICAgIEBhcHBseSBnbC1mb2N1cztcbiAgICB9XG4gIH1cblxuICAuaXRlbS10aXRsZSB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcblxuICAgIC5zb3J0YWJsZS1saW5rIHtcbiAgICAgIGNvbG9yOiB2YXIoLS1nbC10ZXh0LWNvbG9yLXN0cm9uZyk7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgfVxuXG4gIC5pdGVtLXBhdGgtaWQgLnBhdGgtaWQtdGV4dCxcbiAgLml0ZW0tbWlsZXN0b25lIC5taWxlc3RvbmUtdGl0bGUsXG4gIC5pdGVtLWR1ZS1kYXRlLFxuICAuaXRlbS13ZWlnaHQgLmJvYXJkLWNhcmQtaW5mby10ZXh0IHtcbiAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG59XG5cbi5pdGVtLW1ldGEge1xuICBmbGV4LWJhc2lzOiAxMDAlO1xuICBmb250LXNpemU6ICRnbC1mb250LXNpemU7XG4gIEBhcHBseSBnbC10ZXh0LXN1YnRsZTtcblxuICAuaXRlbS1kdWUtZGF0ZSxcbiAgLmJvYXJkLWNhcmQtd2VpZ2h0IHtcbiAgICAmLmJvYXJkLWNhcmQtaW5mbyB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLml0ZW0tbWlsZXN0b25lLFxuICAuaXRlbS13ZWlnaHQge1xuICAgIGN1cnNvcjogaGVscDtcbiAgfVxuXG4gIC5pdGVtLW1pbGVzdG9uZSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG1heC13aWR0aDogJGl0ZW0tbWlsZXN0b25lLW1heC13aWR0aDtcbiAgfVxuXG4gIC5pdGVtLXdlaWdodCB7XG4gICAgbWF4LXdpZHRoOiAkaXRlbS13ZWlnaHQtbWF4LXdpZHRoO1xuICB9XG59XG5cbi5pdGVtLWFzc2lnbmVlcyB7XG4gIC51c2VyLWF2YXRhci1saW5rIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kZ2wtcGFkZGluZy00O1xuXG4gICAgJjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5hdmF0YXIge1xuICAgIGhlaWdodDogJGdsLXBhZGRpbmc7XG4gICAgd2lkdGg6ICRnbC1wYWRkaW5nO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB9XG5cbiAgLmF2YXRhci1jb3VudGVyIHtcbiAgICBoZWlnaHQ6ICRnbC1wYWRkaW5nO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRnbC10ZXh0LWNvbG9yLXRlcnRpYXJ5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbiAgICBwYWRkaW5nOiAwICRnbC1wYWRkaW5nLTQ7XG4gICAgbGluZS1oZWlnaHQ6ICRnbC1wYWRkaW5nO1xuICB9XG59XG5cbi5pdGVtLXBhdGgtaWQge1xuICBmb250LXNpemU6ICRnbC1mb250LXNpemUtc21hbGw7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgLnBhdGgtaWQtdGV4dCB7XG4gICAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ib2xkO1xuICAgIG1heC13aWR0aDogJGl0ZW0tcGF0aC1tYXgtd2lkdGg7XG4gIH1cbn1cblxuLm1yLWNpLXN0YXR1cyB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuXG4gIGE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsLWJvcmRlci1yYWRpdXMtZnVsbDtcbiAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gIH1cbn1cblxuQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gIC5idG4tc20uZHJvcGRvd24tdG9nZ2xlLXNwbGl0IHtcbiAgICBtYXgtd2lkdGg6IDQwcHg7XG4gIH1cbn1cblxuQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKHNtLCBwYW5lbCkge1xuICAuc29ydGFibGUtbGluayB7XG4gICAgbWF4LXdpZHRoOiA5MCU7XG4gIH1cblxufVxuXG4vKiBTbWFsbCBkZXZpY2VzIChsYW5kc2NhcGUgcGhvbmVzLCA3NjhweCBhbmQgdXApICovXG5AaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gIC5pdGVtLWJvZHkgLml0ZW0tdGl0bGUge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5zb3J0YWJsZS1saW5rIHtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLml0ZW0tYm9keSB7XG4gICAgLml0ZW0tY29udGVudHMge1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG59XG5cbi8qIE1lZGl1bSBkZXZpY2VzIChkZXNrdG9wcywgOTkycHggYW5kIHVwKSAqL1xuQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKGxnLCBwYW5lbCkge1xuICAuaXRlbS1ib2R5IC5pdGVtLW1ldGEgLml0ZW0tcGF0aC1pZCB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0OyAvLyBCYXNlIHNpemUgZ2l2ZW4gdG8gYGl0ZW0tbWV0YWAgaXMgYCRnbC1mb250LXNpemUtc21hbGxgXG4gIH1cbn1cblxuLyogTGFyZ2UgZGV2aWNlcyAobGFyZ2UgZGVza3RvcHMsIDEyMDBweCBhbmQgdXApICovXG5AaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAoeGwsIHBhbmVsKSB7XG4gIC5pdGVtLWJvZHkge1xuICAgIC5pdGVtLXRpdGxlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIGZsZXgtc2hyaW5rOiAxO1xuICAgICAgZm9udC13ZWlnaHQ6ICRnbC1mb250LXdlaWdodC1ub3JtYWw7XG4gICAgfVxuICB9XG5cbiAgLml0ZW0tY29udGVudHMge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAuaXRlbS1hc3NpZ25lZXMge1xuICAgIC5hdmF0YXIge1xuICAgICAgaGVpZ2h0OiAkZ2wtcGFkZGluZy0yNDtcbiAgICAgIHdpZHRoOiAkZ2wtcGFkZGluZy0yNDtcbiAgICB9XG5cbiAgICAuYXZhdGFyLWNvdW50ZXIge1xuICAgICAgaGVpZ2h0OiAkZ2wtcGFkZGluZy0yNDtcbiAgICAgIG1pbi13aWR0aDogJGdsLXBhZGRpbmctMjQ7XG4gICAgICBsaW5lLWhlaWdodDogJGdsLXBhZGRpbmctMjQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAkZ2wtcGFkZGluZy0yNDtcbiAgICB9XG4gIH1cblxuICAuc29ydGFibGUtbGluayB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgfVxufVxuIiwiLmluY2lkZW50LXNldmVyaXR5LFxuLmluY2lkZW50LW1hbmFnZW1lbnQtbGlzdCxcbi5hbGVydC1tYW5hZ2VtZW50LWRldGFpbHMge1xuICAuaWNvbi1jcml0aWNhbCB7XG4gICAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWNyaXRpY2FsKTtcbiAgfVxuXG4gIC5pY29uLWhpZ2gge1xuICAgIGNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1oaWdoKTtcbiAgfVxuXG4gIC5pY29uLW1lZGl1bSB7XG4gICAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLW1lZGl1bSk7XG4gIH1cblxuICAuaWNvbi1sb3cge1xuICAgIGNvbG9yOiB2YXIoLS1zZXZlcml0eS1jb2xvci1sb3cpO1xuICB9XG5cbiAgLmljb24taW5mbyB7XG4gICAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLWluZm8pO1xuICB9XG5cbiAgLmljb24tdW5rbm93biB7XG4gICAgY29sb3I6IHZhcigtLXNldmVyaXR5LWNvbG9yLXVua25vd24pO1xuICB9XG59XG4iLCIuc2hvcnRjdXQtaGVscC1ib2R5IHtcbiAgaGVpZ2h0OiA4MHZoO1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG59XG5cbi5zaG9ydGN1dC1oZWxwLWNvbnRhaW5lciB7XG4gIGNvbHVtbi1jb3VudDogMTtcbiAgQGluY2x1ZGUgbWVkaWEtYnJlYWtwb2ludC11cChtZCkge1xuICAgIGNvbHVtbi1jb3VudDogMjtcbiAgfVxuICBjb2x1bW4tZ2FwOiAxcmVtO1xufVxuXG4uc2hvcnRjdXQtaGVscC1tYXBwaW5nIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYnJlYWstaW5zaWRlOiBhdm9pZDtcblxuICBrYmQge1xuICAgIG1hcmdpbjogMC4xcmVtIDA7XG4gICAgbGluZS1oZWlnaHQ6IHVuc2V0O1xuICAgIGZvbnQtc2l6ZTogdW5zZXQ7XG4gIH1cbn1cblxuLnNob3J0Y3V0LWhlbHAtbWFwcGluZy10aXRsZSB7XG4gIG1hcmdpbi1sZWZ0OiA0MCU7XG59XG4iLCJAdXNlIFwic2Fzczpjb2xvclwiO1xuQHVzZSBcInNhc3M6bWV0YVwiO1xuQHVzZSBcInNhc3M6c3RyaW5nXCI7XG5AZnVuY3Rpb24gZW5jb2RlY29sb3IoJHN0cmluZykge1xuICBAaWYgbWV0YS50eXBlLW9mKCRzdHJpbmcpID09ICdjb2xvcicge1xuICAgICRoZXg6IHN0cmluZy5zbGljZShjb2xvci5pZS1oZXgtc3RyKCRzdHJpbmcpLCA0KTtcbiAgICAkc3RyaW5nOiBzdHJpbmcudW5xdW90ZSgnI3skaGV4fScpO1xuICB9XG4gICRzdHJpbmc6ICclMjMnICsgJHN0cmluZztcbiAgQHJldHVybiAkc3RyaW5nO1xufVxuXG5AbWl4aW4gZHJvcHpvbmUtYmFja2dyb3VuZCgkc3Ryb2tlLWNvbG9yLCAkc3Ryb2tlLXdpZHRoOiA0KSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbCwgJTNjc3ZnIHdpZHRoPScxMDAlMjUnIGhlaWdodD0nMTAwJTI1JyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnJTNlJTNjcmVjdCB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgZmlsbD0nbm9uZScgcng9JyN7JGdsLWJvcmRlci1yYWRpdXMtYmFzZX0nIHJ5PScjeyRnbC1ib3JkZXItcmFkaXVzLWJhc2V9JyBzdHJva2U9JyN7ZW5jb2RlY29sb3IoJHN0cm9rZS1jb2xvcil9JyBzdHJva2Utd2lkdGg9JyN7JHN0cm9rZS13aWR0aH0nIHN0cm9rZS1kYXNoYXJyYXk9JzYlMmM0JyBzdHJva2UtZGFzaG9mZnNldD0nMCcgc3Ryb2tlLWxpbmVjYXA9J2J1dHQnIC8lM2UgJTNjL3N2ZyUzZVwiKTtcbn1cblxuLnVwbG9hZC1kcm9wem9uZS1ib3JkZXIge1xuICBAaW5jbHVkZSBkcm9wem9uZS1iYWNrZ3JvdW5kKCRncmF5LTQwMCwgMik7XG59XG5cbi51cGxvYWQtZHJvcHpvbmUtYm9yZGVyLWVycm9yIHtcbiAgQGluY2x1ZGUgZHJvcHpvbmUtYmFja2dyb3VuZCgkcmVkLTQwMCwgMik7XG59XG5cbi51cGxvYWQtZHJvcHpvbmUtY2FyZCB7XG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLVtiYWNrZ3JvdW5kLGJvcmRlcl07XG4gIEBhcHBseSBnbC10ZXh0LWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXItMDtcbiAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzLXZpc2libGUsXG4gICY6Zm9jdXMtd2l0aGluLFxuICAmOmFjdGl2ZSB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBkcm9wem9uZS1iYWNrZ3JvdW5kKCRnbC1jb2xvci1ibHVlLTUwMCk7XG4gICAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcbiAgfVxuXG4gICY6Zm9jdXMtdmlzaWJsZSxcbiAgJjpmb2N1cy13aXRoaW4sXG4gICY6YWN0aXZlIHtcbiAgICBAYXBwbHkgZ2wtZm9jdXM7XG4gIH1cblxufVxuXG4udXBsb2FkLWRyb3B6b25lLW92ZXJsYXksXG4uZGVzaWduLXVwbG9hZC1kcm9wem9uZS1vdmVybGF5IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMTtcbiAgYm9yZGVyOiAwO1xufVxuXG4udXBsb2FkLWRyb3B6b25lLW92ZXJsYXkge1xuICBAYXBwbHkgZ2wtYmctZmVlZGJhY2staW5mbztcbiAgQGluY2x1ZGUgZHJvcHpvbmUtYmFja2dyb3VuZCgkZ2wtY29sb3ItYmx1ZS01MDApO1xufVxuXG4uZGVzaWduLXVwbG9hZC1kcm9wem9uZS1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogY29sb3ItbWl4KGluIHNyZ2IsIHZhcigtLWdsLWNvbG9yLWJsdWUtNTAwKSAyNCUsIHRyYW5zcGFyZW50KTtcbiAgQGluY2x1ZGUgZHJvcHpvbmUtYmFja2dyb3VuZCgkZ2wtY29sb3ItYmx1ZS01MDApO1xuICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBUaGVzZSBhcmUgY29tcG9zaXRlIGNsYXNzZXMgZm9yIHVzZSB3aXRoIFZ1ZSBUcmFuc2l0aW9uXG4vLyBodHRwczovL3Z1ZWpzLm9yZy9ndWlkZS9idWlsdC1pbnMvdHJhbnNpdGlvblxuLnVwbG9hZC1kcm9wem9uZS1mYWRlLWVudGVyLWFjdGl2ZSxcbi51cGxvYWQtZHJvcHpvbmUtZmFkZS1sZWF2ZS1hY3RpdmUge1xuICBAYXBwbHkgZ2wtdHJhbnNpdGlvbi1vcGFjaXR5O1xuICBAYXBwbHkgZ2wtZHVyYXRpb24tZmFzdDtcbiAgQGFwcGx5IGdsLWVhc2UtbGluZWFyO1xufVxuXG4udXBsb2FkLWRyb3B6b25lLWZhZGUtZW50ZXIsXG4udXBsb2FkLWRyb3B6b25lLWZhZGUtbGVhdmUtdG8ge1xuICBvcGFjaXR5OiAwO1xufVxuIiwiJHdoYXRzLW5ldy1kcmF3ZXItc2l6ZTogNTAwcHg7XG5cbi53aGF0cy1uZXctZHJhd2VyIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcblxuICAvLyBzZXR0aW5nIGN1c3RvbSB3aWR0aCBhYm92ZSBtb2JpbGUgYnJlYWtwb2ludFxuICBAaW5jbHVkZSBnbC1tZWRpYS1icmVha3BvaW50LXVwKG1kKSB7XG4gICAgd2lkdGg6ICR3aGF0cy1uZXctZHJhd2VyLXNpemU7XG4gIH1cblxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tZ2wtY2xhc3MgKi9cbiAgLmdsLWluZmluaXRlLXNjcm9sbC1sZWdlbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuZ2wtdGFicyB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIC5nbC10YWJzLW5hdiB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5nbC1zcGlubmVyLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGdpdGxhYi9uby1nbC1jbGFzcyAqL1xufVxuXG5oNC53aGF0cy1uZXctcmVsZWFzZS1oZWFkaW5nOm5vdCg6Zmlyc3Qtb2YtdHlwZSkge1xuICBAYXBwbHkgZ2wtbXQtNjtcbn1cblxuLndoYXRzLW5ldy1tb2RhbC1iYWNrZHJvcCB7XG4gIHotaW5kZXg6IDY5OTtcbn1cblxuLndoYXRzLW5ldy1hcnRpY2xlLWRyYXdlciB7XG4gIEBpbmNsdWRlIGdsLW1lZGlhLWJyZWFrcG9pbnQtdXAobWQpIHtcbiAgICB3aWR0aDogJHdoYXRzLW5ldy1kcmF3ZXItc2l6ZTtcbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vZnJhbWV3b3JrL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICcuLi9mcmFtZXdvcmsvdmFyaWFibGVzX292ZXJyaWRlcyc7XG5cbiRkZXRhaWwtcGFnZS1oZWFkZXItaGVpZ2h0OiA0NnB4O1xuJHZ1bG5lcmFiaWxpdHktcGFnZS10aXRsZS1oZWlnaHQ6ICRoMS1mb250LXNpemU7XG4kY29kZS1mbG93LXRhYnMtaGVpZ2h0OiA1MXB4O1xuXG4uY29kZS1mbG93LWNvbnRlbnQge1xuICBoZWlnaHQ6IGNhbGMoMTAwdmggLSAjeyRwZXJmb3JtYW5jZS1iYXItaGVpZ2h0fSAtICN7JHRvcC1iYXItaGVpZ2h0fSAtIHZhcigtLWJyb2FkY2FzdC1tZXNzYWdlLWhlaWdodCwgMHB4KSAtICN7JGRldGFpbC1wYWdlLWhlYWRlci1oZWlnaHR9IC0gI3skdnVsbmVyYWJpbGl0eS1wYWdlLXRpdGxlLWhlaWdodH0gLSAjeyRjb250ZW50LXdyYXBwZXItcGFkZGluZ30gLSAjeyRjb2RlLWZsb3ctdGFicy1oZWlnaHR9KTtcbn1cblxuLmNvZGUtZmxvdy1jb250ZW50LW1vZGFsIHtcbiAgaGVpZ2h0OiB2YXIoLS1tb2RhbC1jb250ZW50LWhlaWdodCk7XG59XG5cbi5jb2RlLWZsb3ctY29udGVudC1jYXJkIHtcbiAgbWF4LWhlaWdodDogNzB2aDtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlIGdpdGxhYi9uby1nbC1jbGFzcyAtLSBTY3JvbGxTY3JpbSBzdHlsZXMgbW92ZWQgZnJvbSBmcmFtZXdvcmsvLCB3aGVyZSB0aGlzIHJ1bGUgaXMgb2ZmXG4kc2Nyb2xsLXNjcmltLWhlaWdodDogMi4yNXJlbTtcblxuLy8gc3dpdGNoZWQgdG8gY2hpbGQgY29tYmluYXRvcnMgdG8gcHJldmVudCBydWxlcyBjbGFzaCB3aGVyZSBvdGhlciBlbGVtZW50cyBhcmUgbW9kaWZ5aW5nIHdyYXBwZXJzXG4vLyBodHRwczovL2dpdGxhYi5jb20vZ2l0bGFiLW9yZy9naXRsYWIvLS9pc3N1ZXMvNDM1NTM4XG4uZ2wtc2Nyb2xsLXNjcmltIHtcbiAgPiAudG9wLXNjcmltLXdyYXBwZXIsXG4gID4gLmJvdHRvbS1zY3JpbS13cmFwcGVyIHtcbiAgICBoZWlnaHQ6ICRzY3JvbGwtc2NyaW0taGVpZ2h0O1xuICAgIG9wYWNpdHk6IDA7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICB6LWluZGV4OiAxO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzO1xuXG4gICAgLnRvcC1zY3JpbSxcbiAgICAuYm90dG9tLXNjcmltIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cblxuICA+IC50b3Atc2NyaW0td3JhcHBlciB7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IC0kc2Nyb2xsLXNjcmltLWhlaWdodDtcblxuICAgIC50b3Atc2NyaW0ge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgdmFyKC0tZ2wtY29sb3ItYWxwaGEtZGFyay04KSAwJSwgJHRyYW5zcGFyZW50LXJnYmEgMTAwJSk7XG5cbiAgICAgIC5nbC1kYXJrICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoXG4gICAgICAgICAgMTgwZGVnLFxuICAgICAgICAgIHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstMjQpIDAlLFxuICAgICAgICAgICR0cmFuc3BhcmVudC1yZ2JhIDEwMCVcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5ib3R0b20tc2NyaW0td3JhcHBlciB7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbi10b3A6IC0kc2Nyb2xsLXNjcmltLWhlaWdodDtcblxuICAgIC5ib3R0b20tc2NyaW0ge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgJHRyYW5zcGFyZW50LXJnYmEgMCUsIHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstOCkpO1xuXG4gICAgICAuZ2wtZGFyayAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgJHRyYW5zcGFyZW50LXJnYmEgMCUsIHZhcigtLWdsLWNvbG9yLWFscGhhLWRhcmstMjQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRvcC1zY3JpbS12aXNpYmxlID4gLnRvcC1zY3JpbS13cmFwcGVyLFxuICAmLmJvdHRvbS1zY3JpbS12aXNpYmxlID4gLmJvdHRvbS1zY3JpbS13cmFwcGVyIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4iLCIvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tZ2wtY2xhc3MgKi9cbi5nbC1iYXNlLWxheW91dC1zdGlja3ktaGVhZGVyIHtcbiAgQGFwcGx5IGdsLWZpeGVkO1xuICBAYXBwbHkgZ2wtdG9wLTA7XG4gIEBhcHBseSBnbC1sZWZ0LTA7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1wYi0zO1xuICBAYXBwbHkgZ2wtYmctZGVmYXVsdDtcbiAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICBAYXBwbHkgZ2wtaW52aXNpYmxlO1xuICBAYXBwbHkgZ2wtb3BhY2l0eS0wO1xuICB6LWluZGV4OiAkYmFzZS1sYXlvdXQtc3RpY2t5LWhlYWRlci16LWluZGV4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5ICRnbC10cmFuc2l0aW9uLWR1cmF0aW9uLW1lZGl1bSAkZ2wtZWFzaW5nLW91dC1jdWJpYyxcbiAgICAgICAgICAgICAgb3BhY2l0eSAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWMsXG4gICAgICAgICAgICAgIHRyYW5zZm9ybSAkZ2wtdHJhbnNpdGlvbi1kdXJhdGlvbi1tZWRpdW0gJGdsLWVhc2luZy1vdXQtY3ViaWM7XG59XG5cbi8vIE9wdCBvdXQgb2YgdGhlIGFwcGVhci9kaXNhcHBlYXIgYW5pbWF0aW9uICh2aWEgdGhlIGFuaW1hdGVTdGlja3lIZWFkZXIgcHJvcCksXG4vLyBlLmcuIHdoZW4gdGhlIGhlYWRlciBjb250ZW50IGNoYW5nZXMgc2l6ZSBhbmQgdGhlIHRyYW5zaXRpb24gbG9va3MgamFua3kuXG4uZ2wtYmFzZS1sYXlvdXQtc3RpY2t5LWhlYWRlci1uby1hbmltYXRpb24ge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwcztcbn1cblxuLmdsLWJhc2UtbGF5b3V0LXN0aWNreS1oZWFkZXItaW5uZXIge1xuICBAYXBwbHkgZ2wtcHgtWy0tY29udGFpbmVyLXBhZGRpbmcteF07XG59XG5cbi8vIFRvZ2dsZWQgZnJvbSBKUyB2aWEgYW4gSW50ZXJzZWN0aW9uT2JzZXJ2ZXIgb25jZSBwYWdlIGhlYWRpbmcgc2Nyb2xsc1xuLy8gb3V0IG9mIHZpZXcgKHNlZSBiYXNlX2xheW91dC52dWUpLlxuLmdsLWJhc2UtbGF5b3V0LmdsLWJhc2UtbGF5b3V0LWhlYWRlci1pcy1zdHVjayAuZ2wtYmFzZS1sYXlvdXQtc3RpY2t5LWhlYWRlciB7XG4gIEBhcHBseSBnbC12aXNpYmxlO1xuICBAYXBwbHkgZ2wtb3BhY2l0eS0xMDtcbiAgQGFwcGx5IGdsLXRyYW5zbGF0ZS15LTA7XG59XG5cbi5nbC1iYXNlLWxheW91dC1hbGVydHMge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG4gIEBhcHBseSBnbC1tYi01O1xufVxuXG4uZ2wtYmFzZS1sYXlvdXQtbG9hZGluZy1pY29uIHtcbiAgQGFwcGx5IGdsLW0tNTtcbn1cbiIsIi8qIHN0eWxlbGludC1kaXNhYmxlIGdpdGxhYi9uby1nbC1jbGFzcyAqL1xuJGRldGFpbC1sYXlvdXQtc2lkZWJhci13aWR0aDogcHgtdG8tcmVtKDI5MHB4KTtcbiRkZXRhaWwtbGF5b3V0LWdhcDogMnJlbTtcblxuLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyIHtcbiAgLS1nbC1kZXRhaWwtbGF5b3V0LWdhcDogI3skZGV0YWlsLWxheW91dC1nYXB9O1xuICBkaXNwbGF5OiBncmlkO1xuICBnYXA6IHZhcigtLWdsLWRldGFpbC1sYXlvdXQtZ2FwKTtcbn1cblxuLmdsLWRldGFpbC1sYXlvdXQtY29udGVudCxcbi5nbC1kZXRhaWwtbGF5b3V0LXNpZGViYXIsXG4uZ2wtZGV0YWlsLWxheW91dC1hY3Rpdml0eSxcbi5nbC1kZXRhaWwtbGF5b3V0LXdpZGdldHMge1xuICBtaW4td2lkdGg6IDA7IC8vIEFsbG93IGdyaWQgaXRlbSB0byBzaHJpbmsgYmVsb3cgaXRzIGNvbnRlbnQgc2l6ZSwgcHJldmVudGluZyBvdmVyZmxvdyBvZiB0aGUgdmlzaWJsZSBhcmVhXG5cbiAgLy8gUmVtb3ZlIG1hcmdpbiBmcm9tIGZpcnN0IHdpZGdldFxuICA+IGRpdjpmaXJzdC1jaGlsZCxcbiAgPiBzZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmdsLWRldGFpbC1sYXlvdXQtY29udGFpbmVyLWhhcy1zaWRlYmFyIHtcbiAgLy8gU2V0IGV4cGxpY2l0IG1pbmltdW0gZ3JpZCBjb2x1bW4gc2l6ZSBpbnN0ZWFkIG9mIGltcGxpY2l0IGBhdXRvYFxuICAvLyBzbyBjb250ZW50cyBkb24ndCBvdmVyZmxvdyBpbiBzbWFsbGVyIHZpZXdwb3J0c1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCgwLCAxZnIpO1xuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChtZCkge1xuICAgICRkZXRhaWwtbGF5b3V0LXNpZGViYXItbWluLXdpZHRoOiAxM3JlbTtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IG1pbm1heCg2NyUsIDFmcikgbWlubWF4KCRkZXRhaWwtbGF5b3V0LXNpZGViYXItbWluLXdpZHRoLCAkZGV0YWlsLWxheW91dC1zaWRlYmFyLXdpZHRoKTtcbiAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gYXV0byAxZnI7XG4gICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICdjb250ZW50IHNpZGViYXInXG4gICAgICAnd2lkZ2V0cyBzaWRlYmFyJ1xuICAgICAgJ2FjdGl2aXR5IHNpZGViYXInO1xuXG4gICAgPiAuZ2wtZGV0YWlsLWxheW91dC1jb250ZW50IHtcbiAgICAgIGdyaWQtYXJlYTogY29udGVudDtcbiAgICB9XG5cbiAgICA+IC5nbC1kZXRhaWwtbGF5b3V0LXNpZGViYXIge1xuICAgICAgZ3JpZC1hcmVhOiBzaWRlYmFyO1xuICAgICAgcG9zaXRpb246IHN0aWNreTtcbiAgICAgIHRvcDogdmFyKC0tZGV0YWlsLWxheW91dC1zaWRlYmFyLXRvcCwgdmFyKC0tbGF5b3V0LXN0aWNreS1oZWFkZXItaGVpZ2h0LCAwKSk7XG4gICAgICBhbGlnbi1zZWxmOiBzdGFydDtcbiAgICAgIC8vIENhcCAobm90IGZvcmNlKSB0aGUgaGVpZ2h0IHNvIGEgc2hvcnQgc2lkZWJhciBjYW4ndCBjYXVzZSBhIHBoYW50b20gc2Nyb2xsYmFyLlxuICAgICAgLy8gLS1kZXRhaWwtbGF5b3V0LXNpZGViYXItc3BhY2UgaXMgc2V0IGluIGRldGFpbF9sYXlvdXQudnVlLlxuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIG1heC1oZWlnaHQ6IHZhcihcbiAgICAgICAgLS1kZXRhaWwtbGF5b3V0LXNpZGViYXItaGVpZ2h0LFxuICAgICAgICBjYWxjKFxuICAgICAgICAgIHZhcigtLXBhbmVsLWNvbnRlbnQtaW5uZXItaGVpZ2h0LCAjeyRjYWxjLWFwcGxpY2F0aW9uLXZpZXdwb3J0LWhlaWdodH0pIC1cbiAgICAgICAgICAgIHZhcigtLWRldGFpbC1sYXlvdXQtc2lkZWJhci1zcGFjZSwgMHB4KVxuICAgICAgICApXG4gICAgICApO1xuICAgICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgIG92ZXJzY3JvbGwtYmVoYXZpb3I6IGNvbnRhaW47XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgQGFwcGx5IGdsLXB4LTM7XG4gICAgICAvLyBBZGRpbmcgdG9wIHNwYWNpbmcgYW5kIGFsaWduaW5nIGl0IGJhY2sgdG8gdGhlIGJhc2VsaW5lIHdpdGggdGhlIG5lZ2F0aXZlIG1hcmdpblxuICAgICAgQGFwcGx5IGdsLXB5LTQ7XG4gICAgICBAYXBwbHkgLWdsLW10LTQ7XG4gICAgfVxuXG4gICAgPiAuZ2wtZGV0YWlsLWxheW91dC13aWRnZXRzIHtcbiAgICAgIGdyaWQtYXJlYTogd2lkZ2V0cztcbiAgICB9XG5cbiAgICA+IC5nbC1kZXRhaWwtbGF5b3V0LWFjdGl2aXR5IHtcbiAgICAgIGdyaWQtYXJlYTogYWN0aXZpdHk7XG4gICAgfVxuICAgIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8taGFzIC0tIG5lZWQgdG8gYWRqdXN0IGdyaWQgdGVtcGxhdGUgYXJlYXMgYmFzZWQgb24gcHJlc2VuY2Ugb2Ygc2xvdHNcbiAgICAmOm5vdCg6aGFzKD4gLmdsLWRldGFpbC1sYXlvdXQtYWN0aXZpdHkpKSB7XG4gICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IGF1dG8gMWZyO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczpcbiAgICAgICAgJ2NvbnRlbnQgc2lkZWJhcidcbiAgICAgICAgJ3dpZGdldHMgc2lkZWJhcic7XG4gICAgfVxuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gbmVlZCB0byBhZGp1c3QgZ3JpZCB0ZW1wbGF0ZSBhcmVhcyBiYXNlZCBvbiBwcmVzZW5jZSBvZiBzbG90c1xuICAgICY6bm90KDpoYXMoPiAuZ2wtZGV0YWlsLWxheW91dC13aWRnZXRzKSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcbiAgICAgIGdyaWQtdGVtcGxhdGUtYXJlYXM6XG4gICAgICAgICdjb250ZW50IHNpZGViYXInXG4gICAgICAgICdhY3Rpdml0eSBzaWRlYmFyJztcbiAgICB9XG5cbiAgICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBuZWVkIHRvIGFkanVzdCBncmlkIHRlbXBsYXRlIGFyZWFzIGJhc2VkIG9uIHByZXNlbmNlIG9mIHNsb3RzXG4gICAgJjpub3QoOmhhcyg+IC5nbC1kZXRhaWwtbGF5b3V0LXdpZGdldHMpKTpub3QoOmhhcyg+IC5nbC1kZXRhaWwtbGF5b3V0LWFjdGl2aXR5KSkge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiAxZnI7XG4gICAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiAnY29udGVudCBzaWRlYmFyJztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhbmVsIGhlYWRlciBvZmZzZXRcbi5wYW5lbC10b3Atb2Zmc2V0LXBhbmVsLWhlYWRlci1oZWlnaHQge1xuICB0b3A6ICRwYW5lbC1oZWFkZXItaW5uZXItaGVpZ2h0O1xufVxuXG4vLyBQYW5lbHNcbi8vIFN0YXRpYywgZHluYW1pYyBhbmQgQUkgcGFuZWwgd3JhcHBlclxuLnBhbmVsZWQtdmlldyB7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWNsaXA7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtcC0wO1xufVxuXG4ucGFuZWxlZC12aWV3LFxuLnBhbmVsZWQtdmlldy1wb3J0YWwge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWZsZXgtMTtcbiAgQGFwcGx5IGdsLWZsZXgtY29sO1xuICBAYXBwbHkgZ2wtaC1mdWxsO1xufVxuXG4vLyBEeW5hbWljIHBhbmVsIHBvcnRhbFxuLnBhbmVsZWQtdmlldy1wb3J0YWwge1xuICBAYXBwbHkgZ2wtQGNvbnRhaW5lci9wYW5lbDtcbiAgei1pbmRleDogJGR5bmFtaWMtcGFuZWwtei1pbmRleDtcbiAgQGFwcGx5IGdsLWFic29sdXRlO1xuICBAYXBwbHkgZ2wtcmlnaHQtMDtcbiAgQGFwcGx5IGdsLXctZnVsbDtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1yb3VuZGVkLWwteGw7XG4gIEBhcHBseSBnbC1zaGFkb3ctbGc7XG4gIEBhcHBseSBnbC1vdmVyZmxvdy1jbGlwO1xuXG4gIEBhcHBseSBzbTpnbC13LTgvMTA7XG5cbiAgQGFwcGx5IEB4bC9jb250ZW50LXBhbmVsczpnbC1yZWxhdGl2ZTtcbiAgQGFwcGx5IEB4bC9jb250ZW50LXBhbmVsczpnbC13LTEvMjtcbiAgQGFwcGx5IEB4bC9jb250ZW50LXBhbmVsczpnbC1iZy10cmFuc3BhcmVudDtcbiAgQGFwcGx5IEB4bC9jb250ZW50LXBhbmVsczpnbC1yb3VuZGVkLWwtbm9uZTtcbiAgQGFwcGx5IEB4bC9jb250ZW50LXBhbmVsczpnbC1zaGFkb3ctbm9uZTtcblxuICAvLyBGaXhlcyBhIEZpcmVmb3ggMTE1LjQwLjBlc3IgaXNzdWUuIEtlZXAgdGhpcyBzZXBhcmF0ZSBmcm9tIHRoZSBiZWxvdyBzZWxlY3Rvci5cbiAgLy8gYXMgb3RoZXJ3aXNlIGl0IHdvbid0IGJlIGludGVycHJldCBieSBGaXJlZm94IGFzIGl0IHdpbGwgZHJvcCB0aGlzXG4gIC8vIHN0eWxlIHJ1bGUgYXMgdGhlIG90aGVyIHNlbGVjdG9yIGlzIHVua25vd25cbiAgJjplbXB0eSB7XG4gICAgQGFwcGx5IGdsLWhpZGRlbjtcbiAgfVxuXG4gIC8vIFRoZSBwYW5lbCB3aWR0aCByZXNpemVyIGtlZXBzIGEgbm9kZSBtb3VudGVkIGluc2lkZSB0aGUgcG9ydGFsLCBzbyB0aGVcbiAgLy8gcG9ydGFsIGlzIG5ldmVyIGA6ZW1wdHlgOyBoaWRlIGl0IGJhc2VkIG9uIG1vdW50ZWQgcGFuZWwgY29udGVudCBpbnN0ZWFkLlxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWhhcyAtLSBzY29wZWQgdG8gdGhlIHBvcnRhbCdzIG93biBjb250ZW50XG4gICY6bm90KDpoYXMoPiAudnVlLXBvcnRhbC10YXJnZXQpKSB7XG4gICAgQGFwcGx5IGdsLWhpZGRlbjtcbiAgfVxuXG4gID4gLnZ1ZS1wb3J0YWwtdGFyZ2V0IHtcbiAgICBmbGV4OiAxO1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbn1cblxuLy8gU2luZ2xlLXN1cmZhY2UgdHJlYXRtZW50OiB0aGUgY29udGVudCBwYW5lbHMgcmVuZGVyIGFzIG9uZSBjYXJkLCB3aXRoXG4vLyBpbm5lciBib3JkZXJzIGluc3RlYWQgb2YgcGVyLXBhbmVsIGNhcmRzLiBQbGFjZWQgYWZ0ZXIgdGhlIGJhc2UgcGFuZWxcbi8vIGJsb2NrcyBzbyB0aGUgZXF1YWwtc3BlY2lmaWNpdHkgb3ZlcnJpZGVzIHdpbiBieSBzb3VyY2Ugb3JkZXIuXG4ucGFuZWxzLWNvbnRhaW5lciB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtcm91bmRlZC14bDtcbiAgQGFwcGx5IGdsLW92ZXJmbG93LWNsaXA7XG4gIEBhcHBseSBnbC1ib3JkZXItMTtcbiAgQGFwcGx5IGdsLWJvcmRlci1zb2xpZDtcbiAgQGFwcGx5IGdsLWJvcmRlci10cmFuc3BhcmVudDtcbiAgQGFwcGx5IGRhcms6Z2wtYm9yZGVyLXN1YnRsZTtcbiAgQGFwcGx5IGdsLXNoYWRvdy1zbTtcbn1cblxuLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gdGFyZ2V0aW5nIGRpcmVjdGx5IHRoZSBBSSBwYW5lbFxuLnBhbmVscy1jb250YWluZXI6aGFzKCsgLmFpLXJlbGF0ZWQtcGFuZWxzID4gLmFpLXBhbmVsLXdyYXBwZXIgPiAuYWktcGFuZWwpIHtcbiAgQGFwcGx5IGxnOmdsLXJvdW5kZWQtci1ub25lO1xuICBAYXBwbHkgbGc6Z2wtYm9yZGVyLXItMDtcbn1cblxuLnBhbmVsZWQtdmlldy1wb3J0YWwge1xuICBAYXBwbHkgc206Z2wtYm9yZGVyLWw7XG59XG5cbi5haS1wYW5lbCB7XG4gIEBhcHBseSBnbC1yb3VuZGVkLXhsO1xuICBAYXBwbHkgZ2wtc2hhZG93LXNtO1xuICBAYXBwbHkgZ2wtYm9yZGVyLTE7XG4gIEBhcHBseSBnbC1ib3JkZXItc29saWQ7XG4gIEBhcHBseSBnbC1ib3JkZXItdHJhbnNwYXJlbnQ7XG4gIEBhcHBseSBkYXJrOmdsLWJvcmRlci1kZWZhdWx0O1xuICBAYXBwbHkgZGFyazpsZzpnbC1ib3JkZXItc3VidGxlO1xuICBAYXBwbHkgbGc6Z2wtYm9yZGVyLWwtZGVmYXVsdDtcbiAgQGFwcGx5IGxnOmdsLXJvdW5kZWQtbC1ub25lO1xuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICAvLyBIaWRlcyBzaGFkb3cgZnJvbSBsZWZ0IHNpZGUgd2hlcmUgcGFuZWxzIG1lZXRcbiAgICBjbGlwLXBhdGg6IGluc2V0KC0wLjVyZW0gLTAuNXJlbSAtMC41cmVtIDApO1xuICB9XG59XG5cbi8vIFNlc3Npb24gcGlsbCBzdGF0dXMgaWNvbiBpbiBEdW8gQ2hhdFxuQGluY2x1ZGUga2V5ZnJhbWVzKHNlc3Npb24tcGlsbC1wdWxzZSkge1xuICAwJSxcbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMC40O1xuICB9XG59XG5cbi8vIFBhbmVsIGhlYWRlclxuLnBhbmVsLWhlYWRlci1pbm5lciB7XG4gIEBhcHBseSBnbC1yZWxhdGl2ZTtcbiAgQGFwcGx5IGdsLWZsZXg7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG4gIEBhcHBseSBnbC1qdXN0aWZ5LXN0YXJ0O1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtcHQtMjtcbiAgQGFwcGx5IGdsLXBsLVstLWNvbnRhaW5lci1wYWRkaW5nLXhdO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjQzNzVyZW07IC8vIE9wdGljYWwgYWxpZ25tZW50IGZpeCAtPiBbNDAgLSAyNiAvIDJdICh2aXN1YWx5IGhlaWdodCAtIHBhbmVsIGNvbnRyb2xzIC8gMilcbiAgQGFwcGx5IGdsLXJvdW5kZWQtdC1sZztcbiAgei1pbmRleDogJHBhbmVsLWhlYWRlci1pbm5lci16LWluZGV4O1xuICBtaW4taGVpZ2h0OiAkcGFuZWwtaGVhZGVyLWlubmVyLWhlaWdodDtcblxuICAvLyBPdmVycmlkZSB0aGUgc2l6ZSBjaGFuZ2Ugb2YgdGhlIGJ1dHRvblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzXG4gIC5nbC1idXR0b24uYnV0dG9uLWVsbGlwc2lzLWhvcml6b250YWwuYnRuLXNtIHtcbiAgICBAYXBwbHkgZ2wtcHgtMDtcbiAgICBtaW4taGVpZ2h0OiAkZ2wtYnV0dG9uLXNtYWxsLXNpemU7XG4gICAgbWluLXdpZHRoOiAkZ2wtYnV0dG9uLXNtYWxsLXNpemU7XG4gIH1cbn1cblxuLnBhbmVsLWhlYWRlci1pbm5lci10ZXh0IHtcbiAgQGFwcGx5IGdsLWlubGluZS1mbGV4O1xuICBAYXBwbHkgZ2wtbWluLXctMDtcbiAgQGFwcGx5IGdsLWdhcC0zO1xuICBAYXBwbHkgZ2wtdGV4dC1zbTtcbiAgQGFwcGx5IGdsLWZvbnQtYm9sZDtcbn1cblxuLnBhbmVsLWhlYWRlci1pbm5lci1hY3Rpb25zIHtcbiAgQGFwcGx5IGdsLW1sLWF1dG87XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZ2FwLTM7XG4gIEBhcHBseSBnbC1pdGVtcy1jZW50ZXI7XG59XG5cbi5wYW5lbC1oZWFkZXItY29udHJvbHMge1xuICBAYXBwbHkgZ2wtZmxleDtcbiAgQGFwcGx5IGdsLWJvcmRlcjtcbiAgQGFwcGx5IGdsLWxlYWRpbmctMDtcbiAgQGFwcGx5IGdsLW1sLTI7XG4gIGJvcmRlci1yYWRpdXM6IGNhbGModmFyKC0tZ2wtYm9yZGVyLXJhZGl1cy1sZykgKyAxcHgpO1xufVxuXG4ucGFuZWwtaGVhZGVyLWlubmVyLWFjdGlvbnMtcG9ydGFsLXRhcmdldCB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGEgc3BlY2lmaWMgcG9ydGFsIHRhcmdldCBjb250YWluZXJcbiAgJjpoYXMoPiAudnVlLXBvcnRhbC10YXJnZXQpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gID4gLnZ1ZS1wb3J0YWwtdGFyZ2V0IHtcbiAgICBAYXBwbHkgZ2wtZmxleDtcbiAgICBAYXBwbHkgZ2wtZ2FwLTM7XG4gICAgQGFwcGx5IGdsLWl0ZW1zLWNlbnRlcjtcbiAgfVxufVxuXG4ucGFuZWwtY29udGVudCB7XG4gIEBhcHBseSBnbC1mbGV4O1xuICBAYXBwbHkgZ2wtZmxleC1jb2w7XG4gIEBhcHBseSBnbC1mbGV4LTE7XG4gIEBhcHBseSBnbC1taW4taC0wO1xuICBjb250YWluOiBsYXlvdXQ7XG4gIC8vIGEgc2xpZ2h0IHBhZGRpbmcgaXMgYWRkZWQgdG8gdGhlIHBhbmVsIGl0c2VsZiBzbyB0aGF0IHNjcm9sbGJhciBkb2VzIG5vdCBnZXQgY292ZXJlZCBieSB0aGUgcm91bmRlZCBlZGdlIG9mIHRoZSBwYW5lbFxuICAvLyB3ZSdyZSB1c2luZyBwYWRkaW5nIGluc3RlYWQgb2YgbWFyZ2luIHNvIHRoYXQgZml4ZWQgZWxlbWVudHMgY29ubmVjdCB3aXRoIHRoZSBib3R0b20gZWRnZSBvZiB0aGUgcGFuZWxcbiAgQGFwcGx5IGdsLXBiLTM7XG59XG5cbi8vIENvbXBlbnNhdGUgZm9yIHRoZSBoaWRkZW4sIGJyZWFkY3J1bWItZnJlZSBwYW5lbCBoZWFkZXJcbi8vIFNlZSBgcGFnZV9icmVhZGNydW1ic19pbl90b3BfYmFyYCBmZWF0dXJlIGZsYWdcbi5zdGF0aWMtcGFuZWwtLWhlYWRlcmxlc3MgLnBhbmVsLWNvbnRlbnQge1xuICBAYXBwbHkgZ2wtbXQtMztcblxuICAvLyBIaWRlIHN0aWNreSBoZWFkZXIgaGVscGVyXG4gIC5wYW5lbC1jb250ZW50LWlubmVyOjpiZWZvcmUge1xuICAgIEBhcHBseSBnbC1oaWRkZW47XG4gIH1cbn1cblxuLnBhbmVsLWNvbnRlbnQtaW5uZXIge1xuICBAYXBwbHkgZ2wtZmxleC0xO1xuICBAYXBwbHkgZ2wtb3ZlcmZsb3cteC1oaWRkZW47XG4gIEBhcHBseSBnbC1vdmVyZmxvdy15LWF1dG87XG4gIHNjcm9sbGJhci1ndXR0ZXI6IHN0YWJsZTtcbiAgY29udGFpbmVyLXR5cGU6IHNjcm9sbC1zdGF0ZTtcblxuICAvLyBUaGUgcGFuZWwgaXMgZm9jdXNlZCBwcm9ncmFtbWF0aWNhbGx5IHRvIHJlZGlyZWN0IGtleWJvYXJkIHNjcm9sbGluZyB0byBpdCxcbiAgLy8gc28gaXQgc2hvdWxkIG5vdCByZW5kZXIgYSBmb2N1cyByaW5nLlxuICAmOmZvY3VzIHtcbiAgICBAYXBwbHkgZ2wtb3V0bGluZS1ub25lO1xuICB9XG59XG5cbi8vIFRvcCBzaGFkb3cgb24gc2Nyb2xsXG4ucGFuZWwtY29udGVudC1pbm5lcjo6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIEBhcHBseSBnbC1zaHJpbmstMDtcbiAgQGFwcGx5IGdsLWJsb2NrO1xuICBAYXBwbHkgZ2wtc3RpY2t5O1xuICBAYXBwbHkgZ2wtdG9wLTA7XG4gIEBhcHBseSBnbC1sZWZ0LTA7XG4gIEBhcHBseSBnbC13LWZ1bGw7XG4gIEBhcHBseSBnbC1oLTI7XG4gIEBhcHBseSAtZ2wtbWItMjtcbiAgQGFwcGx5IGdsLWJnLWRlZmF1bHQ7XG4gIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgQGFwcGx5IGdsLWJvcmRlci1iLXN1YnRsZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2U7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuXG4gIEBjb250YWluZXIgc2Nyb2xsLXN0YXRlKHNjcm9sbGFibGU6IHRvcCkge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgei1pbmRleDogMjtcbiAgfVxufVxuXG4ucGFuZWwtY29udGVudC1pbm5lciA+IC5jb250YWluZXItZmx1aWQge1xuICBAYXBwbHkgZ2wtcHgtWy0tY29udGFpbmVyLXBhZGRpbmcteF07XG59XG5cbi8vIFBhbmVsIGZvb3RlclxuLnBhbmVsLWZvb3RlciB7XG4gIEBhcHBseSBnbC1iZy1kZWZhdWx0O1xuICBAYXBwbHkgZ2wtcGwtWy0tY29udGFpbmVyLXBhZGRpbmcteF07XG4gIEBhcHBseSBnbC1wci0zO1xuICBAYXBwbHkgZ2wtcHQtMztcbiAgQGFwcGx5IGdsLWJvcmRlci10O1xuXG4gIEBtZWRpYSAoZm9yY2VkLWNvbG9yczogYWN0aXZlKSB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkO1xuICB9XG59XG5cbi8vIE9ubHkgZGlzcGxheSBicmVhZGNydW1iLWZyZWUgcGFuZWwtaGVhZGVyIHdoZW4gaXQgaGFzIGFjdGlvbiBidXR0b25zIG9yIGZlZWRiYWNrIGJhZGdlc1xuLy8gU2VlIGBwYWdlX2JyZWFkY3J1bWJzX2luX3RvcF9iYXJgIGZlYXR1cmUgZmxhZ1xuLy8gTWF0Y2ggZGlyZWN0IGNoaWxkcmVuIChlLmcuIGNsYXNzaWZpY2F0aW9uIGJhZGdlKSBhbmQgYW55dGhpbmcgaW4gdGhlIGFjdGlvbnMgY29udGFpbmVyXG4vLyAoaW5jbHVkaW5nIHRoZSBwb3J0YWwgdGFyZ2V0KSwgYnV0IG5vdCBidXR0b25zIGluc2lkZSB0aGUgYnJlYWRjcnVtYnMuIEdsQnJlYWRjcnVtYiByZW5kZXJzXG4vLyBhbiBvdmVyZmxvdyB0b2dnbGUgd2hpbGUgbWVhc3VyaW5nLCB3aGljaCB3b3VsZCBvdGhlcndpc2UgdG9nZ2xlIHRoZSBoZWFkZXIgaW4gYSBsb29wLlxuLnBhbmVsLWhlYWRlciAucGFuZWwtaGVhZGVyLWlubmVyLndpdGhvdXQtYnJlYWRjcnVtYnMge1xuICBkaXNwbGF5OiBub25lO1xuXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3MsIGdpdGxhYi9uby1oYXMgLS0gc2NvcGVkIHRvIGEgc3BlY2lmaWMgcGFuZWwtaGVhZGVyLWlubmVyIGVsZW1lbnQgKi9cbiAgJjpoYXMoPiA6aXMoLmdsLWJhZGdlLCAuZ2wtYnV0dG9uKSwgLnBhbmVsLWhlYWRlci1pbm5lci1hY3Rpb25zIDppcyguZ2wtYmFkZ2UsIC5nbC1idXR0b24pKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGVuZDtcbiAgfVxufVxuXG4vLyBBSSBwYW5lbFxuLnBhbmVsZWQtdmlldy5haS1wYW5lbCB7XG4gIEBhcHBseSBnbC1ncm93O1xuICBAYXBwbHkgbWF4LWxnOmdsLWZpeGVkO1xuICBAYXBwbHkgbWF4LWxnOmdsLXNoYWRvdy1sZztcbiAgQGFwcGx5IGdsLWxlZnQtMztcbiAgQGFwcGx5IC1nbC1tdC0yO1xuICB0b3A6ICRjYWxjLWFwcGxpY2F0aW9uLWJhcnMtaGVpZ2h0O1xuICB3aWR0aDogY2FsYygxMDAlIC0gKHZhcigtLWdsLXNwYWNpbmctc2NhbGUtMykgKiAyKSk7XG4gIC8vIFNpbmNlIHRoZSBlbGVtZW50IGlzIGZpeGVkLXBvc2l0aW9uZWQsIHN1YnRyYWN0IHRoZSBoZWFkZXIgaGVpZ2h0cyBhbmQgbmF2aWdhdGlvbiByYWlsIGZyb20gdGhlXG4gIC8vIHZpZXdwb3J0IGhlaWdodC4gVGhlIHRyYWlsaW5nIHNwYWNpbmcgc2NhbGUgb2Zmc2V0cyB0aGUgdmVydGljYWwgbWFyZ2lucy5cbiAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAjeyRjYWxjLWFwcGxpY2F0aW9uLWJhcnMtaGVpZ2h0fSAtIHZhcigtLWFpLW5hdmlnYXRpb24tcmFpbC1zaXplKSArIGNhbGModmFyKC0tZ2wtc3BhY2luZy1zY2FsZS0yKSAqIDIpKTtcbiAgei1pbmRleDogOTk5O1xuXG4gIC5wYW5lbC1oZWFkZXItaW5uZXIge1xuICAgIHotaW5kZXg6ICRhaS1wYW5lbC1oZWFkZXItaW5uZXItei1pbmRleDtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAoc20pIHtcbiAgICBAYXBwbHkgZ2wtbGVmdC01O1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAodmFyKC0tZ2wtc3BhY2luZy1zY2FsZS01KSAqIDIpKTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1lZGlhLWJyZWFrcG9pbnQtdXAobGcpIHtcbiAgICBAYXBwbHkgZ2wtdG9wLTA7XG4gICAgQGFwcGx5IGdsLWxlZnQtMDtcbiAgICBAYXBwbHkgZ2wtbS0wO1xuICAgIHdpZHRoOiB2YXIoLS1haS1wYW5lbC13aWR0aCk7XG4gICAgQGFwcGx5IGdsLWgtZnVsbDtcbiAgICB6LWluZGV4OiBhdXRvO1xuICB9XG59XG5cbi5haS1wYW5lbC1jb250ZW50LWlubmVyIHtcbiAgc2Nyb2xsYmFyLWd1dHRlcjogYXV0bztcbn1cblxuLyogc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzcyAtLSBzY29wZWQgdG8gYSBzcGVjaWZpYyBwYW5lbC1jb250ZW50IHVzZSAqL1xuLnBhZ2Utd2l0aC1wYW5lbHMgLmdsLWRyYXdlciB7XG4gIHdpZHRoOiBtaW4oY2FsYygxMDAlIC0gdmFyKC0tZ2wtc3BhY2luZy1zY2FsZS02KSksIDQwMHB4KTtcbn1cbiIsIi5hdHdoby12aWV3IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBtaW4td2lkdGg6ICRnbC1uZXctZHJvcGRvd24tbWluLXdpZHRoO1xuICBtYXgtd2lkdGg6ICRnbC1uZXctZHJvcGRvd24tbWF4LXdpZHRoO1xuXG4gIEBhcHBseSBnbC1ib3JkZXItZHJvcGRvd247XG4gIEBhcHBseSBnbC1iZy1kcm9wZG93bjtcbiAgQGFwcGx5IGdsLXRleHQtZGVmYXVsdDtcblxuICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGFwcGx5IGdsLXNoYWRvdy1tZDtcblxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6ICRnbC1mb250LXNpemUtc207XG4gICAgQGFwcGx5IGdsLXRleHQtc3VidGxlO1xuICB9XG5cbiAgc21hbGwuZGVzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gIH1cblxuICAuYXZhdGFyLWlubGluZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5oYXMtd2FybmluZyB7XG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGNvbG9yOiAkZ3JheS05MDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JhbmdlLTUwO1xuICAgIH1cbiAgfVxuXG4gIC5jdXIge1xuICAgIC5hdmF0YXIge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBhbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR3aGl0ZTtcbiAgICB9XG4gIH1cblxuICAvLyBUT0RPOiBmYWxsYmFjayB0byBnbG9iYWwgc3R5bGVcbiAgLmF0d2hvLXZpZXctdWwge1xuICAgIHBhZGRpbmctdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICAgIHBhZGRpbmctYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICAgIG1heC1oZWlnaHQ6ICRnbC1tYXgtZHJvcGRvd24tbWF4LWhlaWdodDtcblxuICAgIGxpIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6ICRnbC1wYWRkaW5nLTY7XG5cbiAgICAgIG1hcmdpbi10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICAgICAgbWFyZ2luLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTM7XG4gICAgICBtYXJnaW4tcmlnaHQ6ICRnbC1zcGFjaW5nLXNjYWxlLTM7XG4gICAgICBib3JkZXItcmFkaXVzOiAkZ2wtYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkZ2wtbGluZS1oZWlnaHQtMTY7XG5cbiAgICAgICYuY3VyIHtcbiAgICAgICAgQGFwcGx5IGdsLWZvY3VzO1xuICAgICAgICBjb2xvcjogdmFyKC0tZ2wtZHJvcGRvd24tb3B0aW9uLXRleHQtY29sb3ItaG92ZXIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1nbC1kcm9wZG93bi1vcHRpb24tYmFja2dyb3VuZC1jb2xvci11bnNlbGVjdGVkLWhvdmVyKTtcblxuICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmLmhhcy13YXJuaW5nIHtcbiAgICAgICAgICBAYXBwbHkgZ2wtdGV4dC13YXJuaW5nO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGRpdi5hdmF0YXIge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIEBhcHBseSBnbC10ZXh0LXN0cm9uZztcbiAgICAgIH1cblxuICAgICAgZ2wtZW1vamkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiB0ZXh0LXRvcDtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1hcmdpbi1ibG9jazogLTAuMWVtO1xuICAgICAgICAgIHRvcDogMC4wNWVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5kcm9wZG93bi1sYWJlbC1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogLTFweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtZG93bihzbSwgcGFuZWwpIHtcbiAgLmF0d2hvLXZpZXcgdWwgbGkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIH1cbn1cbiIsIi8vIEhpZGUgZWxlbWVudCBpZiBWdWUgaXMgc3RpbGwgd29ya2luZyBvbiByZW5kZXJpbmcgaXQgZnVsbHkuXG5bdi1jbG9haz0ndHJ1ZSddIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuIiwiLypcbiBFbnRyeSBwb2ludCBmb3IgRUUgc3BlY2lmaWMgQ1NTXG4gKi9cbkBpbXBvcnQgJy4uL2NvbXBvbmVudHMvaW5kZXgnO1xuQGltcG9ydCAnLi4vZnJhbWV3b3JrL2luZGV4JztcbkBpbXBvcnQgJy4uL3BhZ2VzL2luZGV4JztcbiIsIi5kdW8tY2hhdC1yZXNpemFibGUge1xuICAvLyBpbXBvcnRhbnQgYmVjYXVzZSB3ZSdyZSBvdmVyd3JpdHRpbmcgc3R5bGVzIG9uIGRhdGEtYXR0ciBzZXQgYnkgaHR0cHM6Ly9naXRodWIuY29tL25pa2l0YXNudi92dWUtcmVzaXphYmxlXG4gIC8vIHRvIG1ha2Ugc3VyZSB3ZSdyZSBoYXZpbmcgdGhlIGNvcnJlY3Qgc2Nyb2xsIGJlaGF2aW91clxuICBwb3NpdGlvbjogZml4ZWQgIWltcG9ydGFudDtcbn1cblxuLmR1by1jaGF0LWNvbnRhaW5lciAuZHVvLWNoYXQtZHJhd2VyIHtcbiAgei1pbmRleDogJHppbmRleC1kdW8tY2hhdDtcblxuICBAaW5jbHVkZSBnbC1jb250YWluZXItd2lkdGgtdXAobWQsIHBhbmVsKSB7XG4gICAgd2lkdGg6ICRnbC1kcmF3ZXItd2lkdGg7XG4gIH1cbn1cblxuJHBvcG92ZXItYXJyb3ctY29sb3I6ICNjNGJhZTI7XG5cbi5kdW8tY2hhdC1jYWxsb3V0LXBvcG92ZXIge1xuICB3aWR0aDogJGdsLXNwYWNpbmctc2NhbGUtNDg7XG4gIHotaW5kZXg6ICR6aW5kZXgtZHVvLWNhbGxvdXQ7XG5cbiAgJi5icy1wb3BvdmVyLWJvdHRvbSB7XG4gICAgLmFycm93IHtcbiAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgICAgIHRvcDogMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uZHVvLWNoYXQtbWVzc2FnZSBwcmUge1xuICAvLyBtYWtlIHN1cmUgc2NyaW1zIGluIGNvZGUgYmxvY2tzIGluIER1byBDaGF0IGFyZSBwcm9wZXJseSBwb3NpdGlvbmVkXG4gIHBvc2l0aW9uOiBpbml0aWFsO1xuICBcbiAgLy8gbWFrZSBzY3JpbXMgb24gY29kZSBibG9ja3MgaW4gRHVvIENoYXQgbWVzc2FnZXMgY29uZm9ybSB0byBjb2xvcnMgb2YgY29kZSBibG9ja3MgaW4gdXNlciB0aGVtZVxuICAmLnNjcmltLWJvdHRvbTo6YWZ0ZXIsICYuc2NyaW0tdG9wOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICMwMDAwLCB2YXIoLS1jb2RlLWJhY2tncm91bmQpKTtcbiAgfVxufVxuXG4vKipcbiogU3RhcnQ6IFRoZXNlIHN0eWxlcyBvbmx5IGFmZmVjdCBEdW8gQ2hhdCBDbGFzc2ljIChOb24tQWdlbnRpYylcbiovXG4uZHVvLWNoYXQud2ViLW9ubHkgLmR1by1jaGF0LWlucHV0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAmOjphZnRlciB7XG4gICAgQGFwcGx5IGdsLXAtMjtcbiAgfVxufVxuXG4uZHVvLWNoYXQud2ViLW9ubHkgLmR1by1jaGF0LWlucHV0LXdyYXAge1xuICBtaW4taGVpZ2h0OiA4MHB4O1xuICBtYXgtaGVpZ2h0OiAyNDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAvLyBGaXhlZC1oZWlnaHQgdmFyaWFudCB1c2VkIHdoZW4gdGhlIHNlbmQtYnV0dG9uIGFjdGlvbnMgKG1vZGVsIHNlbGVjdG9yKVxuICAvLyBzaXQgdW5kZXIgdGhlIG1lc3NhZ2UgYXJlYSwgbWF0Y2hpbmcgdGhlIGFnZW50aWMgY2hhdCBpbnB1dC5cbiAgJi5kdW8tY2hhdC1pbnB1dC13cmFwLWZpeGVkIHtcbiAgICBtaW4taGVpZ2h0OiA4NHB4O1xuICAgIG1heC1oZWlnaHQ6IDg0cHg7XG4gIH1cblxuICAuZHVvLWNoYXQtdGV4dGFyZWEge1xuICAgIGZsZXg6IDE7XG4gICAgcmVzaXplOiBub25lO1xuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS12YWx1ZSkgJyAnO1xuICAgIEBhcHBseSBnbC1pbnZpc2libGU7XG4gICAgQGFwcGx5IGdsLXAtNDtcbiAgICBAYXBwbHkgZ2wtZm9udC1yZWd1bGFyO1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgd29yZC1icmVhazogYnJlYWstd29yZDtcbiAgfVxufVxuLyoqXG4qIEVuZFxuKi9cblxuLmFnZW50aWMtY2hhdC1pbnB1dCB7XG4gIGJhY2tncm91bmQ6IHZhcigtLWdsLWNvbnRyb2wtYmFja2dyb3VuZC1jb2xvci1kZWZhdWx0KTtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAwIDAgJGdsLWJvcmRlci1zaXplLTEgdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG5cbiAgJjpmb2N1cy13aXRoaW4ge1xuICAgIEBpbmNsdWRlIGdsLWZvY3VzKCRjb2xvcjogdmFyKC0tZ2wtY29udHJvbC1ib3JkZXItY29sb3ItZm9jdXMpKTtcbiAgfVxufVxuXG4vLyBHbEZvcm1UZXh0YXJlYSdzIGF1dG8taGVpZ2h0IGNvbGxhcHNlcyB0aGUgdGV4dGFyZWEgdG8gYGhlaWdodDogYXV0b2AgdG9cbi8vIG1lYXN1cmUgaXRzIGNvbnRlbnQgb24gZXZlcnkga2V5c3Ryb2tlLiBUaGF0IHRyYW5zaWVudCByZWZsb3cgc2hyaW5rcyB0aGVcbi8vIGZvb3RlciwgYW5kIHRoZSBicm93c2VyIGNsYW1wcyB0aGUgY2hhdCdzIHNjcm9sbCBwb3NpdGlvbiB3aGVuIGl0IHNpdHMgYXRcbi8vIHRoZSBzY3JvbGwgbGltaXQuIEEgZmxvb3IgYXQgdGhlIGVtcHR5LXByb21wdCBoZWlnaHQga2VlcHMgdGhlIG1lYXN1cmVtZW50XG4vLyBsYXlvdXQtbmV1dHJhbC4gVGhlIHZhbHVlcyBhcmUgd2hhdCBHbEZvcm1UZXh0YXJlYSBjb21wdXRlcyBmb3IgYW4gZW1wdHlcbi8vIHByb21wdCwgc28gdGhleSBoYXZlIHRvIG1vdmUgd2l0aCB0aGUgdGV4dGFyZWEncyBwYWRkaW5nIGJlbG93LlxuLmFnZW50aWMtY2hhdC10ZXh0YXJlYSB7XG4gIG1pbi1oZWlnaHQ6IDgwcHg7XG5cbiAgLy8gYCFnbC1wdC00YCByZXBsYWNlcyB0aGUgMC41cmVtIGRlZmF1bHQgdG9wIHBhZGRpbmcgd2l0aCBubyBoZWFkZXIgcm93IGFib3ZlLlxuICAmLmFnZW50aWMtY2hhdC10ZXh0YXJlYS1wYWRkZWQge1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoODBweCArIHZhcigtLWdsLXNwYWNpbmctc2NhbGUtNCkgLSAwLjVyZW0pO1xuICB9XG59XG5cbi8vIFVuZGVyIHRoZSByZWRlc2lnbiwgdGhlIHBhbmVsJ3MgYm9yZGVyLW9uLXNjcm9sbCBzdHJpcFxuLy8gKC5wYW5lbC1jb250ZW50LWlubmVyOjpiZWZvcmUgaW4gbGF5b3V0cy9wYW5lbC5zY3NzKSBiZWNvbWVzIGEgdGFsbGVyXG4vLyBmYWRlIGZyb20gdGhlIGJhY2tncm91bmQgY29sb3IsIHdpdGggYSBmbGlwcGVkIGNvdW50ZXJwYXJ0IGF0IHRoZSBib3R0b21cbi8vIGVkZ2Ugd2hpbGUgbW9yZSBjb250ZW50IHNpdHMgYmVsb3cuIFRoZSBjb21wb3VuZCBzZWxlY3RvciBvdXR3ZWlnaHMgdGhlXG4vLyBiYXNlIHJ1bGUgcmVnYXJkbGVzcyBvZiBidW5kbGUgb3JkZXIuXG4ucGFuZWwtY29udGVudC1pbm5lci5kdW8tY2hhdC1zY3JvbGwtc2NyaW1zIHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IHN0aWNreTtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnJlbTtcbiAgICBib3JkZXI6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMnMgZWFzZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IC0ycmVtO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHZhcigtLWdsLWJhY2tncm91bmQtY29sb3ItZGVmYXVsdCksIHRyYW5zcGFyZW50KTtcblxuICAgIEBjb250YWluZXIgc2Nyb2xsLXN0YXRlKHNjcm9sbGFibGU6IHRvcCkge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAtMnJlbTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCB2YXIoLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQpLCB0cmFuc3BhcmVudCk7XG5cbiAgICBAY29udGFpbmVyIHNjcm9sbC1zdGF0ZShzY3JvbGxhYmxlOiBib3R0b20pIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgfVxufVxuXG4uZHVvLWNoYXQud2ViLW9ubHkgLmR1by1jaGF0LW1lc3NhZ2Uge1xuICBwcmUgY29kZSB7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICB9XG59XG5cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3Ncbi5hdWRpdC1sb2ctdGFibGUgLmdsLXRhYmxlIHRoIHtcbiAgbGluZS1oZWlnaHQ6ICRnbC1saW5lLWhlaWdodC0xNjtcbn1cbiIsIi8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3Ncbi5nbC1iYW5uZXIge1xuICAucm91bmRlZC1ib3R0b20tcmlnaHQtOSB7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRnbC1zcGFjaW5nLXNjYWxlLTk7XG4gIH1cbn1cbiIsIi5kcmFmdC1ub3RlIHtcbiAgLm5vdGUtaGVhZGVyLWluZm8ge1xuICAgIHBhZGRpbmc6ICRnbC1zcGFjaW5nLXNjYWxlLTIgJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgfVxuXG4gIC50aW1lbGluZS1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS10aW1lbGluZS1lbnRyeS1kcmFmdC1ub3RlLWJhY2tncm91bmQtY29sb3IpICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogJGdsLXNwYWNpbmctc2NhbGUtMiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuICAgIG1hcmdpbi1sZWZ0OiAkZ2wtc3BhY2luZy1zY2FsZS04O1xuICAgIEBhcHBseSBnbC1yb3VuZGVkLWxnO1xuICB9XG59XG5cbi5kcmFmdC1ub3RlLXJlZmVyZW5jZWQtY29tbWFuZHMgcCB7XG4gIG1hcmdpbjogMDtcbn1cblxuXG4vLyBEcmFmdCBub3RlcyBvbiBkaWZmcyBvbiBib3RoIHRhYnM7IGRyYWZ0IG5vdGVzIG9uIHJlZ3VsYXIgcmVwbGllcyBvbiBvdmVydmlldyB0YWJcblxuLmRpZmYtY29udGVudCxcbi5jYXJkIHtcbiAgLmRyYWZ0LW5vdGUgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gIH1cblxuICAuZHJhZnQtbm90ZTpsYXN0LW9mLXR5cGUgLnRpbWVsaW5lLWNvbnRlbnQge1xuICAgIEBhcHBseSBnbC1ib3JkZXItYjtcbiAgfVxufVxuXG5cbi8vIERyYWZ0IG5vdGVzIG9uIGRpZmZzIG9uIGNoYW5nZXMgdGFiXG5cbi5maWxlcyB7XG4gIC5kcmFmdC1ub3RlIHtcbiAgICBtYXJnaW46IDAgLTFweDtcblxuICAgIC50aW1lbGluZS1lbnRyeS1pbm5lciB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkb3JhbmdlLTQwMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC50aW1lbGluZS1jb250ZW50IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgfVxuXG4gICAgLnRpbWVsaW5lLWF2YXRhciB7XG4gICAgICBtYXJnaW46ICRnbC1zcGFjaW5nLXNjYWxlLTMgMCAwICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gICAgfVxuICB9XG59XG4iLCIuZ2VuZXJpYy1yZXBvcnQtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcblxuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmcjtcblxuICBAY29udGFpbmVyIHBhbmVsIChtaW4td2lkdGg6ICN7JGJyZWFrcG9pbnQtbWR9KSB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtYXgtY29udGVudCBtaW5tYXgoMCwgMWZyKTtcbiAgfVxufVxuXG4uZ2VuZXJpYy1yZXBvcnQtcm93IHtcbiAgZGlzcGxheTogY29udGVudHM7XG5cbiAgJjpsYXN0LWNoaWxkIC5nZW5lcmljLXJlcG9ydC1jb2x1bW4ge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIH1cbn1cblxuLmdlbmVyaWMtcmVwb3J0LWNvbHVtbiB7XG4gIHBhZGRpbmctbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgcGFkZGluZy10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gIHBhZGRpbmctYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS0yO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS01O1xuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGdsLXNwYWNpbmctc2NhbGUtNTtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIH1cblxuICBAY29udGFpbmVyIHBhbmVsIChtaW4td2lkdGg6ICN7JGJyZWFrcG9pbnQtbWR9KSB7XG4gICAgcGFkZGluZy10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gICAgcGFkZGluZy1ib3R0b206ICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXgtd2lkdGg6IDE1cmVtO1xuICAgIH1cbiAgfVxufVxuXG4vLyBOb3RlOiB0aGUgcmVwb3J0IGxpc3QgaXMgdXNpbmcgYSBub24tdXRpbGl0eSBhcHByb2FjaCBiZWNhdXNlIGl0IG5lZWRzIHRvIHN1cHBvcnQgdHdvIGNhc2VzOlxuLy8gMS4gSWYgaXQgaXMgb25seSBvbmUgbGV2ZWwgZGVlcCBpdCBzaG91bGQgaGF2ZSBubyBsaXN0IHN0eWxlIChhbmQgbWFyZ2lucylcbi8vIDIuIElmIGl0IGlzIG1vcmUgdGhhbiBvbmUgbGV2ZWwgZGVlcCBpdCBuZWVkcyB0byBoYXZlIGJ1bGxldCBwb2ludHNcbi8vIEEgdXRpbGl0eS1vbmx5IGFwcHJvYWNoIHdvdWxkIHJlcXVpcmUgYWRkaXRpb25hbCBsb2dpYyB3aXRoaW4gY29tcG9uZW50LCBzbyBpdCB3YXMgZGVjaWRlZCB0byBnbyB3aXRoIGFcbi8vIGN1c3RvbSBjbGFzcy5cbi5nZW5lcmljLXJlcG9ydC1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLWxlZnQ6IDA7XG5cbiAgbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1ib3R0b206ICRnbC1zcGFjaW5nLXNjYWxlLTI7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgJi5nZW5lcmljLXJlcG9ydC1saXN0LW5lc3RlZCBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6ICRnbC1zcGFjaW5nLXNjYWxlLTU7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xuICB9XG59XG5cbi5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0IHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiBtYXgtY29udGVudCBhdXRvO1xuICBtYXJnaW46IDAgIWltcG9ydGFudDtcblxuICA+IC5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWl0ZW0ge1xuICAgIGRpc3BsYXk6IGNvbnRlbnRzO1xuICB9XG59XG5cbi5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWl0ZW0ge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXG4gIC5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWxhYmVsLFxuICAuZ2VuZXJpYy1yZXBvcnQtbmFtZWQtbGlzdC12YWx1ZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZy1yaWdodDogJGdsLXNwYWNpbmctc2NhbGUtNTtcbiAgICBwYWRkaW5nLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgICBwYWRkaW5nLWJvdHRvbTogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLWI7XG4gIH1cblxuICAmOmZpcnN0LWNoaWxkIHtcbiAgICA+IC5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWxhYmVsLFxuICAgID4gLmdlbmVyaWMtcmVwb3J0LW5hbWVkLWxpc3QtdmFsdWUge1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuICB9XG5cbiAgJjpsYXN0LWNoaWxkIHtcbiAgICA+IC5nZW5lcmljLXJlcG9ydC1uYW1lZC1saXN0LWxhYmVsLFxuICAgID4gLmdlbmVyaWMtcmVwb3J0LW5hbWVkLWxpc3QtdmFsdWUge1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuIiwiJHJpZ2h0LXNpZGViYXItcG9saWNpZXMtd2lkdGg6IDM1MHB4O1xuXG4uc2VjdXJpdHktcG9saWNpZXMtYWxlcnQge1xuICB0b3A6ICRjYWxjLWFwcGxpY2F0aW9uLWhlYWRlci1oZWlnaHQ7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1wb3BvdmVyLWNvbnRlbnQtaGVpZ2h0IHtcbiAgaGVpZ2h0OiAxMnJlbTtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLXRleHRhcmVhLW1pbi1oZWlnaHQge1xuICBtaW4taGVpZ2h0OiAyMDBweDtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWxpY2Vuc2UtbW9kYWwtbWluLWhlaWdodCB7XG4gIG1pbi1oZWlnaHQ6IDcwMHB4O1xufVxuXG4uc2VjdXJpdHktcG9saWNpZXMtdmFyaWFibGVzLW1vZGFsLW1pbi1oZWlnaHQge1xuICBtaW4taGVpZ2h0OiA1MDBweDtcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWFwcHJvdmVyLW1heC13aWR0aCB7XG4gIG1heC13aWR0aDogMzMwcHg7XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1leGNlcHRpb25zLW1vZGFsLWhlaWdodCB7XG4gIG1pbi1oZWlnaHQ6IDM4MHB4O1xufVxuXG5cbi5zZWN1cml0eS1wb2xpY2llcy1iZy1zdWJ0bGUge1xuICBAYXBwbHkgZ2wtYmctc3VidGxlO1xufVxuXG4uc2VjdXJpdHktcG9saWNpZXMge1xuICBncmlkLXRlbXBsYXRlLWFyZWFzOiAnY29udGVudCBzaWRlYmFyJztcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgJHJpZ2h0LXNpZGViYXItcG9saWNpZXMtd2lkdGg7XG4gIGdyaWQtdGVtcGxhdGUtcm93czogYXV0byAxZnI7XG4gIGdyaWQtZ2FwOiAkZ2wtc3BhY2luZy1zY2FsZS01O1xuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cChsZywgcGFuZWwpIHtcbiAgICBncmlkLWdhcDogMCAkZ2wtc3BhY2luZy1zY2FsZS03O1xuICB9XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1zcGxpdC12aWV3IHtcbiAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogJ2NvbnRlbnQgc2lkZWJhcic7XG4gIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiBhdXRvIDFmcjtcblxuICAvLyBTZWN0aW9uIHdpZHRocyBjb21lIGZyb20gdGhlIHBhbmVsIHJlc2l6ZXIsIGJ1dCBvbmx5IGFwcGx5IHdoaWxlIHRoZVxuICAvLyB0d28tY29sdW1uIGdyaWQgaXMgYWN0aXZlOyBiZWxvdyBsZyB0aGUgc2VjdGlvbnMgc3RhY2sgYXQgZnVsbCB3aWR0aC5cbiAgQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLXVwKGxnLCBwYW5lbCkge1xuICAgIC5zZWN1cml0eS1wb2xpY2llcy1ydWxlLXNlY3Rpb24ge1xuICAgICAgd2lkdGg6IHZhcigtLXJ1bGUtc2VjdGlvbi13aWR0aCwgMTAwJSk7XG4gICAgfVxuXG4gICAgLnNlY3VyaXR5LXBvbGljaWVzLXNpZGViYXIge1xuICAgICAgd2lkdGg6IHZhcigtLXlhbWwtc2VjdGlvbi13aWR0aCwgMTAwJSk7XG4gICAgfVxuICB9XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1hY3Rpb25zIHtcbiAgZ3JpZC1hcmVhOiBjb250ZW50O1xuICBncmlkLXJvdzogYXV0bztcbn1cblxuLnNlY3VyaXR5LXBvbGljaWVzLWFjdGlvbnMtc2lkZWJhciB7XG4gIGdyaWQtYXJlYTogc2lkZWJhcjtcbiAgZ3JpZC1yb3c6IGF1dG87XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1zaWRlYmFyIHtcbiAgZ3JpZC1hcmVhOiBzaWRlYmFyO1xuICAvLyBTcGFuIHRoZSBhY3Rpb25zIHJvdyB0b28sIHNvIGEgdGFsbCBZQU1MIGVkaXRvciBkb2Vzbid0IHB1c2ggdGhlIGFjdGlvbnMgZG93bi5cbiAgZ3JpZC1yb3c6IDEgLyBzcGFuIDI7XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1kcmFnLWhhbmRsZSB7XG4gIHdpZHRoOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1kcmFnLWhhbmRsZTpob3ZlciB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1kcmFnLWhhbmRsZS5pcy1kcmFnZ2luZyB7XG4gIEBhcHBseSBnbC1iZy1zdHJvbmc7XG59XG5cbi5zZWN1cml0eS1wb2xpY2llcy1kcmFnLXRodW1ibmFpbCB7XG4gIGhlaWdodDogNDBweCAhaW1wb3J0YW50O1xuICB3aWR0aDogMTZweCAhaW1wb3J0YW50O1xufVxuIiwiLnNlY3VyaXR5LWRhc2hib2FyZC1maWx0ZXJzIHtcbiAgcG9zaXRpb246IHN0aWNreTtcbiAgdG9wOiAkY2FsYy1hcHBsaWNhdGlvbi1oZWFkZXItaGVpZ2h0O1xuICB6LWluZGV4OiAxO1xufVxuXG4udnVsbmVyYWJpbGl0eS1saXN0LWdyYXBocWwge1xuICAtLXN0aWNreS1jb250YWluZXItaGVpZ2h0OiAwO1xufVxuXG4udnVsbmVyYWJpbGl0eS1saXN0IHtcbiAgaXNvbGF0aW9uOiBpc29sYXRlO1xuXG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC11cCAoc20sIHBhbmVsKSB7XG4gICAgLmNoZWNrYm94IHtcbiAgICAgIHBhZGRpbmctbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAvLyBXaWR0aCBuZWVkcyB0byBiZSBzb21ldGhpbmcgb3RoZXIgdGhhbiBhdXRvIGZvciB0aGUgY29sdW1uIHRvIHNocmluayBkb3duIHRvIHRoZSBjb250ZW50XG4gICAgICAvLyB3aWR0aC4gVGhlIGFjdHVhbCB2YWx1ZSBuZWVkcyB0byBiZSBsZXNzIHRoYW4gdGhlIGNvbnRlbnQsIGJ1dCBub3QgMCAoc2FmYXJpIGlzc3VlKS5cbiAgICAgIHdpZHRoOiAxcHg7XG5cbiAgICAgIC8vIElmIHRoZSBjaGVja2JveCBjb2x1bW4gaXMgc2hvd24sIHJlZHVjZSB0aGUgcGFkZGluZyBvZiB0aGUgY29sdW1uIHRvIHRoZSByaWdodCBvZiBpdC5cbiAgICAgICsgdGQsXG4gICAgICArIHRoIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkZ2wtc3BhY2luZy1zY2FsZS00O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXRlY3RlZCB7XG4gICAgICB3aWR0aDogOSU7XG4gICAgfVxuXG4gICAgLnN0YXR1cyB7XG4gICAgICB3aWR0aDogMTAlO1xuICAgIH1cblxuICAgIC5zZXZlcml0eSB7XG4gICAgICB3aWR0aDogOSU7XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIG1heC13aWR0aDogMDtcbiAgICB9XG5cbiAgICAuaWRlbnRpZmllciB7XG4gICAgICB3aWR0aDogMTYlO1xuICAgIH1cblxuICAgIC5zY2FubmVyIHtcbiAgICAgIHdpZHRoOiAxMCU7XG4gICAgfVxuXG4gICAgLmFjdGl2aXR5IHtcbiAgICAgIHdpZHRoOiA1JTtcbiAgICB9XG4gIH1cblxuICB0aGVhZCB7XG4gICAgLy8gVGhlICFpbXBvcnRhbnQgd29ya3MgYXJvdW5kIGh0dHBzOi8vZ2l0aHViLmNvbS9ib290c3RyYXAtdnVlL2Jvb3RzdHJhcC12dWUvcHVsbC82MzcxLlxuICAgIHBvc2l0aW9uOiBzdGlja3kgIWltcG9ydGFudDtcbiAgICAvLyBUaGUgY2hlY2tib3hlcyB1c2Ugei1pbmRleDogMSwgc28gd2UgbmVlZCB0byBwbGFjZSB0aGUgaGVhZGVycyBoaWdoZXIgc28gdGhhdCB0aGUgY2hlY2tib3hlc1xuICAgIC8vIGRvbid0IHNob3cgb24gdG9wIG9mIHRoZSBoZWFkZXJzIHdoZW4gc2Nyb2xsaW5nIGRvd24uXG4gICAgei1pbmRleDogMjtcbiAgICB0b3A6IGNhbGMoI3skY2FsYy1hcHBsaWNhdGlvbi1oZWFkZXItaGVpZ2h0fSArIHZhcigtLXN0aWNreS1jb250YWluZXItaGVpZ2h0KSk7XG4gICAgLy8gTmVlZCB0byB1c2UgYW4gaW5zZXQgYm94LXNoYWRvdyBoZXJlIGZvciB0aGUgYm90dG9tIGJvcmRlciBiZWNhdXNlIHBvc2l0aW9uOiBzdGlja3kgd2lsbCBoaWRlXG4gICAgLy8gYW55IGJvcmRlcnMgb25jZSB0aGUgdGFibGUgaGVhZGVycyBiZWNvbWUgc3RpY2t5LlxuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTFweCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gIH1cblxuICB0aGVhZCB0aCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuIiwiQGltcG9ydCAnZnJhbWV3b3JrL3ZhcmlhYmxlcyc7XG4vLyBNZXJnZSByZXF1ZXN0IGRpZmYgZ3JpZCBsYXlvdXQgbW9kaWZpY2F0aW9ucyBmb3IgaW5saW5lIGNvZGUgcXVhbGl0eSBkaWZmXG4vLyBUaGVzZSBncmlkIHRlbXBsYXRlcyBidWlsZCBvZmYgb2YgdGhlaXIgZXF1aXZhbGVudHMgaW4gYXBwLy4uLi9kaWZmcy5zY3NzXG4vLyB0byBleHBhbmQgdGhlIGNvbHVtbiBvbmx5IHdoZW4gdGhlIC53aXRoLWlubGluZS1maW5kaW5ncyBjbGFzcyBpcyBhcHBsaWVkXG4uZGlmZi1ncmlkLndpdGgtaW5saW5lLWZpbmRpbmdzIHtcbiAgLmRpZmYtZ3JpZC1yaWdodCB7XG4gICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiA1MHB4IDhweCAyMHB4IDFmcjtcbiAgfVxuXG4gICYuaW5saW5lLWRpZmYtdmlldyB7XG4gICAgLmRpZmYtZ3JpZC1sZWZ0IHtcbiAgICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogNTBweCA1MHB4IDhweCAyMHB4IDFmcjtcbiAgICB9XG4gIH1cblxuICAubW9yZS1jb3VudCB7XG4gICAgQGluY2x1ZGUgYXZhdGFyLWNvdW50ZXIoNTAlKTtcbiAgICB3aWR0aDogJGRlZmF1bHQtaWNvbi1zaXplO1xuICAgIGhlaWdodDogJGRlZmF1bHQtaWNvbi1zaXplO1xuICB9XG5cbiAgLmlubGluZS1maW5kaW5ncy10cmFuc2l0aW9uLWNvbnRhaW5lciAuaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb24ge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNCB7XG4gICAgICAkei1pbmRleDogMTAwO1xuICAgICAgJHgtcG9zOiAxMHB4O1xuICAgICAgJjpudGgtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgLy8gbW92aW5nIGNoaWxkcmVuIGJlaGluZCBmaXJzdCBlbGVtZW50XG4gICAgICAgIHotaW5kZXg6ICR6LWluZGV4ICsgJGkgKiAtMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCgoJGkgKiAkeC1wb3MpKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1vcmUtY291bnQsXG4gIC5pbmxpbmUtZmluZGluZ3Mtc2V2ZXJpdHktaWNvbiB7XG4gICAgZmlsdGVyOiBkcm9wLXNoYWRvdygwIDFweCAwLjVweCAjZmZmKSBkcm9wLXNoYWRvdygxcHggMCAwLjVweCAjZmZmKSBkcm9wLXNoYWRvdygwIC0xcHggMC41cHggI2ZmZikgZHJvcC1zaGFkb3coLTFweCAwIDAuNXB4ICNmZmYpO1xuICB9XG5cbiAgLm1vcmUtY291bnQtY29weS1kcm9wZG93biB7XG4gICAgbGluZS1oZWlnaHQ6IDAuMTE7XG4gIH1cblxuICAuaW5saW5lLWZpbmRpbmdzLXRyYW5zaXRpb24tY29udGFpbmVyIHtcbiAgICAvLyBUaGVzZSBhcmUgY29tcG9zaXRlIGNsYXNzZXMgZm9yIHVzZSB3aXRoIFZ1ZSBUcmFuc2l0aW9uXG4gICAgLy8gaHR0cHM6Ly92dWVqcy5vcmcvZ3VpZGUvYnVpbHQtaW5zL3RyYW5zaXRpb25cbiAgICAubW9yZS1jb3VudC1lbnRlcixcbiAgICAubW9yZS1jb3VudC1sZWF2ZS10byB7XG4gICAgICAmLm1vcmUtY291bnQge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm1vcmUtY291bnQtZW50ZXItdG8sXG4gICAgLm1vcmUtY291bnQtbGVhdmUge1xuICAgICAgJi5tb3JlLWNvdW50IHtcbiAgICAgICAgLy8gRWFjaCBpY29uIGlzIDEwcHggcGVyICR4LXBvcyBhYm92ZSwgd2UgY3VycmVudGx5IG9ubHkgZXZlciBzaG93IDMgYWRkaXRpb25hbCBpY29uc1xuICAgICAgICAvLyBTZWUgYGNvZGVxdWFsaXR5Q291bnRUaHJlc2hvbGRgIGluICBgY29kZV9xdWFsaXR5X2d1dHRlci1pY29uLnZ1ZWBcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pY29ucy1lbnRlci10byxcbiAgICAuaWNvbnMtbGVhdmUge1xuICAgICAgJi5pbmxpbmUtZmluZGluZ3Mtc2V2ZXJpdHktaWNvbiB7XG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggNCB7XG4gICAgICAgICAgJHgtcG9zOiAxMHB4O1xuICAgICAgICAgICY6bnRoLWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoKCgkaSAqICR4LXBvcykpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9yZS1jb3VudCB7XG4gICAgICAvLyBFYWNoIGljb24gaXMgMTBweCBwZXIgJHgtcG9zIGFib3ZlLCB3ZSBjdXJyZW50bHkgb25seSBldmVyIHNob3cgMyBhZGRpdGlvbmFsIGljb25zXG4gICAgICAvLyBTZWUgYGNvZGVxdWFsaXR5Q291bnRUaHJlc2hvbGRgIGluICBgaW5saW5lX2ZpbmRpbmdzX2d1dHRlci1pY29uLnZ1ZWAgb3IgYGlubGluZV9maW5kaW5nc19ndXR0ZXJfaWNvbl9kcm9wZG93bi52dWVgXG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjFzLCB0cmFuc2Zvcm0gMC4ycztcbiAgICB9XG5cbiAgICAuaWNvbnMtZW50ZXIsXG4gICAgLmljb25zLWxlYXZlLXRvIHtcbiAgICAgICYuaW5saW5lLWZpbmRpbmdzLXNldmVyaXR5LWljb24ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmlubGluZS1maW5kaW5ncy1zZXZlcml0eS1pY29uIHtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xcywgdHJhbnNmb3JtIDAuMnM7XG4gICAgfVxuXG4gIH1cbn1cblxuLmZpbmRpbmdzLWRyYXdlciB7XG4gIC5kcmF3ZXItaGVhZGluZy1zZXZlcml0eSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIH1cblxuICAuZmluZGluZ3MtZHJhd2VyLW5hdi1idXR0b24ge1xuICAgIHRvcDogLTFweDtcbiAgfVxufVxuXG4uZmluZGluZ3MtZHJvcGRvd24ge1xuICBmb250LWZhbWlseTogJHJlZ3VsYXItZm9udDtcblxuICAuZmluZGluZ3MtZHJvcGRvd24tdHJ1bmNhdGUge1xuICAgIG1heC13aWR0aDogMTlyZW07XG4gIH1cblxuICAvLyBzdHlsZWxpbnQtZGlzYWJsZS1uZXh0LWxpbmUgZ2l0bGFiL25vLWdsLWNsYXNzXG4gIC5nbC10cnVuY2F0ZS1lbmQge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uZmluZGluZ3MtZHJvcGRvd24td2lkdGgge1xuICB3aWR0aDogMjNyZW07XG59XG4iLCJAdXNlIFwic2Fzczpjb2xvclwiO1xuXG4ucGxhbi1iYWRnZSB7XG4gIG1hcmdpbi1yaWdodDogMTVweDtcblxuICBzdmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDNweDtcbiAgICBoZWlnaHQ6IDE2cHg7XG4gICAgd2lkdGg6IDE2cHg7XG4gIH1cblxuICAmW2RhdGEtcGxhbj0nZ29sZCddIHtcbiAgICBjb2xvcjogY29sb3IuYWRqdXN0KCRnbC11bHRpbWF0ZS1wbGFuLCAkbGlnaHRuZXNzOiAtMjAlKTtcbiAgICBzdmcgZyB7IGZpbGw6ICRnbC11bHRpbWF0ZS1wbGFuOyB9XG4gIH1cblxuICAmW2RhdGEtcGxhbj0ndWx0aW1hdGUnXSB7XG4gICAgY29sb3I6IGNvbG9yLmFkanVzdCgkZ2wtdWx0aW1hdGUtcGxhbiwgJGxpZ2h0bmVzczogLTIwJSk7XG4gICAgc3ZnIGcgeyBmaWxsOiAkZ2wtdWx0aW1hdGUtcGxhbjsgfVxuICB9XG5cbiAgJltkYXRhLXBsYW49J3NpbHZlciddIHtcbiAgICBjb2xvcjogY29sb3IuYWRqdXN0KCRnbC1wcmVtaXVtLXBsYW4sICRsaWdodG5lc3M6IC0yMCUpO1xuICAgIHN2ZyBnIHsgZmlsbDogJGdsLXByZW1pdW0tcGxhbjsgfVxuICB9XG5cbiAgJltkYXRhLXBsYW49J3ByZW1pdW0nXSB7XG4gICAgY29sb3I6IGNvbG9yLmFkanVzdCgkZ2wtcHJlbWl1bS1wbGFuLCAkbGlnaHRuZXNzOiAtMjAlKTtcbiAgICBzdmcgZyB7IGZpbGw6ICRnbC1wcmVtaXVtLXBsYW47IH1cbiAgfVxuXG4gICZbZGF0YS1wbGFuPSdicm9uemUnXSB7XG4gICAgY29sb3I6IGNvbG9yLmFkanVzdCgkZ2wtYnJvbnplLXBsYW4sICRsaWdodG5lc3M6IC0yMCUpO1xuICAgIHN2ZyBnIHsgZmlsbDogJGdsLWJyb256ZS1wbGFuOyB9XG4gIH1cblxuICAmOm5vdChbZGF0YS1wbGFuXSkge1xuICAgIHN2ZyBnIHsgZmlsbDogJGdyYXktNjAwOyB9XG4gIH1cbn1cblxuLnBsYW4tYmFkZ2UtdnVlIHtcbiAgJltkYXRhLXBsYW49J2dvbGQnXSB7XG4gICAgY29sb3I6ICRnbC11bHRpbWF0ZS1wbGFuO1xuICB9XG5cbiAgJltkYXRhLXBsYW49J3VsdGltYXRlJ10ge1xuICAgIGNvbG9yOiAkZ2wtdWx0aW1hdGUtcGxhbjtcbiAgfVxuXG4gICZbZGF0YS1wbGFuPSdzaWx2ZXInXSB7XG4gICAgY29sb3I6ICRnbC1wcmVtaXVtLXBsYW47XG4gIH1cblxuICAmW2RhdGEtcGxhbj0ncHJlbWl1bSddIHtcbiAgICBjb2xvcjogJGdsLXByZW1pdW0tcGxhbjtcbiAgfVxuXG4gICZbZGF0YS1wbGFuPSdicm9uemUnXSB7XG4gICAgY29sb3I6ICRnbC1icm9uemUtcGxhbjtcbiAgfVxufVxuXG4uaW52aXRlLW1vZGFsLWNvbnRlbnQge1xuICBncmlkLXJvdzogMTtcbiAgZ3JpZC1jb2x1bW46IDE7XG4gIG1pbi13aWR0aDogMDtcbn1cblxuJG1heC1pbnZpdGUtbW9kYWwtaGVpZ2h0OiA2MDBweDtcblxuLy8gVGhlc2UgYXJlIGNvbXBvc2l0ZSBjbGFzc2VzIGZvciB1c2Ugd2l0aCBWdWUgVHJhbnNpdGlvblxuLy8gaHR0cHM6Ly92dWVqcy5vcmcvZ3VpZGUvYnVpbHQtaW5zL3RyYW5zaXRpb25cbi5pbnZpdGUtbW9kYWwtdHJhbnNpdGlvbi1lbnRlci1hY3RpdmUsXG4uaW52aXRlLW1vZGFsLXRyYW5zaXRpb24tbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogbWF4LWhlaWdodCwgb3BhY2l0eTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXG4gIEBhcHBseSBnbC10cmFuc2l0aW9uLWFsbDtcbiAgQGFwcGx5IGdsLWR1cmF0aW9uLXNsb3c7XG5cbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmludml0ZS1tb2RhbC10cmFuc2l0aW9uLWVudGVyLFxuLmludml0ZS1tb2RhbC10cmFuc2l0aW9uLWxlYXZlLXRvIHtcbiAgbWF4LWhlaWdodDogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmludml0ZS1tb2RhbC10cmFuc2l0aW9uLWVudGVyLXRvLFxuLmludml0ZS1tb2RhbC10cmFuc2l0aW9uLWxlYXZlIHtcbiAgbWF4LWhlaWdodDogcHgtdG8tcmVtKCRtYXgtaW52aXRlLW1vZGFsLWhlaWdodCk7XG59XG4iLCIuYmxvY2sge1xuICAmLndlaWdodCB7XG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAgIC5nbC1maWVsZC1lcnJvciB7XG4gICAgICBtYXJnaW4tdG9wOiAkZ2wtcGFkZGluZy04O1xuICAgICAgbWFyZ2luLWxlZnQ6IC02cHg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLmhlYWx0aC1zdGF0dXMge1xuICBsaW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0O1xuXG4gIC8vIHN0eWxlbGludC1kaXNhYmxlLW5leHQtbGluZSBnaXRsYWIvbm8tZ2wtY2xhc3NcbiAgLmdsLWxhYmVsLXRleHQge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2wtZm9udC13ZWlnaHQtYm9sZDtcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gIH1cbn1cblxuLmlzc3VhYmxlLWFzc2lnbmVlcyB7XG4gIGE6bm90KC5idG4pIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuIiwiLmxhYmVscy1zZWxlY3Qtd3JhcHBlci5pcy1lbWJlZGRlZCB7XG4gIC5sYWJlbHMtc2VsZWN0LWRyb3Bkb3duLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtZmFtaWx5OiAkZ2wtcmVndWxhci1mb250O1xuICAgIGZvbnQtc2l6ZTogJGdsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGdsLWxpbmUtaGVpZ2h0LTE2O1xuICAgIHBhZGRpbmctdG9wOiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuICAgIHBhZGRpbmctYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuICAgIHBhZGRpbmctbGVmdDogJGdsLXNwYWNpbmctc2NhbGUtNDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkZ2wtc3BhY2luZy1zY2FsZS00O1xuICAgIGhlaWdodDogYXV0bztcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBAYXBwbHkgZ2wtc2hhZG93LWlubmVyLTEtZ3JheS0yMDA7XG4gICAgQGFwcGx5IGdsLXJvdW5kZWQtYmFzZTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAgIC5nbC1idXR0b24tdGV4dCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAgIC5nbC1pY29uIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAubGFiZWxzLXNlbGVjdC13cmFwcGVyLmlzLWVtYmVkZGVkIHtcbiAgICBsZWZ0OiAwO1xuICAgIEBhcHBseSBnbC1zaGFkb3cteDAteTItYjQtczA7XG5cbiAgICB3aWR0aDogMzAwcHggIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiBub25lO1xuICAgIG1heC1oZWlnaHQ6IG5vbmU7XG5cbiAgICBhOm5vdCguYnRuKSB7XG4gICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIC5kcm9wZG93bi10aXRsZSB7XG4gICAgcGFkZGluZy10b3A6ICRnbC1zcGFjaW5nLXNjYWxlLTIgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJGdsLXNwYWNpbmctc2NhbGUtNCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmRyb3Bkb3duLWZvb3RlciAubGlzdC11bnN0eWxlZCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4iLCIuY3ZlLWlkLXJlcXVlc3Qge1xuICAuaGVscC1idXR0b24sXG4gIC5jbG9zZS1oZWxwLWJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG5cbiAgLy8gVGhlc2UgYXJlIGNvbXBvc2l0ZSBjbGFzc2VzIGZvciB1c2Ugd2l0aCBWdWUgVHJhbnNpdGlvblxuICAvLyBodHRwczovL3Z1ZWpzLm9yZy9ndWlkZS9idWlsdC1pbnMvdHJhbnNpdGlvblxuICAuaGVscC1zdGF0ZS10b2dnbGUtZW50ZXItYWN0aXZlIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC44cyBlYXNlO1xuICB9XG5cbiAgLmhlbHAtc3RhdGUtdG9nZ2xlLWxlYXZlLWFjdGl2ZSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgfVxuXG4gIC5oZWxwLXN0YXRlLXRvZ2dsZS1lbnRlcixcbiAgLmhlbHAtc3RhdGUtdG9nZ2xlLWxlYXZlLWFjdGl2ZSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIC5jdmUtaWQtcmVxdWVzdC1oZWxwLXN0YXRlIHtcbiAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgbWFyZ2luOiAxNnB4IC0yMHB4IC0yMHB4O1xuICAgIHBhZGRpbmc6IDE2cHggMjBweDtcbiAgICBAYXBwbHkgZ2wtYm9yZGVyLXQ7XG4gICAgQGFwcGx5IGdsLWJvcmRlci1iO1xuICB9XG59XG5cbi5haS1zdW1tYXJ5LWNhcmQge1xuICBoMiB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuIiwiLmNvbXBsaWFuY2UtcmVwb3J0LXRhYmxlIHtcbiAgLnZpZXctZGV0YWlscyB7XG4gICAgQGFwcGx5IGdsLWJnLXN1YnRsZTtcblxuICAgIGRpdiB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIHRyOmhvdmVyIC52aWV3LWRldGFpbHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG4iLCIudnVsbmVyYWJpbGl0eS1jb3VudHMge1xuICBkaXNwbGF5OiBncmlkO1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpdCwgbWlubWF4KDdyZW0sIDFmcikpO1xuICBncmlkLWdhcDogJGdsLXNwYWNpbmctc2NhbGUtNztcbn1cblxuQGluY2x1ZGUgZ2wtY29udGFpbmVyLXdpZHRoLWRvd24oc20sIHBhbmVsKSB7XG4gIC52dWxuZXJhYmlsaXR5LXN0YXR1cy1jaGVja2JveCB7XG4gICAgLmN1c3RvbS1jb250cm9sLWxhYmVsIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4udnVsbmVyYWJpbGl0eS1yZXBvcnQtZm9vdGVyLW1vYmlsZSB7XG4gIEBpbmNsdWRlIGdsLWNvbnRhaW5lci13aWR0aC1kb3duKG1kLCBwYW5lbCkge1xuICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAgIC5nbC1uZXctZHJvcGRvd24ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIjYmxhbmstcHJvamVjdC1wYW5lIHtcbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICAuZ2wtbmV3LWRyb3Bkb3duLWN1c3RvbS10b2dnbGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvKlxuIFRoaXMgaXMgYSBub29wLWZpbGUuIEluIEpIOlxuIGpoL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvX2poL2FwcGxpY2F0aW9uX2poLnNjc3NcbiB3aWxsIHRha2UgcHJlY2VkZW5jZSBvdmVyIGl0IGFuZCBpbXBvcnQgbW9yZSBzdHlsZXNcbiAqL1xuIiwiQGltcG9ydCAnZnJhbWV3b3JrL3ZhcmlhYmxlcyc7XG5AaW1wb3J0ICdmcmFtZXdvcmsvdmFyaWFibGVzX292ZXJyaWRlcyc7XG5cbkBpbXBvcnQgJ0BnaXRsYWIvdWkvc3JjL3Njc3MvdmFyaWFibGVzJztcbkBpbXBvcnQgJ0BnaXRsYWIvdWkvc3JjL3Njc3MvbWl4aW5zJztcblxuQG1lZGlhIHByaW50IHtcbiAgLm1kIGgxLFxuICAubWQgaDIsXG4gIC5tZCBoMyxcbiAgLm1kIGg0LFxuICAubWQgaDUsXG4gIC5tZCBoNiB7XG4gICAgbWFyZ2luLXRvcDogMTdweDtcbiAgfVxuXG4gIC5tZCBoMSB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG5cbiAgLm1kIGgyIHtcbiAgICBmb250LXNpemU6IDIycHg7XG4gIH1cblxuICAubWQgaDMge1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgLm1kIHtcbiAgICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xuICAgIC13ZWJraXQtcHJpbnQtY29sb3ItYWRqdXN0OiBleGFjdDtcblxuICAgIC8vIFN0aWNreSB0YWJsZSBoZWFkZXJzIGZha2UgdGhlaXIgdG9wIGFuZFxuICAgIC8vIGJvdHRvbSBib3JkZXJzIHdpdGggaW5zZXQgYm94LXNoYWRvd3MsIHdoaWNoIGJyb3dzZXJzIG9taXQgaW4gcHJpbnQuXG4gICAgLy8gUmVzdG9yZSByZWFsIGJvcmRlcnMgYW5kIHJlbW92ZSB0aGUgc2hhZG93LlxuICAgIC8vIFNlZSBmcmFtZXdvcmsvdHlwb2dyYXBoeS5zY3NzIGZvciB0aGUgbm9uLXByaW50IGRlY2xhcmF0aW9uLlxuICAgIFtkYXRhLXN0aWNreS1oZWFkZXJdID4gdGFibGU6bm90KC5jb2RlKSB7XG4gICAgICA+IHRoZWFkOmZpcnN0LW9mLXR5cGUgPiB0cjpmaXJzdC1jaGlsZCA+IHRoLFxuICAgICAgPiB0Ym9keTpmaXJzdC1vZi10eXBlID4gdHI6Zmlyc3QtY2hpbGQgPiB0aCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB2YXIoLS1nbC1ib3JkZXItY29sb3ItZGVmYXVsdCk7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gZml4IGJsb2NrcXVvdGUgc3R5bGUgaW4gcHJpbnRcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAtNHB4O1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDRweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdsLWJvcmRlci1jb2xvci1kZWZhdWx0O1xuICAgICAgfVxuXG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBAYXBwbHkgZ2wtdGV4dC1zdWJ0bGU7XG4gICAgICBwYWRkaW5nLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkZ2wtc3BhY2luZy1zY2FsZS0zO1xuICAgICAgcGFkZGluZy1sZWZ0OiAkZ2wtc3BhY2luZy1zY2FsZS02O1xuICAgICAgbWFyZ2luLXRvcDogJGdsLXNwYWNpbmctc2NhbGUtMztcbiAgICAgIG1hcmdpbi1ib3R0b206ICRnbC1zcGFjaW5nLXNjYWxlLTM7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBAYXBwbHkgZ2wtc2hhZG93LWlubmVyLWwtNC1ncmF5LTEwMDtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7XG4gICAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBQYW5lbHNcbiAgLnBhbmVscy1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvKiBzdHlsZWxpbnQtZGlzYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cbiAgLnN1cGVyLXRvcGJhcixcbiAgbmF2LFxuICAuc3VwZXItc2lkZWJhcixcbiAgLnN1cGVyLXNpZGViYXItb3ZlcmxheSxcbiAgLnRyZWUtcmVmLWhvbGRlcixcbiAgLnRyZWUtaG9sZGVyIC5icmVhZGNydW1iLFxuICAubmF2LFxuICAuYnRuLFxuICB1bC5ub3Rlcy1mb3JtLFxuICAuaXNzdWFibGUtZ3V0dGVyLXRvZ2dsZSxcbiAgLmd1dHRlci10b2dnbGUsXG4gIC5lZGl0LWxpbmssXG4gIC5ub3RlLWFjdGlvbi1idXR0b24sXG4gIC5yaWdodC1zaWRlYmFyLFxuICAuZmxhc2gtY29udGFpbmVyLFxuICAucGFuZWwtaGVhZGVyLFxuICBjb3B5LWNvZGUsXG4gICNqcy1wZWVrIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLyogc3R5bGVsaW50LWVuYWJsZSBnaXRsYWIvbm8tanMtY2xhc3MgKi9cblxuICBwcmUge1xuICAgIHBhZ2UtYnJlYWstYmVmb3JlOiBhdm9pZDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgfVxuXG4gIC5wYWdlLWd1dHRlciB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLnJpZ2h0LXNpZGViYXIge1xuICAgIHRvcDogMDtcbiAgfVxuXG4gIGFbaHJlZl06OmFmdGVyIHtcbiAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAud2l0aC1wZXJmb3JtYW5jZS1iYXIgLmxheW91dC1wYWdlLCAuY29udGVudC13cmFwcGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuXG4gIC5wYW5lbHMtY29udGFpbmVyIC5wYW5lbC1jb250ZW50LWlubmVyLFxuICAucGFuZWxzLWNvbnRhaW5lciAudnVlLXBvcnRhbC10YXJnZXQgLndvcmstaXRlbS1kZXRhaWwtcGFuZWwtY29udGVudCB7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYW5lbC1jb250ZW50IHtcbiAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAgIGNvbnRhaW46IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5wYW5lbGVkLXZpZXcge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAucGFnZS13aXRoLXBhbmVscyAubGF5b3V0LXBhZ2Uge1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICB9XG5cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZ2l0bGFiL25vLWpzLWNsYXNzICovXG4gIC5qcy1maWxlLXRpdGxlLFxuICAuanMtc2lnbmF0dXJlLWNvbnRhaW5lcixcbiAgLmpzLWZvcmstc3VnZ2VzdGlvbi1sYWJlbCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC8qIHN0eWxlbGludC1lbmFibGUgZ2l0bGFiL25vLWpzLWNsYXNzICovXG5cbiAgLy8gSGlkZSB0aGUgZmlsZSBicm93c2VyIHNpZGViYXIgYW5kIHRoZSBsYXN0LWNvbW1pdCBwYW5lbCBzbyBvbmx5IHRoZVxuICAvLyByZW5kZXJlZCBtYXJrZG93biBwcmludHMuIFdlIHRhcmdldCB0aGVzZSBlbGVtZW50cyBkaXJlY3RseSBpbnN0ZWFkIG9mXG4gIC8vIHN0cnVjdHVyYWxseSBpc29sYXRpbmcgI3RyZWUtaG9sZGVyLCBiZWNhdXNlIGFmdGVyIGEgc29mdCBuYXZpZ2F0aW9uXG4gIC8vIChWdWUgUm91dGVyKSB0aGUgYmxvYiByZW5kZXJzIGluc2lkZSB0aGUgdHJlZSBwYWdlJ3Mgc2NhZmZvbGQsIHdoZXJlXG4gIC8vICN0cmVlLWhvbGRlciBpcyB3cmFwcGVkIGluIGFuIGV4dHJhIGNvbnRhaW5lciBhbmQgaG9sZHMgdGhlIHJvdXRlciBhcHBcbiAgLy8gcmF0aGVyIHRoYW4gI2Jsb2ItY29udGVudC1ob2xkZXIuIFRoZSBvbGQgc3RydWN0dXJhbCBydWxlcyB0aGVuIGhpZCB0aGVcbiAgLy8gY29udGVudCwgcHJvZHVjaW5nIGEgYmxhbmsgcGFnZSBvbiB0aGUgZmlyc3QgcHJpbnQgYXR0ZW1wdC4gU2VlXG4gIC8vIGh0dHBzOi8vZ2l0bGFiLmNvbS9naXRsYWItb3JnL2dpdGxhYi8tL2lzc3Vlcy82MDI3NzMuXG4gIC5uYXZpZ2F0aW9uLXJvb3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBgLmZpbGUtdHJlZS1icm93c2VyYCBpcyB0aGUgcmVuZGVyZWQgZmlsZSBicm93c2VyIHNpZGViYXIuIFdlIHRhcmdldCBpdFxuICAvLyAoYW5kIHRoZSBTU1IgcGxhY2Vob2xkZXIgI2pzLWZpbGUtYnJvd3NlciwgYmVmb3JlIFZ1ZSByZXBsYWNlcyBpdCBvblxuICAvLyBtb3VudCkgcmF0aGVyIHRoYW4gcmVseWluZyBvbiAjdHJlZS1ob2xkZXIgc3RydWN0dXJlLCBzbyBpdCBpcyBoaWRkZW4gb25cbiAgLy8gYm90aCB0aGUgYmxvYiBhbmQgdGhlIHNvZnQtbmF2aWdhdGVkIHRyZWUtcGFnZSBzY2FmZm9sZHMuXG4gIC8qIHN0eWxlbGludC1kaXNhYmxlIGdpdGxhYi9uby1qcy1jbGFzcyAqL1xuICAjanMtZmlsZS1icm93c2VyLFxuICAuZmlsZS10cmVlLWJyb3dzZXIsXG4gIC5pbmZvLXdlbGwge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGdpdGxhYi9uby1qcy1jbGFzcyAqL1xuXG4gICN0cmVlLWhvbGRlciB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cblxuICAvLyBUaGUgcmVwb3NpdG9yeSBoZWFkZXIgYXJlYSAoYnJlYWRjcnVtYnMsIHJlZiBzZWxlY3RvciwgZmlsZSBoZWFkaW5nKSBpc1xuICAvLyBtb3VudGVkIGJ5IFZ1ZSwgd2hpY2ggcmVwbGFjZXMgaXRzICNqcy1yZXBvc2l0b3J5LWJsb2ItaGVhZGVyLWFwcCBtb3VudFxuICAvLyBub2RlLCBzbyB3ZSBoaWRlIGl0cyByZW5kZXJlZCBjaGlsZHJlbiBieSB0aGVpciBzdGFibGUgaG9va3MuIFRoaXMgaXMgcGFnZVxuICAvLyBjaHJvbWUsIG5vdCBkb2N1bWVudCBjb250ZW50LCBhbmQgbXVzdCBub3QgYXBwZWFyIGluIHRoZSBwcmludGVkIFBERi5cbiAgLyogc3R5bGVsaW50LWRpc2FibGUgZ2l0bGFiL25vLWpzLWNsYXNzICovXG4gIC50cmVlLXJlZi1jb250YWluZXIsXG4gIC5qcy1yZXBvLWJyZWFkY3J1bWJzLFxuICBbZGF0YS10ZXN0aWQ9XCJyZXBvc2l0b3J5LWhlYWRpbmdcIl0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICAvKiBzdHlsZWxpbnQtZW5hYmxlIGdpdGxhYi9uby1qcy1jbGFzcyAqL1xuXG4gIC5maWxlLWFjdGlvbnMsXG4gIC5maWxlLWJsYW1lLWxlZ2VuZCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLy8gRHJvcCB0aGUgZmlsZSBob2xkZXIncyBjYXJkIGJvcmRlci9zaGFkb3cgc28gdGhlIG1hcmtkb3duIHByaW50cyBmbHVzaC5cbiAgLy8gVW5zY29wZWQgZnJvbSAuYmxvYi1jb250ZW50LWhvbGRlciBiZWNhdXNlIGFmdGVyIGEgc29mdCBuYXZpZ2F0aW9uIHRoZVxuICAvLyBmaWxlIGhvbGRlciBpcyByZW5kZXJlZCBvdXRzaWRlIHRoYXQgY29udGFpbmVyLlxuICAuZmlsZS1ob2xkZXIge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC8vIEZvciB1c2VycyB3aG8gZXhwbGljaXRseSBzZWxlY3QgZGFyayBtb2RlLCB0aGUgZGFyayBzdHlsZXNoZWV0IGlzIGxvYWRlZFxuICAvLyB1bmNvbmRpdGlvbmFsbHkgKG5vdCBiZWhpbmQgYSBwcmVmZXJzLWNvbG9yLXNjaGVtZSBtZWRpYSBxdWVyeSksIHNvIGl0c1xuICAvLyBkYXJrIHRleHQgdG9rZW5zIGxlYWsgaW50byB0aGUgcHJpbnQgb3V0cHV0IGFuZCByZW5kZXIgdGhlIG1hcmtkb3duIHRleHRcbiAgLy8gZ3JheSBvbiB3aGl0ZSBwYXBlci4gUmVzZXQgdGhlIHRleHQgY29sb3JzIHRvIHRoZWlyIGxpZ2h0LXRoZW1lIHZhbHVlcyBzb1xuICAvLyBwcmludGVkIG1hcmtkb3duIGlzIGFsd2F5cyBsZWdpYmxlIHJlZ2FyZGxlc3Mgb2YgdGhlIGFjdGl2ZSBjb2xvciBtb2RlLlxuICAvLyBUaGUgcmF3IG5ldXRyYWwgcGFsZXR0ZSBpcyBpZGVudGljYWwgYWNyb3NzIHRoZW1lcywgc28gcmVmZXJlbmNpbmcgaXQgaGVyZVxuICAvLyBpcyB0aGVtZS1zYWZlLiBTZWUgaHR0cHM6Ly9naXRsYWIuY29tL2dpdGxhYi1vcmcvZ2l0bGFiLy0vaXNzdWVzLzYwMjc3My5cbiAgLy8gc3R5bGVsaW50LWRpc2FibGUtbmV4dC1saW5lIGdpdGxhYi9uby1nbC1jbGFzc1xuICA6cm9vdC5nbC1kYXJrIHtcbiAgICAtLWdsLXRleHQtY29sb3ItZGVmYXVsdDogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC04MDApO1xuICAgIC0tZ2wtdGV4dC1jb2xvci1zdWJ0bGU6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtNjAwKTtcbiAgICAtLWdsLXRleHQtY29sb3Itc3Ryb25nOiB2YXIoLS1nbC1jb2xvci1uZXV0cmFsLTk1MCk7XG4gICAgLS1nbC10ZXh0LWNvbG9yLWhlYWRpbmc6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtOTUwKTtcblxuICAgIC8vIFJlc2V0IHRoZSBiYWNrZ3JvdW5kIHRva2VucyB0b28sIHNvIHRoZSBwYWdlIGl0c2VsZiBwcmludHMgb24gbGlnaHQgcGFwZXIuXG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLWRlZmF1bHQ6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN1YnRsZTogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC0xMCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXN0cm9uZzogdmFyKC0tZ2wtY29sb3ItbmV1dHJhbC01MCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLXNlY3Rpb246IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG4gICAgLS1nbC1iYWNrZ3JvdW5kLWNvbG9yLW92ZXJsYXA6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMCk7XG5cbiAgICAvLyBJbmxpbmUgY29kZSB1c2VzIGEgZGFyayBzdXJmYWNlIGluIGRhcmsgbW9kZTsgcmVzZXQgaXQgdG8gYSBsaWdodCBvbmUgc29cbiAgICAvLyB0aGUgbm93LWRhcmsgY29kZSB0ZXh0IHN0YXlzIHJlYWRhYmxlIHdoZW4gcHJpbnRlZC5cbiAgICAubWQgOm5vdChwcmUuY29kZSkgPiBjb2RlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdsLWNvbG9yLW5ldXRyYWwtMTAwKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ== */
